css - Bootstrap - 带装订线的列边框

标签 css twitter-bootstrap grid border

我正在尝试使用 4 个 div,每个 div 的宽度为 3 列,边框为 3px。我的边框很好,但我无法让边框框工作。我假设我需要将边框作为内部边框以允许每个 div 之间的装订线。

我正在尝试对 2、6 列 div 做同样的事情并遇到同样的问题。

<div class="container products">
    <div class="row">
        <!-- First featured product -->
        <div class="col-lg-6 featured_product">
            <div class="row">
                <div class="col-lg-6"><img src="img/products/xbo_hs.png" alt=""></div>
                <div class="col-lg-4 col-lg-push-1">
                    <ul>
                        <li>Lorem Ipsum</li>
                        <li>Lorem Ipsum</li>
                        <li>Lorem Ipsum</li>
                        <li>Lorem Ipsum</li>
                        <li>Lorem Ipsum</li>
                        <li>Lorem Ipsum</li>
                    </ul>
                    <button class="btn btn-primary">More Info</button>
                </div>
            </div>
        </div><!-- End first featured product -->

        <!-- Second featured product -->
        <div class="col-lg-6 featured_product">
            <div class="row">
                <div class="col-lg-6"><img src="img/products/xbo_hs.png" alt=""></div>
                <div class="col-lg-4 col-lg-push-1">
                    <ul>
                        <li>Lorem Ipsum</li>
                        <li>Lorem Ipsum</li>
                        <li>Lorem Ipsum</li>
                        <li>Lorem Ipsum</li>
                        <li>Lorem Ipsum</li>
                        <li>Lorem Ipsum</li>
                    </ul>
                    <button class="btn btn-primary">More Info</button>
                </div>
            </div>
        </div><!-- End second featured product -->
    </div>

.products {
   padding-top: 30px;

  .featured_product {
      border: 5px solid #1488c8;
      box-sizing: border-box;
      -moz-box-sizing: border-box;

      ul {
         list-style-type: disc;
         padding-top: 5%;
         padding-bottom: 5%;
      }

      button {
        width: 100%;
      }
}

最佳答案

Bootstrap 默认将 box-sizing 属性设置为 border-box,因此无需将其应用于任何内容。

来自 BS:

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

Box-sizing 将填充和边框作为元素高度和宽度的一部分。 bootstrap 中的装订线是使用填充创建的,因此将边框应用于列不会达到您想要的效果。

你为什么不创建一个 .inner 并将边框应用到它...

.inner{
  background: aliceblue;
  border: 1px solid blue;
  margin: 10px 0;
}
<link href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="stylesheet"/>
<div class="container">
  <div class="row">
    <div class="col-lg-6">
      <div class="inner">col-6</div>
    </div>
    <div class="col-lg-6">
      <div class="inner">col-6</div>
    </div>
  </div>

关于css - Bootstrap - 带装订线的列边框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31245942/

相关文章:

javascript - 为什么 style.display 设置为 'block' 时会改变我的 div 的大小?

css - 计算网格方程

android - MPAndroidChart- 如何在图表表等网格内添加单元格?

html - 如何使网格中的图像填充 100% 的父元素?

html - z-index 不符合我的预期

html - 在第四个旁边 float 三个 div

css - AngularJS 表格导航选择样式

jquery - 使用 Braintree 自定义表单以编程方式提交

html - Bootstrap 4 .card-group 不适用于列内的卡片

jquery - 如何添加指向 Bootstrap 选择选项的链接