您能将css规则“content”应用于子元素吗?
能否将ccs规则内容应用于子元素 css: html:您能将css规则“content”应用于子元素吗?,css,Css,能否将ccs规则内容应用于子元素 css: html: <a href="/home">Home</a> <a href="/home"><span>home</span></a> 但是,我想做以下工作: html: <a href="/home">Home</a> <a href="/home"><span>home</span></a>
<a href="/home">Home</a>
<a href="/home"><span>home</span></a>
但是,我想做以下工作:
html:
<a href="/home">Home</a>
<a href="/home"><span>home</span></a>
在前面的css中,href
值将出现在span
之前
是否可以将其显示在span
中?
我试过了。这是一个网站地图。不,那是不可能的 要在
span
中呈现生成的内容,需要a:link span:before
不幸的是,在这种情况下,
内容:“attr(href)”
将不再工作,因为a
元素不再是选择器的主题,span
是,并且span
没有href
属性。这是不可能的,因为attr(…)
只对元素本身工作,但实际上需要这样的东西:
a:link > span:before { content: " "parent.attr(href)" "; }
但是CSS中没有类似于
parent.attr()
的东西。所以即使目标元素是子元素,这也会陷入CSS不兼容父元素的情况?(也就是说,父选择器在css中不起作用)即使使用一个。您需要的是(不存在的)内容:parent.attr(href)
,如@c-smile的回答所示。如果您真的想使用CSS而不是jQuery,并且您不介意复制href
(以一种安全有效但不神秘的方式),您可以这样做:。是的,我的第一个答案很糟糕:)有点挑剔:这些在CSS3中都不是新的。不是:before
或:before
伪元素,不是attr()
函数,也不是content
属性。所有这些都是CSS2的一部分。