text-align仅对行内内容和行内块级元素有效,对块级子元素无效;需用margin:0 auto、Flexbox等方案实现块级元素居中。

text-align 能对齐哪些内容
直接在父元素上设置 / 居中 /
.parent { text-align: center; } / 右对齐 /
.parent { text-align: right; } 最常踩的坑是目标元素本身是块级且未设宽,或内部结构“撑不开”对齐上下文: 需要真正让块级元素居中(比如卡片、按钮组), 立即学习“前端免费学习笔记(深入)”; 真正容易被忽略的是:对齐行为依赖于“谁是父容器”和“谁是被对齐的内容类型”。写之前先确认 DOM 结构层级和 display 类型,比反复调 text-align 只作用于**行内内容**(文字、、 等)和**行内块级元素**,对块级子元素(如 )本身无效。常见误解是用它让一个 margin: 0 auto 或 Flexbox。设置左对齐、居中、右对齐的写法
text-align,子元素中的文本和行内内容会随之对齐:/* 左对齐(默认值) */
.parent { text-align: left; }
Center 和 center 都有效text-align: center 仍会让首字符尽可能居中,可能造成视觉偏移
为什么有时候 text-align:center 没生效
text-align 看起来“没变化”——其实生效了,只是左右空间相等,效果不明显display: block 的子 text-align 影响;此时需给该子元素加 display: inline-block,再配合父元素 text-align: centerfloat 或 position: absolute 的元素会脱离文档流,text-align 对它们完全无效替代方案:当 text-align 不适用时怎么办
text-align 就不是正解:
margin: 0 auto(前提是设了明确宽度)display: flex + justify-content: center
display: grid 或现代 Flexbox,而非强行套用 text-align
text-align 更省时间。










