html盒子页面布局设置,div+css网页布局笔记:盒子模型(框模型)

一个盒子我们会分为几个部分:

内容区:content

内边距:padding

边框:border

外边距:margin

盒子占用空间的大小

可见尺寸=指定宽高+边框宽度+内边距宽度+外边距宽度

盒子的内边距特性:

元素的背景颜色会延伸到内边距

.box1{

width: 200px;

height: 200px;

background-color:Blue;

border:10px solid red;

padding:0px 10px 20px 30px;

}

.box2{

width:100%;

height:100%;

background-color:#FFFF00;

}

盒子的外边距特性

盒子的左和上 外边距会影响自己的位置,盒子的右和下外边距会影响其他盒子的位置

.box1{

width: 200px;

height: 200px;

background-color:yellow

;

margin:10px 50px 100px 200px;

}

.box2{

height:200px;width: 200px;

background-color:red;

}

盒子的左和上 外边距会影响自己的位置,盒子的右和下外边距会影响其他盒子的位置

外边距垂直方向重叠问题

在网页中垂直方向的相邻外边距会发生外边距的重叠

所谓的外边距重叠指兄弟元素之间的相邻外边距会取最大值而不是取和

.box1,.box2{

width: 200px;

height: 200px;

}

.box1{

background-color:yellow;

margin-bottom:200px;

}

.box2{

background-color:red;

margin-top:200px;

}

注意:

如果父子元素的垂直外边距相邻了,则子元素的外边距会设置给父元素

例如:要求:子元素向下移动100个像素,父元素不动

.box1{

width: 400px;

height: 400px;

background-color:yellow;

/*解决方法一:border:1px solid Black;*/

/*解决方法二: padding:1px;*/

}

.zi{

width: 200px;

height: 200px;

background-color:red;

margin-top:100px;

}

解决方法1:不让他们相邻.给(box1)父元素加一个边框:  border:1px solid Black;

解决方法2:不让他们相邻,给(box1)父元素加一个内边距: padding:1px;

解决方法3:给父元素 上内边距 设置为100  高度减去100

解决方法4:用一个空的

以上四种方式都不是最好的解决方式

最终解决方法:.clearfix:before,

.clearfix:after{

content:"";

display:table;

clear:both;

}

/*

把 clearfix加到父元素的 class里

既可以解决高度塌陷,又可以确保父元素和子元素的垂直外边距不会重叠

*/

内联元素的特性

内联元素不能设置宽高

内联元素可以设置水平方向的内边距、和边框(会正常影响左右的布局)

内联元素可以设置垂直方向的内边距、和边框(但是不会影响页面的布局)

内联元素可以设置水平方向的外边距(水平相邻的外边距不会重叠,会累加)

内联元素不支持垂直方向的外边距

文档流:

(div,H,P等)块元素特性::主要用来做页面布局

在文档流里独占一行(无论宽度设置的多窄,它也会独占一行)

在文档流里默认宽度的值是auto(父元素的100%),默认高度被文档撑开.

在文档流里当宽度为auto时,指定内边距不会影响可见框的大小,而是自动修改宽度,易适应内边距

(span,a,iframe等)行内元素(内联元素)特性:主要用来选择文本来设置样式

只会占用自身的大小,不会占用一整行

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值