Использование :hover | WebReference
На примере ссылок использование :hover выглядит следующим образом.
a { color: green; }
a:hover { color: red; }Сперва мы определяем исходный стиль элемента, в частности, задаём цвет ссылок с помощью селектора A зелёным. Затем ниже пишем тот же селектор и через двоеточие без пробелов добавляем к нему :hover. После этого идут стилевые правила, которые должны проявляться при наведении курсора на элемент. В данном случае мы меняем цвет ссылки на красный.
:hover прекрасно сочетается не только с простыми селекторами элементов, но и с классами, а также работает в комбинациях селекторов, что позволяет на одной веб-странице делать группы ссылок разных видов. В примере 1 ссылки в <header> добавлены без традиционного подчёркивания через свойство text-decoration со значением none. При наведении на эти ссылки добавляется подчёркивание с помощью значения underline. В <footer> ссылки при наведении просто меняют свой цвет.
Пример 1. Использование :hover для ссылок
<!DOCTYPE html> <html> <head> <meta charset=»utf-8″> <title>Сальса</title> <style> header { background: #e2edc1; } footer { background: #f4783b; } ul { margin: 0; padding: 10px; } li { display: inline; margin-right: 10px; } header a { color: #333391; /* Цвет ссылок */ text-decoration: none; /* Убираем подчёркивание */ } header a:hover { text-decoration: underline; /* Добавляем подчёркивание при наведении */ } footer a { color: #fff; } footer a:hover { color: #333; } </style> </head> <body> <header> <ul> <li><a href=»#»>Uno</a></li> <li><a href=»#»>Dos</a></li> <li><a href=»#»>Tres</a></li> </ul> </header> <main> <p>Сальса — современный социальный танец. Как многие латиноамериканские танцы, сальса экспрессивна, разнообразна и богата импровизацией.
Рис. 1. Ссылки разных цветов
Надо учитывать, что в некоторых ситуациях :hover может не давать видимого результата, когда он неявно переопределяется. В приведённом стиле :hover не меняет цвет у посещённых ссылок, поскольку псевдокласс :visited располагается в коде ниже :hover.
a { color: green; }
a:hover { color: red; }
a:visited { color: purple; }Обращайте внимание, что положение в коде влияет на конечный результат. Достаточно поставить :hover ниже :visited и цвет посещённых ссылок при наведении будет меняться на красный.
a { color: green; }
a:visited { color: purple; }
a:hover { color: red; }См.
также- :focus на мобильных устройствах
- <a>
- text-decoration-skip-ink
- Виды ссылок
- Всплывающая подсказка
- Наследование в CSS
- Нормальное позиционирование
- Переходы с помощью :hover
- Подсветка строк и колонок таблицы
- Псевдокласс :hover
- Псевдоклассы в CSS
- Работа с типографикой
- Селекторы CSS
- Сочетание с псевдоклассами
- Ссылки
- Ссылки
- Ссылки в HTML
- Якоря
Автор и редакторы
Автор: Влад Мержевич
Последнее изменение: 11.
03.2020
Редакторы: Влад Мержевич
Псевдокласс :hover
Ctrl+←
Подсветка строк и колонок таблицы
Ctrl+→
html — Установить: наведение на основе класса
Задавать вопрос
спросил
Изменено 1 год, 6 месяцев назад
Просмотрено 237 тысяч раз
У меня есть следующий HTML:
В CSS я хочу установить a:hover для этих пунктов меню на определенный цвет. Поэтому я пишу:
.menu a:hover
{
цвет:#ДДД;
}
Но я хочу установить этот цвет a:hover только для тех тегов с классом main-nav-item , а не main-nav-item-current , потому что он имеет другой цвет и не должен меняться при наведении.
Все теги
Как это сделать с помощью CSS?
Я пробовал что-то вроде
.menu a:hover .main-nav-item
{
цвет:#ДДД;
}
думая, что только те, у которых есть класс main-nav-item, будут менять цвет при наведении, а не текущий. Но это не работает.
- html
- css
- цветов
- наведение
- привязка
Попробуйте это:
.menu a.main-nav-item:hover { }
Чтобы понять, как это работает, важно читать это так, как это делает браузер. a определяет элемент, .main-nav-item квалифицирует элемент только к тем, которые имеют этот класс, и, наконец, псевдокласс применяется к уточненному выражению, которое идет раньше.
В основном это сводится к следующему:
Примените это правило наведения ко всем элементам привязки с классом
main-nav-item, которые являются потомками любого элемента с меню класса.
2
Каскадирование вас кусает. Попробуйте это:
.menu > .main-nav-item:hover
{
цвет:#ДДД;
}
В этом коде говорится, что нужно захватить все ссылки, которые имеют класс main-nav-item И являются дочерними элементами меню класса, и применять цвет #DDD при наведении на них курсора.
1
Установите a:hover на основе класса, который вы можете просто попробовать:
a.main-nav-item:hover { }
как насчет .main-nav-item: hover
это снижает специфичность
попробуйте это
.div
{
текстовое оформление: нет;
размер шрифта: 16;
дисплей:блок;
отступ: 14 пикселей;
}
.div а: наведите курсор
{
цвет фона:#080808;
белый цвет;
}
Допустим, у нас есть тег привязки, используемый в нашем коде, и класс "div" вызывается в основной программе. a:hover сделает свое дело, он придаст черному цвету вампира фон и белый цвет тексту, когда над ним будет наведена мышь, вот что означает наведение.
Одной из распространенных ошибок является оставление пробела перед именами классов. Даже если это был правильный синтаксис:
.menu a:hover .main-nav-item
это никогда бы не сработало.
Поэтому вы бы не писали
.menu a .main-nav-item:hover
будет
.menu a.main-nav-item:hover
Я обнаружил, что если вы добавите !important , он будет работать, хотя раньше этого не было.
a.main-nav-item: ссылка {
цвет: синий !важно;
}
a.main-nav-item: посетил {
цвет: красный !важно;
}
a.main-nav-item: hover {
цвет: фиолетовый !важно;
}
a.main-nav-item: фокус {
цвет: зеленый !важно;
}
a.main-nav-item:active {
цвет: зеленый !важно;
}
Кроме того, я где-то читал, что порядок важен. Мнемоника «LoVe HaTe» поможет вам запомнить это: ссылка -> посещено -> наведите курсор -> активен
.Зарегистрируйтесь или войдите в систему
Зарегистрируйтесь с помощью Google
Зарегистрироваться через Facebook
Зарегистрируйтесь, используя электронную почту и пароль
Опубликовать как гость
Электронная почта
Требуется, но не отображается
Опубликовать как гость
Электронная почта
Требуется, но не отображается
html - CSS Hover только на текст?
Задавать вопрос
спросил
Изменено 1 год, 11 месяцев назад
Просмотрено 9к раз
Если у меня есть следующий HTML-код с пользовательским классом CSS:
.custom_list_item { черный цвет; } .custom_list_item:наведите { красный цвет; }
Test
Таким образом, при наведении курсора на все поле текст становится красным. Есть ли способ убедиться, что это происходит только при наведении курсора только на сам текст?
- HTML
- CSS
- текст
- наведение
3
Оберните его пролетом . p растянулся бы на всю ширину div .
.custom_list_item {
черный цвет;
}
.custom_list_item диапазон: наведение {
красный цвет;
} Тест
1
Оберните его в диапазон, затем введите стиль:
.custom_list_item {
черный цвет;
}
.custom_list_item диапазон: наведите {
красный цвет;
} <дел>
Тест
дел> 2
Изменить свойство display этого div с блок до встроенный блок .


custom_list_item {
черный цвет;
}
.custom_list_item:наведите {
красный цвет;
}