垂直动画css ul li菜单

时间:2013-08-06 17:28:22

标签: html html5 css3 css

我希望在我的网站上创建一个CSS菜单,当悬停时向右动画。 我可以自己创建设计,但我不知道如何移动它。

这是效果的演示:http://www.flashmo.com/preview/flashmo_207_vertical

2 个答案:

答案 0 :(得分:3)

假设我的评论是正确的,这就是你完成这项任务的方式。

有效JsFiddle example

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提供的答案

jsFiddle

示例:

的jQuery

$('.bar').mouseover(function(){
    $(this).animate({"margin-left": "50"});
})

$('.bar').mouseout(function(){
    $(this).animate({"margin-left": "0"});
});

CSS

.bar {
    width:200px;
    height:100px;
}
.bar {
    background-color: #000000;
    margin-left:0;
    margin-bottom:10px;
}

HTML

<div class="bar"></div>
<div class="bar"></div>
<div class="bar"></div>
<div class="bar"></div>
<div class="bar"></div>