Перейти к основному содержимому

Интерактивные псевдоклассы

Эти псевдоклассы стилизуют элементы в зависимости от того, как пользователь с ними взаимодействует.


Псевдоклассы, используемые для ссылок

Для ссылок обычно используются четыре псевдокласса: :link для непосещённых ссылок, :visited для посещённых, :hover для мыши над ссылкой и :active для активированной ссылки.

Пример

Цвет ссылки здесь зависит от её состояния.

Примечание: Чтобы a:hover работал, он ДОЛЖЕН идти после a:link и a:visited в CSS. Чтобы a:active работал, он ДОЛЖЕН идти после a:hover. Регистр в названиях псевдоклассов не имеет значения.

Prompt
Отображайте ссылки разными цветами в зависимости от их состояния. Используйте a:link (красный #FF0000), a:visited (зелёный #00FF00), a:hover (пурпурный #FF00FF) и a:active (синий #0000FF). Включите пример ссылки для демонстрации.
Результат: полная HTML-страница

:hover на <div>

На :hover реагируют не только ссылки; его могут использовать и другие элементы.

Пример

Prompt
Продемонстрируйте псевдокласс :hover на элементе div. Когда пользователь наводит курсор на div, измените его background-color на синий. У div должен быть текстовый контент и начальный стиль, чтобы эффект наведения был заметен.
Результат: полная HTML-страница

:focus на <input>

Элемент, получающий фокус, например поле ввода, по которому пользователь щёлкает или к которому переходит клавишей Tab, можно стилизовать через псевдокласс :focus.

Пример

Prompt
Продемонстрируйте псевдокласс :focus на поле ввода. Когда поле ввода получает фокус, измените его background-color на жёлтый. Включите label и поле ввода.
Результат: полная HTML-страница

Псевдоклассы и классы HTML

Комбинировать псевдоклассы с классами HTML легко.

Пример

Здесь :hover применяется только к элементу <a> с классом «highlight».

Prompt
Объедините псевдокласс с HTML-классом. Используйте селектор a.highlight:hover, чтобы изменить цвет на красный (#ff0000) при наведении на ссылки с классом "highlight". Включите и обычную ссылку, и ссылку с highlight, чтобы показать разницу.
Результат: полная HTML-страница

Простая подсказка при наведении

Для простого эффекта всплывающей подсказки достаточно :hover: скрытый элемент появляется, когда пользователь наводит курсор на его родительский элемент.

Пример

Элемент <p> появляется, как подсказка, при наведении курсора на элемент <div>.

Prompt
Создайте простой эффект подсказки (tooltip) с помощью :hover. Абзац по умолчанию скрыт (display: none) с жёлтым фоном и отступом 20px. Когда пользователь наводит курсор на родительский div, абзац становится видимым (display: block). Текст div гласит: "Наведи на меня курсор, чтобы показать элемент p."
Результат: полная HTML-страница