【发布时间】:2011-10-03 07:32:19
【问题描述】:
我很难解决我认为很简单的问题。
我正在尝试创建一个跨越浏览器窗口宽度 100% 的 div。该 div 填充了几个子 div,这些子 div 扩展以用交替的颜色填充整个空间,例如足球场。这些 div 将扩展以适应给定空间的整个宽度,该空间具有完全填充该空间的单独 1% 的条纹。
这在 Firefox 中似乎可以正常工作,但在 Safari(和 Chrome)中,计算似乎过于严格,并且在最右边的 div 上留下了一些额外的剩余空间。
有什么办法可以避免这个剩余空间?即使将其放置在固定宽度的 div 中,我在 Safari 和 Chrome 中也遇到过同样的问题……右侧总是有剩余空间。我想知道我是否只是要求它做太多的数学运算?
这是我正在使用的代码,其他版本将空间划分为 5% 的分区和 1% 的分区。抱歉,代码冗长且冗余。
<html>
<head>
<style type="text/css">
<!--
body {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
.clearfix {
visibility: hidden;
display: block;
font-size: 0;
content: " ";
clear: both;
height: 0;
}
#field {
width: 100%;
background: #009900;
height: 100px;
margin: 0;
margin-bottom: 25px;
padding: 0;
}
.singleyard {
width: 1%;
float: left;
margin: 0;
padding: 0;
background: #009900;
}
.fiveyards {
width: 5%;
float: left;
margin: 0;
padding: 0;
}
.alt {
background: rgba(0,0,0,0.25);
}
.oneyard {
width: 20%;
float: left;
margin: 0;
padding: 0;
}
-->
</style>
</head>
<body>
<div id="field">
<div class="fiveyards">5</div>
<div class="fiveyards alt">10</div>
<div class="fiveyards">15</div>
<div class="fiveyards alt">20</div>
<div class="fiveyards">25</div>
<div class="fiveyards alt">30</div>
<div class="fiveyards">35</div>
<div class="fiveyards alt">40</div>
<div class="fiveyards">45</div>
<div class="fiveyards alt">50</div>
<div class="fiveyards">55</div>
<div class="fiveyards alt">60</div>
<div class="fiveyards">65</div>
<div class="fiveyards alt">70</div>
<div class="fiveyards">75</div>
<div class="fiveyards alt">80</div>
<div class="fiveyards">85</div>
<div class="fiveyards alt">90</div>
<div class="fiveyards">95</div>
<div class="fiveyards alt">100</div>
</div>
<div id="field">
<!--below section is repeated 10 times -->
<div class="singleyard">1</div>
<div class="singleyard">2</div>
<div class="singleyard">3</div>
<div class="singleyard">4</div>
<div class="singleyard">5</div>
<div class="singleyard">6</div>
<div class="singleyard">7</div>
<div class="singleyard">8</div>
<div class="singleyard">9</div>
<div class="singleyard alt">10</div>
<!--end repeated section-->
</div>
</body>
</html>
【问题讨论】:
-
为什么你所有的css样式都被注释掉了?
-
哈。不知道为什么那些评论标签在那里,但感谢您的关注。不幸的是,删除它们并没有帮助。
-
你开发的最终状态是什么。你找到答案了吗。我也面临着类似的问题。(参考:stackoverflow.com/questions/17089419/…)