背景重复样式background-repeat
一、background-repeat属性
在CSS中,使用background-repeat属性可以设置背景图像是否平铺,并且可以设置如何平铺。
语法:
background-repeat:取值;
说明:
background-repeat属性取值如下:
属性值 | 说明 |
---|---|
no-repeat | 表示不平铺 |
repeat | 默认值,表示在水平方向(x轴)和垂直方向(y轴)同时平铺 |
repeat-x | 表示在水平方向(x轴)平铺 |
repeat-y | 表示在垂直方向(y轴)平铺 |
举例:
这里有一张25px×25px的图片,我们设置3个div元素为200px×100px,并且把div元素背景图像设置为该图片。
图1 25px×25px图像
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
<!DOCTYPE html> <head> <title>background- repeat 属性</title> <style type= "text/css" > /*设置div元素的共同样式*/ div { width : 200px ; height : 100px ; background-image : url ( "../App_images/lesson/run_cj/flower.jpg" ); text-align : center ; border : 1px dashed gray ; } /*设置3个div元素的个别样式*/ #div 2 { background-repeat : repeat-x ;} #div 3 { background-repeat : repeat-y ;} #div 4 { background-repeat : no-repeat ;} hr{ border-color : red ;} </style> </head> <body> <div id= "div1" > <h 3 >静夜思</h 3 > <p>窗前明月光,疑似地上霜。<br/>举头望明月,低头思故乡。</p> </div> <hr/> <div id= "div2" > <h 3 >静夜思</h 3 > <p>窗前明月光,疑似地上霜。<br/>举头望明月,低头思故乡。</p> </div> <hr/> <div id= "div3" > <h 3 >静夜思</h 3 > <p>窗前明月光,疑似地上霜。<br/>举头望明月,低头思故乡。</p> </div> <hr/> <div id= "div4" > <h 3 >静夜思</h 3 > <p>窗前明月光,疑似地上霜。<br/>举头望明月,低头思故乡。</p> </div> </body> </html> |
在浏览器预览效果如下:
分析:
因为第一个div元素没有设置background-repeat属性值,因为浏览器会采用background-repeat默认值“repeat”,背景图片会在水平和垂直两个方向同时平铺。第二个div元素background-repeat属性值为“repeat-x”,因此背景图片会在水平方向(x轴)平铺。第三个div元素background-repeat属性值为“repeat-y”,因此背景图片会在垂直方向(y轴)平铺
大家可能对hr元素的属性设置很奇怪,为什么设置hr的border-color属性值为red,hr的颜色就会改变,而不是设置hr的color属性为red或者background-color为red呢?这跟hr本身特点有关,在CSS进阶“hr的CSS设置”这一节我们会详细讲解到。
注意:设置有背景图片的元素的宽或高大于背景图片本身的宽或高,才会有平铺效果。