CSS :hover Selector
Example
Select and style a link when you mouse over it:
a:hover
{
background-color: yellow;
}
Try it Yourself »
More "Try it Yourself" examples below.
Definition and Usage
The :hover
selector is used to select elements when you mouse over them.
Tip: The :hover selector can be used on all elements, not only on links.
Tip: Use the :link selector to style links to unvisited pages, the :visited selector to style links to visited pages, and the :active selector to style the active link.
Note: :hover MUST come after :link and :visited (if they are present) in the CSS definition, in order to be effective!
Version: | CSS1 |
---|
Browser Support
The numbers in the table specifies the first browser version that fully supports the selector.
Selector | |||||
---|---|---|---|---|---|
:hover | 4.0 | 7.0 | 2.0 | 3.1 | 9.6 |
Note: In IE there must be declared a <!DOCTYPE> for the :hover selector to work on other elements than the <a> element.
CSS Syntax
More Examples
Example
Select and style a <p>, <h1> and <a> element when you mouse over it:
p:hover, h1:hover, a:hover {
background-color: yellow;
}
Try it Yourself »
Example
Select and style unvisited, visited, hover, and active links:
/* unvisited link */
a:link {
color: green;
}
/* visited link */
a:visited {
color: green;
}
/* mouse over link */
a:hover {
color: red;
}
/* selected link */
a:active {
color: yellow;
}
Try it Yourself »
Example
Style links with different styles:
a.ex1:hover, a.ex1:active {
color: red;
}
a.ex2:hover, a.ex2:active {
font-size: 150%;
}
Try it Yourself »
Example
Hover over a <span> element to show a <div> element (like a tooltip):
div {
display: none;
}
span:hover + div {
display: block;
}
Try it Yourself »
Example
Show and hide a "dropdown" menu on mouse hover:
ul {
display: inline;
margin: 0;
padding: 0;
}
ul li {display: inline-block;}
ul li:hover {background: #555;}
ul li:hover ul {display: block;}
ul li ul {
position: absolute;
width: 200px;
display: none;
}
ul li ul li {
background: #555;
display: block;
}
ul li ul li a {display:block !important;}
ul li ul li:hover {background: #666;}
Try it Yourself »
Related Pages
CSS tutorial: CSS Links
CSS tutorial: CSS Pseudo classes