CSS background-repeat 语法
在 CSS 中,background-repeat 属性用于定义元素的背景图片的重复方式。
语法:
background-repeat: 关键字;说明:
background-repeat 的属性取值如下表所示。
| 取值 | 说明 |
|---|---|
| repeat(默认值) | 在水平和垂直两个方向同时重复 |
| repeat-x | 只在水平方向上重复 |
| repeat-y | 只在垂直方向上重复 |
| no-repeat | 不重复 |
| space(不常用) | 背景图像会尽可能多地重复,但不会裁剪。如果空间不足以显示一个完整的图像,则图像之间会平均分配额外的空间。 |
| round(不常用) | 背景图像会重复以填充空间,但图像会被拉伸或挤压,使其正好显示整数个图像,没有空白。 |
background-repeat 的取值可以使用 1 个或 2 个关键字。
- 1 个关键字:同时应用于水平和垂直方向的重复。
- 2 个关键字:第一个关键字应用于水平方向的重复,第二个关键字应用于垂直方向的重复。
注意: 只有元素的宽高大于背景图片的宽高时,才会出现平铺重复效果。
CSS background-repeat 摘要
| 属于 | CSS 背景 |
|---|---|
| 使用频率 | 高 |
| 是否继承 | 否 |
| 默认值 | repeat |
| 兼容性 | 查看 |
| 官方文档 | 查看 |
| MDN | 查看 |
CSS background-repeat 示例
下面先来看几个简单例子:我们有一张 25px * 25px 的小图片(如下图所示),然后通过不同的 background-repeat 属性取值,来看看实际效果如何。

示例 1:background-repeat 基本用法
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
div {
width: 200px;
height: 100px;
border: 1px solid gray;
background-image: url("imgs/flower.svg");
background-repeat: repeat;
}
</style>
</head>
<body>
<div></div>
</body>
</html>页面效果如下图所示。

分析:
如果改为 background-repeat: repeat-x;,此时页面效果如下图所示。

如果改为 background-repeat: repeat-y;,此时页面效果如下图所示。

如果改为 background-repeat: no-repeat;,此时页面效果如下图所示。

示例 2:background-repeat 使用 2 个值
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
div {
width: 200px;
height: 100px;
border: 1px solid gray;
background-image: url("imgs/flower.svg");
background-repeat: repeat no-repeat;
}
</style>
</head>
<body>
<div></div>
</body>
</html>页面效果如下图所示。

分析:
对于 background-repeat: repeat no-repeat; 来说,第一个值 repeat 控制水平方向重复,第二个值 no-repeat 控制垂直方向不重复,整体效果类似于 repeat-x。
在实际项目开发中,并不推荐使用 2 个值的方式,因为这种效果我们只用一个 repeat-x 或一个 repeat-y 就可以实现了。
