浏览器页面出现竖向滚动条的解决方案

产生问题的原因

存在着页面居中的需求

如果不做任何配置,盒子只包裹里面的图片、文字,高度不固定。这导致「内容会贴在页面顶部,不会垂直居中」。

为了让 div 盒子的高度撑满整个屏幕,通常会配置 min-height:100vh

再配合:

css 复制代码
 display: flex;
 align-items: center; /* 垂直居中 */
 justify-content: center; /* 水平居中 */

盒子中的内容会居中在屏幕正中央。

然而,问题出现了

浏览器自带默认样式,页面默认有 外边距 margin

在上古时代,网页大多是纯文章,浏览器希望文字不要贴着屏幕边缘,所以 <body> 容器和屏幕边框之间默认有 8px 的距离。

可是已经把 <div> 盒子的高度设置为屏幕高度了。这就多出来 8px,导致页面中展示的内容超过了屏幕高度。

解决方案

要想解决这个问题,可以直接解决掉「容器和屏幕边框之间的默认距离」。

对于 HTML

css 复制代码
 body {
   margin: 0;
 }

对于 Vue

css 复制代码
 :global(body) {
   margin: 0;
 }

Vue 会把组件插入到 <body> 标签内。<body> 不在当前组件里,必须用 :global() 才能选中它。

所以,:global() 一定要有。它让样式全局生效,不被 scope 限制。

三行代码搞定。

相关推荐
hunterandroid2 分钟前
Kotlin Coroutines 在 Android 项目中的落地实战
前端
不一样的少年_9 分钟前
不用框架,手搓 AI Agent:(一) 先让它跑起来
前端·后端·agent
味悲10 分钟前
浏览器解析机制与XSS的15种编码绕过
前端·xss
小牛itbull19 分钟前
【译】为什么我使用 React 重构了 WordPress?
前端·react.js·重构
用户0595401744619 分钟前
AI Agent 记忆存储踩坑实录:这个问题让我排查了 3 天,最终用 pytest + Docker 实现秒级回归
前端·css
用户2986985301422 分钟前
在 React 中拆分 Excel 文件:从工作表到行列的实践
javascript·react.js·excel
今日无bug24 分钟前
Emmet 语法速成指南
前端·css·html
Hello.Reader27 分钟前
Tailwind CSS v4.3 从入门到实战Vite 安装、响应式布局、暗黑模式与主题配置
前端·css
想要成为糕糕手30 分钟前
238. 除了自身以外数组的乘积 — 面试向深度解析
javascript·算法·面试
kisshyshy32 分钟前
前端存储、表单异步提交与 this 指向完全指南
前端·javascript·html