如何隐藏空的网格列? [英] How can I hide empty grid columns?
问题描述
我正在使用引导程序为 CMS 制作响应式模板.我想在主区域有一个三列网格,但有时,所有三列都没有内容.CMS 将向任何空列添加一个类,因此我可以使用它来隐藏它们,但我无法通过引导程序来扩展其他两列以填充该区域.
所以,如果我有三列都是 col-md-4,但其中一个是隐藏的,我基本上希望其他列变成 col-md-6.如果两个是空的,我希望剩下的一个是 col-md-12.但是,我没有任何运气.
有什么想法吗?
自从 Bootstrap 4 添加了 flexbox,您可以使用 .col
类来自动调整列宽的大小.使用 :empty
伪选择器(或者,如果需要,可以使用像 .col-empty
这样的自定义类),您可以隐藏没有内容的列.
.row { margin: 25px 0;}.col1 { 背景颜色:红色;}.col2 { 背景颜色:浅绿色;}.col3 { 背景颜色:金色;}/* 没有内容时隐藏列的方法 */.col-empty, .col:empty, [class^=col-]:empty { display: none;}
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.2/css/bootstrap.min.css" rel="样式表"/><div class="容器"><div class="row"><div class="col col1">ONE</div><div class="col col2">TWO</div><div class="col col3">三</div>
<div class="row"><div class="col col1">ONE</div><div class="col col2"></div><div class="col col3">三</div>
<div class="row"><div class="col col1"></div><div class="col col2"></div><div class="col col3">三</div>