每当有人将鼠标悬停在菜单选项卡上时,我都要求客户端使菜单选项卡滑动。
至于现在,我有一个li.active卷和一个li:hover卷。
我不知道如何定义一个滚动,即将鼠标悬停在非活动菜单选项卡上时,其样式会相应地更改。
可能吗
最佳答案
这样的东西? @那家伙
的HTML
<ul class="menu">
<li><a href="#" class="active">Option1</a></li>
<li><a href="#">Option2</a></li>
<li><a href="#">Option3</a></li>
<li><a href="#">Option4</a></li>
<li class="slider"></li>
</ul>
的CSS
@import url(http://fonts.googleapis.com/css?family=PT+Sans);
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
html,
body {
margin: 0;
padding: 0;
}
body {
font-family: 'PT Sans', Arial, Verdana;
background-color: #eee;
}
h1 {
text-align: center;
font-size: 48px;
text-transform: uppercase;
letter-spacing: 3px;
color: #222;
}
.menu {
list-style: none;
margin: 0;
padding: 0;
width: 100%;
height: 120px;
margin: auto;
position: relative;
background-color: #2c3e50;
z-index: 7;
}
.menu li {
float: left;
width: 25%;
height: 100%;
margin: 0;
padding: 0;
}
.menu a {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
width: 100%;
height: 100%;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
color: #fff;
text-decoration: none;
position: relative;
font-size: 18px;
z-index: 9;
}
a.active {
background-color: #e74c3c;
pointer-events: none;
}
li.slider {
width: 25%;
height: 100%;
position: absolute;
left: 0;
top: 0;
background-color: #e74c3c;
z-index: 8;
-webkit-transition: left 0.4s, background-color 0.4s;
transition: left 0.4s, background-color 0.4s;
}
.menu li:nth-child(1):hover ~ .slider,
.menu li:nth-child(1):focus ~ .slider,
.menu li:nth-child(1):active ~ .slider {
left: 0;
background-color: #3498db;
}
.menu li:nth-child(2):hover ~ .slider,
.menu li:nth-child(2):focus ~ .slider,
.menu li:nth-child(2):active ~ .slider {
left: 25%;
background-color: purple;
}
.menu li:nth-child(3):hover ~ .slider,
.menu li:nth-child(3):focus ~ .slider,
.menu li:nth-child(3):active ~ .slider {
left: 50%;
background-color: #e67e22;
}
.menu li:nth-child(4):hover ~ .slider,
.menu li:nth-child(4):focus ~ .slider,
.menu li:nth-child(4):active ~ .slider {
left: 75%;
background-color: #16a085;
}
这是JSfiddle:http://jsfiddle.net/luiggi/Ugyh8/
关于javascript - 滑动菜单选项卡,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23107178/