关于background-size 的一点小坑
目前在做一个网页,要求使用一个图片作为背景,必须要全屏目填充,于是我想,这不是很简单的事情么:
有两种实现方法:首先设置添加一个div(或者body),把div(或者body)元素的宽和高都设置成100%;然后将图片作为这个div(或者body)的背景图;第二种方法是:将图片放在div(或者body) 中,先将div(或者body) 设置成相对定位或者绝对定位模式,再讲图片设置成绝对定位模式,图片的大小设置为width:100%,height:100% ;
很遗憾,虽然想法很好,但是没有实现所要的效果,因为图片比较大,所以在竖直方向老是会显示不全(或者出现滚动条),这显然不是我们需要的;我们需要的是,不论屏幕如何变化,背景图始终都保持完全填充整个div(或者body)元素屏幕;从结果看,横向方向实现了效果,竖直方向没有实现,因为显示不全;如下:
首先看将第一种方法:没有达到效果
html 如下:
<div class="ss">
<div class="abox abg">
<div class="shuo">
<li class='wen'>一站车后台合作商后台</li>
<li class='yin'>One-stop car partner management platform</li>
</div>
</div>
<div class="beian" id='hh'>
<li class="ash">
<span class="eam"> @</span>
<span class="nian"> 2017</span>
<span class="wangzhi">www.1zhanche.com</span>
<span class="wname">一站车</span>
<span class="banquan">版权所有</span>
</li>
<li class="beili">
<span class="touli">ICP备案证书号:</span>
<span class="sf">粤ICP备 18086024 号-1</span>
</li>
</div>
</div>
css 如下:
html {
width: 100%;
height: 100%;
}
body {
width: 100%;
height: 100%;
background: url("../../img/tubiao/houtai.png")no-repeat;
background-size: 100%;
}
运行结果:

第二种方法:将img 做成放到div 中,将高和宽都设置成100%,结果失败,直接显示不出来了
html代码:
<div class="ss">
<div class="abox abg">
<img src="../../img/tubiao/houtai.png" alt="">
<div class="shuo">
<li class='wen'>一站车后台合作商后台</li>
<li class='yin'>One-stop car partner management platform</li>
</div>
</div>
<div class="beian" id='hh'>
<li class="ash">
<span class="eam"> @</span>
<span class="nian"> 2017</span>
<span class="wangzhi">www.1zhanche.com</span>
<span class="wname">一站车</span>
<span class="banquan">版权所有</span>
</li>
<li class="beili">
<span class="touli">ICP备案证书号:</span>
<span class="sf">粤ICP备 18086024 号-1</span>
</li>
</div>
</div>
css代码:
body {
font-family: "Microsoft YaHei";
width: 100%;
height: 100%;
}
div.ss {
position: relative;
width: 100%;
height: 100%;
}
div.abox {
position: relative;
width: 100%;
height: 100%;
}
div.abox img {
position: absolute;
left:;
top:;
height: 100%;
width: 100%;
}
运行结果:直接显示不出来了,如下

看到这两个结果:直接懵圈了,咋个不行呢?
再履历一次,在第一中方法中,background-size是有两个参数的,如果只填写一个参数,就会默认第一参数为 auto,就不会是100%;第一个参数是x方向上的百分比或者 px 值,第二个参数是y方向上的百分比或者 px值
下面我们把background-size 的两个值都设置一下,看看结果如何:
html 代码还是和上面(第一种)是一样的;
css代码变更如下:只是在background-size:的y方向加了一个参数 100%
html {
width: 100%;
height: 100%;
}
body {
width: 100%;
height: 100%;
background: url("../../img/tubiao/houtai.png")no-repeat;
background-size: 100% 100%;
}
运行结果:ok了,如下:

至于第二种为什么没有达到预计效果,我暂时没有想出来,留到以后再解决.........
后记备注:在css 中,background 有两个值,一个是x方向上的值 px 或者百分比,另一个是y方向上的 px 或者百分比
关于background-size 的一点小坑的更多相关文章
- background和background-image一点小区别
如果使用background-image属性,则no-repeat不能使用,因为其对background-image不起作用. 可以使用background属性,再设置no-repeat.
- mybatis关于Criteria的一点小坑。。。
目录 在用Criteria时,相关代码如下: final RolePermissionExample example = new RolePermissionExample(); example.cr ...
- 关于SDWebImage的一点小坑
做项目遇到一个问题,是用sd加载图片,明明本地有图片,使用sd的内部方法也可以拿到那些个图片,但是就是加载缓慢,如果网络还行,网络加载图片都比加载本地图片快.而使用[[SDImageCache ...
- 关于CSS3中transform变换的小坑
2017年6月30日15:05:46 今天在写一个demo的时候,发现CSS3中transform变换的一个特性. 首先,我先描述一下我发现的情况(问题再现): <div class=" ...
- Vue中应用CORS实现AJAX跨域,及它在 form data 和 request payload 的小坑处理
基本概念部分(一):理解CORS 说道Vue的跨域AJAX,我想先梳理一遍CORS跨域,"跨域资源共享"(Cross-origin resource sharing),它是一个W3 ...
- EF Core 小坑:DbContextPool 会引起数据库连接池连接耗尽
DbContextPool 是 ASP.NET Core 2.1 引入的新特性,可以节省创建 DbContext 实例的开销,但没有想到其中藏着一个小坑. 最近有一个 ASP.NET Core 项目持 ...
- net core 小坑杂记之配置文件读取(不定期更新)
其实很早就想写了,原想等积累差不多了再写的,但是发现遇到一个当时记下效果会比较好,所以就不定期更新这个系列了,后面获取会整个整理一下. 此篇记载net core入门时踩的一些坑,网上教程太少了,也不规 ...
- HDU 2072 - 单词数 - [(有点小坑的)字典树模板题]
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2072 Problem Descriptionlily的好朋友xiaoou333最近很空,他想了一件没有 ...
- bottle的几个小坑
距离我在<web.py应用工具库:webpyext>里说要换用bottle,已经过去快两个月了--事实上在那之前我已经開始着手在换了.眼下那个用于 Backbone.js 介绍的样例程序已 ...
随机推荐
- 20175202 《Java程序设计》第九周学习总结
20175202 2018-2019-2 <Java程序设计>第九周学习总结 教材知识点总结 第11章 JDBC与MySQL数据库 MySQL数据库管理系统 MySQL数据库管理系统,简称 ...
- 西门子S7-300 PLC视频教程(百度网盘)
西门子S7-300 PLC视频教程(百度网盘) 百度网盘链接地址: 链接:https://pan.baidu.com/s/1MqC0DJbv-ndCzk9XGU2AYQ 提取码:u5eq 祝大家天天开 ...
- IPv6学习笔记
IPv6简写规范: 1) 每个IPv6地址段起始的0可以被省略: 2) 如果一段为4个零,可以简写为一个0 3) 如果有连续的多个段全为0,则可以使用::表示 注:一个地址段中只能有一个::出现 ...
- TZipFile FileNames中文乱码解决办法
TEncoding.Default.GetString(zip.FileInfo[0].FileName); 补充说明: Zip.Extract(Zip.FileName[0], 'd:\'); 解压 ...
- 批量ping测试的脚本
#脚本开始 #!/bin/bash HOSTLIST=`cat /usr/local/ipaddrs.txt` for IP in $HOSTLIST do ping -c 3 -i 0.2 -W 3 ...
- 【转】/etc/rc.d/rc与/etc/rc.d/init.d的关系介绍
/etc/rc.d/init.d这个目录下的脚本就类似与windows中的注册表,在系统启动的时候执行.程序运行到这里(init进程读取了运行级别),相信从命名的角度大家也能猜到该运行/etc/rc. ...
- form表单提交数据,页面必定会刷新,ajax提交数据不会刷新,做到悄悄提交,多选删除,ajax提交实例
很多页面用到的模态对话框,如知明网站https://dig.chouti.com/的登录页都是模态对话框, 当点登录时,是用的ajax提交,因为输入错了信息,有返回消息,而页面没有刷新. jquery ...
- 联想扬天3900c电脑BIOS设置U盘启动图文教程
有联想扬天3900c的用户反映说,制作好U大侠U盘后,按快捷键却识别不到U盘,不能进行U盘启动,这是怎么回事呢?其实这是BIOS设置的问题,下面U大侠教大家如何对联想扬天3900c电脑进行BIOS设置 ...
- 由consequence忽然发现英语也挺有意思
con- 是拉丁语前缀, 有 with, together 的意思. con- 和 com- 一样的. 只是因为 在 b p m 前发 m 音更方便, 所以这些音前的 con- 变为 com- (例 ...
- [转]SQL中的case when then else end用法
Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' EN ...