background-size是CSS3提供的一个新特性,它可以让你随心所欲的控制背景图的尺寸大小。先简要的看看background-size的用法。我们知道在CSS2中,背景图的大小在样式中是不可控的,比如要想使得背景图填充满某个区域,你要么重新做帐大点的图,要么就只能让它以平铺的方式来填充。 如今background-size让你既可以直接缩放背景图来填充满这个区域,也可以让你先给背景图设置大小,然后以设置好的尺寸去平铺满这个区域。 一起来认识认识background-size吧。 background-size的值类型: background-size需要1个或2个值,这些值既可以是像素px,也可以是百分比%或auto,还可以是特定值cover, contain。 background-size的值定义: background-size可以设置2个值,1个为必填,1个为可选。
其中第1个值用于指定背景图的width,第2个值用于指定背景图的height,如果只给background-size设置1个值,则第2个值默认为auto(cover和contain特定值除外)。 div{
background-image:url(test.png);
background-repeat:no-repeat;
background-size:100px;
} 等价于: div{
background-image:url(test.png);
background-repeat:no-repeat;
background-size:100px auto;
} 查看具体DEMO: background-size的值定义。当你使用firebug抓取到那个实例节点时,你会发现第二个值被自动加上了并且值为auto。当然,你也可以手动将第2个值设置为auto,然后与该DEMO的实例对比,它们的效果将是相同的。 background-size的特定值:
cover: 保持图像本身的宽高比例,将图片缩放到正好完全覆盖定义背景的区域;
contain: 保持图像本身的宽高比例,将图片缩放到宽度或高度正好适应定义背景的区域;
cover值: div{
background-image:url(test.png);
background-repeat:no-repeat;
background-size:cover;
} contain值: div{
background-image:url(test.png);
background-repeat:no-repeat;
background-size:contain;
} background-size简单的应用示例: 背景图自适应容器大小
设置背景图大小与平铺
|