2

在使用“不太好”的代码库处理 Web 项目时,我经常在 JS/CSS 选择器中看到这样的写法

div#myID

这似乎是错误的......

http://jsfiddle.net/bobber205/yeJRQ/

上面的例子。这意味着,如果由于某种原因,您更改了 id 所属的标签,那么您可能有很多 css 需要更改......

人们这样做是怎么回事?它更快吗?速度提升值得吗?好好奇。:P

4

2 回答 2

5

这是一个非常糟糕的做法。ID 选择器根据定义是唯一的。包含标签或类限定符只会添加需要评估的冗余信息。所以它根本没有速度改进 - 这是一个无用的减速。

于 2012-07-23T22:48:10.017 回答
4

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

但是正如@Zoltan Toth 注意到的那样,对于 CSS 选择器基础知识不够熟悉的人,通常会出现“将标记名称以防万一”的行为。

在 99% 的情况下,如果您选择带有 ID 的内容,您应该只使用 ID。它是独一无二的。

于 2012-07-23T22:52:12.467 回答