html - bootstrap sm 调整大小不刹车
问题描述
所以这是我的 HTML 代码。(引导 css 包含在 head 中)
根据 Bootstrap 的说法,小屏幕 12 上的每个 col div 都应该占用,这基本上是全屏。它还应该使用 .d-sm-none .d-md-block 隐藏 img,但是当我在 chrome 工具中进行调整大小时,它并不顺利。到目前为止,谷歌无法帮助我。还尝试删除 flex 类,但改变了一些东西
<body cz-shortcut-listen="true">
<div class="container-fluid">
<div class="row d-flex flex-wrap">
<div class="col-sm-12 col-md-6 col-lg-3 ">
<div class="card" style="width: 18rem;">
<img class="card-img-top d-sm-none d-md-block" src="img/1.jpg" alt="Tower">
<div class="card-body">
<h5 class="card-title">Tower</h5>
<p class="card-text">City: dubay Zip-Code 4993
<br>
</p><p>Created: 1.2.2015, 05:40:00
</p>
</div>
</div>
</div>
<div class="col-sm-12 col-md-6 col-lg-3 ">
<div class="card" style="width: 18rem;">
<img class="card-img-top d-sm-none d-md-block" src="img/1.jpg" alt="Palme">
<div class="card-body">
<h5 class="card-title">Palme</h5>
<p class="card-text">City: Dubai Zip-Code 333
<br>
</p><p>Created: 1.2.2011, 05:40:00
</p>
</div>
</div>
</div>
<div class="col-sm-12 col-md-6 col-lg-3">
<div class="card" style="width: 18rem;">
<img class="card-img-top" src="img/2.jpg" alt="Mcdonald">
<div class="card-body">
<h5 class="card-title">Mcdonald fastfood</h5>
<p class="card-text">City: melbourn Zip-Code 4544
<br>
</p><p>
<label>Phone, Web</label>
<br>
+66 4895643312
<br>
www.getfat.com
</p><p>Created: 2.3.2020, 04:30:00
</p>
</div></div>
</div>
<div class="col-sm-12 col-md-6 col-lg-3">
<div class="card" style="width: 18rem;">
<img class="card-img-top" src="img/2.jpg" alt="Burgerkin">
<div class="card-body">
<h5 class="card-title">Burgerkin fastfood</h5>
<p class="card-text">City: Switzerlan Zip-Code 4334
<br>
</p><p>
<label>Phone, Web</label>
<br>
+66 443543512
<br>
www.getfatter.com
</p><p>Created: 2.3.2011, 04:30:00
</p>
</div></div>
</div>
<div class="col-sm-12 col-md-6 col-lg-3">
<div class="card" style="width: 18rem;">
<img class="card-img-top" src="img/3.jpg" alt="Eating Burger">
<div class="card-body">
<h5 class="card-title">Eating Burger</h5>
<p class="card-text">City: burgertown Zip-Code 4234
<br>
<label> Event Infos </label>
</p><ul>
<li>14. June. 2100</li>
<li>3 o clock</li>
<li>56</li>
<li>www.event.com</li>
</ul>
<p>Created: 1.2.2019, 03:25:00
</p>
</div></div>
</div>
<div class="col-sm-12 col-md-6 col-lg-3">
<div class="card" style="width: 18rem;">
<img class="card-img-top" src="img/3.jpg" alt="Sky diving">
<div class="card-body">
<h5 class="card-title">Sky diving</h5>
<p class="card-text">City: skytown Zip-Code 4666
<br>
<label> Event Infos </label>
</p><ul>
<li>14. June. 2000</li>
<li>5 o clock</li>
<li>560</li>
<li>www.eve222nt.com</li>
</ul>
<p>Created: 1.2.2011, 03:25:00
</p>
</div></div>
</div>
</div>
</div>
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
解决方案
d-sm-none 工作正常。您在 img 标签上拥有它,因此在此处的引导文档中引用的断点中,您可以看到sm断点实际上是针对横向手机的,因此只会将 img 从 576px 隐藏到 768px。如果您尝试将其定位在手机上的常规垂直方向上,则可以将具有d-sm-none d-md-block 的位置替换为.d-none .d-sm-block,如下所示:
<div class="row">
<div class="col-xs-12 col-sm-12 col-md-6 col-lg-3 ">
<div class="card">
<img class="card-img-top d-none d-sm-block" src="img/1.jpg" alt="Palme">
<div class="card-body">
<h5 class="card-title">Palme</h5>
<p class="card-text">
City: Dubai Zip-Code 333
<br>
</p>
<p>HIDE ME</p>
<p>
Created: 1.2.2011, 05:40:00
</p>
</div>
</div>
</div>
</div>
当我将它设置为 576px 时,您可以在开发工具中看到这一点,并且您会看到 img 在 PALME 部分可见,显示为 HIDE ME,我添加它是为了标记您拥有要隐藏的 img 的卡片。
然后在这里,当我们转到 575px 时,您可以看到它像预期的那样消失:
至于您的列 div 问题,我不确定我是否理解您的要求,但我确实看到您的代码有什么问题。在引导程序中,您必须拥有您所做的类容器,然后在里面排成一行(每行有 12 列)。填满一行后,您必须创建另一行以将您的内容再次放入其中,最多可容纳 12 列。您目前拥有代码的方式是容器内的 1 行,然后是您的卡片上都有第 12 列。下面是我假设您尝试做的演示,即让卡片从小屏幕跨越整个屏幕,直到您希望它们占据屏幕的一半,我从您那里看到 col-md-6 . 我通过删除 flex 类以及删除您设置为 18rem 的卡片宽度来进行演示。它现在跨越了整个屏幕,因为我还在 col-xs-12 中添加了在垂直方向手机上全屏,因为你的卡片上最低的是 col-sm-12,正如我上面所说,它只是横向的宽度对于手机。
演示:https ://jsfiddle.net/atcvmqLx/
说明:您会在那里看到,即使没有附加图像,卡片本身也会扩展为全屏,直到遇到 col-md-6 断点 @ 768px。
如果您有任何问题,请告诉我!
推荐阅读
- javascript - 在输入中的每 3 个数字后添加空格
- mysql - SQL QUERY - 合并表
- java - 为什么这个方法会去掉字符串中的最后一个字母?
- django - Django 阻止包含可能 XSS 代码的图像上传
- javascript - 如果数组项未列在对象数组中,则返回值
- ibm-mq - JMS 的 IBM MQ 提供程序:如何自动回滚消息?
- swiftui - 我应该把 DateFormatter() 和 xxx.dateFormat = "xxx" 在 SwiftUI 中
- angular - 角度:加载通配符路由而不是急切加载模块中的路由
- java - 当响应标头中未提供内容长度时,EntityUtils.toString 抛出 java.io.EOFException
- python - 使用依赖注入将 PyTest 固定装置添加到测试类