盒子模型和div布局

background的覆盖范围是content区域加上padding区域加上border区域(border-color:transparent设置透明后可以看到)。

许多浏览器都有自己默认的margin和padding值,我们可以通过将元素的margin和padding设置为0来覆盖原本的浏览器样式。

* {
  margin: 0;
  padding: 0;
}


float:

当一个div容器里没有内容且不指明width时,他的宽度默认100%,但是当为这个div设置float:left时,width值变为0.

对于兄弟级别的div:

1.每个div原本都是独占一行的

                                                                  
2.但是当前一个节点的div设置float:left;时,后div将出现在第一个div的下面。原因:第一个div漂浮起来了(float),它原本的位置就空出来了,于是第二个div就占据了第一个的位置,所以他们的状态是一种重叠的状态。

                                                                  

3.当所有兄弟级别的div都设置float:left;时,每个div就失去了独占一排的状态,可以并排存在。

                                                                 

对于父子级别的div:

1.如果不指定父元素的高度,则父元素的高度为0,因为子元素漂浮起来,并没有把父元素撑开

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
<style>
     #father{
     	width: 250px;
     	background:purple;
     }
     #child1{
     	width: 100px;
        height: 100px;
     	background: orange;
     	float: left;
     }
     #child2{
     	background: green;
     	width: 200px;
     	height: 200px;
     	float:left;
     }
</style>
</head>
    <body>
         <div id = "father">
            <div id = "child1"></div>
            <div id = "child2"></div>
         </div>   
    </body>
</html>
                                                                          

2.如果指定了父元素的高度,则父元素保持原高度不变.同理,子元素浮动并不能撑开父元素。

浮动子元素在父容器内的排列规则:浮动元素优先排一列,若宽度溢出父容器则另起一行排列。若竖排列子元素合高度若大于父元素高度,则向下溢出。
                                                                        

3..如果子元素没有浮动效果且父元素高度没有指定大小,则父元素会被撑开

                                                                          

  • 8
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值