用css/js检测数字或字母

问题描述:

我想检测并设计一个特殊字母。 例如像这样 :用css/js检测数字或字母

体[ “P”]/ 体[ “2”]

我该怎么办呢? 谢谢

+2

你不能用纯CSS。 – Bergi 2013-02-09 15:36:41

+0

js怎么样? – user1599537 2013-02-09 15:37:46

你不能用CSS。唯一的非元素(css创建的)pseudo-elements::first-line::first-letter

但是,您可以使用JS通过DOM进行搜索并在要加亮的字母周围创建标签。检查highlight words in html using regex & javascript - almost there如何做到这一点。

+0

谢谢,这个小代码有什么问题? 'var a = getElementById(“b”) 如果a!= NaN {style.color =“blue”}' – user1599537 2013-02-09 15:54:18

+0

@ user1599537该代码的问题在于它1)不起作用,并且2)有错误。 – Mathletics 2013-02-09 15:56:20

+0

你能解决这个问题吗? :P – user1599537 2013-02-09 15:59:10

你可以通过一个相当简单的替换来逐个节点地完成这个工作,但是它不能很好地扩展。

鉴于标记:

<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>'); 

也就是说,这只适用于纯文本节点;例如,如果您的p标签中已有span标签,则该标签会被替换所遮盖。