前端从零开始-第二周第二天笔记

2018-11-30  本文已影响0人  Hero行者

1.盒子模型的初步了解

盒尺寸中的4个盒子 content-box、padding-box、border-box和margin-box分别对应CSS世界中的centent、padding、border、margin属性,这四个属性称为”盒尺寸四大家族”

2.盒子模型类型:标准盒子模型和IE盒子模型

盒模型有两种,分别是ie盒子模型(IE6以下版本浏览器)和标准w3c盒子模型 ,能影响元素的实际大小的只有padding和border值,margin不影响实际大小。


1.png
2.png

盒子模型的计算公式

标准盒模型计算公式

IE盒模型计算公式

3.标准模式下的盒模型

4.怪异模式下的盒模型

padding和border不被包含在定义的width和height之内。对象的实际宽度等于设置的width值和border、padding之和,即 ( Element width = width + border + padding )

padding和border被包含在定义的width和height之内。对象的实际宽度就等于设置的width值,即使定义有border和padding也不会改变对象的实际宽度,即 ( Element width = width )

5.padding详解

检索或设置对象四边的内部边距

6.border详解

利用border属性制作三角形

实现思路:利用border的三个属性(宽度,类型,颜色),绘制出一个正方形,而且这个正方形就是由四个三角形组合而成,然后再保留一个方向的三角形,让其他方向的颜色透明即可;

.triangle{
     width: 0;
     border-width:200px;
     border-style: solid;
     border-color:darkgoldenrod transparent  transparent  transparent;
}

<div class="triangle"></div>

7.margin详解

检索或设置对象四边的外延边距

小知识:margin: 0 auto; 上下为0 左右为auto 可以实现块级元素水平居中

8.margin特性之塌陷问题

// 解决方法一:給父元素加overflow:hidden
<style type="text/css">
.black{
    width: 400px;
    height: 400px;
    background: #000;
    overflow: hidden;
}
.red{
    width: 200px;
    height: 200px;
    margin-top:50px;
    background: red;
}
</style>
<div class="black">
    <div class="red"></div>
</div>

// 解决方法二: 給父元素加padding-top
<style type="text/css">
.black{
    width: 400px;
    height: 350px;
    padding-top:50px;
    background: #000;
}
.red{
    width: 200px;
    height: 200px;
    background: red;
}
</style>
<div class="black">
    <div class="red"></div>
</div>

9.margin特性之合并问题

<style type="text/css">
.black{
     width: 400px;
     height: 400px;
     background: #000;
     margin-bottom: 40px;
 }
 .red{
     margin-top: 60px;
     width: 200px;
     height: 200px;
     background: red;
 }
 .wrap{
     overflow: hidden;
 }
</style>
<div class="black"></div>
<div class="wrap">
    <div class="red"></div>
</div>
上一篇 下一篇

猜你喜欢

热点阅读