Использование селектора * в таблице стилей для сброса стилей - PullRequest
3 голосов
/ 01 августа 2009

В данный момент я просто сбрасываю нужные мне стили в верхней части таблицы стилей, например:

html, body, div, fieldset, form, h1, h2, h3, h4, p, ul, li {
    margin: 0;
    padding: 0;
}

Однако я много раз видел, как люди используют:

* {
    margin: 0;
    padding: 0;
}

Это, кажется, облегчает ситуацию, но где-то еще (не помню, где ...) Я читал, что использование селектора * серьезно влияет на производительность.

Это правда, длинный список селекторов (в примере только несколько селекторов, их может быть больше) работает значительно лучше, чем селектор *, и есть ли другие недостатки у селектора *?

Ответы [ 3 ]

4 голосов
/ 01 августа 2009

Почему бы не использовать один из стандартных файлов сброса CSS, например Эрик Мейер или YAHOO ?

3 голосов
/ 01 августа 2009

Через Рекомендации Google по скорости , шаблонный селектор очень неэффективен. Кроме того, в будущем у вас могут появиться ящики, которые вы не хотите сбросить. Называя каждого по отдельности, вы получаете и эффективность, и контроль.

2 голосов
/ 01 августа 2009

Однажды я провел какой-то бенчмаркинг, и сброс * {} не работал медленнее, чем сброс - Meyers, YUI и вообще без сброса.

Основная проблема при сбросе * {} состоит в том, что он сбрасывает отступы на кнопках ввода для большинства браузеров, но IE сохраняет некоторые его отступы, что затрудняет согласованное оформление кнопок кросс-браузерно.

...