我有一个小项目的问题。我有一个div的导航栏,我有链接,但每当我调整页面大小时,最后两个开始一个新的行。我希望链接保持水平位置并在页面中添加滚动条。例如,当您在谷歌上并且您调整浏览器大小时,溢出的内容不会启动新行。添加滚动条。我尝试过使用父div并设置最小宽度,但都没有工作。
CSS:
.topBar {
background-color:rgb(161,35,35);
position:relative;
display:inline-block;
width:100%;
text-align:center;
height:40px;
}
.text2 {
font-size:35;
text-decoration:none;
margin-left:4%;
margin-right:4%;
}
.parent {
min-width:100%;
}
HTML:
<div class="parent">
<div class="topBar">
<a class="text2" href="placeholder.html">Media Mash</a>
<a class="text2" href="placeholder.html">Film</a>
<a class="text2" href="placeholder.html">Music</a>
<a class="text2" href="placeholder.html">Games</a>
<a class="text2" href="placeholder.html">Books</a>
</div>
</div>
答案 0 :(得分:3)
当内容太宽时,页面会自动水平滚动。如果你想要一个块中的大量元素保持太宽,那么你需要使它们的父元素太宽(在这种情况下不适用)或者停止父包装内嵌元素(这是适用的)。要阻止父级包装<a>
代码,请将white-space: nowrap
添加到.topbar
规则。
如果您希望.topbar
的背景始终在内容后面填写,那么您还需要将width
属性更改为min-width
。
此处an example的{{3}}正在运行而没有min-width
修复(对我来说它溢出的宽度大约为800px)。
正如评论中所述,为了确保当内容比网页宽时,边距不会溢出父级,请将padding: 0.1px
添加到.topbar
规则中。这会强制子边距保留在父边距内(而不是重叠),而不会影响显示。
答案 1 :(得分:1)
您可以使用overflow属性。 http://www.w3schools.com/cssref/pr_pos_overflow.asp
我希望它有所帮助。
答案 2 :(得分:1)
然后你必须给你的div一个固定的宽度。
而不是width: 100%;
将其替换为菜单的像素数,例如:
width: 700px;
.topBar {
background-color:rgb(161,35,35);
position:relative;
display:inline-block;
width: 700px;
text-align:center;
height:40px;
}
答案 3 :(得分:0)
您需要在white-space
课程中设置相应的parent
属性。
.parent {
min-width: 100%;
white-space: nowrap;
}
您可以看到a working example。