css 菜单
我按照《精彩绝伦的css》书上介绍的方法,制作了如下菜单,
但发现弹出的菜单总出现在屏幕外右边,我理解可能是li中绝对定位时没有参照ul中的position:relative。但如何纠正这个问题?我用的是chrome测试。
ul.toc li {
position:relative;
}
ul.toc li a i{
display:none;
}
ul.toc li a:hover i{
display:block;
width:6em;
position:absolute;
top:1em;
left:100%;
margin:-1em 0 0 1em;
padding:1em;
background:#cde;
border:1px solid gray;
}
111111111111 chapter 1
222222222222 chapter 2
333333333333 chapter 3
回复讨论(解决方案)
不要给 ul.toc li 加 position:relative;
给 ul.toc li a 加 position:relative;
不知道是不是你要的效果。
太酷了,多谢。但是为什么给祖父节点就不行了呢?还要请教下,我听说absolute是沿着他父元素链的relative来定位,但为啥隔了一级就不行了?
明白了,ul和li都是块元素。设了背景看出来的。多谢。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2842461.html