css-子div设置margin-top后,父div与子div一起下移
2016-11-19 21:25
344 查看
根据海玉的博客
这个问题发生的原因是根据规范,一个盒子如果没有上补白(padding-top)和上边框(border-top),那么这个盒子的上边距会和其内部文档流中的第一个子元素的上边距重叠。
再说白点就是:父元素的第一个子元素的上边距margin-top如果碰不到有效的border或者padding.就会不断一层一层的找自己“领导”(父元素,祖先元素)的麻烦。只要给领导设置个有效的 border或者padding就可以有效的管制这个目无领导的margin防止它越级,假传圣旨,把自己的margin当领导的margin执行。
所以解决办法:给父div设置border-top或者padding-top。
这个问题发生的原因是根据规范,一个盒子如果没有上补白(padding-top)和上边框(border-top),那么这个盒子的上边距会和其内部文档流中的第一个子元素的上边距重叠。
再说白点就是:父元素的第一个子元素的上边距margin-top如果碰不到有效的border或者padding.就会不断一层一层的找自己“领导”(父元素,祖先元素)的麻烦。只要给领导设置个有效的 border或者padding就可以有效的管制这个目无领导的margin防止它越级,假传圣旨,把自己的margin当领导的margin执行。
所以解决办法:给父div设置border-top或者padding-top。
相关文章推荐
- css-子div设置margin-top后,父div与子div一起下移
- CSS常见问题解决001——子div的margin-top影响父div的位置
- html+css-内层div设置margin-top不起作用
- CSS---关于内层DIV设置margin-top不起作用的解决方案
- 如何解决子div设置margin-top时影响父div的margin-top
- [CSS][转载]内层div的margin-top影响外层div
- IE8 CSS设置DIV居中,添加“margin:0 auto”
- CSS基础 设置div的top与left值无效
- 父div完全透明,子div不透明的css设置方法
- css div设置positon:relative之后,再设置top,div的原位置有空白,解决办法
- CSS基础 设置top与left让两个div快出现重叠部分,并设置两者重叠的顺序
- div嵌套引起的margin-top不起作用(子div设定margin-top,导致父div与其他元素有间隙)
- 关于内层DIV设置margin-top不起作用的解决方案
- css margin-top设置html元素之间的距离
- 使用js创建div、添加子div并给div设置在css中定义的class选择属性以及设置style属性
- 子DIV设置margin-top影响父DIV位置
- 关于内层DIV设置margin-top不起作用的解决方案
- 关于内层DIV设置margin-top不起作用的解决方案
- 关于内层DIV设置margin-top不起作用的解决方案
- div+css - CSS标准 - 8.3 Margin properties: 'margin-top', 'margin-right', 'margin-bottom', 'margin-left', and 'margin' - 8.3边距属性