我试图在跨越屏幕80%和最小960px的容器内将五个水平菜单元素与'float:left'彼此相邻。为此,我最初将其最小宽度设置为192像素(960/5),宽度设置为20%,但很快意识到这并不能很好地添加1像素边框,导致其中一个按钮被“抛出”。CSS:包含五个带有边框的浮动20%元素
分别改变宽度为19.895333%和191px,解决了这个问题,但这显然是一个拙劣的解决方案,它在菜单的右侧还留下2-3像素的丑陋空间。
是否有一种更优雅的方式来对齐这些元素,并考虑边框,填充等添加的奖金宽度?我试过'overflow:hidden'来简单地隐藏任何可能在容器外面戳的东西,但这只是隐藏了整个第5个按钮。
图片说明结果:
的HTML代码:
<div class="menucontainer">
<div class="menutab" id="menutab_first">News</div>
<div class="menutab">Game Guide</div>
<div class="menutab">Articles</div>
<div class="menutab">Media</div>
<div class="menutab" id="menutab_last">Community</div>
</div>
CSS代码:
.menucontainer {
height: 26px;
margin-left: auto;
margin-right: auto;
border-width: 1px;
border-style: solid;
border-color: #303030 #101010 #000 #101010;
border-radius: 0px 0px 8px 8px;
}
.menutab {
line-height: 26px;
float: left;
width: 19.895333%;
text-align: center;
min-width: 191px;
border-right: 1px solid #202020;
background-image: url('../img/menubutton2.png');
background-size: 100% 100%;
font-family: 'Cabin', sans-serif;
}
#menutab_first {
border-radius: 0px 0px 0px 8px;
}
#menutab_last {
border-right: 0px;
width: 20%;
min-width: 192px;
border-radius: 0px 0px 8px 0px;
}
预先感谢您!