Псевдоклас :first-child задає стиль першого елемента в групі братських елементів (що мають одного з батьків).
Як приклад розглянемо наступний код HTML:
<article> <h1>Роль цитокінів при дорсалгії</h1> <p>Автор: Гордон Фрімен, канд. фіз.-мат. наук</p> <p>Зміст статті</p> <address>Пошта: freemen@blackmesa.com</address> <p>Опубліковано: <time datetime="2018-11-27">27 листопада 2018</time></p> </article>
Псевдоклас :first-child без вказівки селектора вибере всі перші елементи всередині < ;article> і встановить для них червоний колір тексту. Тут першими йдуть <h1> та <time>, вони і будуть обрані.
article :first-child { color: red; }
При додаванні селектора до :first-child спочатку береться перший елемент, потім виглядає якого він типу. Якщо елемент збігається із зазначеним селектором, він буде обраний. Таким чином, вибирається елемент, якщо він відповідає двом умовам одночасно: це перший елемент і це елемент зазначеного типу. Тут червоним кольором буде виділено заголовок, оскільки першим йде саме <h1>.
article h1:first-child {color: red; }
Якщо замість h1 використовувати інший селектор, то нічого вибрано не буде, оскільки не виконується умова «перший елемент це <p>».
article p:first-child { color: red; }
Для вибору першого елемента певного типу використовуйте псевдоклас :first-of-type .
Замість :first-child можна використовувати :nth-of-child(1).
Синтаксис
<code><i>Селектор</i>:first-child { ... }
Позначення
Опис | Приклад | |
---|---|---|
<тип> | Вказує тип значення. | <розмір> |
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>first-child</title> <style> B:first-child { color: red; /* Червоний колір тексту */ } </style> </head> <body> <p><b>Lorem ipsum</b> dolor sit amet, <b>consectetuer</b> adipiscing <b>elit</b>; <p><b>Ut wisis enim</b> ad minim veniam, <b>quis nostrud</b> exerci tution ullamcorper suscipit lobortis nisl ut aliquip ex ea <b>commodo consequat</b>.</p> </body> </html>
Результат прикладу показаний на мал. 1. У цьому прикладі псевдоклас :first-child додається до селектора b і встановлює для нього червоний колір тексту. Хоча контейнер <b> зустрічається в першому абзаці три рази, червоним кольором буде виділено лише першу згадку, тобто. текст "Lorem ipsum". В інших випадках вміст контейнера <b> відображається чорним кольором. З наступним абзацом все починається знову, оскільки батьківський елемент змінився. Тому фраза «Ut wisis enim» також буде виділена червоним кольором.
Мал. 1. Виділення кольором першого дочірнього елемента абзацу
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Меню</title> <style> .links { background: #F6967D; /* Колір тла */ } .links a { color: #FFFDEB; /* Колір посилань */ display: inline-block; /* Рядково-блоковий елемент */ border-left: 1px solid #B62025; /* Параметри рамки зліва */ padding: 5px 10px; /* Поля навколо посилань */ } .links a:first-child { border-left: none; /* Забираємо першу лінію зліва */ } </style> </head> <body> <div class="links"> <a href="page/1.html">uno</a> <a href="page/2.html">dos</a> <a href="page/3.html">tres</a> <a href="page/4.html">cuatro</a> </div> </body> </html>
Результат цього прикладу показаний на мал. 2.
Мал. 2. Посилання з лінією зліва
Специфікація
Специфікація | Статус |
---|---|
Selectors Level 4 | Робочий проект |
Selectors Level 3 | Рекомендація |
Специфікація
Кожна специфікація проходить кілька стадій схвалення.
- Recommendation (Рекомендація) — специфікація схвалена W3C і рекомендована як стандарт.
- Candidate Recommendation (Можлива рекомендація) — група, яка відповідає за стандарт, задоволена, як він відповідає своїм цілям, але потрібна допомога спільноти розробників з реалізації стандарту.) — на цьому етапі документ представлений на розгляд Консультативної ради W3C для остаточного затвердження. та внесення поправок для розгляду спільнотою.
- Editor's draft (Редакторська чернетка) — чорнова версія стандарту після внесення змін до редакторів проекту.
- Draft (Чернетка специфікації) — перша чорнова версія стандарту.
Браузери
7 | 12 | 4 | 9.5 | 4 | 3 |