flex 弹性布局 源码

<html>
<head>
<style>
div{
	text-align:center;
	color:#fff;
	font-weight:bold;
	font-size:16px;
	line-height:30px;
}
/*纵向排列*/
.direcitonDemo{
	  display:flex;
	  flex-direction: column;
}
.part1{
	background:orange;
	height:30px;
	width:40px;
	margin:5px;
}
/*横向排列*/
.rowDemo{
	 display:flex;
	 flex-direction: row;
}
.part2{
	background:orange;
	height:30px;
	width:40px;
	margin:5px;
}
/*不换行*/
.nowrapDemo{
	display:flex;
	flex-wrap:nowrap;
}
/*换行*/
.wrapDemo{
    display:flex;
	flex-wrap:wrap;
}
/*换到第一行*/
.wrap_reverseDemo{
	display:flex;
	flex-wrap:wrap-reverse;
}
.part3{
	background:orange;
	height:30px;
	margin:5px;
	width:500px;
}
.part4{
	background:orange;
	margin:5px;
	width:40px;
	line-height: inherit;/*从父元素继承 line-height 属性*/
}
.part5{
	background:orange;
	margin:5px;
	flex-grow:2;
	line-height: inherit;/*从父元素继承 line-height 属性*/
}
.part6{
	background:orange;
	margin:5px;
	flex-grow:1;
	line-height: inherit;/*从父元素继承 line-height 属性*/
}
/*水平左对齐*/
.flextStartDemo{
	display:flex;
	border:1px solid orange;
}
/*水平右对齐*/
.flexEndDemo{
	display:flex;
	justify-content:flex-end;
	border:1px solid orange;
}
/*中间对齐*/
.centerDemo{
	display:flex;
	justify-content:center;
	border:1px solid orange;
}
/*两端对齐*/
.spacebetweenDemo{
	display:flex;
	justify-content:space-between;
	border:1px solid orange;
}
/*两侧间隔相等*/
.spaceAroundDemo{
	display:flex;
	justify-content:space-around;
	border:1px solid orange;
}
/*交叉轴的起点对齐*/
.alignStartDemo{
	display:flex;
	align-items:flex-start;/*垂直对齐*/
	justify-content:center;/*水平中间对齐*/
	height:90px;
	border:1px solid orange;
}
/*交叉轴的终点对齐*/
.alignEndDemo{
	display:flex;
	align-items:flex-end;
	justify-content:center;/*水平中间对齐*/
	height:90px;
	border:1px solid orange;
}
/*垂直中间对齐*/
.alignCenterDemo{
	display:flex;
	align-items:center;/*垂直对齐*/
	justify-content:center;/*水平中间对齐*/
	height:90px;
	border:1px solid orange;
}
/*第一行文字的基线对齐*/
.alignBaselineDemo{
	display:flex;
	align-items:baseline;/*垂直对齐*/
	justify-content:center;/*水平中间对齐*/
	height:90px;
	border:1px solid orange;
}
.alignStretchDemo{
	display:flex;
	align-items:stretch;/*垂直填充占满*/
	justify-content:center;/*水平中间对齐*/
	height:90px;
	line-height:90px;
	border:1px solid orange;
}
.growDemo{
display:flex;
flex-grow:1;
}
</style>
</head>
<body>
<h4>3.1.纵向排列:flex-direction: column</h4>
<div class="direcitonDemo">
	<div class="part1">1</div>
	<div class="part1">2</div>
	<div class="part1">3</div>
</div>
<h4>3.2.横向排列 flex-direction: row</h4>
<div class="rowDemo">
	<div class="part2">1</div>
	<div class="part2">2</div>
	<div class="part2">3</div>
</div>
<h4>3.3.换行属性 flex-wrap</h4>
<h5>3.3.1.不换行 flex-wrap:nowrap</h5>
<div class="nowrapDemo">
	<div class="part3">1</div>
	<div class="part3">2</div>
	<div class="part3">3</div>
	<div class="part3">4</div>
</div>
<h5>3.3.2.换行 flex-wrap:wrap</h5>
<div class="wrapDemo">
	<div class="part3">1</div>
	<div class="part3">2</div>
	<div class="part3">3</div>
	<div class="part3">4</div>
</div>
<h5>3.3.3.换到第一行 flex-wrap:wrap_reverse</h5>
<div class="wrap_reverseDemo">
	<div class="part3">1</div>
	<div class="part3">2</div>
	<div class="part3">3</div>
	<div class="part3">4</div>
</div>
<h4>3.4.水平位置布局justify-content</h4>
<h5>3.4.1.左对齐(默认) justify-content:flex-start</h5>
<div class="flextStartDemo">
	<div class="part1">1</div>
	<div class="part1">2</div>
	<div class="part1">3</div>
</div>
<h5>3.4.2.右对齐 justify-content:flex-end</h5>
<div class="flexEndDemo">
	<div class="part1">1</div>
	<div class="part1">2</div>
	<div class="part1">3</div>
</div>
<h5>3.4.3.中间对齐 justify-content:center</h5>
<div class="centerDemo">
	<div class="part1">1</div>
	<div class="part1">2</div>
	<div class="part1">3</div>
</div>
<h5>3.4.4.两端对齐 justify-content:space-between</h5>
<div class="spacebetweenDemo">
	<div class="part1">1</div>
	<div class="part1">2</div>
	<div class="part1">3</div>
</div>
<h5>3.4.5.两侧间隔相等 justify-content:space-around</h5>
<div class="spaceAroundDemo">
	<div class="part1">1</div>
	<div class="part1">2</div>
	<div class="part1">3</div>
</div>
<h4>3.5.垂直布局 align-items</h4>
<h5>3.5.1.交叉轴的起点对齐 align-items:flex-start</h5>
<div class="alignStartDemo">
	<div class="part1">1</div>
	<div class="part1">2</div>
	<div class="part1">3</div>
</div>
<h5>3.5.2.交叉轴的终点对齐 align-items:flex-end</h5>
<div class="alignEndDemo">
	<div class="part1">1</div>
	<div class="part1">2</div>
	<div class="part1">3</div>
</div>
<h5>3.5.3.交叉轴的中点对齐 align-items:center</h5>
<div class="alignCenterDemo">
	<div class="part1">1</div>
	<div class="part1">2</div>
	<div class="part1">3</div>
</div>
<h5>3.5.4.第一行文字的基线对齐 align-items:baseline</h5>
<div class="alignBaselineDemo">
	<div class="part1" style="height:50px;">1</div>
	<div class="part1" style="height:30px;">2</div>
	<div class="part1" style="height:70px;">3</div>
</div>
<h5>3.5.5.未设置高度,高度将沾满整个容器的高度 align-items:stretch</h5>
<div class="alignStretchDemo">
	<div class="part4">1</div>
	<div class="part4">2</div>
	<div class="part4">3</div>
</div>
<h5>4.1.元素放大比例,默认0 flex-grow:1</h5>
<div class="growDemo">
	<div class="part5">1</div>
	<div class="part6">2</div>
	<div class="part6">3</div>
</div>
</body>
</html>

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值