我是 Bootstrap 的新手,到目前为止我很喜欢它,但是有几个简单的问题与网格有关 - 似乎无法在任何地方找到答案......
<div class="container">
<div class="row" style="background-color: #ccc;"> <!-- 1. How do I get this background colour to exclude the left 20px gutter? -->
<div class="span5">
Left Col
<div class="row">
<div class="span5">
<input class="span5" type="text"/> <!-- 2. How do I stop this input from shifting right 20px in IE7? -->
</div>
</div>
</div>
<div class="span7">
Right Col
<div class="input-prepend">
<!-- This lines up correctly, even in IE7 - my star hack will break this -->
<span class="add-on">+</span><input type="text" placeholder="Add..." class="span6">
</div>
</div>
</div>
</div>
检查引导 css 后,我可以看到 .row 开始时将 margin-left 拉回 20px,因此每次创建 .spanX 时,它的左侧都有一个 20px 的排水沟。这是有道理的,但是我如何将样式应用于整行(例如背景颜色)并将其应用于该行中的所有列(在我的示例中为 span5 和 span7),但不包括左侧 20px 装订线?
其次,设置列内元素宽度的最佳方法是什么?在我的示例中,我尝试通过将文本框放置在带有 span5 的嵌套行中来调整文本框的大小以填充左侧列的宽度。这在 IE7 中不起作用 - 相反,它向右移动 20 像素,我失去了右手边沟。
要查看这一点,请查看IE7 与良好浏览器中的http://jsfiddle.net/jRcJG/。
我最接近的方法是将 IE hack 组合在一起以再次将输入移回,但这会导致其他问题,例如压缩右列中的输入前置:
不幸的是,我正在做的项目必须支持 IE7,所以我没有忽略这些用户的奢侈。
谢谢你的帮助!