8

大文字/文字/単語用の CSS 疑似セレクターはありますか? すべての大文字を pt 小さくし、他のすべての文字を同じサイズにしたいと考えています。大文字は必ずしも文 (または単語) の最初の文字ではなく、その逆でもありません。

それとも、CSS でこれらの文字を見つける別の方法があるのでしょうか? トリックで?私はトリックが好きです。

4

3 に答える 3

4

まあ、サポートが不十分な最初の文字のセレクターがありますが、それはあなたが望むものではありません.

もちろん、PHP で HTML を事前解析して、すべての大文字を<span class="capital"></span>タグでラップすることもできますが、それはハックです。

もちろん、魔法の jQuery ウサギをいつでも引き出して、ドキュメントの読み込み時に DOM を変更して、スパンを含めることができます。それもハックです。ハックは好きですか?

他に誰が手品で現れるか見てみましょう :-)

于 2010-12-14T13:57:06.903 に答える
1

私はこれが可能だとは思わない。

クラスのスパンで大文字をラップし、それを使用してスタイルを設定することをお勧めします。

于 2010-12-14T13:48:31.170 に答える
1

これは、CSS を使用して行うことはできません。

Javascript を使用して、テキスト内のすべての文字の大文字をチェックし (たとえば、 を使用) 、CSS を含む文字をif (yourtext == yourtext.toUpperCase())ラップしてスタイルを設定できます。<span>

または、これらの行の周りに何か:

function wrapCaps() {
    var text = document.getElementById("my_text").value;
    for(i=0; i < text.length; i++) {
        if(text[i].charCodeAt(text[i]) >= 65 && text[i].charCodeAt(text[i]) <= 90)
        wrapNode(text[i], 'span');
    }
}

私はそれを試していませんでした(おそらく誰かがこれでjsfiddleを作成する時間がありますか?)、replaceNodeまたはそのようなものを使用する必要があるかもしれません。このcharCodeAtメソッドは大文字のみを検索します。特別なギリシャの大文字のような Unicode 文字は含まれないことに注意してください。
次のような方法でスパンのスタイルを設定するだけです。

#my_text span {
    font-size: 10px;
}
于 2010-12-14T13:58:23.643 に答える