

新闻资讯
技术学院默认情况下,html 的 `
` 元素自带默认外边距(margin),导致即使为背景容器设置了 `margin: 0; padding: 0;`,页面边缘仍会出现约 5px 的空白间隙;解决方法是显式重置 `body` 的 margin 和 padding。你遇到的问题非常典型:尽管 .fixed-bg 类已设置 margin: 0; padding: 0; height: 100%; 并使用 background-size: cover,但页面四周仍残留细小间隙(约 5px)。根本原因并非你的 CSS 类有误,而是浏览器对 元素施加了默认样式——几乎所有主流浏览器(Chrome、Firefox、Safari 等)都会为 body 设置 margin: 8px(或类似值),这会直接在视口边缘撑开空白区域,使子元素无法真正“贴边”。
✅ 正确解决方案:全局重置 body 样式
只需在 CSS 文件顶部(或
body {
margin: 0;
padding: 0;
/* 可选:确保 body 占满视口高度 */
min-height: 100vh;
}⚠️ 注意事项:
? 补充建议(提升健壮性):
为彻底规避浏览器默认样式差异,推荐在项目开头加入轻量级 CS
S 重置(无需完整 Normalize.css):
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
min-height: 100vh;
}这样不仅修复了背景间隙,还统一了盒模型行为,让后续布局更可控。
总结:不是你的 .fixed-bg 写错了,而是漏掉了对 body 的基础样式归零。加上 body { margin: 0; padding: 0; min-height: 100vh; },即可实现真正的全屏无隙背景覆盖。