Sha*_*oon 4 grid-layout twitter-bootstrap
<div class="row">
<div class="span8">
<div class="well well-large">
<h3>Place an Order</h3>
<div class="row">
<div class="span3">Bid Price</div>
<div class="span2">Execute</div>
<div class="span3">Ask Price</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
那是我的结构.买入价,执行价和卖出价应该都在同一行.因为他们在井里,他们似乎没有.这种已知的行为是否存在?
问题是填充和well
元素的边界.span8
当在法线内时,class具有620px的固定宽度row
.
该well-large
元素的填充为24px(绿色部分),边框为1px,因此嵌套行将位于蓝色部分内.但蓝色部分的宽度不是620px,宽度为570px.
span
嵌套行中的元素也具有固定宽度.span2
宽度为140像素,宽度为220像素span3
.
如果添加span
元素及其边距的所有宽度(220px + 140px + 220px +(20px*2)= 620px),则行的总宽度大于well
元素(570px),因此最后一个元素被推送到下一行.
第一次尝试
我的第一个也是更简单的解决方案是将类span8
放在well
像这样的元素中(JSFiddle):
<div class="row">
<div class="span8 well well-large">
<h3>Place an Order</h3>
<div class="row">
<div class="span3">Bid Price</div>
<div class="span2">Execute</div>
<div class="span3">Ask Price</div>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
这解决了以前的问题,但添加了一个问题.由于填充现在位于span8
元素中,因此主网格被破坏,因为井元素的宽度为670px(宽度为620px,您必须从填充和边界添加50px).
但现在蓝色部分的宽度为620px,因此嵌套行的所有元素都可以完美地适合蓝色部分.但正如我之前所说,电网坏了.例如,如果您添加span4
后的元素span8
,将span4
被推到下一行,就像是与嵌套元素之前发生的事情.
所以有了这个布局(JSFiddle):
<div class="row">
<div class="span8 well well-large">
<!-- Some ramdom text -->
</div>
<div class="span4">
<!-- Some ramdom text -->
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
你有这个结果:
最终解决方案
如果你想要一个内部的3列well
,你需要不同的网格系统.一种解决方案可以使用row-fluid
而不是row
.使用时row-fluid
,span
元素的宽度是百分比,而不是固定宽度.
有了这个布局(JSFiddle):
<div class="row">
<div class="span8">
<div class="well well-large">
<h3>Place an Order</h3>
<div class="row-fluid">
<div class="span4">Bid Price</div>
<div class="span4">Execute</div>
<div class="span4">Ask Price</div>
</div>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
你可以实现类似于你想要的东西.如果你想要一个3/8,2/8和3/8的精确比例(就像你的初始设置有跨度),你必须使用CSS来制作三列布局,你不能只使用bootstrap span
元素.
归档时间: |
|
查看次数: |
3508 次 |
最近记录: |