footer只是语义容器,不自动贴底;需设body为flex column、main为flex:1、footer为body直接子元素,并禁用fixed定位,配合flex-wrap和语义化列表确保响应式与可访问性。

footer 标签本身不自动贴底,也不自带响应式行为——它只是语义容器。想让它稳在页面最下方、链接在手机上不挤成一长条、年份不因 JS 失效变空,得靠结构 + CSS + 少量 JS 协同控制。
为什么
因为浏览器默认把 footer 当普通块级元素处理:内容少时,它就停在内容末尾;内容多时才自然沉底。所谓“粘性底部”必须显式布局干预。
- 给
body设min-height: 100vh和display: flex; flex-direction: column - 确保
main(或主内容容器)设flex: 1,不能用div替代 —— 否则高度不占满剩余空间 -
footer必须是body的最后一个直接子元素,顺序错乱会导致 flex 布局失效 - 别碰
position: fixed:它会让footer盖住短页正文,长页又悬空,打印和键盘导航全崩
页脚链接为什么在手机上横向滚动?
根本原因是没开 flex-wrap。很多人只设了 display: flex 和 width: 33.333%,但默认 flex-wrap: nowrap,所有子项死扛着不换行。
- 包裹链接的容器(如
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











