1

好的,我一直在阅读 stackoverflow css 选择器。在这里的线程上,这种语法有什么区别?^= 是什么意思?它在选择什么?全部?

[class^='Rating'] 

div.Rating0_5

此外,这里有一条声明注意 :允许重复出现相同的简单选择器,并且确实增加了特异性。

这意味着什么?

我问是因为我必须清理网站上的大量 CSS 代码。有十多个样式表,每个都包含 200 多行代码,并且在样式表中存在相互覆盖的样式,如果重复出现增加了特异性,甚至可能在其中覆盖。逐行浏览样式表以找出特定的类、div 等覆盖另一个类、div 等是非常辛苦的,其中一些特殊性是七个选择器的深度!这对我来说几乎是不可能的,而且压力很大。

是否有一种工具可以使用以覆盖其他样式的样式为目标?它是否易于使用,它究竟做了什么?如果没有,我怎样才能编写具有足够特异性的 CSS 而没有非常长的选择器以希望确保唯一性,以便它们不会被另一个样式表规则覆盖?

谢谢,我希望这有点道理,有人有过这种经历。

4

1 回答 1

1

^= 是 CSS 选择器的“开头”。在您的情况下,它将适用于名称以“rating”开头的类。

使用传统的 CSS,您必须制作非常长的选择器来具体化,我认为该声明意味着您可以拥有重复的选择器,并且样式将被组合。

在清理 CSS 方面,我对自动化工具没有很好的建议,但您可以查看http://sass-lang.com/ (SCSS),以获得在 CSS 之上的更好的语法层选择器的变量和继承。确实清理了很多 CSS。

于 2011-09-23T21:46:52.227 回答