我正在研究一种布局,该布局在一个占主体宽度 80% 的容器内包含两个相邻的流体宽度 div(每个宽度:50%)。
我想在左右 50% div 之间有 10px 的边距,但我需要整个组件适合 80% 的体宽容器。我知道减少左右 DIV 的 % 宽度将为我提供 10px 中心边距的空间,但这也意味着整个左 DIV/右 DIV/10px 边距组合通常不会占身体的 80%宽度。
有没有办法重新计算左右 DIV 的宽度,以便当它们之间有固定的 10px 边距时它们累积占据主体宽度的 80%,无论浏览器窗口调整到什么大小?不确定这是否适用于 CSS。如果 Javascript 是实现它的唯一方法,那很好,但如果我缺少一些隐藏的 CSS 技巧,那就太好了。
这是我的CSS:
#logoplace {
width: 200px;
height: 200px;
background-color: red;
margin-left: auto;
margin-right: auto;
}
#navcontainer {
height: 30px;
width: 80%;
background-color: white;
margin: 5px auto;
opacity: 0.7;
}
#navcontainer:hover {
opacity: 1;
}
#rowone {
width: 80%;
height: 120px;
background-color: white;
margin: 5px auto;
}
#rowoneone {
width: 50%;
height: 120px;
background-color: green;
margin-right: 5px;
float: left;
}
#rowonetwo {
width: 50%;
height: 120px;
background-color: blue;
margin-left: 5px;
float: right;
}
html, body
{
height: 100%;
padding-left: 20px;
padding-right: 20px;
padding-top: 20px;
padding-bottom: 20px;
}
还有我的 HTML:
<div id="logoplace">
</div>
<div id="navcontainer">
</div>
<div id="rowone">
<div id="rowoneone">
</div>
<div id="rowonetwo">
</div>
</div>
最后,这是一个JsFiddle,它显示了我得到的结果。右浮动 DIV 被压低,显然是因为我将两个浮动 DIV 都设置为 50%,然后添加了固定边距。
任何帮助是极大的赞赏!