3种CSS实现背景图片全屏铺满自适应的方式

01

复制代码
margin:0px;
background: url(images/bg.png) no-repeat;
background-size:100% 100%;
background-attachment:fixed;

url(images/beijing.png)------图片路径的位置;

no-repeat------ 图片不重复;

center 0px------center是距离页面左边的定位,0px是距离页面上面的定位;

background-position: center 0------就是图片的定位,同上;

background-size: cover;------把背景图像扩展至足够大,以使背景图像完全覆盖背景区域。背景图像的某些部分也许无法显示在背景定位区域中;

min-height: 100vh;------视窗的高度,"视区"所指为浏览器内部的可视区域大小,即window.innerWidth/ window.innerHeight大小。

02

复制代码
background: url("bg.png") no-repeat;
height:100%;
width:100%;
overflow: hidden;
background-size:cover;//或者background-size:100%;

03

给body标签指定背景图,这样背景图就可以填充整个浏览器viewport了。其实,该方案对所有的块级容器都可以生效。块级容器的宽高是动态的,那么背景图将自动伸缩,充满整个容器。

css body标签的样式如下:

复制代码
body {
/* 加载背景图 */
background-image: url(images/bg.jpg);
/* 背景图垂直、水平均居中 */
background-position: center center;
/* 背景图不平铺 */
background-repeat: no-repeat;
/* 当内容高度大于图片高度时,背景图像的位置相对于viewport固定 */
background-attachment: fixed;
/* 让背景图基于容器大小伸缩 */
background-size: cover;
/* 设置背景颜色,背景图加载过程中会显示背景色 */
background-color: #464646;
}
相关推荐
siwangqishiq22 分钟前
Vulkan Tutorial 教程翻译(四) 绘制三角形 2.2 呈现
前端
李三岁_foucsli3 分钟前
js中消息队列和事件循环到底是怎么个事,宏任务和微任务还存在吗?
前端·chrome
尽欢i4 分钟前
HTML5 拖放 API
前端·html
xiaominlaopodaren18 分钟前
Three.js 光影魔法:如何单独点亮你的3D模型
javascript
PasserbyX19 分钟前
一句话解释JS链式调用
前端·javascript
1024小神21 分钟前
tauri项目,如何在rust端读取电脑环境变量
前端·javascript
Nano26 分钟前
前端适配方案深度解析:从响应式到自适应设计
前端
古夕30 分钟前
如何将异步操作封装为Promise
前端·javascript
小小小小宇31 分钟前
前端定高和不定高虚拟列表
前端
@一枝梅37 分钟前
vue3 vite.config.js 引入bem.scss文件报错
javascript·rust·vue·scss