是什么"我"在方括号中做CSS选择器吗?

时间:2015-09-04 10:48:13

标签: css google-chrome css-selectors

我刚刚在Chrome开发者控制台中发现了这个选择器作为"用户代理样式表":

input[type="radio" i], input[type="checkbox" i] { ... }

" i"做?我之前从未在选择器中见过这样的结构。

感谢。

1 个答案:

答案 0 :(得分:2)

这是Selectator Level 4工作草案中引入的Case-Sensitive Attribute Selector

  

E[foo="bar" i]   
一个E元素,其foo属性值完全等于bar的任何(ASCII范围)大小写排列。

  

6.3。区分大小写

     

默认情况下,选择器中属性名称和值的区分大小写取决于文档语言。为了不区分大小写地匹配属性值而不管文档语言规则如何,属性选择器可以在结束括号(i)之前包括标识符]。当此标志存在时,UAs必须在ASCII范围内不区分大小写地匹配属性的值。

      示例13      

以下规则将为具有hsides值的frame属性设置样式,即使在属性值区分大小写的XML环境中,该值也表示为hsides,HSIDES,hSides等。

     
[frame=hsides i] { border-style: solid none; }

值得注意的是,如果不存在,浏览器对此的支持将非常差。使用此选择器的现有CSS实现可能使用外部JavaScript库来模拟Selectors Level 4定义。