- Селекторы
- Grid
- !important
- ::after
- ::backdrop
- ::before
- ::first-letter
- ::first-line
- ::-ms-browse
- ::-ms-check
- ::-ms-clear
- ::-ms-expand
- ::-ms-fill
- ::-ms-fill-lower
- ::-ms-fill-upper
- ::-ms-reveal
- ::-ms-thumb
- ::-ms-ticks-after
- ::-ms-ticks-before
- ::-ms-tooltip
- ::-ms-track
- ::-ms-value
- ::placeholder
- ::selection
- :active
- :checked
- :default
- :disabled
- :empty
- :enabled
- :first-child
- :first-of-type
- :focus
- :fullscreen
- :hover
- :indeterminate
- :in-range
- :invalid
- :lang
- :last-child
- :last-of-type
- :link
- :not
- :nth-child
- :nth-last-child
- :nth-last-of-type
- :nth-of-type
- :only-child
- :only-of-type
- :optional
- :out-of-range
- :read-only
- :read-write
- :required
- :root
- :target
- :valid
- :visited
- @charset
- @document
- @font-face
- @import
- @keyframes
- @media
- @page
- @supports
- @viewport
- align-content
- align-items
- align-self
- all
- animation
- animation-delay
- animation-direction
- animation-duration
- animation-fill-mode
- animation-iteration-count
- animation-name
- animation-play-state
- animation-timing-function
- backface-visibility
- background
- background-attachment
- background-clip
- background-color
- background-image
- background-origin
- background-position
- background-repeat
- background-size
- border
- border-bottom
- border-bottom-color
- border-bottom-left-radius
- border-bottom-right-radius
- border-bottom-style
- border-bottom-width
- border-collapse
- border-color
- border-image
- border-left
- border-left-color
- border-left-style
- border-left-width
- border-radius
- border-right
- border-right-color
- border-right-style
- border-right-width
- border-spacing
- border-style
- border-top
- border-top-color
- border-top-left-radius
- border-top-right-radius
- border-top-style
- border-top-width
- border-width
- bottom
- box-shadow
- box-sizing
- caption-side
- clear
- clip
- color
- column-count
- column-fill
- column-gap
- column-rule
- column-rule-color
- column-rule-style
- column-rule-width
- columns
- column-span
- column-width
- content
- counter-increment
- counter-reset
- cursor
- direction
- display
- empty-cells
- filter
- flex
- flex-basis
- flex-direction
- flex-flow
- flex-grow
- flex-shrink
- flex-wrap
- float
- font
- font-family
- font-kerning
- font-size
- font-stretch
- font-style
- font-variant
- font-weight
- height
- hyphens
- image-rendering
- justify-content
- left
- letter-spacing
- line-height
- list-style
- list-style-image
- list-style-position
- list-style-type
- margin
- margin-bottom
- margin-left
- margin-right
- margin-top
- marks
- max-height
- max-width
- min-height
- min-width
- -moz-orient
- object-fit
- opacity
- order
- orphans
- outline
- outline-color
- outline-offset
- outline-style
- outline-width
- overflow
- overflow-x
- overflow-y
- padding
- padding-bottom
- padding-left
- padding-right
- padding-top
- page-break-after
- page-break-before
- page-break-inside
- perspective
- perspective-origin
- pointer-events
- position
- quotes
- resize
- right
- table-layout
- tab-size
- text-align
- text-align-last
- text-decoration
- text-decoration-color
- text-decoration-line
- text-decoration-style
- text-indent
- text-overflow
- text-shadow
- text-transform
- top
- transform
- transform-origin
- transform-style
- transition
- transition-delay
- transition-duration
- transition-property
- transition-timing-function
- touch-action
- unicode-bidi
- user-select
- vertical-align
- visibility
- white-space
- widows
- width
- word-break
- word-spacing
- word-wrap
- writing-mode
- z-index
- zoom
Псевдокласс :hoverCSS3-генератор ☛
Определяет стиль элемента при наведении на него курсора мыши, но при этом элемент еще не активирован, иными словами кнопка мыши не нажата.
Синтаксис ?
Селектор:hover { ... }
✖
Обозначения
Описание | Пример | |
---|---|---|
<тип> | Указывает тип значения. | <размер> |
A && B | Значения должны выводиться в указанном порядке. | <размер> && <цвет> |
A | B | Указывает, что надо выбрать только одно значение из предложенных (A или B). | normal | small-caps |
A || B | Каждое значение может использоваться самостоятельно или совместно с другими в произвольном порядке. | width || count |
[ ] | Группирует значения. | [ crop || cross ] |
* | Повторять ноль или больше раз. | [,<время>]* |
+ | Повторять один или больше раз. | <число>+ |
? | Указанный тип, слово или группа не является обязательным. | inset? |
{A, B} | Повторять не менее A, но не более B раз. | <радиус>{1,4} |
# | Повторять один или больше раз через запятую. | <время># |
Пример 1
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>hover</title> <style> a:link { color: #0000d0; /* Цвет ссылок */ padding: 2px; /* Поля вокруг текста */ } a:hover { background: #786b59; /* Цвет фона под ссылкой */ color: #ffe; /* Цвет ссылки */ } </style> </head> <body> <p><a href="1.html">Ссылка 1</a></p> <p><a href="2.html">Ссылка 2</a></p> <p><a href="3.html">Ссылка 3</a></p> </body> </html>
В данном примере псевдокласс :hover применяется к ссылке (элементу <a>), при этом меняется цвет ссылки и фона под ней.
Пример 2
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>hover</title> </head> <body> <ul class="menu"> <li><a href="#">Русская кухня</a> <ul> <li><a href="#">Бефстроганов</a></li> <li><a href="#">Гусь с яблоками</a></li> <li><a href="#">Крупеник новгородский</a></li> <li><a href="#" class="brd">Раки по-русски</a></li> </ul> </li> <li><a href="#">Украинская кухня</a> <ul> <li><a href="#">Вареники</a></li> <li><a href="#">Жаркое по-харьковски</a></li> <li><a href="#">Капустняк черниговский</a></li> <li><a href="#" class="brd">Потапцы с помидорами</a></li> </ul> </li> <li><a href="#">Кавказская кухня</a> <ul> <li><a href="#">Суп-харчо</a></li> <li><a href="#">Лилибдж</a></li> <li><a href="#">Чихиртма</a></li> <li><a href="#" class="brd">Шашлык</a></li> </ul> </li> <li><a href="#" class="brd">Кухня Средней Азии</a></li> </ul> </body> </html>
ul { width: 180px; /* Ширина меню */ list-style: none; /* Для списка убираем маркеры */ margin: 0; /* Нет отступов вокруг */ padding: 0; /* Убираем поля вокруг текста */ font-family: Arial, sans-serif; /* Рубленый шрифт для текста меню */ font-size: 10pt; /* Размер названий в пункте меню */ } li ul { position: absolute; /* Подменю позиционируются абсолютно */ display: none; /* Скрываем подменю */ margin-left: 165px; /* Сдвигаем подменю вправо */ margin-top: -2em; /* Сдвигаем подменю вверх */ } li a { display: block; /* Ссылка как блочный элемент */ padding: 5px; /* Поля вокруг надписи */ text-decoration: none; /* Подчеркивание у ссылок убираем */ color: #666; /* Цвет текста */ border: 1px solid #ccc;/* Рамка вокруг пунктов меню */ background-color: #f0f0f0; /* Цвет фона */ border-bottom: none; /* Границу снизу не проводим */ } li a:hover { color: #ffe; /* Цвет текста активного пункта */ background-color: #5488af; /* Цвет фона активного пункта */ } li:hover ul { display: block; /* При выделении пункта курсором мыши отображается подменю */ } .brd { border-bottom: 1px solid #ccc; /* Линия снизу */ }
В данном примере псевдокласс :hover добавляется к элементу списка (<li>) для создания двухуровневого меню.
Пример 3. Горизонтальное меню
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>hover</title> </head> <body> <div class="menu"> <ul> <li><a href="#">Русская кухня</a> <ul> <li><a href="#">Бефстроганов</a></li> <li><a href="#">Гусь с яблоками</a></li> <li><a href="#">Крупеник новгородский</a></li> <li><a href="#">Раки по-русски</a></li> </ul> </li> <li><a href="#">Украинская кухня</a> <ul> <li><a href="#">Вареники</a></li> <li><a href="#">Жаркое по-харьковски</a></li> <li><a href="#">Капустняк черниговский</a></li> <li><a href="#">Потапцы с помидорами</a></li> </ul> </li> <li><a href="#">Кавказская кухня</a> <ul> <li><a href="#">Суп-харчо</a></li> <li><a href="#">Лилибдж</a></li> <li><a href="#">Чихиртма</a></li> <li><a href="#">Шашлык</a></li> </ul> </li> <li><a href="#">Кухня Средней Азии</a></li> </ul> </div> </body> </html>
.menu { display: table; border-radius: 2px; } .menu ul { display: table-row; } .menu li { display: table-cell; float: none; position: relative; background: #2767A0; } .menu li a { display: block; padding: 8px 15px; color: #fff; text-align: center; } .menu ul li:hover, .menu a:hover { background: #666; } .menu ul ul { display: none; } .menu li:hover ul { display: block; position: absolute; top: 34px; left: 0px; background: #666; margin: 0px; padding: 10px 20px; width: 150px; z-index: 9999; } .menu ul ul li { display: block; background: #666; } .menu ul ul li a { display: block; padding: 0; background: #666; text-align: left; }
Примечание
В браузере Internet Explorer до версии 7.0 псевдокласс :hover работает только для ссылок.
Браузеры: Настольные Мобильные ?
Internet Explorer | Chrome | Opera | Safari | Firefox | |
4 | 7 | 1 | 4 | 2 | 1 |
Android | Firefox Mobile | Opera Mobile | Safari Mobile |
1 | 1 | 6 | 1 |
✖
Браузеры
В таблице браузеров применяются следующие обозначения.
- — элемент полностью поддерживается браузером;
- — элемент браузером не воспринимается и игнорируется;
- — при работе возможно появление различных ошибок, либо элемент поддерживается с оговорками.
Число указывает версию браузреа, начиная с которой элемент поддерживается.