我想听听你对这段代码的看法,它确实有效。我正在构建一个循环,以便在使用 bootstrap2 的循环中将 3 个列排成一行。这是我的代码:
<div class="container">
<!-- span4 -->
<?php
$count = 0;
for ($i = 0; $i < 8; $i++) : ?>
<!-- end of row when $i values +2cols -->
<?php if ($i%3 == 0): $count = $i+2; ?>
<div class="row">
<?php endif ?>
<div class="span4">
Col <?php echo $i ?>
</div>
<?php if ($count == $i): ?>
</div>
<?php endif ?>
<?php endfor; ?>
</div>
我提出了一个$count
来说明这是否是最后一个列,并在此时关闭该行。我已经看到了一些更简单的代码片段,据说可以工作,但没有。
提前谢谢。
我删除了计数变量并放置正确的模数。 在最后一个if
语句上必须等于所需的列数减去 1 (-1):
<div class="container">
<!-- span4 -->
<?php
for ($i = 0; $i < 8; $i++) : ?>
<!-- no more count var -->
<?php if ($i%3 == 0): ?>
<div class="row">
<?php endif ?>
<div class="span4">
Col <?php echo $i ?>
</div>
<!-- here the equality will always be the nbr of cols minus 1, so 2 here -->
<?php if ($i%3 == 2): ?>
</div>
<?php endif ?>
<?php endfor; ?>
</div>
我总是发现将所有内容包装在<div class='row'></div>
然后在点击行尾时关闭并重新打开标签会更干净。如果只有 7 个项目,则您的解决方案可能会遇到问题,并且该行永远不会关闭。
我还删除了 $count
var,不确定为什么在它存储与 $i
相同时使用它。
<div class="container">
<div class='row'>
<?php for($i = 0; $i < 8; $i++): ?>
<div class="span4">
Col <?php echo $i ?>
</div>
<?php if ($i %3 == 0): ?>
</div><div class="row">
<?php endif ?>
<?php endfor ?>
</div>
</div>