2012-07-23 30 views

回答

5

这是一个真正实践。 ID选择器根据定义是唯一的。包括标签或类限定符只是添加了需要不必要地评估的冗余信息。所以根本没有速度改进 - 这是无用的减速。

4

可能有一个用例。 例如,如果您有内嵌元素的span#myID或块元素的div#myID(当然在不同的页面中)并且想要应用不同的样式。

但作为@Zoltan托特注意到它通常的情况下,“会把标签名称以防万一”的人谁不与CSS选择器基础知识不够熟悉的行为。

的情况下,99%,如果你选择具有ID,你应该只使用ID的东西。它是独一无二的。

+1

话虽这么说,每个ID应该是唯一的,不管它是在标签的。如果这些元素是相互排斥的,我*可能*看你单独样式他们越来越远,但即便如此,我会建议使用两个不同(唯一)的ID。 – Wex 2012-07-23 22:57:26

+0

具有相同'id'的两个元素可能会导致问题(我认为在IE中)。为此使用类。这就是他们所设计的,比如'span#myClass'和'div#myClass'可以有不同的样式。 – 2012-07-23 23:00:37

+0

是的ID应始终是唯一的,这就是为什么我说“(当然在不同的页面)”。而@Wex,你的评论很有意义 - 我想如果你可以将标记从div更改为span,那么你应该也可以更改ID。 – valentinas 2012-07-23 23:36:18