CSS3 背景

使用 CSS3,你可以将多个背景应用于元素。

使用 CSS3 背景

CSS3 提供了几个新属性来操作元素的背景,如背景剪辑,多个背景以及调整背景大小的选项。

以下部分将介绍 CSS3 的所有新背景功能,其他背景相关属性请查看 CSS 背景 教程。

CSS3 background-size 属性

background-size 属性可用于指定背景图像的大小。在 CSS3 之前,背景图像的大小由图像的实际大小决定。背景图像的大小可以使用像素或百分比值,以及关键字 autocontaincover 来指定。不允许使用负值。

.box {
    width: 250px;
    height: 150px;
    background: url("images/sky.jpg") no-repeat;
    background-size: contain;
    border: 6px solid #333;
} 

提示:background-size 属性通常用于创建完整大小的背景图像,可根据视区或浏览器的大小进行缩放。

CSS3 background-clip 属性

background-clip 属性可用于指定元素的背景是否延伸到边框中。该 background-clip 属性可以取三个值: border-boxpadding-boxcontent-box

.box {
    width: 250px;
    height: 150px;
    padding: 10px;
    border: 6px dashed #333;
    background: orange;
    background-clip: content-box;
}

请参阅有关 CSS 框模型的教程,以了解有关元素框的更多信息。

CSS3 background-origin 属性

background-origin 属性可用于指定背景图像的定位区域。它可以采取与 background-clip 属性相同的值: border-boxpadding-boxcontent-box

.box {
    width: 250px;
    height: 150px;
    padding: 10px;
    border: 6px dashed #333;
    background: url("images/sky.jpg") no-repeat;
    background-size: contain;
    background-origin: content-box;
} 

注: background-origin 如果值属性被忽略,如果 background-attachment 属性指定为 'fixed'

CSS3 多个背景

CSS3 使你能够为单个元素添加多个背景。背景层叠在彼此的顶部。图层数由或简写属性中逗号分隔值的数量决定。 background-image background

.box {
    width: 100%;
    height: 500px;
    background: url("images/birds.png") no-repeat center,  url("images/clouds.png")  no-repeat center, lightblue;
}

以逗号分隔的背景列表中的第一个值,比如 background-image ‘birds.png’将显示在顶部,最后一个值即’lightblue’颜色将显示在底部。只有最后一个背景可以包含一个 background-color