css display 的 block与flex区别,以及注意事项
CSS中的display属性用于定义元素应如何显示。其中,block和flex是两种常见的display属性值,它们有以下区别:
盒模型:block元素是块级元素,会填充其父容器并自上而下排列,而flex元素则是弹性元素,可以通过flex布局来控制其尺寸和位置。
元素流:block元素会以块级元素的形式占据整个可用宽度,而flex元素会根据flex容器中其他元素的大小和比例进行自适应布局。
子元素布局:block元素的子元素以普通文档流方式排列,而flex元素的子元素可以使用flex布局进行自由排列,包括对齐、间距等。
注意事项:
在使用flex布局时,需要将父元素的display属性设置为"flex",而不能设置为"block"。
block元素的高度默认是由其内容撑开的,而flex元素的高度则由flex容器的高度和子元素的布局方式共同决定。
flex元素的布局方式可以通过设置flex-direction、justify-content、align-items等属性来控制。