美文网首页
三栏布局

三栏布局

作者: __Qiao | 来源:发表于2016-10-17 23:34 被阅读0次

一、使用负margin形成三栏布局的条件

  1. 三栏在html中的排列顺序为:中间栏、左边栏、右边栏(中间栏作为主要内容放在前面是为了优先渲染)
  2. 三栏都设置左浮动,且需要包裹在BFC中(清除浮动对其他文档流的影响)
  3. 两侧边栏宽度固定,中间栏宽度为100%自适应
  4. 左边栏设置margin-left: -100%,100%是父容器的宽度;
  5. 右边栏设置margin-left:-width,“width”是右边栏的固定宽度
  6. 父容器设置左右padding或中间设置左右margin预留出左边栏和右边栏存放的空间,预留的空间必须大于或等于左右两栏的固定宽度
  7. 左边栏和右边栏设置position:relative分别移到左右两边预留的空间

二、圣杯布局

  • 实现步骤:

    1. 三个容器设置左浮动,并清除浮动;
    2. 第一个容器(中间栏)宽度设为100%;
    3. 第二个容器(左边栏)宽度固定为200px(固定值根据实际需求设定),且margin-left为-100%;
    4. 第三个容器(右边栏)宽度固定为200px(根据实际需求设定),且margin-left为-200px(自身宽度);
    5. 三个容器的父容器设置左右padding分别为200px(左右两栏的宽度),用于存放左边栏和右边栏;
    6. 左边栏设置position: relative;、right:200px;使左边栏移动到第一个容器预留的左侧空间;
    7. 右边栏设置position: relative;、left: 200px;使右边栏移动到第一个容器预留的右侧空间;
    8. 完成。
  • 结构代码:
    <div class="ct">
    <div class="box1"> </div>
    <div class="box2"></div>
    <div class="box3"></div>
    </div>

  • 样式代码:
    <style>
    .ct{
    padding-left: 200px;
    padding-right: 200px;
    }
    .ct:after{
    content: '';
    display: block;
    clear: both;
    }
    .box1{
    float: left;
    width: 100%;
    height: 500px;
    background: yellow;
    }
    .box2{
    position: relative;
    right: 200px;
    float: left;
    width: 200px;
    height: 200px;
    margin-left: -100%;
    background: red;
    }
    .box3{
    position: relative;
    left: 200px;
    float: left;
    width: 200px;
    height: 200px;
    margin-left: -200px;
    background: blue;
    }
    </style>


三、双飞翼布局

  • 实现步骤:
    1. 三个容器设置左浮动,并清除浮动;
    2. 第一个容器(中间栏)宽度设为100%;
    3. 第二个容器(左边栏)宽度固定为200px(固定值根据实际需求设定),且margin-left为-100%;
    4. 第三个容器(右边栏)宽度固定为200px(根据实际需求设定),且margin-left
      为-200px(自身宽度);
    5. 第一个容器中添加一个子元素用于存放主要内容,并将子元素的左右margin分别设为200px,预留出左边栏和右边栏的存放空间;
    6. 完成。
  • 结构代码:
    <div class="ct">
    <div class="box1">
    <div class="main"></div>
    </div>
    <div class="box2"></div>
    <div class="box3"></div>
    </div>
  • 样式代码:
    <style>
    .ct:after{
    content: '';
    display: block;
    clear: both;
    }
    .box1{
    float: left;
    width: 100%;
    height: 500px;
    background: yellow;
    }
    .box2{
    float: left;
    width: 200px;
    height: 200px;
    margin-left: -100%;
    background: red;
    }
    .box3{
    float: left;
    width: 200px;
    height: 200px;
    margin-left: -200px;
    background: blue;
    }
    .main{
    height: 500px;
    margin-left: 200px;
    margin-right: 200px;
    background: green;
    }
    </style>

相关文章

  • css经典布局总结

    布局类型 浮动布局 流式布局 定位布局 flex布局 grid布局 布局详解 1.浮动布局。 浮动布局是利用flo...

  • 布局小结

    布局方式 静态布局 浮动布局 定位布局 自适应布局 流式布局(百分比布局) 响应式布局 弹性布局 悬挂布局 圣杯布...

  • 常用的五大布局

    常用的五大布局(线性布局,相对布局,帧布局,表格布局,绝对布局) 1,线性布局 LinearLayout ...

  • 实现三栏布局的六种方式

    六种布局方式总结:圣杯布局、双飞翼布局、Flex布局、绝对定位布局、表格布局、网格布局。 圣杯布局 圣杯布局是指布...

  • CSS3开发常用核心技能

    基础网页布局 布局分类 一列布局 两列布局 三列布局 多列布局 一列布局: 二列布局: 三列布局: ⚠️ midd...

  • 移动端页面布局

    七大布局:流线布局、等比缩放拓展布局、分栏布局、流动布局、重复布局、固定布局1.流线布局流线布局指在界面中的内容元...

  • 前端网站5种布局

    前端基本布局分大致5种,table布局,float 布局,absolute布局,flexbox布局,grid布局。...

  • 2019-08-25

    布局 说法一 浮动布局 绝对定位布局 Flex布局 Table-cell表格布局 网格布局 说法二 静态布局 流式...

  • flex布局的几种典型布局方式

    flex布局的典型布局方式有哪些? 网格布局 固定底栏布局 圣杯布局 输入框布局 悬挂布局 网格布局 最简单的网格...

  • css3设计模式,常用布局

    1.css3常用的布局有多栏布局、多列布局、弹性布局、流式布局、瀑布流布局和响应式布局。2.float浮动布局,a...

网友评论

      本文标题:三栏布局

      本文链接:https://www.haomeiwen.com/subject/epuzyttx.html