https://developer.mozilla.org...

css中百分比是相对值,要得到最终计算值,必须确定它的参照对象。多数情况下是包含块。

width | height

  • 宽和高在使用百分比值时,其参照都是元素的包含块(Containing Block

    • 在大部分情况下,包含块就是父元素的内容区(盒模型里的content)。

width

  • 参照包含块的宽度

height

  • 参照包含块的高度

    • 当一个元素的高度使用百分比值,则其高度取决于最近拥有明确高度的祖先元素

      • 若都不存在,则使用<html>的高度,既当前视窗高度

margin | padding

  • 对于margin和padding,其任意方向的百分比值,参照都是包含块的宽度。

border

  • border-width

    • 不支持百分比
  • border-radius

    • 参照元素自身的尺寸

top | bottom | left | right

参照是元素的包含块。left和right是参照包含块的宽度,bottom和top是参照包含块的高度。

background-position

  • background-position的百分比值,取的参照是一个减法计算值,由放置背景图的区域尺寸,减去背景图的尺寸得到,可以为负值。

    • (container width - image width) * (position x%) = (x offset value)
    • (container height - image height) * (position y%) = (y offset value)

image.png

font-size

参照是直接父元素的font-size

line-height

参照是元素自身的font-size

vertical-align

参照是元素自身的line-height


不会爬树的猴
68 声望0 粉丝