Blogger Information
Blog 42
fans 0
comment 1
visits 25902
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
圣杯及双飞翼布局方式的学习总结-2018年3月28日11时19分
邵军-山东-84918的博客
Original
515 people have browsed it

按照我的理解,其实圣杯布局跟双飞翼布局的实现很类似,代码大部分雷同,目的都是左右两栏固定宽度,中间部分根据自己的需要设置固定数值或者也可以自适应,圣杯方式是中间部分容器全部显示左右容器通过设置分布在两侧,双飞翼则是左右容器分别覆盖在中间容器左右位置。我分别做了一个圣杯,一个双飞翼,请看代码:

实例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <title>圣杯</title>
</head>
<style type="text/css">
/* 页面padding及margin设置 */
   *{padding:0;margin:0;}
   /* 设置头部和底部样式 */
 .header,.footer{
    width:100%;
    height:50px;
    background-color:#F5DBF6;
   }
   /* 设置头部和底部包含区块样式 */
.content{
    width:960px;
    height:100%;
    background-color:#8A2BE2;
    text-align:center;
    line-height:50px;
    margin:0 auto;
    color:white;
}
/* 设置中间内容父容器样式 */
.container{
    width:560px;/*这个数值设置很关键,它与left right宽度之和content宽度*/
    background-color:#F0FFFF;
    margin:auto;
    overflow:hidden;
    padding:0 200px;
}
/* 设置中间子容器统一样式,全体向左浮动 */
.container .left,.middle,.right{
position:relative;
float:left;
min-height:600px;/*设置最小高度为600px*/
}
/* 设置middle样式占据100%空间 */
.container .middle{
   width:100%;
   background-color:green;
}
/* 设置left靠向左侧,然后向左侧偏移200px */
.container .left{
    margin-left:-100%;
    left:-200px;
    width:200px;
    background-color:#E48A42;
}
/* 设置right靠向左侧200px,然后向右偏移200px */
.container .right{
    margin-left:-200px;
    right:-200px;
    width:200px;
    background-color:#E48A42;
}
/* 底部清除float */
.footer{
    clear:both;
}
</style>
<body>
<!-- 网站头部 -->
    <div class="header"><div class="content">头部导航栏</div></div>

    <!-- 内容区域 -->
    <div class="container">
    <!-- 页面中部 -->
    <div class="middle">我是中部</div>
    <!-- 页面左部 -->
    <div class="left">我是左部</div>
    <!-- 页面右部 -->
    <div class="right">我是右部</div>
    </div>
    <!-- 网站底部 -->
    <div class="footer"><div class="content">底部导航栏</div></div>
</body>
</html>

运行实例 »

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

实例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <title>双飞翼</title>
</head>
<style type="text/css">
/* 页面padding及margin设置 */
body{min-width: 700px;}
   *{padding:0;margin:0;}
   /* 设置头部和底部样式 */
.header,.footer{
    width:100%;
    height:50px;
    background-color:#8A2BE2;
    text-align:center;
    color:white;
    line-height:50px;
}
/* 设置中间子容器统一样式,全体向左浮动 */
.left,.middle,.right{
position:relative;
float:left;
min-height:600px;
}
/* 设置middle样式占据100%空间 */
.middle{
   width:100%;
   background-color:green;
}
/* 设置包含main容器的样式,左右向中间挤压,使内容显示 */
.middle .main{
    margin:0 200px 0 200px;
}
/* 设置left靠向左侧,然后向左侧偏移200px */
.left{
    margin-left:-100%;
    width:200px;
    background-color:#E48A42;
}
/* 设置right靠向左侧200px,然后向右偏移200px */
.right{
    margin-left:-200px;
    width:200px;
    background-color:#E48A42;
}
/* 底部清除float */
.footer{
    clear:both;
}
</style>
<body>
<!-- 网站头部 -->
    <div class="header">头部导航栏</div>
     <!-- 页面中部 -->
    <div class="middle"><div class="main">我是中部</div></div>
    <!-- 页面左部 -->
    <div class="left">我是左部</div>
    <!-- 页面右部 -->
    <div class="right">我是右部</div>
    <!-- 网站底部 -->
    <div class="footer">底部导航栏</div>
</body>
</html>

运行实例 »

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

QQ图片20180328102528_看图王.jpg

总结:

1、html代码中 middle部分或包含middle的父容器一定首先要放在container的最前部分。然后是left,right;

2、三者一定要采用float:left,使其浮动;

3、将middle部分或包含middle的父容器设置width:100%或一定数值;

4、再根据需要调整left right位置, left设置为margin-left:-100%,right视其宽度设置margin-left为同同一值;

5、针对想采取的方式,如果想采用圣杯方式,则分别调整left、right容器的左右数值,与middle并列,想采用飞翼方式。则调整middle的margi-left margin-right数值,挤压出内容区域。


Correction status:Uncorrected

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post