TheRedWolf
2016-03-24 21:05
如果修改margin:20px auto 中20px的值那么只有上下边距会发生变化,但是margin:20px auto这句代码不是说的是上下边距都为20px,然后左右边距为auto么???为什么修改20px的值后,只有上边距(margin-top)发生变化呢???
底部没有参照当然看不出是改变了。居中设置,则左右边距值相对浏览器自动调整。上下边距自定义。你可以多加一行块代码在其后作为参照,就知道下margin-bottom也改变了。
我也有跟题主一样的问题,我是这么觉得的,如果不设置上下,那么浏览器默认的是把元素贴在上端,然后设置了margin的top和bottom,虽然两者都有变化,但是上方是跟其父元素相靠近的,所以margin-top就产生了效果,和他父元素的距离就是margin-top,至于其下端因为没有参考物,所以显示不改变,
margin的left top不是我们以前给块状元素直接定位的left和top,他只是一个跟其他元素的距离,而left,right是在页面的距离
可是当你改变了margin:20px auto;中 20px的值后,却只有上margin-top变化了啊!这是为什么?
你要有父元素的概念。
div父元素是整个浏览器页面,高度固定,div高度野固定,margin-top和margin-bottom是无法同时设置的
初识HTML(5)+CSS(3)-升级版
1225809 学习 · 18234 问题
相似问题