3

我正在这样做:

<div class="container-fluid">
  <div class="row-fluid">
    <div class="span12 well">
    <div class="row-fluid">
      <ul class="thumbnails">
        <?php 
          for($i=0; $i<count($rows); $i+=1){ // EVERY ODD BOOK STARTING AT 0
        ?>
        <li class="span4">
          <div class="thumbnail">
            <img src="http://placehold.it/320x200" alt="ALT NAME">
            <div class="caption">
              <h3><?php echo $rows[$i]['Title']; ?></h3>
              <p>Seller: <?php echo $rows[$i]['FirstName'] . " " . $rows[$i]['LastName']; ?> </p>
              <p>Email: <?php echo $rows[$i]['Email']; ?></p>
              <p>Phone: <?php echo $rows[$i]['PhoneNumber']; ?></p>
              <p>Condition: <?php echo $rows[$i]['BookCondition']; ?></p>
              <p align="center"><a href="#" class="btn btn-primary btn-block">Open</a></p>
            </div>
          </div>
        </li> 
          <?php
        }
      ?>   
      </ul>
    </div>
</div>

每当我有超过 3 个项目时,缩略图就会被第二行的左边距所错位。

见图片:截屏

4

3 回答 3

9

我猜bootstrap会为所有元素添加一个左边距,除了第一个元素。您可以添加这样的样式:

ul.thumbnails li.span4:nth-child(3n + 4) {
  margin-left : 0px;
}

但请注意,这与较旧的 ie 浏览器不兼容...

您可以这样做的另一种方法是在您的 php 循环中的每个 li 中添加一个类(将其命名为.noLeftMargin,并相应地设置 css。

于 2013-03-22T17:35:10.187 回答
1

删除 .thumbnails 之前的行 div,您将不需要额外的 css。

于 2013-08-01T13:30:11.590 回答
0

您也可以查看 Bootstrap 的有关重置的文档。

Bootstrap.com > CSS > 网格 > 响应列重置

http://getbootstrap.com/css/#grid-responsive-resets

大多数情况下,它可以通过 Bootstrap 的 .clearfix 类来解决

于 2014-06-06T12:55:22.210 回答