如何使用CSS选择文本节点 [英] How to select a text node with CSS

查看:471
本文介绍了如何使用CSS选择文本节点的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有以下HTML标记:

I have the following HTML markup:

<h1> 
     <div class="sponsor"> 
          <span>Hello</span>  
     </div> 
     World 
</h1>

当我使用CSS选择器h1时,我会得到Hello World.

When I use the CSS selector h1 I get Hello World.

不幸的是,我无法更改标记,而我只能使用CSS选择器,因为我使用的是聚合RSS提要的系统.

I can't unfortunately change the markup and I have to use only CSS selectors because I work with the system that aggregates RSS feeds.

有没有仅我可以使用文本节点的CSS选择器?在此示例中,具体是World?

Is there any CSS selector which I can take only the text node? Specifically the World in this example?

推荐答案

CSS的当前状态无法执行此操作,请检查以下链接:

The current state of CSS can't do this, check this link: W3C

这里的问题是,您写入屏幕的内容没有显示在DOM:P中.

The problem here is that the content you write to the screen doesn't show up in the DOM :P.

::outside似乎还行不通(至少在Safari 6.0.3中对我来说),或者它根本还没有产生预期的结果.

Also ::outside doesn't seem to work yet (at least for me in Safari 6.0.3) or it simply doesn't generate the desired result yet.

检查我的小提琴,然后检查DOM源: JSfiddle

Check my fiddle and then check the DOM source: JSfiddle

最后,有属性选择器a { content: attr(href);},使CSS能够读取DOM节点属性.似乎还没有innerHTML等效项.如果可能的话,那将是很好的选择,而您也许可以操纵标签的内部标记.

Finally there are attribute selectors a { content: attr(href);}, making CSS able to read DOM-node attributes. There doesn't seem to be a innerHTML equivalent of this yet. It would be great tho if that was possible, whereas you might be able to manipulate the inner markup of a tag.

这篇关于如何使用CSS选择文本节点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆