html - Bootstrap crousell 响应式大小调整
问题描述
我在我的引导 html 网站上有一个轮播。代码如下所示:
<div id="carouselExampleIndicators" class="carousel slide" data-ride="carousel">
<ol class="carousel-indicators">
<li data-target="#carouselExampleIndicators" data-slide-to="0" class="active</li>
<li data-target="#carouselExampleIndicators" data-slide-to="1"></li>
<li data-target="#carouselExampleIndicators" data-slide-to="2"></li>
</ol>
<div class="carousel-inner">
<div class="carousel-item active">
<img class="d-block w-auto h-auto" src="header/1.png" alt="First slide">
</div>
<div class="carousel-item">
<img class="d-block w-auto h-auto" src="header/2.png" alt="Second slide">
</div>
<div class="carousel-item">
<img class="d-block w-auto h-auto" src="header/3.png" alt="Third slide">
</div>
</div>
当我在桌面上打开页面时,标题看起来很棒,图片就像我想要的那样。但是当我在移动设备上打开页面(或像移动设备一样缩放它)时,图片看起来会消失。
我也尝试了 w-100 和 h-100,但这也会产生不太好的结果。
有任何想法吗?
解决方案
你试过用它做img-fluid
吗?这样,即使在移动设备上,图像也能保持其比例并保持 100% 的宽度。所以你的代码会变成:
<div id="carouselExampleIndicators" class="carousel slide" data-ride="carousel">
<ol class="carousel-indicators">
<li data-target="#carouselExampleIndicators" data-slide-to="0" class="active</li>
<li data-target="#carouselExampleIndicators" data-slide-to="1"></li>
<li data-target="#carouselExampleIndicators" data-slide-to="2"></li>
</ol>
<div class="carousel-inner">
<div class="carousel-item active">
<img class="d-block img-fluid" src="https://picsum.photos/id/40/1920/1080" alt="First slide">
</div>
<div class="carousel-item">
<img class="d-block img-fluid" src="https://picsum.photos/id/50/1920/1080" alt="Second slide">
</div>
<div class="carousel-item">
<img class="d-block img-fluid" src="https://picsum.photos/id/60/1920/1080" alt="Third slide">
</div>
</div>
这是一个工作示例: https ://www.codeply.com/p/lICErBIvlN
如果您希望轮播具有 100% 的高度和宽度,我建议您添加它w-100
,vh-100
这样可以始终保持设备的 100% 高度。object-fit: cover
还像这样向 img添加一个:
.carousel-item img {
object-fit: cover;
}
这object-fit: cover;
使得无论屏幕尺寸如何,图像都将始终被覆盖。
还有旋转木马:
<div id="carouselExampleIndicators" class="carousel slide" data-ride="carousel">
<ol class="carousel-indicators">
<li data-target="#carouselExampleIndicators" data-slide-to="0" class="active</li>
<li data-target="#carouselExampleIndicators" data-slide-to="1"></li>
<li data-target="#carouselExampleIndicators" data-slide-to="2"></li>
</ol>
<div class="carousel-inner">
<div class="carousel-item active">
<img class="d-block w-100 vh-100" src="https://picsum.photos/id/40/1920/1080" alt="First slide">
</div>
<div class="carousel-item">
<img class="d-block w-100 vh-100" src="https://picsum.photos/id/50/1920/1080" alt="Second slide">
</div>
<div class="carousel-item">
<img class="d-block w-100 vh-100" src="https://picsum.photos/id/60/1920/1080" alt="Third slide">
</div>
</div>
推荐阅读
- c# - 如何使用字符串数组制作 json 文件?
- push - 如何将文件从 SharePoint Online 推送到本地 FTP 位置?
- javascript - 用数组填充数组时,数组填充方法不起作用
- java - Azure - Java 应用程序
- python - 为打印功能添加时间戳
- javascript - 谷歌分析和自己的数据收集之间的巨大差异
- angular - 是否可以通过使用另一个类中的变量在枚举中拥有一个计算属性(调用一个函数)?
- javascript - 如何使 vuetify 扩展面板独奏?
- mysql - 更新数据库时如何解决 NullPointerException
- google-cloud-composer - Cloud Composer - 如何启用私有 IP 环境?