还有什么其他理由可以节约使用id?

时间:2015-10-23 21:45:08

标签: html5 css3 client-side

虽然我不需要说服id选择器应该谨慎使用,并且class选择器应该主要用于应用CSS,但我很难向会员解释它我的小组项目。当我们作为一个小组开会讨论每个人的HTML和CSS文件时,我注意到他们几乎用所有的id选择器(包括那些不是唯一的元素)。虽然我解释说id选择器应仅用于在CSS中设置非常独特的元素,class选择器应该用于将CSS应用于其他所有内容,因为它们可以重复使用,现在我可以使用试图记住其他原因。所以我的问题是,对于非唯一元素,使用class选择器而非id选择器的其他原因是什么?

1 个答案:

答案 0 :(得分:1)

正如你所提到的,id s的唯一性是不足以将它们用作选择器的原因,但还有更多:

一个元素可以有多个class es,但只有一个id。您可能希望同一元素同时为.news-article.breaking-news。如果您使用JavaScript,则可以为样式(.unstyled-list)创建一个类,为脚本创建另一个类(.side-menu)。这样,您可以在不破坏脚本的情况下将列表更改为.roman-numerals

使id更适合应用样式的原因是它们的唯一性和更高的specificity的组合。如果你使用id来设置样式,肯定会陷入特殊竞争(特别是如果你需要随着时间的推移维护CSS,可能就是这种情况)。