CSS 2.2规范10.3.7:绝对定位非替换元素宽度计算规则咨询
CSS 2.2规范10.3.7:绝对定位非替换元素的宽度计算规则
嘿,我来帮你把这个规范里的宽度计算规则拆解明白,完全基于你提供的规范翻译内容:
1. 当left、width和right全为auto时
若'left'、'width'和'right'均为'auto':首先将'margin-left'和'margin-right'的所有'auto'值设为0。接着,若建立静态定位包含块的元素的'direction'属性为'ltr',则将'left'设为静态位置并应用下方规则三;否则将'right'设为静态位置并应用下方规则一。
简单来说,这个场景下的计算步骤是:
- 第一步:把
margin-left和margin-right中所有auto值强制设为0; - 第二步:看包含块的
direction属性:- 如果是
ltr(从左到右排版),就把left设为静态位置(也就是该元素如果是静态定位时本该在的位置),然后套用规则三计算宽度; - 如果是
rtl(从右到左排版),就把right设为静态位置,再套用规则一计算宽度。
- 如果是
2. 当left、width和right均不为auto时
你提供的规范内容这里有点不完整(原文是“若三者均不为'auto':若两者'...”),如果有完整的规范文本,可以补充后我再帮你进一步拆解~
内容的提问来源于stack exchange,提问作者hobby-coder
相关产品推荐
相关产品推荐

