css3 Background-size属性使用说明
昨天做了一个ipad版的用户协议,顶部和底部各有一个小banner,ipad有横版和竖版,两版宽度不一样,所以两个banner的宽度也不一样。
为了减少使用image,我用到了Background-size来自适应div的宽度。
background-size的类型
background-size需要两个值,它的类型可以是像素(px)、百分比(%)或是auto,还可以是cover和contain。第一个值为背景图的width,另外一个值用于指定背景图上的height,如果只设定1个值,则第2个默认为auto,但当值为cover和contain时除外。
cover:保持图像的宽高比例,将图片缩放到正好完全覆盖定义的背景区域,其中有一边和背景相同。
语法:
background-size :[ <length> | <percentage> | auto ]{1,2} | cover | contain
相关属性: background-clip | background-origin
取值:
<length>:由浮点数字和单位标识符组成的长度值。不可为负值。
<percentage>:取值为0%到100%之间的值。不可为负值。
说明:
设置背景图片的大小。
指定背景大小,以象素或百分比显示。当指定为百分比时,大小会由所在区域的宽度、高度,以及background-origin的位置决定。还可以通过cover和contain来对图片进行伸缩。
引擎类型 | Gecko | Webkit | Presto |
---|---|---|---|
Background-size | -webkit-background-size | -o-background-size | |
具体的使用方法如下:
代码如下 | 复制代码 |
.wrapper h1{
|
html:
代码如下 | 复制代码 |
<div class="div" ><h1>雨打浮萍</h1><p>专注于web前端开发</p></div> |
代码如下 | 复制代码 |
.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; |
例中并没有为各浏览写自己的样式,仍然执行很好
兼容性:
类型 Internet Explorer Firefox Chrome Opera Safari 版本 (×)IE6 (×)Firefox 2.0 (√)Chrome 1.0.x (√)Opera 9.63 (√)Safari 3.1 (×)IE7 (×)Firefox 3.0 (√)Chrome 2.0.x (√)Safari 4 (×)IE8 (×)Firefox 3.5 (√)IE9 (√)Firefox 3.6
您可能感兴趣的文章:
CSS3 边框
CSS3 resize 属性
CSS3 outline-offset 属性
CSS3 text-overflow 属性
CSS3 word-wrap 属性
CSS3 font-size-adjust 属性
CSS3 transition 属性
CSS3 text-overflow 属性
CSS3 column-span 属性
CSS3 column-rule-color 属性