flex布局知识点


flex布局原理

flex是flexible Box的缩写,意为“弹性布局”,用来为盒状模型提供最大的灵活性,任何一个容器都可以指定为flex布局。

    ·当把父盒子设为flex布局以后,子元素的float、clear和vertical-align属性将失效

    ·伸缩布局 = 弹性布局 = 伸缩盒布局 = flex布局

    ·采用flex布局的元素,称为Flex容器(flex container), 简称“容器”,他的所有子元素自动生成为容器成员,称为Flex项目(flex item),简称“项目”

    ·子容器可以横向排列也可以纵向排列

总结flex布局原理:就是通过给父盒子添加flex属性,来控制子盒子的位置和排列方式

常见父项属性

    ·flex-direction:设置主轴方向默认是主轴

        主轴与侧轴:在flex布局中,是分为主轴和侧轴两个方向,同样的叫法有:行和列、x轴和y轴

        属性值说明

            ·row默认值从左到右

            ·row-reverse从右到左

            ·column从上到下

            ·column-reverse从下到上

   · justify-content:设置主轴上的子元素排列方式

       属性值说明

            ·flex-start默认值 从头部开始 如果主轴是x轴,则从左到右

            ·flex-end从尾部开始排列

            ·center在主轴居中对齐(如果主轴是x轴,则从左到右)

            ·space-around平分剩余空间

            ·space-between先两边贴边,再平分剩余空间

    ·flex-wrap:设置子元素是否换行 (默认不换行)

        属性值说明

            ·nowrap默认值 不换行

            ·wrap换行

    ·align-item:设置侧轴上的子元素的排列方式(单行)

        属性值说明

            ·flex-start从上到下

            ·flex-end从下到上

            ·center挤在一起居中(垂直居中)

            ·stretch拉伸(默认值)盒子不要给高度

水平垂直居中方式:

div{

display:flex;

width:500px;

height:500px;

justify-content:center;

align-items:center;

}

    ·align-content:设置侧轴上的子元素排列方式(多行)

        ·属性值说明

            ·flex-start默认值在侧轴的头部开始排列

            ·flex-end在侧轴的尾部开始排列

            ·center在侧轴中间显示

            ·space-around子项在侧轴平分剩余空间

            ·space-between子项在侧轴先分布在两头,在发、平分剩余空间

            ·stretch设置子项元素高度平分父元素高度

    ·flex-flow:复合属性,相当于同时设置了flex-direction和flex-wrap

    ·子项常见属性

        ·flex子项目占的份数(重要)

        ·align-self 控制自己在侧轴的排列方式

        ·order属性定义子项的排列顺序(前后顺序)

        ·默认值是0,数值越小,就越排在前面,与z-index相反

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容