The case-sensitivity of attribute names and values in selectors depends on the document language.
如何与选择器中的属性值区分大小写?例如,
div[title=TITLE] {color:green}
不会使文本绿色为此HTML:
<div title="title">This is a div</div>
这是浏览器中的错误吗?当我说“浏览器”时,我的意思是所有的.或者我正在看一个未完成的CSS3规范版本?这将是奇怪的,因为同样的文本行也在CSS2规范here.
解决方法
Attribute and element names of HTML elements in HTML documents must be treated as ASCII case-insensitive for the purposes of selector matching.
Everything else (attribute values on HTML elements,IDs and classes in no-quirks mode and limited-quirks mode,and element names,attribute names,and attribute values in XML documents) must be treated as case-sensitive for the purposes of selector matching.
当然,HTML 4并没有说明与选择器互操作的任何内容,但是它确实说the title
attribute in particular is case-sensitive.由于选择器依赖文档语言来确定区分大小写,所以在这里没有区别.
XHTML遵循与XML相同的规则集:所有属性值都应区分大小写,因此选择器必须遵循这种区分大小写.再次,没有区别.
所以你看到的完全是设计的;没有浏览器或规范问题.