【Web前端】【疑难杂症】轮播图图片自适应显示问题(bootstrap3轮播图)
关键代码
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轮播图)的更多相关文章
- web前端开发初学者必看的学习路线(附思维导图)
很多同学想学习WEB前端开发,虽然互联网有很多的教程.网站.书籍,可是却又不知从何开始如何选取.看完网友高等游民白乌鸦无私分享的原标题为<写给同事的前端学习路线>这篇文章,相信你会有所收获 ...
- iview carousel 图片不显示;iview 轮播图 图片无法显示(转载)
转载来源:https://segmentfault.com/q/1010000016778108 相关代码 <Carousel autoplay v-model="value2&quo ...
- 15个web前端的美轮美奂的 jQuery 图片特效
jQuery是一个非常优秀的 JavaScript 框架,使用简单灵活,同时还有许多成熟的插件可供选择.其中,jQuery 最令人印象深刻的应用之一就是对图片的处理,它可以让帮助你在你的项目中加入各种 ...
- web前端-移动端响应式与自适应
一. 在HTML的头部加入meta标签 在HTML的头部,也就是head标签中增加meta标签,告诉浏览器网页宽度等于设备屏幕宽度,且不进行缩放,代码如下: <meta name="v ...
- 前端性能优化之优化图片 && 优化显示图片
前端图片优化一直以来都是热门话题,从需求上来看,很多站点往往是图片体积大于代码体积, 图片请求多余代码文件请求, 给前端的性能带来了很大的困扰,那么应该如何解决呢? 零. 认识图片 我们通常使用的图片 ...
- web前端处理订单待支付倒计时计算显示问题
在商城类项目的时候,有很多待支付的订单,有时候在订单列表页面会分别显示倒计时,就是页面会有很多倒计时的订单. 处理方法: 1.调用后端接口拿到所有的订单,获取所有的倒计时订单,获取到期时间(尽量时间戳 ...
- 整理六百篇web前端知识混总
9个有用的和免费的工具来支持动态网页开发 8个基本的引导工具的网页设计师 11款CSS3动画工具的开发 2016年某前端群题目答案参考 9最好的JavaScript压缩工具 创建响应式布局的10款优秀 ...
- web 前端 html
1,什么是web 在网络中,大量的数据需要有一个载体,而很多人都能够访问这个载体,利用浏览器的这个窗口链接一个有一个载体,这个载体就是网站也就是web的前身. 1,web标准:结构标准,表现标准,行为 ...
- 在word中粘贴的图片为什么显示不完整
一.背景 整理系统测试说明文档,截得图片粘贴到word中显示不完整. 二.错误问题 问题:在word中粘贴的图片为什么显示不完整,如图所示: 三.分析问题: 原因是原来设置的行间距是固定值,图片也作一 ...
- 微信小程序之swiper轮播图中的图片自适应高度
小程序中的轮播图很简单,官方都有例子的,但是唯一的缺陷就是swiper是固定死的150px高度,这样如果传入的图片大于这个高度就会被隐藏.辣么,怎样让图片自适应不同分辨率捏. 我的思路是:获取屏幕宽度 ...
随机推荐
- ide 安装eval reset插件 Pycharm 永久破解
ide 安装eval reset插件 Pycharm 永久破解 1.安装eval reset的目的 Jetbrains家的产品有一个很良心的地方,他会允许你试用30天(这个数字写死在代码里了)以评估是 ...
- iframe嵌套PMM2.0
1.首先进入容器中 docker exec -it pmm-server /bin/bash 2.修改grafana.ini,允许匿名登录 vim /etc/grafana/grafana.ini 然 ...
- spring boot 与spring boot admin整合问题处理
1.在整合springboot admin server时,发现admin client无法注册到admin server上 查找原因后发现代码中报错:HttpMediaTypeNotAcceptab ...
- rabbitmq 新下载链接🔗
Linux下安装RabbitMQ需要依赖socat和erlang插件环境 1 插件下载 1.1 RabbitMQ下载 下载地址一:https://www.rabbitmq.com/download. ...
- web服务器静态资源下载
1. 使用 Beego 实现静态文件下载 Beego 是一个强大的 Go Web 框架,提供了处理静态文件的功能.通过简单的配置,我们可以将本地文件夹作为静态资源目录,并为用户提供下载链接. 1.1 ...
- 使用 KubeSphere 应用商店 5 分钟内快速部署 JuiceFS
作者:朱唯唯,尹珉 JuiceFS 简介 JuiceFS 是为海量数据设计的分布式文件系统,使用对象存储来做数据持久化,避免重复造轮子,还能大大降低工程复杂度,让用户专注解决元数据和访问协议部分的难题 ...
- 线性枚举(C语言)
1.求最大值 比如求一个线性表中的最大值,可以先设定一个最大值,把它初始化为一个非常小的数,然后遍历给定的线性表,将其中的每个元素和目前的最大值比较,如果比它大,则更新这个最大值: 如果比它小,就不做 ...
- Mellanox hp 544+FLR QSFP 40G 网卡升级固件及性能测试
烧录命令参考视频: 相关视频: https://www.youtube.com/watch?v=_2-qPV1giEc flint -allow_psid_change -d /dev/mst/mt4 ...
- Docker制作私有镜像仓库
构建私有仓库 启动Docker Registry,使用Docker官方提供的Registry镜像就可以搭建本地私有镜像仓库,具体指令如下. docker run -d -p 5000:5000 --r ...
- 16.Kubernetes集群资源监控
Kubernetes集群资源监控 概述 监控指标 一个好的系统,主要监控以下内容 集群监控 节点资源利用率 节点数 运行Pods Pod监控 容器指标 应用程序[程序占用多少CPU.内存] 监控平台 ...