CSS中的垂直菜单定位问题
Vertical menu positioning problems in CSS
当你将鼠标悬停在它上面时,会打开一个框。现在问题来了,我想要的盒子的位置被固定在一个地方,所以每当你悬停在菜单上的盒子仍然在同一个地方。我希望你们能理解我,还有一件事,当有人打开我的网页时,我希望菜单的第一个列表项被默认选中。
这是我的CSS:#cssmenu ul{
list-style: none;
margin: 0;
padding: 0;
vertical-align: baseline;
line-height: 1;
}
#cssmenu ul {
display: block;
position: absolute;
width: 150px;
top: 500px;
left: 900px;
}
#cssmenu ul li {
display: block;
position: relative;
margin: 0;
padding: 0;
width: 150px;
}
#cssmenu ul li a {
display: block;
position: relative;
margin: 0;
border-top: 1px dotted #fff;
border-bottom: 1px dotted #d9d9d9;
padding: 11px 20px;
width: 150px;
font-family: Helvetica, Arial, sans-serif;
color: #3dafea;
text-decoration: none;
text-transform: uppercase;
text-shadow: 0 1px 0 #fff;
font-size: 13px;
font-weight: 300;
background: #eaeaea;
}
#cssmenu ul li a:hover, #cssmenu ul li:hover a {
color: #fff;
background: #54cdf1;
background: -webkit-linear-gradient(bottom, #54cdf1, #74d7f3);
background: -ms-linear-gradient(bottom, #54cdf1, #74d7f3);
background: -moz-linear-gradient(bottom, #54cdf1, #74d7f3);
background: -o-linear-gradient(bottom, #54cdf1, #74d7f3);
border-color: transparent;
}
#cssmenu ul .has-sub a::after {
content: '';
position: absolute;
top: 16px;
right: 10px;
width: 0px;
height: 0px;
border: 4px solid transparent;
border-left: 4px solid #3dafea;
}
#cssmenu ul .has-sub a::before {
content: '';
position: absolute;
top: 17px;
right: 10px;
width: 0px;
height: 0px;
border: 4px solid transparent;
border-left: 4px solid #fff;
}
#cssmenu ul li a:hover::after, #cssmenu ul li:hover a::after {
border-left: 4px solid #fff;
}
#cssmenu ul li a:hover::before, #cssmenu ul li:hover a::before {
border-left: 4px solid rgba(0, 0, 0, .25);
}
#cssmenu ul ul {
position: absolute;
left: 190px;
top: -9999px;
padding-left: 5px;
opacity: 0;
-webkit-transition: opacity .3s ease-in;
-moz-transition: opacity .3s ease-in;
-o-transition: opacity .3s ease-in;
-ms-transition: opacity .3s ease-in;
}
#cssmenu ul li:hover ul {
top: 0px;
opacity: 1;
}
div.box {
background: yellow;
width: 200px;
height: 200px;
position: absolute;
}
这里是HTML:
<div id='cssmenu'>
<ul>
<li class='has-sub'><a href='index.html'>Darksider II</a>
<ul>
<li class='has-sub'>
<div class="box"><img src='1.jpg' width='100' height='100'></div>
</ul>
</li>
<li class='has-sub'><a href='#'>FIFA 13</a>
<ul>
<li class='has-sub'><div class='box'><img src='1.jpg' width='100' height='100'>
</ul>
</li>
<li class='has-sub'><a href='#'>Hitman Absolution</a>
<ul>
<li><div class='box'><img src='1.jpg' width='100' height='100'></li>
</ul>
</li>
<li class='has-sub'><a href='#'>Hitman Blood money</a>
<ul>
<li><div class='box'><img src='1.jpg' width='100' height='100'></div>
</ul>
</li>
<li class='has-sub'><a href='#'>Darksiders</a>
<ul>
<li><div class='box'><img src='1.jpg' width='100' height='100'></div></li>
</ul>
</li>
</ul>
</div>
任何语言的任何答案都将非常感激,并提前感谢
这可以通过将"inline-style"赋值给除了第一个元素之外的单个"box"元素来实现。
<div id='cssmenu'>
<ul>
<li class='has-sub'><a href='index.html'>Darksider II</a>
<ul>
<li class='has-sub'>
<div class="box"><img src='1.jpg' width='100' height='100'></div>
</ul>
</li>
<li class='has-sub'><a href='#'>FIFA 13</a>
<ul>
<li class='has-sub'><div class='box' style="margin-top: -38px"><img src='1.jpg' width='100' height='100'>
</ul>
</li>
<li class='has-sub'><a href='#'>Hitman Absolution</a>
<ul>
<li><div class='box' style="margin-top: -74px"><img src='1.jpg' width='100' height='100'></li>
</ul>
</li>
<li class='has-sub'><a href='#'>Hitman Blood money</a>
<ul>
<li><div class='box' style="margin-top: -112px"><img src='1.jpg' width='100' height='100'></div>
</ul>
</li>
<li class='has-sub'><a href='#'>Darksiders</a>
<ul>
<li>
<div class='box' style="margin-top: -148px"><img src='1.jpg' width='100' height='100'></div></li>
</ul>
</li>
</ul>
</div>
这里的工作演示。
在这个砖块中删除"position: relative",它会像我相信你想要的那样工作。在我看来,你的代码似乎真的很粗糙,你的一些li标签没有结束标签,而有些做,例如。我也认为你正在尝试做的很多事情可以用JavaScript和jQuery更容易、更清晰地实现。
#cssmenu ul li {
display: block;
position: relative;
margin: 0;
padding: 0;
width: 150px;
}
相关文章:
- Javascript函数不工作.脚本定位问题
- Zebra DatePicker定位问题
- Jquery.家长定位问题
- 剑道ui工具提示在网格中的定位问题
- 在Handontable中评论定位问题
- Highcharts数据FF和IE中的标签定位问题
- JavaScript 自动完成自制定位问题
- 幻灯片JS高度和按钮定位问题
- 元素的绝对定位问题
- 角度光标定位问题
- Translate3d per JavaScript, jQuery的定位问题
- 拖放保存定位问题
- 地理定位问题's异步调用
- 打开和关闭GPS时的地理定位问题
- jQuery图像滑块封面图像定位问题
- <输入类型=“文件”>IE11浏览器中的定位问题
- 当位置样式为绝对时,滚动上的文本框定位问题
- DIVS在不同浏览器上的定位问题
- 调整网格和多个高图的大小和定位问题
- jQuery UI自动完成定位问题