CSS3 背景

CSS3背景知识详解 – 小白入门

CSS3背景知识详解

编程小白也能轻松理解的背景属性指南,附带示例代码和效果演示

背景颜色 (background-color)

通俗解释

就像给墙上刷油漆一样,background-color 属性让你可以给元素设置背景颜色。

/* 基本用法 */ .element { background-color: #3498db; /* 蓝色背景 */ } /* 其他表示方式 */ .element { background-color: rgb(52, 152, 219); /* RGB格式 */ background-color: rgba(52, 152, 219, 0.7); /* 带透明度 */ background-color: hsl(204, 70%, 53%); /* HSL格式 */ }
这个区域使用了背景颜色 #3498db
注意: 背景色默认会延伸到边框下面(border下面),可以使用background-clip调整
背景图片 (background-image)

通俗解释

就像在墙上贴壁纸,background-image 可以给元素设置背景图片。

/* 设置背景图片 */ .element { background-image: url(‘path/to/image.jpg’); } /* 同时设置多个背景(CSS3) */ .element { background-image: url(‘image1.png’), url(‘image2.png’); } /* 使用渐变作为背景 */ .element { background-image: linear-gradient(red, yellow); }
这个区域使用了背景图片
提示: 默认情况下背景图片会重复铺满整个元素,可以通过background-repeat控制
背景重复 (background-repeat)

通俗解释

控制背景图片是否重复以及如何重复,就像壁纸的铺贴方式。

/* 常用值 */ .element { background-repeat: repeat; /* 默认,横向纵向都重复 */ background-repeat: repeat-x; /* 只横向重复 */ background-repeat: repeat-y; /* 只纵向重复 */ background-repeat: no-repeat; /* 不重复 */ background-repeat: space; /* 图片不裁剪,均匀分布 */ background-repeat: round; /* 图片缩放以适应空间 */ }
背景图片重复铺满
注意: 当使用多个背景时,每个背景可以有自己的重复设置,用逗号分隔
背景定位 (background-position)

通俗解释

决定背景图片在元素中的位置,就像调整墙上的挂画位置。

/* 关键字定位 */ .element { background-position: center; /* 居中 */ background-position: left top; /* 左上角 */ background-position: right bottom; /* 右下角 */ } /* 精确像素定位 */ .element { background-position: 20px 50px; /* 水平20px 垂直50px */ background-position: 30% 70%; /* 水平30% 垂直70% */ } /* 四个值语法(CSS3) */ .element { background-position: right 20px bottom 10px; /* 距右边20px,底边10px */ }
背景图片居中显示
提示: 默认位置是左上角 (0 0),百分比值是基于元素尺寸减去图片尺寸
背景尺寸 (background-size)

通俗解释

就像调整图片大小一样,控制背景图片的尺寸。

/* 关键字值 */ .element { background-size: cover; /* 覆盖整个区域,保持比例 */ background-size: contain; /* 图片完整显示,保持比例 */ } /* 指定具体尺寸 */ .element { background-size: 100px 150px; /* 宽100px, 高150px */ background-size: 50% 80%; /* 宽50%, 高80% */ background-size: 100px auto; /* 宽100px, 高度自适应 */ background-size: auto 150px; /* 高度150px, 宽度自适应 */ } /* 多个背景的不同尺寸 */ .element { background-size: 100px 100px, cover; }
背景图片使用cover模式
注意: 使用contain时可能有空白区域,cover可能裁剪图片边缘
背景固定 (background-attachment)

通俗解释

决定背景图片是随内容滚动还是固定在视口中。

.element { background-attachment: scroll; /* 默认,背景随内容滚动 */ background-attachment: fixed; /* 背景固定在视口 */ background-attachment: local; /* 背景随元素内容滚动 */ }

向下滚动查看效果 → 背景图片随内容滚动 (scroll)

向下滚动查看效果 → 背景图片随内容滚动 (scroll)

向下滚动查看效果 → 背景图片随内容滚动 (scroll)

向下滚动查看效果 → 背景图片随内容滚动 (scroll)

向下滚动查看效果 → 背景图片随内容滚动 (scroll)

提示: fixed常用于创建视差滚动效果,但移动端支持有限
背景原点 (background-origin)

通俗解释

决定背景图片从哪个区域开始定位。

.element { background-origin: border-box; /* 从边框区域开始 */ background-origin: padding-box; /* 从内边距区域开始(默认) */ background-origin: content-box; /* 从内容区域开始 */ }
背景原点设置为content-box
图片在内容区域左上角
注意: 通常与background-position结合使用,当元素有边框和内边距时效果明显
背景裁切 (background-clip)

通俗解释

控制背景(颜色或图片)延伸到哪些区域。

.element { background-clip: border-box; /* 延伸到边框(默认) */ background-clip: padding-box; /* 延伸到内边距 */ background-clip: content-box; /* 只在内容区域显示 */ background-clip: text; /* 只在文字区域显示(需前缀) */ }
背景裁切设置为content-box
背景只在内容区域显示
提示: background-clip: text可以创建文字填充效果(需要webkit前缀)
渐变背景 (linear-gradient/radial-gradient)

通俗解释

创建平滑过渡的颜色渐变背景。

/* 线性渐变 */ .element { background: linear-gradient(45deg, red, blue); background: linear-gradient(to right, #ff9a9e, #fad0c4); background: linear-gradient(90deg, red 0%, yellow 50%, green 100%); } /* 径向渐变 */ .element { background: radial-gradient(circle, red, yellow, green); background: radial-gradient(circle at top left, white, blue); } /* 重复渐变 */ .element { background: repeating-linear-gradient(45deg, yellow 0px, yellow 10px, black 10px, black 20px); }
动态渐变背景 (45°方向)
提示: 渐变可以创建复杂背景而不需要图片,节省HTTP请求
多重背景 (Multiple Backgrounds)

通俗解释

CSS3允许在一个元素上叠加多个背景,就像多层透明胶片。

.element { background-image: url(‘top-layer.png’), url(‘middle-layer.png’), linear-gradient(to bottom, blue, green); background-position: top left, center center, center center; background-repeat: no-repeat, no-repeat, no-repeat; background-size: 100px 100px, cover, cover; }
左上角和右下角有小图
背景是蓝紫渐变
注意: 多个背景时,第一个背景在最上层,最后一个在最底层

CSS3背景知识总结 | 编程小白也能轻松掌握 | 可视化示例助你理解

提示:本页面的背景也使用了CSS3渐变效果

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部