CSS attr函数的正确用法是什么?

时间:2009-06-25 16:11:06

标签: css internet-explorer-8

由于这个函数是在IE8中实现的,我想知道我能用它做些什么,但是我无法在除了:之前和之后的任何地方使用css伪元素。是否应该允许以下内容?

span[color] { color: attr(color); }

我也在谷歌浏览器中尝试过,但它没有用。另外,更有活力的事情如下:

input[value=attr(default)] { color: gray; }

2 个答案:

答案 0 :(得分:17)

在CSS 2.1(这些天应该使用的内容)中,attr功能在它可以做的事情上有点受限。它出现的唯一位置是content上的:before and :after pseudo-elements属性。所以它的唯一目的是生成 content

在CSS 3中changed a bit,其中attr()可以返回除了字符串以外的其他类型,也可以用于其他属性。

但请记住,大多数CSS is still a Working Draft功能很少(不包括值和单位)是候选推荐。用户代理对CSS 3功能的支持目前在有限和不存在之间变化。大多数浏览器供应商似乎通过实现像圆形边框,文本阴影等“酷炫的东西”来对抗无聊,这并不代表支持它的太多工作。但是你在这里看到的肯定超出了这一点,WD状态在不久的将来不会改变。所以不要指望它可以在任何地方实施。

答案 1 :(得分:-1)

只需使用

span.red {}

对于任何不同的颜色,我认为你不需要所有组合:)

或者只是使用

span[color="red"] {}