+ -
当前位置:首页 → 问答吧 → 高度撑不开,margin 为什么在firefox失效了。

高度撑不开,margin 为什么在firefox失效了。

时间:2007-11-24

来源:互联网

<div id=“1”>
  <div id="1-1"></div>
  <div id="1-2"></div>
</div>

<div id="2"></div>

为什么 id 1 的高度不自动撑开呢,必须设定一个实际的值才行 hight=“100”。{min-hight=“100” hight=“100” hight=“aoto” 这样也不行啊}

下边的 id 2 的margin的值在火狐下就失效了,为什么??

作者: lx2008   发布时间: 2007-11-24

不能用纯数字做id,用来举例也不是好习惯。

第一个你应该好好看看on having layout这篇文章,理解一下ie对css的解析方式。

第二个不知道具体代码,无法分析。

作者: zehee   发布时间: 2007-11-24

设置一下它的border值或padding值看一下

作者: zhaoliancheng   发布时间: 2007-11-24

引用:
为什么 id 1 的高度不自动撑开呢,必须设定一个实际的值才行 hight=“100”。{min-hight=“100” hight=“100” hight=“aoto” 这样也不行啊}
这个写法……汗一个先~
对于LZ的想法不是很确定,只能靠感觉来回答你的问题了。

如果你的DIV高度是自适应的,如
height:auto !important;
min-height:100px;
那就很有可能会导致margin的失效,尤其是margin-bottom,如果是这样的情况的话,可以再给样式中加一个overflow:auto;让margin回来~

关于overflow:auto;这个方法有时候也是作为清除浮动用的,具体可以看ghost写的《清除浮动最简单的方法》[url]http://www.cssforest.org/blog/index.php?id=36[/url]

作者: phantom   发布时间: 2007-11-24

<div id=“1”>
  <div id="1-1"></div>
  <div id="1-2"></div>
</div>

试一下
<div id=“1”>
  <div id="1-1"></div>
  <div id="1-2"></div>

  <div style="clear: both;"></div>

</div>

作者: fourfour   发布时间: 2007-11-24

为什么加上这个overflow:auto管用,我的有clear: both的。

作者: lx2008   发布时间: 2007-11-24

clear:both;
是对他上面的元素的浮动的清除

overflow:auto;
这个是针对本身的,因为高度是自适应的,而overflow:auto呢也是适应本身的内容。如果是定高的话,用overflow:auto应该是出来滚动条的,自适应就应该是一起拉伸而不出现滚动条。

作者: phantom   发布时间: 2007-11-24

height:100%;overflow:hidden

作者: pamde   发布时间: 2007-11-24

我是来顶4楼的~~~我f.u*k啊!!!真是奏效, 有没人可以解释下为什么overflow: auto;可以解决自是因高度margin
复制内容到剪贴板
代码:
<div class="box">
<div class="comments"></div>
<div class="data"></div>
</div>

作者: lyplba   发布时间: 2010-09-18