本文讲解如何修复 html 中因误用语义化标签(如将 `
` 嵌套在 `在 HTML 中,标题标签(如
、 此外,display: flex 默认采用 flex-direction: row(水平排列),因此即使结构合法,子元素也会并排显示,而非上下堆叠。 ✅ 正确做法:使用语义清晰的容器包裹标题与副文本,并显式声明垂直布局: text that needs to be under the header ? 关键改进说明: 组合,符合 HTML5 内容模型; 分别设置 margin: 0 和 margin-top: 8px,精准控制间距(避免依赖默认 margin-bottom 的不确定性); ⚠️ 注意事项: 遵循以上结构,即可稳定、语义化地实现“文本紧贴标题正下方”的设计目标。 内部,属于 HTML 结构错误——尽管部分浏览器会“容错渲染”,但这会导致不可预测的布局行为、SEO 损害及无障碍访问失效。
header
+
和
~
中——这是 W3C 规范明确禁止的;
标题固定、副文本动态居中),可考虑 grid 布局:display: grid; place-items: center; 配合 grid-template-rows: auto auto;。