Псевдоклас :only-of-type застосовується до дочірнього елемента вказаного типу, тільки якщо він єдиний у батька.
>Як приклад розглянемо наступний код HTML:
<article> <h1>Роль цитокінів при дорсалгії</h1> <p>Автор: Гордон Фрімен, канд. фіз.-мат. наук</p> <p>Зміст статті</p> <address>Пошта: freemen@blackmesa.com</address> <p>Опубліковано: <time datetime="2018-11-27">27 листопада 2018</time></p> </article>
Псевдоклас :only-of-type без вказівки селектора вибере всі єдині елементи кожного типу всередині <article> та встановить для них червоний колір тексту. Тут єдиними є елементи <h1>, <address> та <time> .
article :only-of-type { color: red; }
При додаванні селектора до :only-of-type спочатку розглядається вказаний елемент, потім перевіряється, чи він єдиний. Тут червоним кольором буде виділено заголовок, оскільки <h1> лише один.
article h1:only-of-type {color: red; }
Якщо замість h1 використовувати селектор p, то нічого вибрано не буде, оскільки всередині <article> зустрічається кілька абзаців і елемент <p> не єдиний.
article p:only-of-type { color: red; }
Замість :only-of-type можна використовувати комбінації :first-of-type:last-of-type або :nth-of-type(1):nth-last-of-type(1).
>Синтаксис
<code> <i>Селектор</i>:only-of-type { ... }
Позначення
Опис | Приклад | |
---|---|---|
<тип> | Вказує тип значення. | <розмір> |
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>only-of-type</title> <style> img:only-of-type { border: 2px solid red; /* Параметри рамки */ } </style> </head> <body> <p><img src="image/figure.jpg" alt=""> <img src="image/figure.jpg" alt=""></p> <p><img src="image/figure.jpg" alt=""></p> </body> </html>
У прикладі псевдоклас :only-of-type застосовується до селектора img, у правилах стилю якого задається рамка червоного кольору картинок. Сама рамка додається до зображень, які у своїх батьків (в даному випадку це <p>) зустрічаються лише один раз. У першому рядку повторюються два зображення, тому псевдоклас не діє, у другому рядку вставлено одне зображення, для нього :only-of-type і працює.
Мал. 1. Застосування псевдокласу :only-of-type до картинок
Специфікація
Специфікація | Статус |
---|---|
Selectors Level 4 | Робочий проект |
Selectors Level 3 | Рекомендація |
Специфікація
Кожна специфікація проходить кілька стадій схвалення.
- Recommendation (Рекомендація) — специфікація схвалена W3C і рекомендована як стандарт.
- Candidate Recommendation (Можлива рекомендація) — група, яка відповідає за стандарт, задоволена, як він відповідає своїм цілям, але потрібна допомога спільноти розробників з реалізації стандарту.) — на цьому етапі документ представлений на розгляд Консультативної ради W3C для остаточного затвердження. та внесення поправок для розгляду спільнотою.
- Editor's draft (Редакторська чернетка) — чорнова версія стандарту після внесення змін до редакторів проекту.
- Draft (Чернетка специфікації) — перша чорнова версія стандарту.
Браузери
9 | 12 | 1 | 9.5 | 3.2 | 3.5 |
2.1 | 1 | 10 | 3.2 |
Браузери
У таблиці браузерів застосовуються такі позначення.
- — властивість повністю підтримується браузером з усіма допустимими значеннями;
- — властивість браузером не сприймається та ігнорується;
- — при роботі можлива поява різних помилок, або властивість підтримується лише частково, наприклад, не всі допустимі знання акції діють або властивість застосовується не до всіх елементів, які вказані в специфікації.