码迷,mamicode.com
首页 > Web开发 > 详细

HTML/CSS布局

时间:2019-10-28 19:04:12      阅读:109      评论:0      收藏:0      [点我收藏+]

标签:如何   table   utf-8   init   利用   lang   ppi   float   固定   

一、三列布局

  三列布局要求:1.两边固定,中间自适应

         2.当中列要完整显示

         3.当中列要优先加载

1.圣杯布局

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
     <style>
         *{
             margin: 0;
             padding: 0;
         }
         #content{
             padding: 0 200px;
             overflow: hidden;
         }

         body{
             min-width: 600px;
         }
         #header,#footer{
             height: 20px;
             text-align: center;
             border: 1px solid;
             background: gray;
         }
         /*伪等高布局*/
         #content .middle,#content .left,#content .right{
             padding-bottom: 10000px;
             margin-bottom: -10000px;
         }
         #content .middle{
             float: left;
             background-color: pink;
             width: 100%;             
         }
         #content .left{
             width: 200px; 
             background-color: yellow;
             margin-left: -100%;
             float: left;
             position: relative;
             left: -200px;
         }
         #content .right{
             width: 200px;
             background-color: yellow;
             margin-left: -200px;
             float: left;
             position: relative;
             right: -200px;
         }

         .clearfix::after,.clearfix::before{
             content: "";
             display: table;
             clear: both;
         }
     </style>
</head>
<body>
    <div id="header">Header</div>
    <div id="content" class="clearfix">
        <div class="middle">Middle</div>
        <div class="left">Left</div>
        <div class="right">Right</div>
    </div>
    <div id="footer">Footer</div>
</body>
</html>

2.双飞翼布局

两组实现布局方法的对比

        1.都是把主列放在文档流最前面,主列优先加载
        2.都是让三列浮动,通过负外边距形成三列布局
        3.不同之处在于如何处理中间主列的位置,圣杯布局是利用父容器的左,右内边距+两个从列相对定位;双飞翼布局是把主列嵌套再一个新的父级块中利用主列的左右外边距进行布局调整。
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        #header,#footer{
            border: 1px solid;
            background-color: gray;
            text-align: center;
        }
        body{
            min-width: 600px;
        }
        /* 伪等高布局 */
        #content{
            overflow: hidden;
        }
        #content .middle,#content .left,#content .right{
            padding-bottom: 10000px;
            margin-bottom: -10000px;
            float: left;
        }
        #content .middle{
            background-color: pink;
            width: 100%;
        }
        #content .m_inner{
            padding:0 200px; 
        }
        #content .left,#content .right{
            background-color: deeppink;
            width: 200px;
            text-align: center;
        }
        #content .left{
            margin-left: -100%;
        }
        #content .right{
            margin-left: -200px;
        }   
    </style>
</head>
<body>
    <div id="header">Header</div>
    <div id="content">
        <div class="middle">
            <div class="m_inner">
                middle 
            </div>
        </div>
        <div class="left">Left</div>
        <div class="right">Right</div>
    </div>
    <div id="footer">footer</div>
</body>
</html>

二.双列布局

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        body{
            min-width: 600px;
        }
        div{
            height: 200px;
        }
        #left{
            width: 200px;
            background-color: pink;
            float: left;
        }
        #right{
            overflow: hidden;
            background-color: deeppink;
        }
    </style>
</head>
<body>
    <div id="left">Left</div>
    <div id="right">Right</div>
</body>
</html>

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

HTML/CSS布局

标签:如何   table   utf-8   init   利用   lang   ppi   float   固定   

原文地址:https://www.cnblogs.com/Wu-Zi-Qian/p/11754239.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!