你可以这样解决这个问题:
将 body 视为 90%,这意味着屏幕的 90%,无论大小。
body{
width:90%;
margin: 0 auto;
}
现在考虑在 body 标签中的类容器
.container{
width:100% //This would utilize the complete 90% of the body, if you make the width 90% for container then it would consider 90% of 90% of body
margin: auto;
}
现在考虑您需要一个 5 列网格布局,并且您决定每列之间的间距为 2px,然后 100% - (2%+2%+2%+2%) = 92%(我没有添加再多一个 2% 是因为你将有 margin-left 或 margin-right = 0)
现在,除以 92/5(百分比/列),您将得到 18.4% 的值。这意味着为您创建的每一列分配 18.4% 的宽度,您将获得所需的完美布局。
这是一个可以解释的例子,复制整个代码并粘贴到一个空白文件中并将其保存为 index.html 或任何名称并运行:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Percentage Width</title>
<meta charset="utf-8">
<meta name="description" content="Demo">
<style type="text/css" media="screen">
* { margin:0; padding:0; }
body{
width:100%;
margin: 0 auto;
}
.container{
width:90%;
margin:auto;
text-align:center;
background: #363F3C;
overflow: hidden;
}
.column_5{
overflow: hidden;
width:100%; // This means full 90% of the parent element .container
}
.grid_1,.grid_2,.grid_3,.grid_4,.grid_5{
background:#399FDD;
width:18.4%;
margin: 0 2% 2% 0;
float:left;
}
.grid_5{
margin-right:0;
}
p{
color:#505054;
text-align:left;
padding:1.5em;
}
</style>
<body>
<div class="container">
<div class="column_5">
<div class="grid_1"><p>1st Column: <br />184px/1000px <br />18.4% </p></div>
<div class="grid_2"><p>2nd Column: <br />184px/1000px <br />18.4% </p></div>
<div class="grid_3"><p>3rd Column: <br />184px/1000px <br />18.4% </p></div>
<div class="grid_4"><p>4th Column: <br />184px/1000px <br />18.4% </p></div>
<div class="grid_5"><p>5th Column: <br />184px/1000px <br />18.4% </p></div>
</div>
</div>
</body>
</html>
运行上面的例子,多玩一点,你应该会很好地掌握。如果您进一步需要帮助,请随时与我联系。
问候,
乌迪特·葛印卡
http://www.iuditg.com