CSS中DIV块的margin外边距与overflow:hidden的关系问题,求高手赐教。

2024-12-28 21:46:17
推荐回答(4个)
回答1:

over:hidden这个是溢出隐藏。就是你原先的DIV设置多大他就只能是多大的,超出的部分全部被隐藏起来。

还有,做多个DIV块的时候不设置浮动是一个很不好的习惯,这样你做出来的很多东西在DW里面都会显示塌陷或是乱层,做一个新手,你做网页的时候思路不是那么清晰,所以少用继承属性,因为继承到最后你可能都不知道最下面的DIV继承了那个的父值。

你图里显示的应该是你制作软件里面的视图吧,你应该在预览里面才能看清楚他是不是有问题,在制作视图里的位置不一定是正确的。

回答2:

这个嘛。根据标准。是应该加overflow:hidden;的。而你这个截图应该是在dw里面的视图看的吧。
在不加overflow:Hidden;的时候,margin-top:这个属性是认不到边的,也就是失效。但是ie浏览器解决了这个问题,火狐、谷歌之类的就会出现失效,所以这是个标准问题,也是个兼容问题。
那个空白部分在实际浏览中应该没这么夸张。默认的margin好像是10像素到14像素之间吧。具体的忘了。不同的浏览器有不同的解析。
所以你看视图解决不了多少问题。还是看实际浏览。一个块还是多加overflow:Hidden;符合标准,又防止内容超出。

回答3:

overflow:hidden;和margin值没有任何的关系。
第一张图是成立的,当两个模块垂直相接时,如果上面模块的设置的是margin-bottom,下面的模块设置的是margin-top时,浏览器显示的空白会为较大值。
你的第二张图的设置我特意在电脑上实验了一下,理论和实际都不成立。





你自己再试试,你用的什么浏览器?
PS:不同意楼上的,浮动不是必须的,继承是有优点的。

回答4:

你能把你出现的代码贴出来吗,不知道父元素定义了哪些样式。

一般情况下父元素over:hidden不会影响到没有浮动的子元素,没有浮动的子元素会发生外边距合并的效果。

如果子元素浮动了over:hidden起到浮动闭合的作用。你可以用多个浏览器看看他的效果是怎样的。