• CSS布局方式


    1.内边距 padding

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    
        <style>
        *{
            margin:0px;
        }
            .div1{
                width:100px;
                height:100px;
                background-color:red;
                padding:10px;/*内边距以内容为目标,距离边框的距离,盒子会被撑大*/
                //如果没有给出left-top-right-bottom,默认为全部都是这个边距
                }
    
        </style>
    
    <body>
    
        <div class="div1"></div>
    
    </body>    

    2.外边距 margin

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    
        <style>
        *{
            margin:0px;
        }
            .div2{
                width:100px;
                height:100px;
                background-color:green;
                border:2px solid yellow;
    //Border:围绕在内边距和内容外的边框
     margin-top:40px;
    //
    margin:用于控制元素与元素之间的距离;margin最基本的用途就是控制元素周围空间的间隔,从视觉角度上达到相互隔开的目的
    }
        </style>
    
    <body>
        <div class="div2"></div>
    <!--margin collaspe   边境坍陷或者说边境重叠
    外边距的重叠只产生在普通流文档的上下边距之间,这个看起来有点奇怪的规则,其实有其现实意义,设想
    当我们上下排列一系列规则的块及元素,(如段落 p时)那么块元素之间因为外边距重叠的存在,段落之间就不会产生双倍的距离

    1.兄弟div:上面的margin-bottom和下面的div的margin-top会塌陷,也就是会取上下两者margin里最大值作为显示值

    2.父子div: 如果父级div中没有border,padding,inline content,子级的div会一直向上找,
    直到找到某个标签包括border padding inline content 中的其中一个,然后按此div进行margin
    -->
    </body>

    </html>

    3.浮动 float

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
    
            .continer{
            border:1px solid red;
            width:300px;
        }
    
        .div1{
            width:100px;
            height:200px;
            background-color:yellow;
            float:left;
        }
    
        .div2{
            width:100px;
            height:200px;
            background-color:green;
            float:right;//浮动脱离文档流,后面的元素会填充进来,如果前面的元素也为浮动元素,会停在浮动元素后面
    
        }
    
        .div3{
            clear:both;
        }
    
    
        .div4{
            background-color:blue;
        }
    
        .clearfix:after{
            content:"";
            display:block;
            clear:both;/*清除左右浮动*/
        }
    
    
        </style>
    
    
    </head>
    <body>
    
    <div class="continer clearfix">
    
        <div class="div1">box1</div>
        <div class="div2">box2</div>
        <!--<div class="div3"></div>-->
    </div>
    <div class="div4">box4</div>
    
    </body>
    </html>

    4.定位 position

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>定位属性</title>
        <style>
    
        *{
            margin:0px;
        }
    
        .div1{
            width:200px;
            height:100px;
            background-color:yellow;
    
        }
    
        .div2{
            width:200px;
            height:100px;
            background-color:green;
    
            position:absolute;/*绝对定位脱离文档流,相对于已定位的祖先元素,如果祖先元素没有定位则相对于body元素*/
    
            /*position:relative;*//*相对定位,相对于自己原来的位置进行重新定位,不脱离文档流*/
            left:100px;
            top:100px;
        }
    
        .div3{
             width:100px;
             height:200px;
             background-color:red
        }
    
    
        .div4{
            width:200px;
            height:200px;
            background-color:blue;
        }
    
        .return{
            width:80px;
            height:80px;
            position:fixed;/*已窗口为参考点,固定定位*/
            bottom:50px;
            right:5px;
            color:green;
            text-align:center;
            line-height:80px;
            background-color:blue;
        }
    
        </style>
    </head>
    <body>
    
    <div class="continer clearfix">
    
        <div class="div1">box1</div>
        <div class="div2">box2</div>
        <div class="div3">box3</div>
        <div class="div4">box4</div>
    
    </div>
    <div style="height:2000px;background-color:pink"></div>
    
    <div class="return">返回顶部</div>
    
    <!--仅使用margin属性布局绝对定位:margin-bottom,margin-right的值不再对文档流产生影响,因为元素已经脱离文档流
    不管他的祖先元素有没有定位,都是以文档流中原来的位置偏移参照物-->
    
    </body>
    </html>

    5.display属性

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            div{
                width:50px;
                height:50px;
                background-color:yellow;
               /* display:inline;*/
            }
    
            p{
                width:50px;
                height:50px;
                background-color:red;
               /*display:inline*/
            }
    
            span{
                width:50px;
                height:50px;
                background-color:blue;
                display:inline-block;
            }
    
            a{
                width:50px;
                height:50px;
                background-color:green;
                            display:inline-block;
    
            }
        </style>
    
    
    </head>
    <body>
    
    <div>div1</div>
    <p>123</p>
    
    <span>spannnnn</span>
    <a href="#">abcaaaaa</a>
    
    </body>
    </html>
    如果我失败了,至少我尝试过,不会因为痛失机会而后悔
  • 相关阅读:
    Ubuntu下使用Sysvinit实现自定义服务(简单研究)
    Linux初始化init系统-Sysvinit、Upstart、Systemd
    Ubuntu查看系统版本的方法
    Linux查看文件内容命令:more(转)
    Linux查看文件内容命令:less(转)
    Ubuntu 16.04下MySQL 5.7.18取消开机启动(解决无法使用Sysvinit(update-rc.d/sysv-rc-conf)脚本关闭)
    为什么说Ubuntu的运行级别为2
    Ubuntu 16.04开机进入命令行(tty1)+分辨率调节+字体颜色设置+中文乱码解决(解决虚拟终端Ctrl+Alt+F1分辨率太大)
    Linux运行级别研究(转)
    Linux服务管理(Ubuntu服务管理工具sysv-rc-conf)(转)
  • 原文地址:https://www.cnblogs.com/tangcode/p/11981843.html
Copyright © 2020-2023  润新知