CSS 实现高度自适应铺满整屏(包含使用flex布局实现垂直居中)

在自己写demo的过程中,想使用display:flex实现垂直居中,代码如下:

<style>
    #login{
        width:100%;
        height: 100%;
        display: flex; 
        justify-content: center;
        align-items: center;
    }
    .login-body{
        width: 600px;
        height: 260px;
        border: 1px solid #000;
    }
</style>

并不能实现我想要的效果,外层的父元素高度没有占满整个屏幕。。

已经横向居中,login的高度并不是整个屏幕的高度
解决:给#login一个min-height: 100vh,配合 display: flex; justify-content: center; align-items: center;实现垂直居中。

<style>
    #login{
        width:100%;
        min-height: 100vh;
        display: flex; 
        justify-content: center;
        align-items: center;
    }
    .login-body{
        width: 600px;
        height: 260px;
        border: 1px solid #000;
    }
</style>

此时#login的高度自适应整个屏的高度

视口单位(Viewport units)

什么是视口?

在桌面端,视口指的是在桌面端,指的是浏览器的可视区域;而在移动端,它涉及3个视口:Layout Viewport(布局视口),Visual Viewport(视觉视口),Ideal Viewport(理想视口)。

视口单位中的“视口”,桌面端指的是浏览器的可视区域;移动端指的就是Viewport中的Layout Viewport, “视区”所指为浏览器内部的可视区域大小,即window.innerWidth/window.innerHeight大小,不包含任务栏标题栏以及底部工具栏的浏览器区域大小。。

根据CSS3规范,视口单位主要包括以下4个:

  1.vw:1vw等于视口宽度的1%,视框宽度是100Vw。

  2.vh:1vh等于视口高度的1%,视框高度是100Vh。

  3.vmin:选取vw和vh中最小的那个。

  4.vmax:选取vw和vh中最大的那个。
  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 在Vue中,我们可以使用CSS实现将背景图片全屏铺满自适应PC页面的效果。首先,在首页的组件中,可以通过以下步骤来实现: 1. 在组件的样式文件中,通过CSS的background属性来添加背景图片。可以使用相对路径或绝对路径来引用图片资源。例如: ```css .background { background: url('../assets/background.jpg') no-repeat center center fixed; background-size: cover; } ``` 2. 在组件的模板中,将添加了背景图片的样式类应用到根元素中。例如: ```html <template> <div class="background"> <!-- 页面内容 --> </div> </template> ``` 3. 在组件的样式文件中,可以设置根元素的高度为100%来使背景图片占满整个页面。同时,可以使用其他CSS属性来调整布局和样式。例如: ```css .background { background: url('../assets/background.jpg') no-repeat center center fixed; background-size: cover; height: 100%; display: flex; justify-content: center; align-items: center; } ``` 4. 在Vue的入口文件(main.js)中,将首页组件引入并注册到Vue实例中。例如: ```javascript import Vue from 'vue'; import App from './App.vue'; Vue.config.productionTip = false; new Vue({ render: (h) => h(App), }).$mount('#app'); ``` 通过以上步骤,我们就可以实现在Vue中使用CSS背景图片全屏铺满自适应PC页面的效果。背景图片会在页面上自动调整大小并居中显示,以适应不同的屏幕分辨率和设备。 ### 回答2: 在Vue中实现首页使用CSS背景图片全屏铺满自适应PC页面的方法如下: 1. 在组件的template中添加一个容器,用于承载背景图片,例如一个div元素,设置一个特定的类名,例如"fullscreen-bg"。 2. 在组件的style中添加相应的样式。首先给容器设置宽度100%,高度100vh,表示宽度占满整个页面,高度占满当前视口高度。具体代码如下: ``` .fullscreen-bg { width: 100%; height: 100vh; } ``` 3. 接下来,设置背景图片。在style中的样式中加入background-image属性,并设置为背景图片的URL。同时,设置background-size为cover,表示背景图片要将整个容器都覆盖,并保持宽高比。具体代码如下: ``` .fullscreen-bg { width: 100%; height: 100vh; background-image: url(图片路径); background-size: cover; } ``` 4. 最后,可以将这个样式应用在首页组件的容器上。在template的div元素中添加class属性并设置为"fullscreen-bg"。代码如下: ``` <div class="fullscreen-bg"></div> ``` 这样,就可以实现在Vue的首页中使用CSS背景图片全屏铺满自适应PC页面的效果了。只需将图片路径替换为实际的图片路径即可。 ### 回答3: 在Vue中实现首页使用CSS背景图片全屏铺满自适应PC页面的方法如下: 1. 首先,我们需要在Vue的组件中设置CSS样式。可以在组件的`<style>`标签中添加以下CSS代码: ```css .homepage { background-image: url("../assets/bg.jpg"); background-size: cover; background-position: center; height: 100vh; width: 100%; } ``` 上述代码中,我们将背景图片的路径设置为`../assets/bg.jpg`,你可以根据实际的路径进行调整。`background-size: cover;`表示使背景图片完全覆盖背景区域,并保持比例;`background-position: center;`表示将背景图片居中。`height: 100vh;`和`width: 100%;`用于设置背景区域的高度和宽度分别为视口高度和宽度。 2. 在组件的`<template>`标签中,将根元素设置为具有`homepage`样式的`div`,如下所示: ```html <template> <div class="homepage"> <!-- 页面内容 --> </div> </template> ``` 这样,首页的背景图片就会以全屏自适应的方式显示在PC页面中。你可以根据需要在`<div>`标签内添加其他内容,如页面的标题、导航栏等。记得将`<div>`标签的类名设置为刚才定义的`homepage`类名,以应用背景图片样式。同时,你可以调整背景区域的高度和宽度来满足具体需求。 这是一种基本的方法,当然,实际的需求可能有所变化,你可以根据具体情况进行调整和改进。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值