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

第一种方案
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>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,806评论 1 92
  • display:设置元素的显示方式 display:block(块级元素) 默认为父元素宽高,可设置宽高相对前序换...
    bluishwhiteC阅读 669评论 0 0
  • 我们在日常开发中经常遇到布局问题,下面罗列几种常用的css布局方案 话不多说,上代码! 这里还是要推荐下我自己建的...
    流浪的風阅读 277评论 0 0
  • 这里没有高楼 这里人们天生爱笑 这里冬天只饮冰水 这里圣诞节时成为空城 郁金香绽放时反倒热闹 这里鸽子胖得走不动路...
    向日葵爱呀爱太阳阅读 225评论 0 0
  • 临江仙 听故人言,为其所书 想起伊人曾过我,负她几次流年。痴情一梦恍然间。山盟连海誓,到底算从前。 子夜登高凝望去...
    我是宁默默阅读 267评论 0 2