要让该背景图片上下左右居中显示而非平铺,可以通过如下 CSS 代码实现:
background-image: url(bg.jpg); background-repeat: no-repeat; background-position: center center; background-attachment: fixed; /* 或者 scroll */
解释一下这个代码实现的过程:
background-repeat 属性控制是否将图像平铺到整个背景区域,将其设为 no-repeat 可以阻止这种平铺
background-position 属性用于定位背景图像在元素的背景中的位置,由两个值组成,第一个值表示水平方向的位置(例如 left、center、right 或以像素为单位的值),第二个值与之类似,表示垂直方向的位置。使用 center center 可将背景图像在水平和垂直方向都居中显示。
background-attachment 属性用于控制背景图像滚动时是否固定在页面或元素。如果将其设置为 fixed 将会将背景图像固定在视窗中不随滚动条滚动;否则如果设置为 scroll 时将会随元素内容一起滚动。
这些属性结合起来就可以实现所需的效果:让背景图像上下左右居中显示而不是平铺并且可以选择是否固定。