html - Chrome 中 UL 与其父 LI 之间的差距

标签 html css google-chrome

正如标题所说,我的菜单中有一个很大的空白,它出现在 Chrome 而不是 Firefox 中:

screenshot 编辑 screenshot2

body {color:#333;
      background:#2c2c2c;
      margin-right: auto;
      margin-left: auto;
      width: 1200px;
      font-size:75%;
      font-family:"lucida grande",tahoma,verdana,arial,sans-serif;
}

h1,h2    {font-weight: normal; color:#38D2F3;}
h1    {font-size:1.5em; margin-bottom: 0.5em;}
h2    {font-size: 1.2em; margin-bottom: 0.75em;}
p   {color: white}


.container {
    position:absolute;
    width:1150px;
    height: 100%;
}

#page {
    height:100%;
}

#header{
    padding: 10 10 0 10;
    width: 1150px;
    height: 50px;
    background-color: #9AC0CD;
}

#navigation{
    position: inherit;
    margin-top: 20px;
    width: 200px;
    height: 500px;
    background-color: #2c2c2c;
}

ul.nav hr{
    width: 90%;
    height: 1px;
    margin: 0px 0px 0px 10px;
    border: none;
    background: white;
}

ul.nav{
    list-style-type: none;
    margin: 5px 5px 5px 5px;
    background: #2c2c2c;
    border-style: solid;
    border-top-left-radius: 15px;
    border-color: gray;
    border-width: 1px;
    padding:0;
}

li.nav{
    position: relative;

}

li.nav a, li.nav-last a, li.nav-first a{
    display: block;
    height: 30px;   
    text-decoration: none;
    text-indent: 10px;
    padding: 10px 0px 0px 5px;
    color: white;
    position: relative;
}

li.nav-last a{
    border: none;
}

li.nav:hover a, li.nav-last:hover a, li.nav-first:hover a{
    background-color: black;
    font-weight: bold;
}

li.nav-first:hover a{
    border-top-left-radius: 15px;
}

ul.sub-nav li.sub-nav a {
    background-color: #2c2c2c;
}

ul.sub-nav li.sub-nav:hover a {
    background-color: gray;
    border-radius: 0px;
}

li.nav ul.sub-nav,li.nav-first ul.sub-nav,li.nav-last ul.sub-nav{
    display: none;
    list-style-type: none;
    left: 188px;
    top:0px;
    width: 120px;
    padding: 0;
    position: absolute;
    border-style: solid;
    border-color: gray;
    border-width: 1px;
    background: #2c2c2c;
    z-index: 10;
}

li.nav:hover ul.sub-nav, li.nav-first:hover ul.sub-nav, li.nav-last:hover ul.sub-nav {
    display: block;
    float: right;
}

#content{
    position: absolute;
    margin-left: 230px;
}

p {
    text-align: justify;
}
<!doctype html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <meta name="description" content="">
        <link rel="stylesheet" href="css/main.css">
        <script type="text/javascript" src="./script/main.js"></script>
    </head>
    <body id="page">
    	<div class="container">
    		<div id="header">HEADER</div>
    		<div id="navigation">
    			<ul class="nav">
    				<li class="nav-first"><a href="#">Eintrag 1</a>
                        <ul class="sub-nav">
                            <li class="sub-nav"><a href="#">Untereinstrag 1</a></li>
                            <li class="sub-nav"><a href="#">Untereinstrag 2</a></li>
                            <li class="sub-nav"><a href="#">Untereinstrag 3</a></li>
                        </ul>
                        <hr />
                    </li>

    				<li class="nav"><a href="#">Eintrag 2</a>
                        <ul class="sub-nav">
                            <li class="sub-nav"><a href="#">Untereinstrag 1</a></li>
                            <li class="sub-nav"><a href="#">Untereinstrag 2</a></li>
                            <li class="sub-nav"><a href="#">Untereinstrag 3</a></li>
                        </ul>
                        <hr />
                    </li>
    				<li class="nav"><a href="#">Eintrag 3</a>
                        <ul class="sub-nav">
                            <li class="sub-nav"><a href="#">Untereinstrag 1</a></li>
                            <li class="sub-nav"><a href="#">Untereinstrag 2</a></li>
                            <li class="sub-nav"><a href="#">Untereinstrag 3</a></li>
                        </ul>
                        <hr />
                        </li>
    				<li class="nav"><a href="#">Eintrag 4</a>
                        <ul class="sub-nav">
                            <li class="sub-nav"><a href="#">Untereinstrag 1</a></li>
                            <li class="sub-nav"><a href="#">Untereinstrag 2</a></li>
                            <li class="sub-nav"><a href="#">Untereinstrag 3</a></li>
                        </ul>
                        <hr />
                    </li>
    				<li class="nav"><a href="#">Eintrag 5</a>
                        <ul class="sub-nav">
                            <li class="sub-nav"><a href="#">Untereinstrag 1</a></li>
                            <li class="sub-nav"><a href="#">Untereinstrag 2</a></li>
                            <li class="sub-nav"><a href="#">Untereinstrag 3</a></li>
                        </ul>
                        <hr />
                    </li>
    				<li class="nav"><a href="#">Eintrag 6</a>
                        <ul class="sub-nav">
                            <li class="sub-nav"><a href="#">Untereinstrag 1</a></li>
                            <li class="sub-nav"><a href="#">Untereinstrag 2</a></li>
                            <li class="sub-nav"><a href="#">Untereinstrag 3</a></li>
                        </ul>
                        <hr />
                    </li>
    				<li class="nav-last"><a href="#">Eintrag 7</a></li>
    			</ul>
    		</div>
    		<div id="content">
                <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.   

Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.   

Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.   

Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assum. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat.   

Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis.   

At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, At accusam aliquyam diam diam dolore dolores duo eirmod eos erat, et nonumy sed tempor et et invidunt justo labore Stet clita ea et gubergren, kasd magna no rebum. sanctus sea sed takimata ut vero voluptua. est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat.   

Consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus.   

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.   

Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.   

Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.   

Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assumLorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo</p>
    		</div>
    	</div>
    	
    	
        
    </body>
</html>

我认为这可能是由于“position: relative”引起的,但还没有找到解决方法。

这是CSS代码

我真的无法理解为什么这在 Chrome(最新版本)中不起作用

提前致谢。

最佳答案

我真的很惊讶 Firefox 呈现了这一点。在那种情况下你真的应该使用 position: absolute 。否则,子菜单将影响其父菜单的尺寸。

AFAIK 最佳实践:

li {
 position:relative;
}

li ul {
 position:absolute;
 top: 0;
 left: 100%;
 display:none;
}

li:hover ul {
 display:block;
}

关于html - Chrome 中 UL 与其父 LI 之间的差距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36520759/

相关文章:

HTML5 地理定位在 Firefox、Chrome 和 Chromium 中不起作用

html - Chrome 77 缓存 <select> 选定的选项,即使具有自动完成功能 ="off"

javascript - 如何防止我的浏览器在 ajax Post/Get 操作期间显示 "waiting for MyHostName"消息?

javascript - 在新标签页中打开链接

javascript - 创建 Div 并追加到另一个 div 中

css - 如何仅将鼠标悬停在图像的一部分上并显示表格和指向另一个网页的链接 -HTML (CSS)

css - 如何在 Susy2 的流体网格系统中制作静态元素宽度

html - 浏览器在工具提示库的底部添加了一种边框样式(奇怪的行为)

jquery - 如何隐藏已经被jquery隐藏的div的背景图片

html - webView 快速隐藏内容