我正在创建一个网站,并希望通过加载我在Photoshop中创建的颜色略有不同的另一个图像/按钮,在我的按钮上添加悬停效果。
当我应用代码时,没有任何事情发生。
这是我的代码:
CSS:
#main{
position: relative;
background-color:#ececec;
height:900px;
margin-top: 10px;
margin-left: 10px;
margin-right: 10px;
}
#main .button2{
position: absolute;
left:0.5%;
top: 71.5%;
z-index:20;
width:170px;
height:40px;
}
#main .button2:hover{
background-image : url(images/buttBootsRollover.png);
}
HTML:
<div id="main">
<article>
<section>
<a href="#index.php" > <img src="images/buttGloves.png" class="button" /></a>
<a href="#index.php" > <img src="images/buttBoots.png" class="button2" /></a>
<a href="#index.php" > <img src="images/buttEqu.png" class="button3" /></a>
</section>
</article>
以下是可能提供更好概述的图片:
最终我想在所有9个按钮上添加相同的悬停效果
答案 0 :(得分:0)
你这样做的方式有点偏。您在包含图像的元素上设置background-image属性,该图像(可能)占据了元素的整个空间。你试图解决这个问题会让自己头疼,所以不要解释为什么你会得到你的结果,我只是告诉你不要这样做并给你一个解决方案:< / p>
摆脱div元素中的img元素。将button2类的background-image属性更改为您想要的默认图像。保留你的.button2:hover属性。
答案 1 :(得分:0)
这就是你要找的东西。但我相信你至少没有尝试过Google。我建议你先学习一个简单的CSS教程。
#main{
background-color:#ececec;
height:500px;
width: 600px;
margin:0px auto;
}
.button{
z-index:1000;
width:170px;
height:40px;
display:block;
background-repeat:no-repeat;
}
#but_one{
background-image : url(images/but_one.png);
}
#but_two{
background-image : url(images/but_two.png);
}
#but_three{
background-image : url(images/but_three.png);
}
#but_one:hover{
background-image : url(images/but_one_h.png);
}
#but_two:hover{
background-image : url(images/but_two_h.png);
}
#but_three:hover{
background-image : url(images/but_three_h.png);
}
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="main.css" />
<title>hi css</title>
</head>
<body>
<div id="main">
<a href="index.php" ><img id="but_one" class="button" /></a>
<a href="index.php" ><img id="but_two" class="button" /></a>
<a href="index.php" ><img id="but_three" class="button" /></a>
<div>
</body>
</html>
答案 2 :(得分:0)
也许要实现你想要的你需要jquery
<div class="box">
<a href="#index.php" > <img src="images/buttGloves.png" class="button" /></a>
<div class="overlay">play me!</div>
</div>
<div class="box">
<a href="#index.php" > <img src="images/buttBoots.png" class="button2" /></a>
<div class="overlay">play me!</div>
</div>
<div class="box">
<a href="#index.php" > <img src="images/buttEqu.png" class="button3" /></a>
<div class="overlay">play me!</div>
</div>
jquery的
$(function(){
$(".box").hover(function(){
$(this).find(".overlay").fadeIn();
}
,function(){
$(this).find(".overlay").fadeOut();
}
);
});
工作demo
答案 3 :(得分:0)
只需拥有一张背景图片并隐藏一点。
例如 - 如此处所示,加倍http://jsfiddle.net/edheal/Qb7YG
这是代码
CSS:
#wibble
{
background-image: url(http://well-spun.co.uk/portfolio/technologies/images/rollover.png);
background-position: left top;
background-repeat: no-repeat;
height: 14px;
width: 200px;
}
#wibble:hover
{
background-position: left -14px;
}
HTML:
<div id="wibble">
</div>
图像高28px - 根据是否悬停显示上半部分或下半部分。