Универсальный селектор

Автор: Александр Головко Дата публикации: 18.01.2011

Предыдущая статья Селекторы: общие сведения

Описание селектора:

  • Выполняемая задача — выбор всех элементов. Вообще всех.
  • Обозначение — символ «звездочка» — *.
  • Пример использования:

для всех элементов сбросить отступы по-умолчанию

* {
	padding: 0;
	margin: 0;
}

Подробнее про универсальный селектор

Появился в CSS с версии 2. Соответствует любому элементу в дереве документа. Поэтому стили, указанные для универсального селектора применяются ко всем элементам сразу. По этой причине, советую применять его очень осторожно — при наследовании стилей могут быть неприятности. Или, скорее, малопредсказуемое (для неопытного кодера) поведение. Подробнее этот момент рассмотрим в разделе, посвященном наследованию.

Еще одна особенность универсального селектора — когда он используется в сочетании с другим селектором (например, селектором класса, идентификатора или атрибута) в составе простого селектора, то может быть безнаказанно пропущен. Это примерно то же самое, что вместо «Все дромадеры — это одногорбые верблюды» сказать просто «дромадеры — это одногорбые верблюды». Смысл не поменялся.

Пример:

*.error {
	color: red;
}
.error {
	color: red;
}
/* эти два правила эквивалентны. Универсальный селектор во втором случае пропущен */

Область применения

Собственно, удобнее всего применять универсальный селектор, как в первом примере — для сброса зависящих от браузера начальных значений стилей (в частности, отступов).

Но даже такое применение не всегда окажется удачной идеей. Из-за недостатков универсального селектора, описанных в статье Обнуление отступов, лучше использовать сброс стилей всех необходимых элементов. То есть использовать селекторы типа.

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

По теме: