background-size用于控制背景图尺寸,取值包括auto、具体数值、百分比、cover和contain,配合background-position和background-repeat可实现全屏背景、图标缩放等效果。

在css中,background-size 属性用于控制背景图像的尺寸,从而实现对背景图的缩放效果。通过设置不同的值,可以灵活地调整背景图的显示大小,适应容器区域。
常用取值说明
以下是 background-size 的主要取值方式及其作用:
- auto:保持背景图原始比例和尺寸,不进行缩放。如果只设置一个方向(如 width),另一方向会自动计算。
- 具体数值(如 100px 50px):设置背景图的宽度和高度。第一个值为宽,第二个为高。可以使用 px、rem、% 等单位。
- 百分比(如 50% 75%):相对于父容器的尺寸进行缩放。例如,50% 宽表示背景图宽度为容器宽度的一半。
- cover:等比例缩放背景图,使其完全覆盖容器区域。可能会裁剪图像的一部分。
- contain:等比例缩放背景图,确保整张图完整显示在容器内。可能会留白。
实际应用场景
根据设计需求选择合适的缩放方式:
- 希望背景图铺满整个盒子且不留空白 → 使用 background-size: cover;
- 需要完整显示图标或小图,避免裁剪 → 使用 background-size: contain;
- 固定尺寸图标(如按钮上的小图标)→ 使用具体像素值,如 background-size: 20px 20px;
- 响应式背景图,随容器变化 → 使用百分比或结合 rem 单位
配合其他属性使用
为了更好地控制背景图显示效果,常与以下属性搭配:
- background-position:调整缩放后图像在容器中的位置,如居中显示用
center。 - background-repeat:防止图像重复,通常设为
no-repeat。 - background-image:指定图像源。
例如,创建一个全屏背景图常见写法:
div { background-image: url('bg.jpg'); background-size: cover; background-position: center; background-repeat: no-repeat; width: 100%; height: 100vh; }
基本上就这些。合理使用 background-size 能有效控制背景图缩放行为,提升页面视觉表现。


