CSS中的元素#id是必需的吗?

Jam*_*ing 3 html css css-selectors

最近我在CSS初学者的书中看到了这一点(由Simon Collison开始的CSS Web开发,第19页)

h1#title{color:red;}
Run Code Online (Sandbox Code Playgroud)

这是一种element#id结构.

但这有必要吗?由于ID在一个html网页中是唯一的,因此element不是必需的.

我的理解是对的吗?

Mr.*_*ien 5

id是独一无二的,但这并不意味着它们不能应用于不同文档中的其他元素,因此使用类似的东西#title只能在一个文档中使用一个,但可以用于另一个文档中的其他元素,所以尽管id它们是唯一的,您可以在不同文档的不同元素上使用它.因此使用h1#title将强制CSS仅适用于h1具有的元素id #title.

此外,特殊性h1#title更重要,比#title使用类似的东西更具体

#title {
   color: red;
}
Run Code Online (Sandbox Code Playgroud)

VS

h1#title {
   color: green; 
   /* This will be picked regardless of their order in the stylesheet */
}
Run Code Online (Sandbox Code Playgroud)