Универсальный селектор
Иногда требуется установить одновременно один стиль для всех элементов веб-страницы, например, задать шрифт или начертание текста. В этом случае поможет универсальный селектор, который соответствует любому элементу веб-страницы.
В CSS3 универсальный селектор применяется также в комбинации с пространством имён.
- ns|* — все элементы в пространстве имён ns.
- *|* — все элементы во всех пространствах имён.
- |* — все элементы без явного указания пространства имён.
Синтаксис
* { Описание правил стиля }
Для обозначения универсального селектора применяется символ звёздочки (*). В некоторых случаях указывать универсальный селектор не обязательно. Так, например, записи *.class и .class являются идентичными по своему результату.
Пример
<!DOCTYPE html> <html lang="ru"> <head> <meta charset="utf-8"> <title>Универсальный селектор</title> <style> * { margin: 0; padding: 0; /* Убираем отступы и поля для всех элементов */ } </style> </head> <body> <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam erat volutpat.</p> </body> </html>
Примечание
Браузер Internet Explorer до шестой версии включительно понимает конструкцию * html, что нелогично, поскольку тег <html> является тегом верхнего уровня и выше него никаких элементов быть не может. Эта ошибка иногда применяется, чтобы создать стиль для IE6, например конструкция * html body { … } будет добавлять стиль для селектора body в IE6 и ниже и не работает в других браузерах.
В браузере Internet Explorer 7 при добавлении универсального селектора перед именем селектора без пробелов, он воспринимается как контекстный селектор. Так, запись *body работает только в IE7 и игнорируется другими браузерами.
Спецификация
Спецификация | Статус |
---|---|
CSS Selectors Level 3 | Рекомендация |
CSS 2.1 | Рекомендация |
Браузеры
4 | 12 | 1 | 8 | 1.1 | 1 |
1 | 1 | 8 | 1.3 |