&引用;Don';不要在选择器(CSS)中使用ID”;那么,用什么来代替ID呢?

&引用;Don';不要在选择器(CSS)中使用ID”;那么,用什么来代替ID呢?,css,stylesheet,csslint,Css,Stylesheet,Csslint,其中之一是:“最好不要在选择器中使用ID”。 那么,我们应该使用什么来代替ID来指向唯一的元素呢? 例如,我有数百个元素,它们有一个名为“myClass”的类,我希望其中一个元素单独具有一个特殊的CSS属性。我能做什么?给他们上另一门课,例如: <div class="myClass special"></div> .myClass.special{ color: red; } .myClass.special{ 颜色:红色; } 您可以向元素添加额外的类,并在

其中之一是:“最好不要在选择器中使用ID”。 那么,我们应该使用什么来代替ID来指向唯一的元素呢?
例如,我有数百个元素,它们有一个名为“myClass”的类,我希望其中一个元素单独具有一个特殊的CSS属性。我能做什么?

给他们上另一门课,例如:

<div class="myClass special"></div>

.myClass.special{
  color: red;
}

.myClass.special{
颜色:红色;
}

您可以向元素添加额外的类,并在css中指定它,而不是在ID中指定。ID选择器比属性选择器具有更高的特异性,但不建议在css中使用ID,也不能重复使用。CSS类可以做IDs所能做的一切。

CSS lint应该是“固定”的,或者更新到现代标准,因为它基于已有10多年历史的代码库,在那里支持IE6和IE7更可取


现在每个人都应该知道ID是最快的css选择器,紧随其后的是类、Dom标记、相邻兄弟姐妹等,css从右向左读取。所以最短的选择器是最快的。由于#ID是最快的选择器,而且#ID(应该)是唯一的,所以在CSS中不使用#ID作为选择器是很可笑的。

这里有趣的一点是CSS lint还说我们不应该使用相邻的类:)@AmirHosseinAhmadi也许lint也说过“最好不要编写任何代码!!”。。。再次阅读他们的文档,他们从来没有说不要使用,但避免他们没有说“不要使用”,但最好不要使用:你可以组合类,就像@manuel otto建议的那样。但是,CSS lint规则的要点是,您希望尽可能避免设置ID的样式,因为它们不能重复使用。有时候,IMHO,更简洁的做法是使用ID并确保只有一个元素的样式不同(而不是由于不唯一而可能是其他元素)忽略CSSLint。这是自以为是的废话。以下模式被认为是正常的,不会引起警告:/*类之间的空格*/.foo.bar{border:1px solid black;}