7

私はプログラミングに関するブロガーを書いています。クラスやIDを手動で入力せずに、特定の文字の色を自動的に変更したい。例えば、

 <blockquote class="tr_bq">
 <span style="color: #bb60d5;">$</span>
 <span>php app/console doctrine:schema:create</span>
 </blockquote>

"$"文字を の中に入れると、blockquote tag自動的に追加color: #bb60d5されて色が変わります。

それを行う方法はありますか?

4

3 に答える 3

6

CSS を使用してこれを行う方法はありませんが、javascript を使用してロード時にページをスキャン$し、スパン内のすべてのインスタンスをカスタム スタイルでラップすることができます。jQuery を使用した実装を次に示します。

$('blockquote').each(function () {
    $(this).html($(this).html().replace(/(\$)/g, '<span style="color: #bb60d5;">$1</span>'));
});

デモフィドル

于 2013-09-04T06:45:13.253 に答える
1

CSS は単語やそれに関連するものを見つけることができず、自動的に色を追加したりスタイルを適用したりすることはできません。

JavaScript を使用するか、サーバー側のコーディングを使用してこの単語「$」を見つけ、その div に何らかのスタイルを適用することができます。例えば:

<div style="color: red;">
 $<span style="color: black">php app/console doctrine:schema:create</span>
</div>

これは、サーバーがファイルを読み取ることがわかっている場合に機能します。ASP では、string.Split()いくつかの部分を見つけるために使用できます。PHP の場合は Regex を使用できます。検索が必要になる場合があります。

ただし、CSS では機能しません。JavaScript またはサーバー サイドだけです。CSS を使用して色を適用したりstyle、各要素自体で使用したりできます。

于 2013-09-04T05:49:45.367 に答える
-1

あなたの質問が CSS に関するものであることは承知していますが、おそらく jQuery が適切なツールです。あなたはそれを調べているかもしれません。

if( $("blockquote").children("span:contains('$')").length ){
    $("blockquote span:nth-child(1)").css("color", "#bb60d5");
}

http://jsfiddle.net/NicHope/9de7k/#base

于 2013-09-04T06:38:13.197 に答える