我希望在我的网站上创建一个CSS菜单,当悬停时向右动画。 我可以自己创建设计,但我不知道如何移动它。
这是效果的演示:http://www.flashmo.com/preview/flashmo_207_vertical。
答案 0 :(得分:3)
假设我的评论是正确的,这就是你完成这项任务的方式。
HTML:
<ul id="menu">
<li>Menu Item 1</li>
<li>Menu Item 2</li>
<li>Menu Item 3</li>
</ul>
CSS:
#menu li{
width: 200px;
height: 50px;
background-color: gray;
color: lightgrey;
list-style-type: none;
margin: 5px;
text-align: center;
transition-property:margin-left;
transition-duration:1s;
transition-timing-function:linear;
/* Safari */
-webkit-transition-property:margin-left;
-webkit-transition-duration:1s;
-webkit-transition-timing-function:linear;
}
#menu li:hover{
margin-left: 25px;
}
答案 1 :(得分:2)
你能为你的网站使用jQuery吗?这将是执行您正在寻找的动画的最简单方法。如果您仅限使用CSS3动画,请参阅Charles380提供的答案
示例:
$('.bar').mouseover(function(){
$(this).animate({"margin-left": "50"});
})
$('.bar').mouseout(function(){
$(this).animate({"margin-left": "0"});
});
.bar {
width:200px;
height:100px;
}
.bar {
background-color: #000000;
margin-left:0;
margin-bottom:10px;
}
<div class="bar"></div>
<div class="bar"></div>
<div class="bar"></div>
<div class="bar"></div>
<div class="bar"></div>