display: flex;
子组件可以横向排列
display: block;
css中的display是设置元素显示的方式,block是一块状元素的方式显示,inline是以内联元素的方式显示,none是不不显示;块状元素会单独占据一样,其他元素跟他在同一行的会被迫换行,挤到下一行那里去,inline则不会这样
1.block元素会独占一行,多个block元素会各自新起一行。默认情况下,block元素宽度自动填满其父元素宽度。
2.block元素可以设置width,height属性。块级元素即使设置了宽度,仍然是独占一行。
3.block元素可以设置margin和padding属性。
display: inline;
1.inline元素不会独占一行,多个相邻的行内元素会排列在同一行里,直到一行排列不下,才会新换一行,其宽度随元素的内容而变化。
2.inline元素设置width,height属性无效。
3.inline元素的margin和padding属性,水平方向的padding-left, padding-right, margin-left, margin-right都产生边距效果;但竖直方向的padding-top, padding-bottom, margin-top, margin-bottom不会产生边距效果。
display:inline-block
inline-block(融合行内于块级):
1. 结合了inline与block的一些特点,结合了上述inline的第1个特点和block的第2,3个特点.
2. 用通俗的话讲,就是不独占一行的块级元素。
简单来说就是将对象呈现为inline对象,但是对象的内容作为block对象呈现。
之后的内联对象会被排列在同一行内。比如我们可以给一个link(a元素)
inline-block属性值,使其既具有block的宽度高度特性又具有inline的同行特性。
遇到的坑
1.block 如果想要居中的话
注意属性
margin 上右下左 0 auto