padding:45px 65px 95px;
Why is it that the shorthand above would set the LEFT padding to 65px when a value for the left padding was not even given?
This is a little confusing to me.
这确实令人困惑,但这只是 CSS 的作品。如果您指定 1 个值,它将用于所有四个边。如果您指定两个,第一个将是top/bottom
填充,第二个将是left/right
. 因此,当指定三个时,它会top, left/right, bottom
与仅提供两个值时的用法相呼应。
顺序为:上、右、下、左
想想TRBL(麻烦)。或顺时针。
使用速记时,如果没有给出,则使用对方的值。在您的情况下,使用65px
for left和65px
from right。
更进一步,如果我有:
padding: 10px 20px;
10px
将导致顶部和底部以及20px
右侧和左侧。
最后:
padding: 10px;
将导致所有内容均为 10px。
速记符号总是从它们相反的值中复制缺失的元素。
padding: top right bottom left;
padding: top right; // bottom = top, left = right
padding: top right bottom; // left = right
实际上顺序是上、右、下、左。如果只给出两个值,则顶部和底部和左右将采用相同的值。因为你给了 65px 到右边,所以左边也一样。
这是简写符号,通常您只提供 2 个参数,而不是 3 个参数,例如:
margin: 0 auto;
这意味着顶部和底部为 0,左右为自动。
顺序是上、右、下、左。当您省略一个数字时,它会选择相反的值:
x = t=x, r=x, b=x, l=x
x,y = t=x, r=y, b=x, l=y
x,y,z = t=x, r=y, b=z, l=y