CSS + Bootstrap :如何动态拉伸细分宽度以适应容器(带图像)?

7lrncoxx  于 2022-12-16  发布在  Bootstrap
关注(0)|答案(2)|浏览(180)

我有一个问题,我的页面有一个动态的部分,我可能有1,2,3或4个subdivs(看下面的粉红色箭头)。正如你可以看到在第一个facebook部分,divs不伸展。我希望它是三分之一。如果只有2个,那么它应该是一半,并占用整个容器的宽度。
我该怎么做?
超文本:

<div class="channel-box">
  <div class="facebook-engagements">
    <img src='blah.img' title="Facebook" />
    <span class="small-stats-font">123</span>
  </div>
  <div class="channel-breakdown clearfix row-fluid">
    <div class="channel-units">
      <img src='blah.img' title="Post" />
      <span class="smaller-stats-font">123</span>
    </div>
    <div class="channel-units">
      <img src='blah.img' title="Like" />
      <span class="smaller-stats-font">123</span>
    </div>
    <div class="channel-units">
      <img src='blah.img' title="Share" />
      <span class="smaller-stats-font">
        123
      </span>
    </div>
  </div>
</div>

CSS:

.channel-breakdown {
        border-top: 1px solid gray;

        .channel-units {
          border-right: 1px solid gray;
          display: inline-block;
          float: left;
          margin-right: 10px;
          width: 23%;
        }
      }

s1ag04yj

s1ag04yj1#

CSS flexbox来拯救我们!Flex是很棒的,并且得到了现代浏览器的支持。

.channel-breakdown {
  border-top: 1px solid gray;
  display: flex;

  .channel-units {
    border-right: 1px solid gray;
    margin-right: 10px;
    flex: 1;
  }
}

x一个一个一个一个x一个一个二个一个x一个一个三个一个

pu3pd22g

pu3pd22g2#

我觉得CSS表是这里的答案。

.channel-breakdown {
     border-top: 1px solid gray;
     display: table;
     table-layout: fixed;
     width: 100%;
   }
   .channel-units {
     border-right: 1px solid gray;
     display: table-cell;
   }

相关问题