关于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 介绍的样例程序已 ...
随机推荐
- C/C++ 控制台字体的变颜变色
先扔一个链接上来,因为怕忘: https://blog.csdn.net/stude/article/details/7645056 https://blog.csdn.net/lindorx/art ...
- python selenium-webdriver 登录验证码的处理(十二)
很多系统为了防止坏人,会增加各样形式的验证码,做测试最头痛的莫过于验证码的处理,验证码的处理一般分为三种方法 1.开发给我们设置一个万能的验证码: 2.开发将验证码给屏蔽掉: 3.自己识别图片的上的千 ...
- ActiveMQ(为什么要使用消息中间件,JMS传输模型)
为什么要使用消息中间件: 同步请求:当客户端向服务器发送一条请求的时候,此时服务器由于网络,或者处理一些比较大的数据的时候,可能有延迟,客户端 会处于一直等待的状态.只有等待服务器返回处理结果, ...
- ZooKeeper是按照CP原则构建的,不适合做Service服务发现
一.cap 分布式领域中存在CAP理论,且该理论已被证明:任何分布式系统只可同时满足两点,无法三者兼顾. ①C:Consistency,一致性,数据一致更新,所有数据变动都是同步的. ②A:Avail ...
- vue 路由别名 路由跳转
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- WebBrowser2控件使用
一 简介 这是一个IE实现的com接口, 简单的浏览一个网页可以用这个东西, 局限性是IE现在有好多版本, 不同版本对标准的支持是不一样的, 而且将来不排除windows把IE给干掉了 二 使用 1 ...
- Nuget调用简单封装.
1. 项目引用Dapper作为直接访问, 为了使用方便, 封装一下.达到效果: - 数据库连接配置在webconfig.xml中. - 常用调用方法封装. 调用: //可以采用单例模式. //全局实 ...
- Java 环境配置 与 碰到的问题
小白记录,希望各位指点,长期整理修改 不定期更新,碰到的与之相关的会添加,做个小笔记,再次碰到可以更好的解决. JDK 下载:Oracle 配置方法:菜鸟教程 - Java 开发环境配置 作用 JAV ...
- 记录2-在mac上安装ubuntu 16.04 LTS
前几天升级了我用了六七年mac硬件,内存由4G变为8G,硬盘也换成1T SSD,索性把一直想装的ubuntu也装了,方便温习下以前的工作环境. 我比较喜欢LTS的版本,所以安装了16.04. 主要步骤 ...
- C 语言实现基于 Linux 的端口扫描程序
Socket 常用函数: ⑴int socket(int protofamily, int type, int protocol); protofamily:即协议域,又称为协议族(family).常 ...