Іноді потрібно встановити одночасно один стиль для всіх елементів веб-сторінки, наприклад, встановити шрифт або зображення тексту. У цьому випадку допоможе універсальний селектор, який відповідає будь-якому елементу веб-сторінки.
У CSS3 універсальний селектор застосовується також у комбінації з простором імен.
- ns|* — всі елементи у просторі імен ns.
- *|* — всі елементи у всіх просторах імен .
- |* — всі елементи без явної вказівки простору імен.
Синтаксис
<code>* { Опис правил стилю }Для позначення універсального селектора застосовується символ зірочки (*). У деяких випадках вказувати універсальний селектор не обов'язково. Так, наприклад, записи *.class та .class є ідентичними за своїм результатом.
Позначення
| Опис | Приклад | |
|---|---|---|
| <тип> | Вказує тип значення. | <размер> |
| A && B | Значення повинні виводитися в зазначеному порядку. | <размер> && <колір> |
| A | B | Вказує, що потрібно вибрати лише одне значення із запропонованих (A або B). | normal | small-caps |
| A || B | Кожне значення може використовуватися самостійно або спільно з іншими у довільному порядку. | width || count |
| [ ] | Групує значення. | [ crop || cross ] |
| * | Повторювати нуль або більше разів. | [,<час>]* |
| + | Повторювати один або більше разів. | <число>+ |
| ? | Вказаний тип, слово або група не є обов'язковим. | inset? |
| {A, B} | Повторювати не менше A, але не більше B разів. | <радіус>{1,4} |
| # | Повторювати один або більше разів через кому. | <час># |
Приклад
<!DOCTYPE html>
<html>
<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 at 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 | Рекомендація |
Специфікація
Кожна специфікація проходить кілька стадій схвалення ня.
- Recommendation (Рекомендація) — специфікація схвалена W3C і рекомендована як стандарт.
- Candidate Recommendation (Можлива рекомендація) — група, яка відповідає за стандарт, задоволена, як він відповідає своїм цілям, але потрібна допомога спільноти розробників з реалізації стандарту.) — на цьому етапі документ представлений на розгляд Консультативної ради W3C для остаточного затвердження. та внесення поправок для розгляду спільнотою.
- Editor's draft (Редакторська чернетка) — чорнова версія стандарту після внесення змін до редакторів проекту.
- Draft (Чернетка специфікації) — перша чорнова версія стандарту.
Браузери
| 4 | 12 | 1 | 8 | 1.1 | 1 |
