0

特殊な文字を検出してスタイルを設定したい . たとえば、次のようなもの:

本体["p"] / 本体[​​"2"]

これどうやってするの?ありがとう

4

2 に答える 2

2

かなり単純な置換を使用してノードごとにこれを行うことができますが、あまりうまく拡張できません。

マークアップを考えると:

<p>Peter Rabbit ate all of Potter's pickling cukes.</p>

このテキストのすべての文字pにスタイルを追加したい場合は、段落ノードを選択して任意のpの周りにスパンを追加できます(単一の段落を想定)。

var graf = document.getElementsByTagName('p')[0];
graf.innerHTML = graf.innerText.replace(/(p)/gi,'<span class="fancy">$1</span>');

とはいえ、これはプレーン テキスト ノードでのみ機能します。たとえば、spanタグに既にpタグがある場合、置換によってめちゃくちゃになります。

于 2013-02-09T15:52:05.307 に答える
1

CSSではできません。非要素 (css によって作成された)疑似要素::first-line、 とのみ::first-letterです。

ただし、DOM を介して JS で検索し、強調表示する文字の周りにタグを作成することができます。正規表現とJavaScriptを使用してhtmlのハイライトワードを確認してください -その方法についてはほとんどありません。

于 2013-02-09T15:40:07.177 に答える