大家指出,该* { ... }
选择是很慢的。 但是,它有多慢是真的吗?
我总是尽量避免,但有时是非常有用的。 例如: * + h1 { margin-top 1em; }
* + h1 { margin-top 1em; }
大家指出,该* { ... }
选择是很慢的。 但是,它有多慢是真的吗?
我总是尽量避免,但有时是非常有用的。 例如: * + h1 { margin-top 1em; }
* + h1 { margin-top 1em; }
把它很干脆:通用选择*
仅慢,因为有你的页面上的元素。
由于从右到左匹配的浏览器需要每个元素匹配它所有的候选规则 ,所有元素将匹配*
就好了。 它本身并不影响性能,但是如果你在你的页面或一个非常复杂的DOM许多元素,这就是它据称变得缓慢,但即便如此,它并没有明显降低浏览器的性能。
即使像* + h1
,例如,是合理的,因为如果你想利用匹配性能考虑,然后从右到左匹配的浏览器将测试选择只在h1
第一要素,检查是否有出现的任何元素之前他们之前(这真的没有费多大力气为*
基本上是有保证的匹配)。
您也不妨看看我的这个回答对一个类似问题关于* + *
(这是两个通用选择!)。