非常教程

CSS参考手册

背景和边框 | Backgrounds & Borders

背景重复 | background-repeat

background-repeatCSS 属性定义背景图像的重复方式。背景图像可以沿着水平轴,垂直轴,两个轴重复,或者根本不重复。

/* One-value syntax */
background-repeat: repeat-x;
background-repeat: repeat-y;
background-repeat: repeat;
background-repeat: space;
background-repeat: round;
background-repeat: no-repeat;

/* Two-value syntax: horizontal | vertical */
background-repeat: repeat space;
background-repeat: repeat repeat;
background-repeat: round space;
background-repeat: no-repeat round;

/* Global values */
background-repeat: inherit;
background-repeat: initial;
background-repeat: unset;

默认情况下,重复的图像被裁剪为元素的大小,但可以缩放以适合(使用round)或者从头到尾均匀分布(使用space)。

初始值

repeat

适用元素

all elements. It also applies to ::first-letter and ::first-line.

是否是继承属性

no

适用媒体

visual

计算值

a list, each item consisting of two keywords, one per dimension

Animation type

discrete

正规顺序

the unique non-ambiguous order defined by the formal grammar

语法

<repeat-style>单值语法是完整的双值语法的缩写:

单值

等价于双值

repeat-x

repeat no-repeat

repeat-y

no-repeat repeat

repeat

repeat repeat

space

space space

round

round round

no-repeat

no-repeat no-repeat

在双值语法中, 第一个值表示水平重复行为, 第二个值表示垂直重复行为. 下面是关于每一个值是怎么工作的具体说明:

repeat

图像会按需重复来覆盖整个背景图片所在的区域. 最后一个图像会被裁剪, 如果它的大小不合适的话.

space

图像会尽可能得重复, 但是不会裁剪. 第一个和最后一个图像会被固定在元素(element)的相应的边上, 同时空白会均匀地分布在图像之间. background-position属性会被忽视, 除非只有一个图像能被无裁剪地显示. 只在一种情况下裁剪会发生, 那就是图像太大了以至于没有足够的空间来完整显示一个图像.

round

随着允许的空间在尺寸上的增长, 被重复的图像将会伸展(没有空隙), 直到有足够的空间来添加一个图像. 当下一个图像被添加后, 所有的当前的图像会被压缩来腾出空间. 例如, 一个图像原始大小是260px, 重复三次之后, 可能会被伸展到300px, 直到另一个图像被加进来. 这样他们就可能被压缩到225px.

no-repeat

图像不会被重复(因为背景图像所在的区域将可能没有完全被覆盖). 那个没有被重复的背景图像的位置是由background-position属性来决定.

正式语法

<repeat-style>#where 
<repeat-style> = repeat-x | repeat-y | [ repeat | space | round | no-repeat ]{1,2}

示例

HTML

<ol>
  <li>no-repeat
    <div class="one"></div>
  </li>
  <li>repeat
    <div class="two"></div>
  </li>
  <li>repeat-x
    <div class="three"></div>
  </li>
  <li>repeat-y
    <div class="four"></div>
  </li>
  <li>space
    <div class="five"></div>
  </li>
  <li>round
    <div class="six"></div>
  </li>
  <li>repeat-x, repeat-y (multiple images)
    <div class="seven"></div>
  </li>
</ol>

CSS

/* Shared for all DIVS in example */
ol,
li {
  margin: 0;
  padding: 0;
}
li {
  margin-bottom: 12px;
}
div {
    background-image: url(https://mdn.mozillademos.org/files/12005/starsolid.gif);
    width: 160px;
    height: 70px;
}

/* Background repeats */
.one {
  background-repeat: no-repeat;
}
.two {
  background-repeat: repeat;
}
.three {
  background-repeat: repeat-x;
}
.four {
  background-repeat: repeat-y;
}
.five {
  background-repeat: space;
}
.six {
  background-repeat: round;
}

/* Multiple images */
.seven {
  background-image:  url(https://mdn.mozillademos.org/files/12005/starsolid.gif),
                     url(https://developer.cdn.mozilla.net/media/redesign/img/favicon32.png);
  background-repeat: repeat-x,
                     repeat-y;
  height: 144px;
}

结果

在这个例子中, 每一个列表项都使用了不同的background-repeat语法.

规范

Specification

Status

Comment

CSS Backgrounds and Borders Module Level 3The definition of 'background-repeat' in that specification.

Candidate Recommendation

Adds support for multiple background images, the two-value syntax allowing distinct repetition behavior for the horizontal and vertical directions, the space and round keywords, and for backgrounds on inline-level elements by precisely defining the background painting area.

CSS Level 2 (Revision 1)The definition of 'background-repeat' in that specification.

Recommendation

No significant changes.

CSS Level 1The definition of 'background-repeat' in that specification.

Recommendation

Initial definition.

浏览器兼容性

Feature

Chrome

Edge

Firefox

Internet Explorer

Opera

Safari

Basic Support

1.0

12

1.0

4

3.5

1.0

Multiple backgrounds

1.0

12

3.6

9

10.5

1.3

Two-value syntax (different values for x & y directions)

(Yes)

12

13.0

9.0

(Yes)

(Yes)

round and space keywords

(Yes)

12

49.0

9.0

10.5

(Yes)

Feature

Android

Chrome for Android

Edge mobile

Firefox for Android

IE mobile

Opera Android

iOS Safari

Basic Support

?

?

(Yes)

1.0

?

?

?

Multiple backgrounds

?

?

(Yes)

(Yes)

?

?

?

Two-value syntax (different values for x & y directions)

?

?

(Yes)

13.0

?

?

?

round and space keywords

?

?

(Yes)

49.0

?

?

?

另见

  • 使用多个背景

在MDN上编辑此页面

 © 2005–2017 Mozilla Developer Network and individual contributors.

在CreativeCommonsAttribution-ShareAlike License v2.5或更高版本下获得许可。

https://developer.mozilla.org/en-US/docs/web/css/背景-重复

背景和边框 | Backgrounds & Borders相关

1.定位 |
2.背景 | background
3.背景附件 | background-attachment
4.背景裁剪 | background-clip
5.背景颜色 | background-color
6.背景图片 | background-image
7.背景来源 | background-origin
8.背景图片位置 | background-position
9.背景位置-x | background-position-x
10.背景位置-y | background-position-y
11.背景大小 | background-size
12.边框 | border
13.底部边框 | border-bottom
14.底部边框颜色 | border-bottom-color
15.左下角的边框半径 | border-bottom-left-radius
16.右下角的边框半径 | border-bottom-right-radius
17.边框底部样式 | border-bottom-style
18.边框底部宽度 | border-bottom-width
19.边框颜色 | border-color
20.边框图片 | border-image
21.边框图像开始 | border-image-outset
22.边框图像重复 | border-image-repeat
23.边框图像使用范围 | border-image-slice
24.边框图像路径 | border-image-source
25.边框图像宽度 | border-image-width
26.左边框 | border-left
27.左边框颜色 | border-left-color
28.左边框宽度 | border-left-width
29.边框半径 | border-radius
30.右边框 | border-right
31.右边框颜色 | border-right-color
32.右边框样式 | border-right-style
33.右边框宽度 | border-right-width
34.边框样式 | border-style
35.边框属性 | border-top
36.边框属性颜色 | border-top-color
37.边框左上角半径 | border-top-left-radius
38.边框右上角半径 | border-top-right-radius
39.边框样式属性 | border-top-style
40.上边框宽度 | border-top-width
41.边框宽度 | border-width
42.盒子阴影 | box-shadow
43.背景和边框 | CSS Background and Borders
44.背景图像生成 | CSS Background and Borders: Border-image generator
45.边界半径生成 | CSS Background and Borders: Border-radius generator
46.框阴影生成 | CSS Background and Borders: Box-shadow generator
47.缩放背景图像 | CSS Background and Borders: Scaling background images
48.多个背景 | CSS Background and Borders: Using CSS multiple backgrounds
49.背景和边框 | CSS Backgrounds and Borders
CSS

层叠样式表( Cascading Style Sheets )是一种用来表现 HTML 或 XML 等文件样式的计算机语言。CSS 不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。

CSS目录

1.动画和转换 | Animations & Transitions
2.背景和边框 | Backgrounds & Borders
3.基本框模型 | Basic Box Model
4.基本用户界面 | Basic User Interface
5.框对齐 | Box Alignment
6. 级联和继承 | Cascading & Inheritance
7.颜色 | Color
8. 合成与混合 | Compositing & Blending
9.条件和规则 | Conditional Rules
10.计数器样式 | Counter Styles
11.设备适配 | Device Adaptation
12.扩展 | Extensions
13.滤镜效果 | Filter Effects
14.灵活的框布局 | Flexible Box Layout
15.字体 | Fonts
16.片段模块 | Fragmentation
17.全屏 API | Fullscreen API
18. 生成内容 | Generated Content
19.网格布局 | Grid Layout
20.图像值 | Image Values
21.初始线格局 | Inline Layout
22.列表和计数器 | Lists & Counters
23.逻辑属性 | Logical Properties
24.面具 | Masking
25.媒体查询 | Media Queries
26.杂项 | Miscellaneous
27.Miscellaneous Level 1
28.Miscellaneous Level 2
29.运动路径 | Motion Path
30. 多列布局 | Multi-column Layout
31.命名空间 | Namespaces
32.项目模型 | Object Model View
33.网页媒体 | Paged Media
34.定位布局 | Positioned Layout
35.伪元素 | Pseudo-
36.节奏大小 | Rhythmic Sizing
37. Ruby布局 | Ruby Layout
38.可缩放矢量图形 | Scalable Vector Graphics
39.滚动快照 | Scroll Snap
40.选择 | Selectors
41.形状 | Shapes
42.文本 | Text
43.文字装饰 | Text Decoration
44.变换 | Transforms
45.值和单位 | Values & Units
46.变量 | Variables
47.写入模型 | Writing Modes
48.CSS 教程
49.CSS 创建
50.CSS Id 和 Class选择器
51.CSS 简介
52.CSS 盒子模型
53.CSS Table(表格)
54.CSS 列表样式(ul)
55.CSS 链接(link)
56.CSS Fonts(字体)
57.CSS Text(文本)
58.CSS Backgrounds(背景)
59.CSS Display(显示) 与 Visibility(可见性)
60.CSS 尺寸 (Dimension)
61.CSS 分组和嵌套
62.CSS 轮廓(outline)属性
63.CSS Border(边框)
64.CSS 图像透明/不透明
65.CSS 导航栏
66.CSS 伪元素
67.CSS 伪类
68.CSS Float(浮动)
69.CSS Position(定位)
70.CSS 总结
71.CSS 属性选择器
72.CSS 媒体类型
73.CSS 图像拼合技术
74.CSS 实例
75.CSS 组合选择符
76.响应式 Web 设计 – 框架
77.响应式 Web 设计 – 视频(Video)
78.CSS 提示工具(Tooltip)
79.CSS 布局 Overflow
80.CSS 计数器
81.CSS 表单