首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >2.布局解决方案 一列定宽+一列自适应<4>

2.布局解决方案 一列定宽+一列自适应<4>

作者头像
河湾欢儿
发布2018-09-06 16:17:39
5200
发布2018-09-06 16:17:39
举报

第一种方案 float+margin(有bug)

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <style>
        body,p{
            margin: 0;
            padding: 0;
        }
        .left{
            background: yellowgreen;
            float: left;
            width: 100px;
        }
        .right{
            background: pink;
            margin-left:120px;
        }

    </style>
</head>
<body>
<div class="parent">
    <div class="left">
        <p>left</p>
    </div>
    <div class="right">
        <p>right</p>
        <p>right</p>
    </div>
</div>
</body>
</html>

第一种方案进阶版

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <style>
        body,p{
            margin: 0;
            padding: 0;
        }
        .left{
            background: yellowgreen;
            float: left;
            width: 100px;
        }
        .right-con{
            float: left;
            width: 100%;
            margin-left: -100px;
        }
        .right{
            background: pink;
            margin-left: 120px;
        }
    </style>
</head>
<body>
<div class="parent">
    <div class="left">
        <p>left</p>
    </div>
    <div class="right-con">
        <div class="right">
            <p>right</p>
            <p>right</p>
        </div>
    </div>
</div>
</body>
</html>

第二种方案 margin+overflow

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <style>
        body,p{
            margin: 0;
            padding: 0;
        }
        .left{
            background: yellowgreen;
            float: left;
            width: 100px;
        }
        .right{
           margin-left: 120px;
           background: pink;
           overflow: hidden;
            /*不被浮动影响*/
        }
    </style>
</head>
<body>
<div class="parent">
    <div class="left">
        <p>left</p>
    </div>
    <div class="right">
         <p>right</p>
         <p>right</p>
    </div>
</div>
</body>
</html>

第三种方案 display:table

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <style>
        body,p{
            margin: 0;
            padding: 0;
        }
        .parent{
            display: table;
            width: 100%;
        }
        .left{
            display: table-cell;
            width: 100px;
            padding-right: 20px;
        }
        .left p{
            background: yellowgreen;
        }
        .right{
           background: pink;
           display: table-cell;
        }
    </style>
</head>
<body>
<div class="parent">
    <div class="left">
        <p>left</p>
    </div>
    <div class="right">
         <p>right</p>
         <p>right</p>
    </div>
</div>
</body>
</html>

第四种方案 display:flex

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <style>
        body,p{
            margin: 0;
            padding: 0;
        }
        .parent{
          display: flex;
        }
        .left{
            background: yellowgreen;
           width: 100px;
        }
        .right{
            background: pink;
            flex: 1;
            margin-left: 20px;
        }
    </style>
</head>
<body>
<div class="parent">
    <div class="left">
        <p>left</p>
    </div>
    <div class="right">
         <p>right</p>
         <p>right</p>
    </div>
</div>
</body>
</html>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016.11.27 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档