css常见布局(三)

一、圣杯布局

特点是有头部顶部,中间是主要内容区,内容区中又分为三块,左中右,中间属于主要内容区。思路是都朝一个方向浮动,中间宽度为100%,然后左右通过设置负的margin把挤下去的左右拉上来再设置相对定位。

.header{
            height: 100px;
            background-color: #111;
        }

        .footer{
            height: 100px;
            background-color: #222;
        }
        .container{
            padding: 0 200px 0 100px;
            overflow: hidden;
        }
        .main,.left,.right{
            position: relative;
            min-height: 300px;
            float: left;
        }
        .main{
            background-color: #333;
            width: 100%;
        }
        .left{
            width: 100px;
            margin-left: -100%;
            left: -100px;
            background-color: #444;
        }
        .right{
            width: 200px;
            margin-left: -200px;
            right: -200px;
            background-color: #555;
        }
    <div class="header">header</div>
    <div class="container">
        <div class="main">
            main
        </div>
        <div class="left">left</div>
        <div class="right">right</div>
    </div>
    <div class="footer">footer</div>
image.png

二、双飞翼布局

特点是先把主内容width设置100%,把空间沾满,然后通过负margin的把左右列拉上来,然后为了避免中间局域的内容被左右覆盖,再使用margin使中间内容区可见。

.header{
            height: 100px;
            background-color: #111;
        }
         .footer{
            height: 100px;
            background-color: #222;
            clear: both;
        }
        .main,.left,.right{
            min-height: 300px;
            float: left;
        }
        .main{
            background-color: #333;
            width: 100%;
        }
        .main .wrapper{
            margin: 0 200px 0 100px;
            word-break: break-all;
        }
        .left{
            width: 100px;
            margin-left: -100%;
            background-color: #444;
        }
        .right{
            width: 200px;
            margin-left: -200px;
            background-color: #555;
        }
 <div class="header">header</div>
 <div class="main">
     <div class="wrapper">
         main
     </div>
 </div>
 <div class="left">left</div>
 <div class="right">right</div>
 <div class="footer">footer</div>
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,681评论 1 92
  • 总结下目前学到的小技巧 1 . 解决margin合并问题 border-top = 0.1可以解决margin...
    Rainism_140d阅读 1,306评论 0 0
  • 三栏式布局 涉及浮动和清除浮动,主要讲解“圣杯”和“双飞翼”两种解决方法。这两种方法实现的都是三栏布局,两边的盒子...
    紫电倚青霜阅读 6,891评论 0 6
  • CSS布局 布局是CSS中一个重要部分,本文总结了CSS布局中的常用技巧,包括常用的水平居中、垂直居中方法,以及单...
    web前端学习阅读 5,518评论 1 38
  • 目录 常用居中垂直居中水平居中垂直水平居中 单列布局 双列&三列布局 常用居中 垂直居中 单行文本垂直居中 图片垂...
    听城阅读 3,207评论 1 2