没有inner会有元素覆盖,加了inner后,就不会有了,原因是什么?

来源:8-2 双飞翼布局的解决方案

慕码人9569303

2020-03-06 18:10

我的代码是这样的,为什么有子元素inner后,就可以实现这个双飞翼布局的效果呢?

<!DOCTYPE html>

<html>

    <head>

        <meta charset="utf-8" />

        <title>双飞翼布局</title>

        <style>

            .parent{

                width:100%;

                position:absolute;

                background-color: chartreuse;

            }

            .left,.right{

                height:300px;

                width:200px;

            }

            .left{

                background-color:burlywood;

                position:absolute;

                left:0;

                top:0;

            }

            .right{

                background-color: red;

                position:absolute;

                right:0;

                top:0;

            }

            .inner{

                margin:0 200px;

                background-color: cadetblue;

                height:300px;

            }

        </style>

    </head>

    <body>

        <div class="parent">

            <div class="center"><div class="inner">居中自适应</div></div>

            <div class="left">定宽局左</div>

            <div class="right">定宽局右</div>

        </div>

    </body>

</html>


写回答 关注

1回答

  • 可谢谢您嘞
    2020-03-08 21:46:24
    已采纳

    我也是新人 我的理解是 首先inner也是div标签 那么会继承父级标签的宽度 也就是默认整个屏幕的宽度 这个情况下是有重叠的 但是他给#inner设置了CSS样式(margin-left,margin-right),也就是左外边距和右外边距。所以正好就不跟left和right的div标签有重合了。

一课全面掌握主流CSS布局

一网打尽CSS主流布局方案,一步掌握页面布局技巧.

5276 学习 · 60 问题

查看课程

相似问题