display:table;
常见的容器属性
- display:table=>相当于“table”标签;
常见的项目属性
- display:table-row=>相当于“tr”标签;
- display:table-cell=>相当于“td”标签
display: table时padding会失效
display: table-row时margin、padding同时失效
display: table-cell时margin会失效
display:flex;
常见的容器属性
- flex-direction决定项目是水平排列还是垂直排列
- row 水平排列
- row-reverse 水平反向排列
- column 垂直排列
- column-reverse 垂直反向排列
- flex-wrap 决定项目如果一行排列不下以什么方式展示
- nowrap 不换行
- wrap 换行
- wrap-reverse; 宽度不足换行显示,从下往上开始
- flex-flow
- flex-flow属性是flex-direction和flex-wrap的缩写,表示flex布局的flow流动特性
- justify-content 项目在主轴上的对齐方式
- flex-start 开始位置
- flex-end 结束位置
- center 中间
- space-between 两端对齐,项目之间的间隔都相等
- space-around 每个项目两侧的间隔相等。所以,项目之间的间隔比项目与边框的间隔大一倍
- align-items 项目在交叉轴(侧轴)上的对齐方式
- flex-start 伸缩项目在侧轴起点边的外边距 紧靠住 该行在侧轴起始边;
- flex-end 伸缩项目在侧轴终点边的外边距 紧靠住 该行在侧轴终点边;
- center 伸缩项目的外边距盒 在该行的侧轴上居中放置;
- align-content (行与行之间的对齐方式) 定义多个伸缩行的对齐方式; 没有换行就不存在多行的情况。
常见的项目属性
- order 排序方式,数字越小就越在前面
- flex-grow 定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大
- flex-shrink 定义了项目的缩小比例,默认为1
- flex-basis 属性定义了在分配多余空间之前,项目占据的主轴空间
- flex 是flex-grow、flex-shrink和flex-basis三属性的简写总和
- align-self 允许单个项目有与其他项目不一样的对齐方式,可覆盖align-items属性
项目属性中常用的flex:1表示平分
align-self表示单独定义项目的布局方式
display:grid
常见的容器属性
- display:grid定义一个容器属性为网格布局
- grid-template-columns: 100px 100px 100px表示创建三列,每列的宽度是100px
- grid-template-columns: repeat(3, 1fr)表示创建三列,每列平均分配
- grid-template-columns: 150px 100px 50px 1fr;表示创建四列,最后一列占全部剩余的位置
- grid-template-rows: 50px 50px表示创建两行,每行的高度是50px
- 行其他的也可以跟列一样的
- grid-gap: 1px;表示每个项目之间的间隙
常见的项目属性
- grid-column-start: 1;表示该项目所开始的位置(从最左边开始)
- grid-column-end: 4;表示该项目所结束的位置
- 上面1和2的简写可以是grid-column: 1 / 4;
- grid-row-start: 2;类似上面的列的处理一样的
- grid-row-end: 4;
网友评论