background-size需要两个值,它的类型可以是像素(px)、百分比(%)或是auto,还可以是cover和contain。第一个值为背景图的width,另外一个值用于指定背景图上的height,如果只设定1个值,则第2个默认为auto,但当值为cover和contain时除外。

cover:保持图像的宽高比例,将图片缩放到正好完全覆盖定义的背景区域,其中有一边和背景相同。

html:

<div class="div" ><h1>雨打浮萍</h1><p>专注于web前端开发</p></div>

css:

.div{
width:160px;
height:120px;
border:1px solid #ccc;
padding:10px;
background-image:url(bg.jpg);
background-size:cover;
}

效果如下:

contain:保持图像的宽高比例,将图片缩放到宽或者高正好适应定义背景的区域,但背景仍在定义的区域之内,被包含。

css:

.div{
width:160px;
height:120px;
border:1px solid #ccc;
padding:10px;
background:url(bg.jpg) no-repeat;
background-size:contain;
font-family:Microsoft Yahei;
}

效果如下:

length

.div{
background-size:150px 80px;
}

显示效果:

这里为背景图片设置宽高,图片会直接被拉伸或缩放,不保持原来的比例。如果只设置一个数值,另外一个值默认为auto,它将按图片原比例来伸缩。

percentage

.div{
background-size:40% 60%;
}

这里需要特别注意一下,图片大小不是按背景图片大小的百分数来计算的,而是装载背景图的元素的百分比来计算。

浏览器的兼容性

支持浏览器:IE(9)、firefox、Chrome、Opera、Safari。

/*Mozilla*/
-moz-background-size:auto||<length>||<percentage>||cover||contain;
/*Webkit*/
-webkit-background-size:auto||<length>||<percentage>||cover||contain;
/*Presto*/
-o-background-size:auto||<length>||<percentage>||cover||contain;
/*W3c*/
background-size:auto||<length>||<percentage>||cover||contain;

注意:虽然我上面写到了各浏览器需要添加自己独特的方式,但并不代表这个样式一定要添加,在我写的事例中并没有为各浏览写自己的样式,仍然执行很好。

  转自http://www.igooda.cn/jsdt/20130827355.html

[转载]css3的一个控制背景的属性,background-size可以缩放大小啦的更多相关文章

  1. UITabBar-UITabBarItem图片的背景颜色属性和文字的颜色大小设置

    UITabBarItem设置的图片选中状态下默认的是蓝色,如何改变它的颜色为图片自带的颜色呢? typedef NS_ENUM(NSInteger, UIImageRenderingMode) { / ...

  2. IT兄弟连 HTML5教程 CSS3揭秘 CSS常见的样式属性和值2

    3  背景属性 大多数HTML元素都允许控制背景,包括背景颜色.背景图像.背景重复.背景附件.背景位置等属性.常见的控制背景属性.值及描述如表2所示. 表2  CSS中常见的控制背景的属性 除了使用表 ...

  3. 利用css3的多背景图属性实现幻灯片切换效果

    css3里关于背景的属性增加了可以添加多背景图的特性,例如: .box{background: url(img/1.png),url(img/2.png),url(img/3.png);} 这段css ...

  4. css3新增属性-background背景

    css3新增属性 边框属性 背景属性 文字属性 颜色属性 背景属性 属性 说明 background-image 添加背景图片 background-size 指定背景图像的大小 background ...

  5. CSS3制作动画的三个属性

    CSS3属性中有关于制作动画的三个属性:Transform,Transition,Animation:我们一起学习完了Transform和Transition,让我们对元素实现了一些基本的动画效果,这 ...

  6. CSS背景属性Background详解

    [转] 本文详解了CSS的背景属性Background,包括CSS3中新增的背景属性.如果你是个CSS初学者,还可以查看之前介绍的CSS浮动属性和CSS透明属性详解. CSS2 中有5个主要的背景(b ...

  7. <转载>css3 概述

    参照 https://www.ibm.com/developerworks/cn/web/1202_zhouxiang_css3/ http://www.cnblogs.com/ghost-xyx/p ...

  8. 【Multiple backgrounds】用CSS3实现网页多重背景

    对于背景属性background-image大家应该已经很熟悉了,在CSS2中与它相关的属性还有background-repeat(设置背景是否重复及重复的方式).background-positio ...

  9. Web前端篇:CSS常用格式化排版、盒模型、浮动、定位、背景边框属性

    目录 Web前端篇:CSS常用格式化排版.盒模型.浮动.定位.背景边框属性 1.常用格式化排版 2.CSS盒模型 3.浮动 4.定位 5.背景属性和边框属性 6.网页中规范和错误问题 7.显示方式 W ...

随机推荐

  1. The each() function is deprecated报错的解决方法

    下午ytkah安装程序时出现了如下提示,意思是each函数过时了,可能跟php版本有关,因为今天早上刚把LAMP组件升级了,php升到7.2了,切换成php 7.1版本,提示消失了,可见PHP 7.2 ...

  2. MySQL的nnodb引擎表数据分区存储

    Symlinks are fully supported only for MyISAM tables. 对应Innodb引擎数据文件放到其他目录 mysql> SHOW VARIABLES L ...

  3. 网络传输--TCP

    TCP网络编程 一.TCP简介 二.TCP网络程序--客户端 三.TCP网络程序--服务端 四.TCP知识总结 五.文件下载案例 六.3次握手和4次挥手 回到顶部 一.TCP简介TCP 1.TCP的简 ...

  4. SQL Anywhere .NET

    SQL Anywhere .NET 支持 1.ADO.NET 是 Microsoft 的 ODBC.OLE DB 和 ADO 系列中最新的数据访问 API.它是 Microsoft .NET Fram ...

  5. vue 刷新当前页面

    情景: 比如在删除或者增加一条记录的时候希望当前页面可以重新刷新 请求接口中直接将数组结果取第0个数组或者第n个数组给变量,会报错 0 的错误,此时多次刷新即可 方法一.这种方法简单快捷,但是页面会有 ...

  6. python中的0,None,False,空容器

    在Python中,None.空列表[].空字典{}.空元组().0等一系列代表空和无的对象会被转换成False.除此之外的其它对象都会被转化成True. 1.0等于False,这点要注意. 2.空的l ...

  7. [django]前后端分离之JWT用户认证

    在前后端分离开发时为什么需要用户认证呢?原因是由于HTTP协定是不储存状态的(stateless),这意味着当我们透过帐号密码验证一个使用者时,当下一个request请求时它就把刚刚的资料忘了.于是我 ...

  8. [LeetCode] 744. Find Smallest Letter Greater Than Target_Easy tag: **Binary Search

    Given a list of sorted characters letters containing only lowercase letters, and given a target lett ...

  9. node加密解密 crytpo

    var crypto = require('crypto'); exports.encrypt = function (str, secret) { var cipher = crypto.creat ...

  10. vue中使用echarts

    1.下载依赖 cnpm i echarts -S 2.模块中引入 <template> <div class="analyzeSystem"> <di ...