博客列表 >3月27日双飞翼与圣杯

3月27日双飞翼与圣杯

王报喜的博客
王报喜的博客原创
2018年03月28日 15:49:49684浏览

双飞翼的步骤与原理:

双飞翼就像画鸟一样,先画身体,再画翅膀,首先创建一个父级也就是一个大容器container,设置页面的总宽度并居中

其次创建DOM结构顺序很重要里面放内容、左部,和右部,内容必须创建一个父级块用来设置参数(如果不创建会把lift,和right挤掉)其中main宽度100%,left,right宽度固定,main,left,right的高度暂时先设置为固定值,有了内容填充时再设置为100%,随内容自适应变化,main,left,right全部左浮动,因为前面的wrap块宽度为100%,必须导致left,right全部被挤到了下面, left设置,margin:-1000px;或者 margin-left:-100%(100%就是父级块的宽度1000px,负数表示方向相反,即向左缩进,最终到达父块起始点:0,0)content内容块,添加左右外边距,将内容区挤压出来: margin: 0 200px;已经给了一个宽度100%。

代码如下:

实例

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>双飞布局</title>
	<style type="text/css">
		.toubu,.weibu{
			width: 100%;
			height: 60px;
			background-color:#E9E9E9; 
		}
		.weibu{
			clear: both;
		}

		.neirong{

			width:1000px;
			background-color:#3C3940;
			margin:0 auto; 
			min-height: 100%;
			text-align: center;
			line-height: 60px;
			
		}
		.zhuti{
			width: 1000px;
			background-color: yellow;
			margin:0 auto;
			overflow: hidden;
			
			
		}
		.zhuti1{
			width:100%;
			
			min-height:600px;
			float:left;
			background-color: red;
			}
		.main{
			
			min-height:600px;
			background-color: lightgray;
			
			margin:0 200px;

		}
		.zuobu{
			width:200px;
			min-height:600px;
			background-color: lightskyblue;
			float:left;
			margin-left:-100%;

		}
		.youbu{
			width:200px;
			min-height:600px;
			background-color: lightgreen;
			float:left;
			margin-left:-200px;

		}
		

		</style>
</head>
<body>
	<div class="toubu">
		<div class="neirong">头部</div>
	</div>
	<div class="zhuti">
		<div class="zhuti1">
			<div class="main">中间</div>
		</div>
		<div class="zuobu">左部</div>
		<div class="youbu">右部</div>
	</div>
	<div class="weibu">
		<div class="neirong">尾部</div>
	</div>
</body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例

2圣杯的步骤及原理

圣杯就是利用padding来实现的。

给main,left,right,创建一个父级container,main在第一位,其顺序是main,left,right,container的宽度等于main的宽度,先给container600px,main100%,left和right都是固定的200px,让他们浮动起来,效果和双飞一样main在上边left和right在下边,还是和双飞一样把left和right,margin-left就会覆盖main在用padding撑大container

在用相对定位把left和right移动到两边。

代码如下:

实例

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>圣杯</title>
	<style type="text/css">
		.head ,.weibu{
			width:100%;
			height: 65px;
			background-color:#E9E9E9;

		}
		.conntet{
			margin:0 auto;
			background-color: #3C3940;
			text-align: center;
			line-height: 65px;
			width:1000px;
			min-height: 65px;

		}
		.zhuti{
			width:600px;
			margin:0 auto;
			background-color: yellow;
			overflow: hidden;
			padding: 0 200px;



		}
		.main{
			width:100%;
			min-height: 600px;
			background-color: lightgray;
			float:left;
		}
		.left{
			width:200px;
			min-height: 600px;
			background-color: lightgreen;
			float:left;
			margin-left: -100%;
			position: relative;
			left:-200px;

		}
		.right{
			width:200px;
			min-height: 600px;
			background-color: lightskyblue;
			float:left;
			margin-left: -200px;
			position: relative;
			right:-200px;
		}

	</style>
</head>
<body>
	<div class="head">
		<div class="conntet">网页头部</div>
	</div>

	<div class="zhuti">
		<div class="main">中部</div>
		<div class="left">左部</div>
		<div class="right">右部</div>
	</div>

	<div class="weibu">
		<div class="conntet">网页底部</div>
	</div>

</body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例

手写代码如下:

22222222222.jpg





声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议