css盒模型

基本概念:

标准模型+ IE模型

标准模型和IE模型区别

标准模型 width=content 
IE模型  width=content+ padding+ border

CSS如何设置这两种模型

标准模型 box-sizing:content-box
IE模型 box-sizing:border-box

JS如何设置获取盒模型对应的宽和高

dom.style.width/height 只能获取内联属性
dom.currentStyle.width/height   拿到渲染以后的宽度和高度 只有IE支持 
dom.getComputerStyle.width/height  拿到渲染以后的宽度和高度 兼容性好 
dom.getBoundingClientRect().width/height  left top width height  距离视窗的绝对位置

实例题(根据盒模型解释边距重叠)

screen 的高度是多少
    <section class="screen">
        <div class="child"></div>
    </section>

* {
    margin: 0;
    padding: 0;
}

body {
    padding: 30px 0;
}

.screen {
    background: red;
    overflow: hidden;
}

.child {
    height: 100px;
    margin-top: 10px;
    background: #dedede;
}

BFC(边距重叠解决方案)

	基本概念: BFC 块级格式化上下文
	
BFC原理
1:BFC容器的垂直方向上元素边距发生重叠
2:BFC区域不会与浮动元素重叠
3:BFC 是一个独立的容器 内外元素 互不影响
4:计算BFC高度的时候 浮动元素也会参与计算
如何创建BFC
1:float 的值不为none
2:position的值不是static 或者  relative;
3:display 各种不同的值 比如table
4:overflow: 不为 visible
BFC使用场景
1:边距重叠 在子元素外面包括BFC容器
2: BFC 不与float重叠
3: BFC清除浮动 高度会考虑子元素 的高度
//BFC
    <section class="layout">
        <div class="left">left</div>
        <div class="right">right</div>
    </section>
* {
    margin: 0;
    padding: 0;
}

.layout {
    background: red;
}

.layout .left {
    float: left;
    width: 100px;
    height: 100px;
    background: pink;
}

.layout .right {
    height: 110px;
    background: #ccc;
    overflow: hidden;
}

//实例2
    <section class="layout">
        <div class="left">left</div>
    </section>
    * {
    margin: 0;
    padding: 0;
}

.layout {
    background: red;
    float: left;
}

.layout .left {
    float: left;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值