美文网首页CSS
| 三栏布局

| 三栏布局

作者: Hemingway_AT | 来源:发表于2019-11-04 15:02 被阅读0次

三栏布局特点:整体高度已知,左右两边宽度固定,中间内容宽度自适应。

浮动布局方案

这里使用了 less 语法,所以需要下载 less.min.js 文件,官网地址:https://less.bootcss.com/#,下同。

html 文件 >>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>浮动布局</title>
    <link href="./less/flexBox.less" rel="stylesheet/less" type="text/css">
    <script src="./less.min.js" ></script>
</head>
<body>
    <div class="floatBox">
        <div class="left">left</div>
        <div class="right">right</div>
        <div class="main">center</div>        
    </div>
</body>
</html>

less 文件 >>

.floatBox{
    text-align : center;
    line-height: 100px;

    .left {
        width           : 100px;
        height          : 100px;
        background-color: #ddd;
        float           : left;
    }

    .right {
        width           : 100px;
        height          : 100px;
        background-color: #ddd;
        float           : right;
    }

    .main {
        height    : 100px;
        background: #ccc;
    }
}

布局分析:

  • 对两侧边栏子项设置固定宽度,设置浮动
  • 对 main 栏子项不设置宽度,让其继承父盒子的宽度(不可设置为浮动,否则宽度由内容决定)

flex 布局方案

html 文件 >>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>flex 布局</title>
    <link href="./less/flexBox.less" rel="stylesheet/less" type="text/css">
    <script src="./less.min.js" ></script>
</head>
<body>
    <div class="flexBox">
        <div class="left">left</div>
        <div class="main">center</div>
        <div class="right">right</div>
    </div>
</body>
</html>

less 文件 >>

.flexBox {
    display    : flex;
    text-align : center;
    line-height: 100px;

    .left {
        width           : 100px;
        height          : 100px;
        background-color: #ddd;
    }

    .right {
        width           : 100px;
        height          : 100px;
        background-color: #ddd;

    }

    .main {
        height          : 100px;
        background-color: #ccc;
        flex            : 1;
    }
}

布局分析:

  • 对父盒子设置 flex,开启弹性布局
  • 对两侧边栏子项设置固定宽度,并且不设置 flex 的值
  • 对 main 栏子项不设置宽度,并且设置 flex 的值
  • 于是,main 栏继承了剩余可用宽度的 100%

圣杯布局方案

html 文件 >>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>圣杯布局</title>
    <link href="./less/holyCupBox.less" rel="stylesheet/less" type="text/css">
    <script src="./less.min.js" ></script>
</head>
<body>
    <div class="holyCupBox">
        <div class="left">left</div>
        <div class="main">center</div>
        <div class="right">right</div>
    </div>
</body>
</html>

less 文件 >>

.holyCupBox {
    margin     : 0 100px;
    text-align : center;
    line-height: 100px;

    .left {
        width           : 100px;
        height          : 100px;
        background-color: #ddd;
        float           : left;
        position        : relative;
        margin-right    : -100px;
        left            : -100px;
    }

    .right {
        width           : 100px;
        height          : 100px;
        background-color: #ddd;
        float           : left;
        position        : relative;
        margin-left     : -100px;
        right           : -100px;
    }

    .main {
        width           : 100%;
        height          : 100px;
        background-color: #ccc;
        float           : left;
    }
}

布局分析:

  • 对父盒子设置左右外边距,作为两侧边栏的位置
  • 对三栏区域(子盒子)设置浮动
  • 对 left 栏设置相对定位和右外边距,然后左移、出父盒子范围,占据其左外边距位置
  • 对 right 栏设置相对定位和左外边距,然后右移、出父盒子范围,占据其右外边距位置
  • main 栏继承了父盒子的全部宽度

相关文章

  • 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/vfllbctx.html