order属性可改变Flex子元素视觉顺序而不影响DOM结构,其值越小越靠前,常用于响应式设计;结合媒体查询能调整内容优先级,但需注意保持HTML逻辑性以保障可访问性与SEO。
在使用 CSS Flex 布局时,order 属性是控制子元素排列顺序的有力工具。它不改变 DOM 结构,却能灵活调整视觉呈现顺序,特别适用于响应式设计或内容优先级切换场景。
默认情况下,Flex 容器中的子元素按照它们在 HTML 中的出现顺序排列,每个元素的 order 值为 0。通过为子元素设置不同的 order 值,可以重新定义它们在容器中的显示顺序。

例如:
.container {
display: flex;
}
.item1 { order: 2; }
.item2 { order: -1; }
.item3 { order: 0; }
此时视觉顺序为:item2 → item3 → item1
在移动端和桌面端展示不同内容顺序时,order 非常有用。比如希望在手机上先显示表单而不是图片。
示例代码:
@media (max-width: 768px) {
.sidebar { order: 1; }
.content { order: 0; } /* 内容优先 */
}
虽然 order 很强大,但滥用可能影响可访问性和 SEO。
基本上就这些。合理使用 order 能提升布局灵活性,关键是在视觉控制与语义清晰之间找到平衡。