关于div嵌套margin-top影响父div的解决办法及各种情况测试
2016-11-21 22:39
295 查看
遇到的问题:
两个div嵌套,希望里面的div在父div中垂直移动,结果发现设置margin-top的时候,父div也一起移动,于是进行了以下测试:
目前有两个div :拟定root div宽度为全屏 高度为50px
为了不影响测试,先将body的默认margin去除
结果为:
情况1:设置外div的margin-top=50px;
结果为:
下移50px;
情况2:设置外div的margin-top=50px;嵌套的div1(高度为20px 红色区域)的margin-top=100px;
结果为:
下移100px
情况3:只设置内div1的margin-top=100px
结果还是下移100px。
由此说明:
内div设置margin的时候不是根据父div的顶端来计算
接着进行下面的测试:
情况4:不设置外div的margin 设置内div1的margin为100px 设置内div2的margin为100px
结果是外div下移了100px
情况5:不设置外div的margin 不设置内div1的margin 设置内div2的margin为100px
结果为:
父div没有移动
由此说明:
HTML在计算div的margin的时候是根据第一个div设置的margin决定
所以在遇到两个div嵌套,希望里面的div在父div中垂直移动的时候可以加个1px高度的空div解决
结果为:
当然还有其他很多办法,希望大家多多搜集进而分享。
两个div嵌套,希望里面的div在父div中垂直移动,结果发现设置margin-top的时候,父div也一起移动,于是进行了以下测试:
目前有两个div :拟定root div宽度为全屏 高度为50px
为了不影响测试,先将body的默认margin去除
结果为:
情况1:设置外div的margin-top=50px;
结果为:
下移50px;
情况2:设置外div的margin-top=50px;嵌套的div1(高度为20px 红色区域)的margin-top=100px;
结果为:
下移100px
情况3:只设置内div1的margin-top=100px
结果还是下移100px。
由此说明:
内div设置margin的时候不是根据父div的顶端来计算
接着进行下面的测试:
情况4:不设置外div的margin 设置内div1的margin为100px 设置内div2的margin为100px
结果是外div下移了100px
情况5:不设置外div的margin 不设置内div1的margin 设置内div2的margin为100px
结果为:
父div没有移动
由此说明:
HTML在计算div的margin的时候是根据第一个div设置的margin决定
所以在遇到两个div嵌套,希望里面的div在父div中垂直移动的时候可以加个1px高度的空div解决
结果为:
当然还有其他很多办法,希望大家多多搜集进而分享。
相关文章推荐
- 子DIV设置margin-top影响父DIV位置的解决办法
- James中关于改动config.xml后,无法再启动run.bat的情况解决办法
- FF下子div的margin-top被传递给父div的解决办法
- Css嵌套DIV,内层DIV设置margin-top失效的解决办法(转)
- input点击后,显示DIV,不同的top,会出现在不同的位置解决办法
- 关于listview的自定义adapter不执行getview()方法的几种情况和解决办法
- 固定div实现,以及问题 >> document.body.scrollTop的值总为零的解决办法
- 关于网页视频遮住顶层DIV的解决办法
- linux下Python各种关于路径问题的解决办法
- android studio中文乱码各种情况的解决办法
- FF浏览器嵌套div中margin-top转移问题的解决办法
- 关于li:hover伪类,以及各种除了a:hover在IE6下不生效的解决办法.
- 关于ie下 line-height 不兼容,采用margin-top解决办法
- 关于div的mouseout事件触发不准的解决办法
- ios升级为5后,程序编译时遇到的关于libz 1.2.3.dylib类包的各种问题解决办法
- 【错误集】各种错误情况+解决办法(长期更新)
- FF浏览器嵌套div中margin-top转移问题的解决办法
- div嵌套margin-top失效的解决方法
- 关于无法访问LocalHost的一种另类情况的解决办法
- asp.net 关于提示“当前上下文中不存在名称"XXX"”的一种情况的解决办法