Производительность селектора - 'E # id' против '#id' - в CSS и jQuery - PullRequest
4 голосов
/ 26 января 2012

При использовании селекторов в CSS и в jQuery, есть ли различия в эффективности между использованием 'E#id' и #id, где E - любой элемент HTML? Если да, относится ли это только к определенным механизмам компоновки и / или механизмам Javascript?

Ответы [ 2 ]

3 голосов
/ 26 января 2012

Браузеры читают селекторы справа налево, поэтому от префикса до идентификатора мало что можно получить; это избыточно в этот момент. Источник: Написание эффективного CSS от Mozilla

Вот пример реального мира , чтобы проверить это самостоятельно. TL: DR; это не имеет значения, чтобы изменить ситуацию.

Соответствующее дальнейшее чтение из предыдущего Вопрос переполнения стека

0 голосов
/ 14 марта 2013

1) Считается, что использование идентификаторов для CSS не является хорошей практикой. Его следует использовать при манипулировании контентом через javascript.

2) Переопределение селектора CSS с именем тега ul.top-nav или ul # top-nav только увеличит накладные расходы в браузере, поскольку оно должно совпадать как с тегом, так и с классом / идентификатором. Следовательно, избегайте чрезмерной квалификации селектора.

...