统计卡片应避免用 table,正确语义结构是 article/section + h3 + p;flex 布局实现自适应排列,需设 flex-wrap、calc 宽度、min-width:0;数值用 span.stat-value 配 font-variant-numeric,单位用 small;响应式通过媒体查询调整 flex-basis 和 gap。

用 table 做统计卡片?别硬套,语义不对
直接用 卡片并排显示时, 统计数字常需右对齐、加大字号、加粗,但直接用 不同屏幕宽度下,每行显示 4 / 3 / 2 / 1 张卡片,靠媒体查询调整 真正麻烦的是带图表或进度条的统计卡片——那已经超出纯 HTML 范畴,得交由 CSS 自定义属性或 JS 控制。纯静态数值卡片,按上面四点做,基本不会翻车。 包裹单个数值 + 标题,是常见但错误的做法。浏览器和屏幕阅读器会把它当“二维数据表”解析,而统计卡片本质是独立的、无行列关系的语义单元。正确做法是用
或 搭配 和 —— 它们天然表达“一个完整信息块”,且兼容性好、无障碍友好。
flex 布局实现多卡片横向自适应排列display: flex 比浮动或 inline-block 更可控。关键点在父容器设置 flex-wrap: wrap 和子项设置基础宽度:
margin-left: -8px; margin-right: -8px,为子项留出左右 padding 空间flex-basis: calc(25% - 16px)(4列)或 calc(33.333% - 16px)(3列),避免因四舍五入导致换行错位min-width: 0 防止长文本撑破卡片宽度(尤其含数字或 URL 时)卡片内数值对齐与字体处理的坑
或 不够——它只改样式,不表达“这是核心指标”。推荐组合:
包裹,CSS 中设 font-variant-numeric: tabular-nums,保证数字等宽对齐(尤其多行对比时),不是为了变小,而是语义上表示“附属说明” 标签:已废弃,且无法响应式缩放响应式断点下卡片数量动态变化
flex-basis 即可,但要注意:
max-width,加 min-width 防止超小屏下卡片挤压变形@media (max-width: 768px) 下,把 flex-basis 改成 calc(50% - 16px),同时确保 gap 也响应式缩放(如从 16px 降到 8px)em 或 rem,而非固定 px,否则缩放后比例失调
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











