盒子模型的水平垂直布局

一水平

margin-left     +border-left     +padding-left    +width           +padding-right   +border-right    +margin-right    = 其父元素内容区的宽度 (必须满足)

如果不满足,则某一个属性会自动填充,然后满足等式。

第一种情况:七个值中没有为 auto 的情况,则浏览器会自动调整margin-right值以使等式满足

第二种情况:有auto的情况。width,margin-left,margin-right可以设置为auto.,如果某个值为auto,则会自动调整为auto的那个值以使等式成立

  • - 如果将一个宽度和一个外边距设置为auto,则宽度会调整到最大,设置为auto的外边距会自动为0
  • - 如果将三个值都设置为auto,则外边距都是0,宽度最大
  • - 如果将两个外边距设置为auto,宽度固定值,则会将外边距设置为相同的值

我们经常利用这个特点来使一个元素在其父元素中水平居中

二垂直

元素的整个垂直大小, 要考虑上下外边距,边框的宽度,上下内边距,以及width

溢出,可以使用以下属性来设置, 注意,是在父元素里设置

overflow:
    可选值:   

  •     visible:  默认值,表示可见
  •     hidden :  将溢出的内容裁剪
  •     scroll:   添加了上下和左右的滚动条设置
  •     auto:  根据需求自动添加滚动条

针对于块元素来说,都是独占一行的,因此只涉及到垂直方向上的外边距的重叠(折叠),即两个元素的相邻外边距可以发生重叠现象。

    兄弟元素间的相邻垂直外边距会取两者之间的较大值(两者都是正值)
- 特殊情况:
   如果相邻的外边距一正一负,则取两者的和
   如果相邻的外边距都是负值,则取两者中绝对值较大的
- 兄弟元素之间的外边距的重叠,对于开发是有利的,所以我们不需要进行处理

- 父子元素间相邻外边距,子元素的会传递给父元素(上外边距)
- 父子外边距的折叠会影响到页面的布局,必须要进行处理  (只需要父元素添加border属性)

  • 7
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值