美文网首页
两列自适应布局

两列自适应布局

作者: Instincts | 来源:发表于2018-05-28 16:02 被阅读14次

两列自适应布局是指左(右)侧有一个宽度固定的侧边栏,另一列宽度自适应。

一般我们有以下4种实现方式,废话不多说,直接上代码:

  • 通过将aside浮动,然后设置main的margin来实现
<!doctype html>
<html>

<head>
    <meta charset="UTF-8">
    <title>两列自适应布局</title>
    <style>
        .wrapper {
            height: 300px;
        }

        .aside {
            float: left;
            height: 100%;
            width: 200px;
            background: red;
        }

        .main {
            margin-left: 210px;
            height: 100%;
            background: blue;
        }
    </style>
</head>

<body>
    <section class="wrapper">
        <aside class="aside"></aside>
        <section class="main">
            main main main main main main
        </section>
    </section>
</body>

</html>
  • 将aside浮动, 再将main设置为overflow: auto,触发BFC形成独立区域,达到效果。
<!doctype html>
<html>

<head>
    <meta charset="UTF-8">
    <title>两列自适应布局</title>
    <style>
        .wrapper {
            height: 300px;
        }

        .aside {
            height: 100%;
            width: 200px;
            background: red;
            margin-right: 10px;
            float: left;
        }

        .main {
            overflow: auto;
            height: 100%;
            background: blue;
        }
    </style>
</head>

<body>
    <section class="wrapper">
        <aside class="aside"></aside>
        <section class="main">
            main main main main main main
        </section>
    </section>
</body>

</html>
  • 将aside设置为绝对定位,然后通过设置aside的width和wrapper的padding来实现
<!doctype html>
<html>

<head>
    <meta charset="UTF-8">
    <title>两列自适应布局</title>
    <style>
        .wrapper {
            position: relative;
            padding-left: 210px;
            height: 300px;
        }

        .aside {
            position: absolute;
            left: 0;
            width: 200px;
            height: 100%;
            background: red;
        }

        .main {
            width: 100%;
            height: 100%;
            background: blue;
        }
    </style>
</head>

<body>
    <section class="wrapper">
        <aside class="aside"></aside>
        <section class="main">
            main main main main main main
        </section>
    </section>
</body>

</html>
  • 弹性布局
<!doctype html>
<html>

<head>
    <meta charset="UTF-8">
    <title>两列自适应布局</title>
    <style>
        .wrapper {
            display: flex;
            height: 300px;
        }

        .aside {
            width: 200px;
            margin-right: 10px;
            background: red;
        }

        .main {
            flex: 1;
            background: blue;
        }
    </style>
</head>

<body>
    <section class="wrapper">
        <aside class="aside"></aside>
        <section class="main">
            main main main main main main
        </section>
    </section>
</body>

</html>

相关文章

  • 前端常见布局方式

    常见的布局方式 常见的布局这么几种单列水平居中布局, 一列定宽一列自适应布局, 两列定宽一列自适应布局, 两侧定宽...

  • CSS布局

    一列布局 一列水平居中 一列垂直居中 两列布局 左定宽右自适应 左自适应右定宽 三列布局 左右定宽中间自适应 左右...

  • 布局

    两列自适应布局 两列自适应布局是指一列由内容撑开,另一列撑满剩余宽度的布局方式1.float+overflow:h...

  • css布局

    左边定宽,右边宽度自适应 等高自适应,两列布局

  • 2019-05-09 CSS布局相关

    一,两列布局 1,自适应的两列布局: 两列布局可以使用浮动来完成,左列设置左浮动,右列设置右浮动,这样就不需...

  • 常用网页布局

    一、多列布局 (1) 宽度自适应布局 两栏布局 左侧固定右侧自适应 右侧固定左侧自适应 技术原理(左侧固定右侧自适...

  • 3.如何用CSS进行网页布局

    最常见的是混合布局。 制作布局案例: 1.一列布局 效果如下: 2.两列布局 效果如下: 该效果是两列自适应,会随...

  • 用CSS进行网页布局 学习笔记

    网页布局基础知识 一列布局 margin: 0 auto 使内容居中 二列布局 1.自适应宽度:给左右两列设置左...

  • css布局及居中

    双列布局(左右布局) 如何实现:浮动元素+普通元素 三栏式布局(左中右布局) 两侧两列固定宽度,中间列自适应宽度 ...

  • 如何实现双列布局和三列布局

    1、双列布局(拖动窗口时,窗口左边不动,右边自适应):左边宽度固定,右边自适应 2、三列布局(两边不动中间动):两...

网友评论

      本文标题:两列自适应布局

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