布局、浮动、塌陷现象

1.关于布局

  1. 分大块区域几大块内容,一行为一大块内容。比如topbar、nav、header、slider、ad、main、footer等大块区域。
    margin-bottom
  2. 大块区域的真实区域,版心部分。
    width,版心宽 (可直接单独写一个类,每次用时直接引用类名)
    margin: 0 auto; (使用margin:0 auto;时必须有明确的宽度)
    overflow: hidden; 清除浮动 ,BFC 不影响该块区域后面的其他盒子
  3. 根据内容由上及下,由左及右进行划分2或3块区域。
    padding
    height
    (width有的需要给宽,根据具体情况定)
    overflow: hidden;
    position: relative; 如果区域中有小图标用定位
  4. 每块区域具体划分为左块右块,上块下块,或者几列(col1、col2、col3)。
    float
    padding
    margin
    width
    (overflow:hidden;如果是大盒子内容较多,或者有浮动用)

2.浮动

浮动宏观上看就是做“并排”的。
只要有浮动就脱标,只要脱标就不能撑高

2.1浮动的四种性质:

1.脱标
2.浮动的元素相互贴靠
3.浮动的元素有“字围”效果
4.收缩(如果一个浮动的元素没有设置宽,那么将自动收缩为字的宽度)

2.2清除浮动四种方法

2.2.1. 给父级元素设置高:(一般不用)

浮动的元素只能被有高度的盒子关住。也就是说,如果盒子内部有浮动,并且盒子有高则浮动不会影响。但工作中我们不会给所有的盒子加高度,因为内容能撑高并且不能适应页面的快速变化。

2.2.2. 添加clear:both;(一般不用)

最简单的清除浮动的方法就是给盒子添加clear:both;表示自己的内部元素不受其他盒子的影响,但margin失效,两个div之间没有间隔了。

2.2.3.隔墙法:

在两个浮动元素之间建一个墙,即两个div盒子之间再加一个div来clear:both;hight:10px;。让后面的浮动元素不去追前面的浮动元素,墙用自己的身体当作间隙。但第一个div盒子还是没有高度。

2.2.4.内墙法:

在第一个div盒子中添加墙。例如两个p都浮动,所以div不能被撑出高,而家里面修一堵墙,就能让div被儿子撑出高了。内墙法既能隔住浮动又能撑出高度。
<div>
<p>我浮动</p>
<p>我也浮动</p>
<div class="cl"></div>
</div>

2.2.5.overflow:hidden;法(建议使用)

此方法简单但注意兼容问题。一个父亲不能被自己浮动的儿子撑出高度,只要给父亲添加overflow:hidden;那么父亲就能够被浮动的儿子撑出高度了。

2.3 BFC

一个大盒子中的三个小盒子都浮动,这个大盒子就是BFC区域,BFC盒子要添加overflow:hidden;(BFC区域里的内容无论怎么浮动、定位都和外界无关,不会影响这个大盒子之外的其他盒子)
这里写图片描述

3. z-index

只有定位(相对定位、绝对定位、固定定位)的元素才有z-index,浮动不能使用。
z-index值没有单位(默认为0),表示谁压着谁。数值大的压盖住数值小的。

4.塌陷现象

这里写图片描述

4.1标准文档流中塌陷现象:

竖直方向的margin不叠加,以较大的为准如上图所示。(塌陷)
水平方向的margin叠加。

4.2脱离标准文档流中(只要浮动就脱离标准文档流)没有塌陷现象:

垂直方向叠加
水平方向叠加

5.标签嵌套

p里不能嵌套div,可以嵌套p
a里不能嵌套a、input。其他标签都可以嵌套。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值