背景重复样式background-repeat

一、background-repeat属性

在CSS中,使用background-repeat属性可以设置背景图像是否平铺,并且可以设置如何平铺。

语法:

background-repeat:取值;

说明:

background-repeat属性取值如下:

表1 background-repeat属性取值
属性值说明
no-repeat 表示不平铺
repeat 默认值,表示在水平方向(x轴)和垂直方向(y轴)同时平铺
repeat-x 表示在水平方向(x轴)平铺
repeat-y 表示在垂直方向(y轴)平铺

举例:

这里有一张25px×25px的图片,我们设置3个div元素为200px×100px,并且把div元素背景图像设置为该图片。

background-repeat属性图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元素的个别样式*/
        #div2{background-repeat:repeat-x;}
        #div3{background-repeat:repeat-y;}
        #div4{background-repeat:no-repeat;}
        hr{border-color:red;}
    </style>
</head>
<body>
    <div id="div1">
        <h3>静夜思</h3>
        <p>窗前明月光,疑似地上霜。<br/>举头望明月,低头思故乡。</p>
    </div>
    <hr/>
    <div id="div2">
        <h3>静夜思</h3>
        <p>窗前明月光,疑似地上霜。<br/>举头望明月,低头思故乡。</p>
    </div>
    <hr/>
    <div id="div3">
        <h3>静夜思</h3>
        <p>窗前明月光,疑似地上霜。<br/>举头望明月,低头思故乡。</p>
    </div>
    <hr/>
    <div id="div4">
        <h3>静夜思</h3>
        <p>窗前明月光,疑似地上霜。<br/>举头望明月,低头思故乡。</p>
    </div>
</body>
</html>

在浏览器预览效果如下:

background-repeat属性实例

分析:

因为第一个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设置”这一节我们会详细讲解到。

注意:设置有背景图片的元素的宽或高大于背景图片本身的宽或高,才会有平铺效果。

原文地址:https://www.cnblogs.com/thiaoqueen/p/6859260.html