最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • flex常用知识点总结

    正文概述 掘金(HelloWorld)   2021-03-01   992

    flex box (flexiable box)可伸缩盒子。一般被称作弹性盒子模型。 flex常用知识点总结 flex 是css的模块之一,在弹性布局模型中,弹性容器的子元素可以 在任何方向上排布,也可以“弹性伸缩”其尺寸,既可以增加尺寸以填满未使用的空间,也可以收缩尺寸避免父元素溢出。子元素的水平对齐和垂直对齐都能很方便的进行操控。通过嵌套这些框(水平框在垂直框内,或垂直在水平框内)可以在两个维度上布局。

    基本概念

    采用flex布局的元素,成为flex容器(flex contianer), 它里面的所有子元素自动成员它的成员(flex-item);容器默认有两条轴,从上图可以看到 交叉轴与主轴。有两个子元素1与2。默认子元素横向排列

    容器的属性

    1. flex-direction
    • row与row-reverse

    flex常用知识点总结 flex常用知识点总结

    • column 与column-reverse

    flex常用知识点总结 flex常用知识点总结

    1. flex-wrap
    • nowrap

    flex常用知识点总结

    <style>
    		.box {
    			display: flex;
    			flex-wrap: nowrap;
    		}
    		.box div {
    			width: 500px;
    			height: 100px;
    		}
    		.box div:nth-child(even) {
    			background: pink
    		}
    		.box div:nth-child(odd) {
    			background: green
    		}
    	</style>
        	<div class="box">
    		<div class="child1">flex-item1</div>
    		<div class="child2">flex-item2</div>
    		<div class="child3">flex-item3</div>
    		<div class="child4">flex-item4</div>
    		<div class="child5">flex-item5</div>
    		<div class="child6">flex-item6</div>
    		<div class="child7">flex-item7</div>
    		<div class="child8">flex-item8</div>
    	</div>
    
    • wrap

    flex常用知识点总结

    		.box {
    			display: flex;
    			/*flex-wrap: nowrap;*/
    			flex-wrap: wrap;
    		}
    		.box div {
    			width: 500px;
    			height: 100px;
    		}
    		.box div:nth-child(even) {
    			background: pink
    		}
    		.box div:nth-child(odd) {
    			background: green
    		}
    
    • wrap-reverse

    flex常用知识点总结

    		.box {
    			display: flex;
    			/*flex-wrap: nowrap;*/
    			flex-wrap: wrap-reverse;
    		}
    		.box div {
    			width: 500px;
    			height: 100px;
    		}
    		.box div:nth-child(even) {
    			background: pink
    		}
    		.box div:nth-child(odd) {
    			background: green
    		}
    
    1. flex-flow

    是属性flex-direction 和flex-wrap 属性的简写形式、默认值nowrap 。flex-flow: row-reverse wrap。

    1. justify-content 定义子元素在主轴上的对齐方法
    • flex-start 向左对齐
    • center 居中对齐
    • flex-end 向右对齐
    • space-around 子元素与父元素的两边距离相等,剩下的空间均分
    • space-between 子元素与父元素的两边碰,中间剩余的空间均分
    1. align-items 定义子元素在交叉轴上的排列方式(一般是单根轴线元素)
    • flex-start 交叉轴的开始位置对齐
    • center 交叉轴中间对齐
    • flex-end 交叉轴的结束位置对齐
    • baseline 基于元素内的文字基线对齐
    • stretch 把子元素拉伸对齐
    1. align-content 定义子元素多个交叉轴线的对齐方式。如果只有一根轴线不起作用
    • flex-start 在交叉轴的开始位置
    • flex-end 交叉轴的结束位置
    • center 交叉轴的结束位置
    • stretch 交叉轴上子元素拉伸对齐
    • space-around 交叉轴上距离父容器开始结束位置相等,剩下的位置均分
    • space-between 交叉轴上子元素碰开始与结束位置,剩下位置均分

    子元素属性

    1. order 设置自身的排列顺序
    2. flex-grow 定义弹性盒子元素的扩展比率。默认为0,如果剩余空间也不进行放大,如果设置了值它们将等分剩余空间。

    flex常用知识点总结

    	.box {
     		display: flex;
     	}
     	.child1 {
     		background: green;
     		height: 100px;
     		width: 100px;
     		/*flex-grow: 1;*/
     		flex-grow: .5;
     	}
         	<div class="box">
     		<div class="child1">flex-item1</div>
     	</div>	
    

    单个元素设置flow-grow的比率就是父容器的多少1就是沾满,.5就是占一半

    		.box {
     		display: flex;
     	}
     	.child1 {
     		background: green;
     		height: 100px;
     		width: 100px;
     		/*flex-grow: 1;*/
     		flex-grow: 1;
     	}		
     	.child2 {
     		background: pink;
     		height: 100px;
     		width: 100px;
     		/*flex-grow: 1;*/
     	}		
     	.child2 {
     		background: yellow;
     		height: 100px;
     		width: 100px;
     		/*flex-grow: 1;*/
     		/*flex-grow: .5;*/
     	}
         	<div class="box">
     		<div class="child1">flex-item1</div>
     		<div class="child2">flex-item2</div>
     		<div class="child3">flex-item3</div>
     	</div>
    
    • 多个元素给设置了flow-grow:1的把剩余的空间都给这个子元素,如果都设置了1的话均分父容器的空间。
    • 如果多个元素在一起,设置不同flex-grow值是就是几个flow-grow的值加起来,占父容器的几分之几。
    1. flex-shrink 定义了项目的缩小比例,默认值为1,即如果空间不足,该项目将缩小。

    如果所有项目的flex-shrink属性都为1,空间不足时,都讲等比例缩小,如果一个项目的flex-shrink属性为0,其他项目都为1,空间不足时,前者不断缩小。负值是无效的。

    1. flex-basis 指定了 flex 元素在主轴方向上的初始大小 默认值是auto。定义了在分配多余空间之前,项目占据主轴空间(main size)。浏览器根据这个属性,计算主轴是否有多余空间,

    2. flex
      是flex-grow、flex-shrink、flex-basis缩写。

    3. align-self

    允许单个项目与其他项目不一样的对齐方式,可覆盖align-items属性,默认值为auto.表示基础父元素的align-items属性,如果没有父元素,则等同于stretch。

    参考

    IBM developer 阮一峰老师


    起源地下载网 » flex常用知识点总结

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元