如何使图像悬停在css中?
我想在悬停时将图像从正常更改为更亮,我的代码:
<div class="nkhome"><a href="Home.html"><img src="Images/btnhome.png"/></a></div>.nkhome{左边距:260px;顶部:170px;位置:绝对;宽度:59px;高度:59px;}.nkhome 一个 img:hover {背景:网址(图片/btnhomeh.png);位置:绝对;顶部:0px;}
为什么悬停不起作用?当我的鼠标在它上面时,它会显示第一张图像,而不是悬停图像.
解决方案你有一个包含 img
标签的 a
标签.那是你的正常状态.然后添加一个 background-image
作为悬停状态,它会出现在 a
标签的背景中 - 在 img
标签后面.
您可能应该创建一个 CSS 精灵并使用背景位置,但这应该可以帮助您开始:
<a href="home.html"></a></div>div一个{宽度:59px;高度:59px;显示:块;背景图片: url('images/btnhome.png');}div a:悬停{背景图片: url('images/btnhomeh.png);}
这篇 A List Apart 2004 年的文章 仍然具有相关性,将为您提供一些关于sprites,以及为什么使用它们而不是两个不同的图像是个好主意.写得比我能向你解释的任何东西都要好.
I want to change the image from normal to brighter when it's on hover, My code:
<div class="nkhome">
<a href="Home.html"><img src="Images/btnhome.png" /></a>
</div>
.nkhome{
margin-left:260px;
top:170px;
position:absolute;
width:59px;
height:59px;
}
.nkhome a img:hover {
background:url(Images/btnhomeh.png);
position:absolute;
top:0px;
}
Why doesn't work the hover? When my mouse is on it, it shows the first image, not the hover image.
解决方案You've got an a
tag containing an img
tag. That's your normal state.
You then add a background-image
as your hover state, and it's appearing in the background of your a
tag - behind the img
tag.
You should probably create a CSS sprite and use background positions, but this should get you started:
<div>
<a href="home.html"></a>
</div>
div a {
width: 59px;
height: 59px;
display: block;
background-image: url('images/btnhome.png');
}
div a:hover {
background-image: url('images/btnhomeh.png);
}
This A List Apart Article from 2004 is still relevant, and will give you some background about sprites, and why it's a good idea to use them instead of two different images. It's a lot better written than anything I could explain to you.
相关文章