2013-09-14 3 views
1

Я хотел бы знать, есть ли разница между этими двумя методами.Разница между этими методами сброса CSS

body,ul,li,p,h1,h2,h3,h4,h5{padding:0; margin:0; list-style-type:none;}

и

body,ul,p,h1,h2,h3,h4,h5{padding:0; margin:0;} 
li{list-style-type:none;} 

без необходимости использовать глобальный селектор * Реальная проблема здесь в том, что я уже упоминал list-style-type:none; в первом примере, даже если этот атрибут относится к li бирка сверху. Но я нахожу что-то нужное для группировки всех элементов и просто даю им значения, даже если некоторые значения не применяются к некоторым элементам.

Итак, есть ли отрицательная сторона этого вопроса, кроме вопросов ясности?

ответ

2

Я бы со второй перезагрузки .. хотя я всегда использую Эрик Мейерс ..

Первый сброс применяется padding:0; margin:0; list-style-type:none; ко всем тегам. Это действительно избыточно, так как list-style-type:none абсолютно не влияет на h1, h2 и т. Д. Зачем применять его, если он не влияет на эти элементы? Не.

list-style-type:none оказывает влияние только на <ul> и <li>, поэтому его следует применять только к тем, как во втором примере.

Из этих 2 вариантов, используйте следующее:

body,ul,li,p,h1,h2,h3,h4,h5{padding:0; margin:0;} 
ul,li{list-style-type:none;} 
2

Разница заключается в том, что второй набор правил не устанавливает поля и отступы на li элементов.

Что касается вопроса об установке list-style-type на элементы, отличные от li, это не ошибка и не вызывает проблем как таковых. Однако это может иметь эффект, поскольку эти элементы все еще обладают свойством, и их дети могут наследовать его. Например, если другая таблица стилей устанавливает h2 { display: list-item }, то имеет значение, что значение list-style-type для h2 есть.

Смежные вопросы