2019-01-09

1. 什么时候用margin?什么时候用padding?

使用margin值的情况:

需要在border外侧添加空白时。

空白处不需要背景(色)时。

上下相连的两个盒子之间的空白,需要相互抵消时。如15px + 20px的margin,将得到20px的空白。(margin折叠)。

需要使用负值对页面布局时(margin值可以取负,padding不行)。

使用padding时的情况:

需要在border内测添加空白时。

空白处需要背景(色)时。

上下相连的两个盒子之间的空白,希望等于两者之和时。如15px + 20px的padding,将得到35px的空白。

margin是用来隔开元素与元素的间距;padding是用来隔开元素与内容的间隔。margin用于布局分开元素使元素与元素互不相干;padding用于元素与内容之间的间隔,让内容(文字)与(包裹)元素之间有一段“呼吸距离”。

2. display:block           block后 ,原内联元素占父元素的整宽,即一个元素单独占一行(这一行的宽度是父元素的宽度)

3.     inline元素设置width,height属性无效

    inline元素的padding和margin可以设置,但是水平方向的padding-right,padding-left,margin-right,margin-left都产生了效果,而垂直方向的padding-top,padding-bottom,margin-bottom,margin-top是没有效果的

4.inline-block

Inline-block是元素display属性的一个值。这个名字的由来是因为,display设置这个值的元素,兼具行内元素( inline elements)跟块级元素(block elements)的特征。

块级元素(block elements),来源于CSS盒子模型。块级元素包含width height,padding,border与margin,他们的排列方式是从上到下排列。 行内元素,排列方式是水平排列。

行内元素(inline elements)排列方式是水平排列。

行内块元素(inline-block elements)在内部他的表现类似block元素,比如他拥有block元素的width height,padding,border与margin,而外部的排列方式有类似行内元素,即水平排列,而不是像块级元素一样从上到下排列

使用inline-block:当你需要控制元素的垂直对齐跟水平排列时,使用inline-block。

使用浮动:当你需要让元素环绕某一个元素时,或者需要支持旧版本ie,或者不想处理inline-block带来的空白问题时,使用浮动。

inline-block导航

另一种inline-block的适用场景:横向导航栏。通常,我们一般会设置a元素display:block然后进行浮动来制作(即先把a元素变成块 再用float)。有时候我会直接通过对列表元素设置display:inline来制作。如果在制作中,你需要设置不同的display属性来处理浮动,那么inline-block不失为一种更好的解决方案。

当你需要将元素排列成一行或者多行时,更倾向于考虑使用inline-block代替float。当然,直接使用table也是一种方法,他毕竟是专门用来处理横向与纵向排列的元素的。

如果你需要创建一个很复杂的包含行列的布局,table是你的最佳选择,不过你同样也可以考虑inline-block

transition

用于过度中使用,让变化更平滑,一般单位是ms

你可能感兴趣的:(2019-01-09)