HTML+CSS填坑与挖坑(二)
此节单独探讨各种布局问题和解决方法
#4 布局问题
1.浮动布局
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
   | <!DOCTYPE html> <html> <head>     <meta charset="utf-8" />     <title>浮动布局</title>     <style type="text/css">       .wrap1 div{             min-height: 200px;         }         .wrap1 .left{             float: left;             width: 300px;             background: red;         }         .wrap1 .right{             float: right;             width: 300px;             background: blue;         }         .wrap1 .center{             background: pink;         }       </style> </head> <body>     <div class="wrap1">         <div class="left"></div>         <div class="right"></div>         <div class="center">             浮动布局         </div>       </div> </body> </html>
   | 
 
2.绝对定位布局
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
   | <!DOCTYPE html> <html> <head>     <meta charset="utf-8" />     <title>绝对定位布局</title>     <style type="text/css">       .wrap2 div{             position: absolute;             min-height: 200px;         }         .wrap2 .left{             left: 0;             width: 300px;             background: red;         }         .wrap2 .right{             right: 0;             width: 300px;             background: blue;         }         .wrap2 .center{             left: 300px;             right: 300px;             background: pink;         }      </style> </head> <body>     <div class="wrap2 wrap">         <div class="left"></div>         <div class="center">             绝对定位布局         </div>         <div class="right"></div>     </div> </body> </html>
   | 
 
3.flex布局
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
   | <!DOCTYPE html> <html> <head>     <meta charset="utf-8" />     <title>flex布局</title>     <style type="text/css">       .wrap3{             display: flex;             min-height: 200px;         }         .wrap3 .left{                         flex-basis: 300px;             background: red;         }         .wrap3 .right{                         flex-basis: 300px;             background: blue;         }         .wrap3 .center{             flex: 1;             background: pink;         }     </style> </head> <body>     <div class="wrap3 wrap">         <div class="left"></div>         <div class="center">             flex布局         </div>         <div class="right"></div>     </div> </body> </html>
   | 
 
4.table-cell表格布局
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
   | <!DOCTYPE html> <html> <head>     <meta charset="utf-8" />     <title>table-cell表格布局</title>     <style type="text/css">       .wrap4{             display: table;             width: 100%;             height: 200px;         }         .wrap4>div{             display: table-cell;         }         .wrap4 .left{                        width: 300px;             background: red;         }         .wrap4 .right{                       width: 300px;             background: blue;         }         .wrap4 .center{             background: pink;         }     </style> </head> <body>     <div class="wrap4 wrap">         <div class="left"></div>         <div class="center">             表格布局         </div>         <div class="right"></div>     </div> </body> </html>
   | 
 
5.grid网格布局
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
   | <!DOCTYPE html> <html> <head>     <meta charset="utf-8" />     <title>网格布局</title>     <style type="text/css">       .wrap5{             display: grid;             width: 100%;             grid-template-rows: 200px;             grid-template-columns: 300px auto 300px;         }         .wrap5 .left{                background: red;         }         .wrap5 .right{               background: blue;         }         .wrap5 .center{             background: pink;         }     </style> </head> <body>     <div class="wrap5 wrap">         <div class="left"></div>         <div class="center">             网格布局         </div>         <div class="right"></div>     </div> </body> </html>
   | 
 
6.各类居中布局问题
上下垂直居中
 
左右水平居中
 
上下左右居中
 
    
    
    
        
    
    
    
        - 
            
                
Next Post
                
                    web首屏性能优化
                
            
         
        - 
            
                
Previous Post
                
                    HTML+CSS填坑与挖坑