Применение псевдокласса в CSS

e8c0a063 370a 4ae2 ba4a 3b45384eb275 HTML

В этом кратком обзоре мы рассмотрим, для каких целей используется псевдокласс :focus-within в CSS и как его можно применять.

Что такое псевдокласс

?

Псевдокласс :focus-within применяется к элементу, который находится в фокусе, или к элементу, который содержит потомков, находящихся в фокусе.

Состояние в фокусе (:focus) — это состояние элемента при клике по нему мышкой или при выборе с помощью клавиши Tab на клавиатуре. Например, это состояние свойственно для поля ввода или ссылки.

Основное отличие

от

Псевдокласс :focus применяется только к элементу, находящемуся в фокусе, не распространяясь на его родителя. В отличие от этого, :focus-within позволяет выбирать элемент, содержащий дочерний элемент, находящийся в фокусе, или несколько элементов-потомков с потенциальным состоянием :focus.

Примеры использования

Изменение свойств формы

Псевдокласс :focus-within полезен, когда нужно изменить свойства формы, если одно из ее полей ввода находится в фокусе.

<form class="form">
<input type="text" placeholder="Name">
<input type="email" placeholder="Email">
<textarea placeholder="Message"></textarea>
</form>
.form:focus-within {
border: 2px solid blue;
}

Изменение параметров строки таблицы

С помощью :focus-within можно изменять параметры строки таблицы при выборе одной из ее ячеек.

<table>
<tr>
<td><input type="text" placeholder="Cell 1"></td>
<td><input type="text" placeholder="Cell 2"></td>
</tr>
<tr>
<td><input type="text" placeholder="Cell 3"></td>
<td><input type="text" placeholder="Cell 4"></td>
</tr>
</table>
tr:focus-within {
background-color: lightgrey;
}

Поддержка браузеров

С 2020 года псевдокласс :focus-within поддерживается практически всеми ведущими браузерами, кроме Internet Explorer.

Заключение

Псевдокласс :focus-within предоставляет гибкий способ изменения стилей элементов, содержащих дочерние элементы в фокусе. Его использование может значительно улучшить взаимодействие пользователя с формами и другими интерактивными элементами на веб-странице.

Применение таких простых, но мощных инструментов позволяет создавать более интуитивные и удобные пользовательские интерфейсы.

Оцените статью