我有一个菜单和子菜单,每个菜单和子菜单的宽度分别为200px。 菜单的父级有250px的宽度。当父菜单的内容太长时,子菜单无法完全显示。 我想完全显示滑动子菜单! Here就是一个例子
p,
ul,
li,
div,
nav {
padding: 0;
margin: 0;
}
body {
font-family: Calibri;
}
#menu {
overflow: auto;
position: relative;
z-index: 2;
}
.parent-menu {
background-color: #0c8fff;
min-width: 200px;
float: left;
}
#menu ul {
list-style-type: none;
}
#menu ul li a {
padding: 10px 15px;
display: block;
color: #fff;
text-decoration: none;
}
.dad {
width: 250px;
}
#menu ul li a:hover {
background-color: #007ee9;
}
#menu ul li:hover > ul {
left: 200px;
-webkit-transition: left 200ms ease-in;
-moz-transition: left 200ms ease-in;
-ms-transition: left 200ms ease-in;
transition: left 200ms ease-in;
}
#menu ul li > ul {
position: absolute;
background-color: #333;
top: 0;
left: -200px;
min-width: 200px;
z-index: -1;
height: 100%;
-webkit-transition: left 200ms ease-in;
-moz-transition: left 200ms ease-in;
-ms-transition: left 200ms ease-in;
transition: left 200ms ease-in;
}
#menu ul li > ul li a:hover {
background-color: #2e2e2e;
}
<div class="dad">
<nav id="menu">
<ul class="parent-menu">
<li>
<a href="#">Home & Kitchen</a>
<ul>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
</ul>
</li>
<li>
<a href="#">Electronics</a>
<ul>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
</ul>
</li>
<li>
<a href="#">Clothing</a>
<ul>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
</ul>
</li>
<li>
<a href="#">Cars & Motorbikes</a>
<ul>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
</ul>
</li>
<li>
<a href="#">Books</a>
<ul>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
</ul>
</li>
<li>
<a href="#">Support</a>
<ul>
<li><a href="#">Contact Us</a>
</li>
<li><a href="#">Forum</a>
</li>
<li><a href="#">Deliveries</a>
</li>
<li><a href="#">T&C</a>
</li>
</ul>
</li>
</ul>
</nav>
</div>
答案 0 :(得分:0)
移除overflow:auto
并将position:relative
添加到#menu
并使用left:0
到您的第二级ul
。
p,
ul,
li,
div,
nav {
padding: 0;
margin: 0;
}
.dad {
width: 250px;
}
#menu {
// overflow: auto;
position: relative;
z-index: 2;
}
.parent-menu {
background-color: #0c8fff;
position: relative;
min-width: 200px;
float: left;
}
#menu ul {
list-style-type: none;
}
#menu ul li a {
padding: 10px 15px;
display: block;
color: #fff;
text-decoration: none;
}
#menu ul li a:hover {
background-color: #007ee9;
}
#menu ul li:hover > ul {
left: 200px;
-webkit-transition: left 200ms ease-in;
-moz-transition: left 200ms ease-in;
-ms-transition: left 200ms ease-in;
transition: left 200ms ease-in;
}
#menu ul li > ul {
position: absolute;
background-color: #333;
top: 0;
left: 0px;
min-width: 200px;
z-index: -1;
height: 100%;
-webkit-transition: left 200ms ease-in;
-moz-transition: left 200ms ease-in;
-ms-transition: left 200ms ease-in;
transition: left 200ms ease-in;
}
#menu ul li > ul li a:hover {
background-color: #2e2e2e;
}
&#13;
<div class="dad">
<nav id="menu">
<ul class="parent-menu">
<li>
<a href="#">Home & Kitchen</a>
<ul>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
</ul>
</li>
<li>
<a href="#">Electronics</a>
<ul>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
</ul>
</li>
<li>
<a href="#">Clothing</a>
<ul>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
</ul>
</li>
<li>
<a href="#">Cars & Motorbikes</a>
<ul>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
</ul>
</li>
<li>
<a href="#">Books</a>
<ul>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
<li><a href="#">item</a>
</li>
</ul>
</li>
<li>
<a href="#">Support</a>
<ul>
<li><a href="#">Contact Us</a>
</li>
<li><a href="#">Forum</a>
</li>
<li><a href="#">Deliveries</a>
</li>
<li><a href="#">T&C</a>
</li>
</ul>
</li>
</ul>
</nav>
</div>
&#13;