Skip to content

流式布局

警告

技巧: 流式布局 + 媒体查询,实现响应式。

流式布局也叫百分比布局(也有叫非固定像素布局),是页面中的元素根据屏幕分辨率自动进行适配调整,页面元素大小会发生变化,但是整体布局不会发生变化,始终都是满屏显示。它使用的是百分比定义宽,但高一般会被固定住,这种布局在早期是为了适应不同尺寸的PC屏幕,但现在在移动端比较常见。

特点:适配,页面元素的宽度按照屏幕分辨率进行适配调整,但整体布局不变。 优点:通过设置百分比宽度适应不同尺寸的屏幕。 缺点:高度和文字大小都是固定的,所以当屏幕尺寸过大或者过小时某些元素会被拉伸拉扁(高度、文字大小不变),无法正常显示,显得不协调,带来不好的用户体验。

常用的流式布局有:

左侧固定,右侧自适应 右侧固定,左侧自适应 左右两侧固定,中间自适应(圣杯布局) 等分布局 下面用等分流式布局:

alt text

html
<!DOCTYPE html>
<html>

	<head>
		<meta charset="UTF-8">
		<meta name="viewport" content="width=device-width, initial-scale=1.0" />
		<!-- 
			width=device-width 表示元素宽度与当前设备的视口一样大,
			initial-scale=1.0 表示禁止当前页面出现缩放
		-->
		<title>流式布局</title>
		<style>
			body {
				margin: 0;
			}
			
			.container {
				height: 200px;
			}
			
			.item {
				height: 100%;
				/*display: inline-block;*/  
				/* 使用行内块状元素会出现边距像素,宽度要改为24.5,当盒子撑满会自动换行 */
				float: left;
				width: 25%;
			}
			
			.item1 {
				background-color: blanchedalmond;
			}
			
			.item2 {
				background-color: skyblue;
			}
			
			.item3 {
				background-color: plum;
			}
			
			.item4 {
				background-color: greenyellow;
			}
			/* 消除浮动,相当于在后面增加一个被隐藏的div */
			.clearfix:after {
				content: '';
				display: block;
				height: 0;
				clear: both;
				visibility: hidden;
			}
		</style>
	</head>

	<body>
		<!-- 父元素清除浮动 -->
		<div class="container clearfix">
			<div class="item item1"></div>
			<div class="item item2"></div>
			<div class="item item3"></div>
			<div class="item item4"></div>
		</div>
	</body>

</html>