在本章中,您将学习如何向一个元素添加多个背景图片。
您还将了解以下属性:
background-size
background-origin
background-clip
CSS 允许您通过以下方式为一个元素添加多个背景图片background-image
属性。
不同的背景图片用逗号分隔,并且图片彼此堆叠,其中第一个图片最接近观看者。
以下示例有两个背景图片,第一个图片是花朵(与底部和右侧对齐),第二个图片是纸张背景(与左上角对齐):
#example1 {
background-image: url(img_flwr.gif), url(paper.gif);
background-position: right bottom, left top;
background-repeat: no-repeat, repeat;
}
亲自试一试 »
可以使用单独的背景属性(如上所述)或background
简写属性。
以下示例使用background
简写属性(与上面的示例结果相同):
#example1 {
background: url(img_flwr.gif) right bottom no-repeat, url(paper.gif) left top repeat;
}
亲自试一试 »
CSSbackground-size
属性允许您指定背景图片的大小。
大小可以用长度、百分比或使用两个关键字之一来指定:包含或覆盖。
以下示例将背景图片的大小调整为比原始图片小得多(使用像素):
Lorem ipsum dolor sat amet,conectetuer adipiscing elit,sed diam nonummy nibh euismod Tincidunt ut laoreet dolore magna aliquamerat volutpat。
Ut wisi enim ad minim veniam, quis nostrud exercitation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat.
这是代码:
#div1 {
background: url(img_flower.jpg);
background-size: 100px 80px;
background-repeat: no-repeat;
}
亲自试一试 »
另外两个可能的值background-size
是contain
和cover
。
这个contain
关键字将背景图片缩放到尽可能大(但其宽度和高度都必须适合内容区域)。这样,根据背景图片与背景定位区域的比例,可能会有一些背景区域没有被背景图片覆盖。
这个cover
关键字缩放背景图片,使内容区域完全被背景图片覆盖(其宽度和高度都等于或超过内容区域)。因此,背景图片的某些部分在背景定位区域中可能不可见。
下面的例子说明了使用contain
和cover
:
#div1 {
background: url(img_flower.jpg);
background-size: contain;
background-repeat: no-repeat;
}
#div2 {
background: url(img_flower.jpg);
background-size: cover;
background-repeat: no-repeat;
}
亲自试一试 »
这个background-size
当使用多个背景时,属性还接受背景大小的多个值(使用逗号分隔的列表)。
以下示例指定了三个背景图片,每个图片具有不同的背景大小值:
#example1 {
background: url(img_tree.gif) left top no-repeat, url(img_flwr.gif) right bottom no-repeat, url(paper.gif) left top repeat;
background-size: 50px, 130px, auto;
}
亲自试一试 »
现在我们希望网站上的背景图片始终覆盖整个浏览器窗口。
要求如下:
以下示例展示了如何执行此操作;使用 <html> 元素(<html> 元素始终至少是浏览器窗口的高度)。然后在其上设置固定且居中的背景。然后使用背景大小属性调整其大小:
您还可以在 <div> 上使用不同的背景属性来创建英雄图片(带有文本的大图片),并将其放置在您想要的位置。
.hero-image {
background: url(img_man.jpg) no-repeat center;
background-size: cover;
height: 500px;
position: relative;
}
亲自试一试 »
CSSbackground-origin
属性指定背景图片的位置。
该属性采用三个不同的值:
下面的例子说明了background-origin
属性:
#example1 {
border: 10px solid black;
padding: 35px;
background: url(img_flwr.gif);
background-repeat: no-repeat;
background-origin: content-box;
}
亲自试一试 »
CSSbackground-clip
属性指定背景的绘制区域。
该属性采用三个不同的值:
下面的例子说明了background-clip
属性:
#example1 {
border: 10px dotted black;
padding: 35px;
background: yellow;
background-clip: content-box;
}
亲自试一试 »
Property | Description |
---|---|
background | A shorthand property for setting all the background properties in one declaration |
background-clip | Specifies the painting area of the background |
background-image | Specifies one or more background images for an element |
background-origin | Specifies where the background image(s) is/are positioned |
background-size | Specifies the size of the background image(s) |
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!