用 CSS flex 的 order 属性可灵活调整模块视觉顺序而不改 HTML,需父容器设 display: flex,order 默认 0、值越小越靠前,支持负数和媒体查询动态控制,但不改变 DOM 顺序、可访问性及 SEO。
页面模块顺序调整不方便,直接改 HTML 结构既容易出错又影响语义,用 CSS 的 flex 布局配合 order 属性就能灵活控制视觉顺序,无需改动 DOM。
只有设为 display: flex 或 display: inline- 的容器,其子元素才能响应
flexorder 属性。注意:order 只影响视觉排列,不影响源码顺序和可访问性流(如屏幕阅读器仍按 HTML 顺序读取)。
display: flex
flex-direction: column(垂直排列)或保持默认 row(水平排列)order 默认值为 0,数值越小越靠前,支持负数。它不决定“第几个”,而是定义相对层级——相同值的元素按 HTML 顺序排列。
order: -1,主内容保持 order: 0
order: 1、order: 2、order: 3
不同屏幕尺寸下模块优先级常不同。可结合媒体查询动态调整 order,实现「移动优先」的视觉重组。
@media (max-width: 768px) { .nav { order: 99; } }
order: 0
--order)提升可维护性order 只改变视觉渲染,不改变 DOM 顺序、焦点流、屏幕阅读器朗读顺序,也不影响搜索引擎对内容权重的判断。若逻辑顺序本身不合理(比如正文在标题前),应优先修正 HTML 结构。
order 移到顶部而忽略 tab 键顺序