关键代码

html

<!--    轮播图开始-->
<div id="header" class="carousel slide">
<!-- 轮播(Carousel)指标 -->
<ol class="carousel-indicators">
<li data-target="#header" data-slide-to="0" class="active"></li>
<li data-target="#header" data-slide-to="1"></li>
<li data-target="#header" data-slide-to="2"></li>
</ol>
<div id="" class="carousel slide">
<!-- 轮播(Carousel)指标 -->
<ol class="carousel-indicators">
<li data-target="#header" data-slide-to="0" class="active"></li>
<li data-target="#header" data-slide-to="1"></li>
<li data-target="#header" data-slide-to="2"></li>
</ol>
<!-- 轮播(Carousel)项目 -->
<div class="carousel-inner">
<div class="item bg1 active">
<!-- <img src="/img/1.jpg" alt="1">-->
</div>
<div class="item bg2">
<!-- <img src="/img/2.png" alt="2">-->
</div>
<div class="item bg3">
<!-- <img src="/img/3.png" alt="3">-->
</div>
</div>
<!-- 轮播(Carousel)导航 -->
<a class="left carousel-control" href="#header" role="button" data-slide="prev">
<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
<span class="sr-only">上一条</span>
</a>
<a class="right carousel-control" href="#header" role="button" data-slide="next">
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
<span class="sr-only">下一条</span>
</a> </div> <!-- 轮播图结束-->
</div>

css

#header .item{
width:100%;
height: 20em;
min-height:100px;
max-height:500px;
}
#header .bg1{
background: url("/img/1.jpg") no-repeat center fixed;
background-size: cover;
}
#header .bg2{
background: url("/img/2.png") no-repeat center fixed;
background-size: cover;
}
#header .bg3{
background: url("/img/3.png") no-repeat center fixed;
background-size: cover;
}

效果图

问题分析

情况说明

我的轮播图要插入的图片,有一张比较特殊,没错,就是2号图,他是竖屏的。

而我正在使用Bootstrap3(作业要求)制作轮播图。

如果不做调整的话,轮播图到2号时,轮播图区域高度会增加,然后到3号,高度又减小……

我想要的效果是:

1.图片铺满轮播图的框框

2.图片高度统一

方法探索

我很自然想到了css设置背景的方法:

background: url("url") no-repeat center fixed;

但是现在用的是img,我应该怎么去设置img呢?似乎不太方便。

如你所见,3张图分别在3个div里面

切换的时候其实是div之间的切换

所以我可不可以去掉img呢?图片显示的话,就给div设置背景。

于是有了这些:

#header .item{
width:100%;
height: 20em;
min-height:100px;
max-height:500px;
}
#header .bg1{
background: url("/img/1.jpg") no-repeat center fixed;
}
#header .bg2{
background: url("/img/2.png") no-repeat center fixed;
}
#header .bg3{
background: url("/img/3.png") no-repeat center fixed;
}

但是有个问题,这个图片他没有铺满。而我想要他铺满,且不能变形。

所以考虑设置background-size

#header .bg1{
background: url("/img/1.jpg") no-repeat center fixed;
background-size: cover;
}
#header .bg2{
background: url("/img/2.png") no-repeat center fixed;
background-size: cover;
}
#header .bg3{
background: url("/img/3.png") no-repeat center fixed;
background-size: cover;
}

为什么我写是cover而不是100%呢?

从我自己测试来看,设置100%的话,宽度是100%,高度容易出现空白区域。

cover的效果来看:cover能让背景图“紧贴”“盒子”边缘

下面是菜鸟教程上的说明:

cover会保持图像的纵横比并将图像缩放成将完全覆盖背景定位区域的最小大小。

contain:此时会保持图像的纵横比并将图像缩放成将适合背景定位区域的最大大小。

好,最终就得到了这套解决方案。

或许会有更好的办法的。欢迎留言讨论。

【Web前端】【疑难杂症】轮播图图片自适应显示问题(bootstrap3轮播图)的更多相关文章

  1. web前端开发初学者必看的学习路线(附思维导图)

    很多同学想学习WEB前端开发,虽然互联网有很多的教程.网站.书籍,可是却又不知从何开始如何选取.看完网友高等游民白乌鸦无私分享的原标题为<写给同事的前端学习路线>这篇文章,相信你会有所收获 ...

  2. iview carousel 图片不显示;iview 轮播图 图片无法显示(转载)

    转载来源:https://segmentfault.com/q/1010000016778108 相关代码 <Carousel autoplay v-model="value2&quo ...

  3. 15个web前端的美轮美奂的 jQuery 图片特效

    jQuery是一个非常优秀的 JavaScript 框架,使用简单灵活,同时还有许多成熟的插件可供选择.其中,jQuery 最令人印象深刻的应用之一就是对图片的处理,它可以让帮助你在你的项目中加入各种 ...

  4. web前端-移动端响应式与自适应

    一. 在HTML的头部加入meta标签 在HTML的头部,也就是head标签中增加meta标签,告诉浏览器网页宽度等于设备屏幕宽度,且不进行缩放,代码如下: <meta name="v ...

  5. 前端性能优化之优化图片 && 优化显示图片

    前端图片优化一直以来都是热门话题,从需求上来看,很多站点往往是图片体积大于代码体积, 图片请求多余代码文件请求, 给前端的性能带来了很大的困扰,那么应该如何解决呢? 零. 认识图片 我们通常使用的图片 ...

  6. web前端处理订单待支付倒计时计算显示问题

    在商城类项目的时候,有很多待支付的订单,有时候在订单列表页面会分别显示倒计时,就是页面会有很多倒计时的订单. 处理方法: 1.调用后端接口拿到所有的订单,获取所有的倒计时订单,获取到期时间(尽量时间戳 ...

  7. 整理六百篇web前端知识混总

    9个有用的和免费的工具来支持动态网页开发 8个基本的引导工具的网页设计师 11款CSS3动画工具的开发 2016年某前端群题目答案参考 9最好的JavaScript压缩工具 创建响应式布局的10款优秀 ...

  8. web 前端 html

    1,什么是web 在网络中,大量的数据需要有一个载体,而很多人都能够访问这个载体,利用浏览器的这个窗口链接一个有一个载体,这个载体就是网站也就是web的前身. 1,web标准:结构标准,表现标准,行为 ...

  9. 在word中粘贴的图片为什么显示不完整

    一.背景 整理系统测试说明文档,截得图片粘贴到word中显示不完整. 二.错误问题 问题:在word中粘贴的图片为什么显示不完整,如图所示: 三.分析问题: 原因是原来设置的行间距是固定值,图片也作一 ...

  10. 微信小程序之swiper轮播图中的图片自适应高度

    小程序中的轮播图很简单,官方都有例子的,但是唯一的缺陷就是swiper是固定死的150px高度,这样如果传入的图片大于这个高度就会被隐藏.辣么,怎样让图片自适应不同分辨率捏. 我的思路是:获取屏幕宽度 ...

随机推荐

  1. RabbitMQ协议基础及C++和Java混合开发

    目前面对大多数的需要在异构系统间进行消息传递技术路线,大多会选择socket或webservice.这两种技术的共同特点是耦合紧,调试依赖双方同步,但是效率高.除此以外,使用消息队列(MQ)的应用场景 ...

  2. 使用iis设置网站php版本为7.3

    内容:使用iis设置网站php版本为7.3这张图 是多少人的噩梦  早期的宝塔版本 没办法在线升级, php版本只能到7.1   默认就没有7.2以上版本   怎么办?可以在iis设置第一步: 第二步 ...

  3. /proc/slabinfo 介绍

    slabinfo - version: 2.1 # name <active_objs> <num_objs> <objsize> <objperslab&g ...

  4. Linux 系统常见 的命令

    uname -a 查看linux 的版本信息 : pwd :打印当前的工作目录 ,print work directory: cd  改变目录 ,change directory : cd . 当前目 ...

  5. Android复习(四)权限—>请求应用权限

    每款 Android 应用都在访问受限的沙盒中运行.如果应用需要使用其自己的沙盒外的资源或信息,则必须请求相应权限. 要声明您的应用需要某项权限,您可以在应用清单中列出该权限,然后在运行时请求用户批准 ...

  6. HDU-ACM 2024 Day1

    T1009 数位的关系(HDU 7441) 考虑 \(l = r\) 的情况,此时只要计算一个数字,我们将其展开为一个字符串 \(S\).设 \(f_{i, j, k}\) 表示考虑了 \(S\) 的 ...

  7. Games101 光线追踪 代码框架解读

    目录 1 前言 2 main.cpp 3 render.cpp 3.1 折射reflect 反射refract 相关 3.2 Fresnel equation 3.3 递归函数光线追踪 3.2.1 t ...

  8. Go语言基础07 _interface _1

    Go语言基础07 _interface _1 与其他主要编程语⾔的差异 接⼝为⾮⼊侵性,实现不依赖于借⼝定义 所以接⼝的定义可以包含在接⼝使⽤者包内 package interface_test im ...

  9. 看图认识CSS

    教程: https://www.w3cschool.cn/css/ https://www.runoob.com/css/css-tutorial.html https://www.w3school. ...

  10. 看图对比Pytest、Unittest