三、CSS布局

2018-03-07  本文已影响0人  Love小六六

常用布局方法

表格布局

设定元素 display:table,display:table-row,display:table-cell,可模拟出表格的行和单元

盒模型

设定的宽度和高度只对content生效,盒子占用的空间是margin+border+padding+content


display/position

flexbox布局

float布局

// 两栏布局
.left{
    width:200px;
    float:left;
    height:800px
}
.right{
    width:100%
    heigth:800px;
    margin-left:200px
}
// 三栏布局
.left{
    width:200px;
    float:left;
    height:800px
}
.right{
    width:200px
    heigth:800px;
    margin-left:200px
}
.middle{
    width:100px;
    margin-left:200px;
    margin-right:200px;
    heigth:800px
}
//浮动先行
<div class="left"></div>
<div class="right"></div>
<div class="middle"></div>

inline-block布局

解决方案

  1. 父元素font-size设置为0,子元素重新设置font-size
.container{
    width:800px;
    height:200px;
    font-size:0;
}
.left{
    font-size:14px;
    background:red;
    display: inline-block;
    width:200px;
    height:200px;
}
.right{
    font-size:14px;
    background:blue;
    display: inline-block;
    width:600px;
    height:200px;
}
<div class="container">
    <div class="left">
        左
    </div>
    <div class="right">
        右
    </div>
</div>

2.子元素不加空白

<div class="container">
    <div class="left">
        左
    </div><div class="right">// 重点
        右
    </div>
</div>

响应式布局和设计

// 第一步
<meta name="viewport" content="width=device-width, initial-scale=1.0">

// 媒体查询
@media (max-width: 640px){
    .left{
        display: none;
    }
}

// rem单位,一个rem等于设置的font-size的值
// 通过媒体查询对不同大小屏幕设定不同html的font-size值
html{
    font-size: 20px;// 1rem
}
// 范围大的放在上面
@media (max-width: 375px){
    html{
        font-size:24px;
    }
}
@media (max-width: 320px){
    html{
        font-size:20px;
    }
}
上一篇 下一篇

猜你喜欢

热点阅读