【问题标题】:CSS min-height not working on mozilla firefoxCSS min-height 不适用于 Mozilla firefox
【发布时间】:2012-12-12 18:09:18
【问题描述】:


我用最小高度创建了一个 div 标签,并给出了背景颜色“红色”。但是在 Mozilla Firefox 上,当内容超过最小高度限制时,div 的高度不会增加。这是我的代码:

<style type="text/css"><!--
ul {
    display:block;
    padding:0px;
    width:500px;
}

.b {
    width:250px;
    float:left;
    display:block;
}

div {
    min-height:50px;
    width:500px;
    background-color:red;
}
--></style>

<div>
    <ul>
        <li class="b">asdsad</li>
        <li class="b">asdsad</li>
        <li class="b">asdsad</li>
        <li class="b">asdsad</li>
        <li class="b">asdsad</li>
        <li class="b">asdsad</li>
        <li class="b">asdsad</li>
    </ul>
</div>

似乎必须将 div 高度设置为适合内容,但我不知道我还能怎么做。如果我不使用高度,则无法设置背景颜色。请告诉我如何使内容适合 div 以及背景颜色为红色。
(不知道我是否解释清楚。所以如果您想了解更多有关该问题的信息,请询问我。)

-谢谢。

已解决:感谢大家的友好回答。

【问题讨论】:

  • 为什么你不只给出高度并清除两个div?告诉我?
  • 对不起,我没明白你的意思。你能说清楚吗?
  • 你需要什么你有固定的 li 宽度,而且它的父宽度似乎在这个 div 中只有一对 li 来了?请解释一下

标签: css


【解决方案1】:

在 Firefox 上,min-height 不会在display: table(-*); 属性上被解释,只是尝试使用height: 50px;,因为它被解释为表格上的最小高度。

Source

【讨论】:

  • 所以如果你也使用display: block;覆盖display: table(-*);,你可以使用min-height
  • 经过深思熟虑和挠头:是的。只需使用普通的旧高度即可。 codepen.io/squarecandy/full/wWLNAV
  • 对我来说,出于某种原因, display: table* 是唯一能让 min-height 在 Firefox 中正常工作的东西。这真的很烦人......
  • 当我去掉 height: 100% for the parent of the element-height 时,一切又开始正常工作了。很奇怪。
【解决方案2】:

所有主流浏览器都支持 min-height 属性。

但该属性不适用于 firefox 上的 html 表格。

【讨论】:

  • 谢谢。对于任何 display: table-* 元素,它似乎在 Firefox 中不起作用(错误 307866)。
【解决方案3】:

像这样更新你的CSS:

div{min-height:50px;width:500px;background-color:red;overflow:hidden;}

overflow:hidden; 已添加

基本上,这是因为 .b 类中的 float:left。这就是它的工作原理。通常你可以通过添加overflow:hidden 到父 div 或者添加一个 style="clear:both;" 的元素来修复它。在父 div 的末尾。

您可以使用“CSS clearfix”关键字搜索有关它的更多信息。

【讨论】:

  • 非常感谢,这行得通!我添加了溢出:隐藏到'div'。我会在6分钟后接受这个答案(这就是消息所说的)。感谢您的帮助...
【解决方案4】:

当元素的显示设置为表格时,firefox 将忽略 min-height 属性而不实际设置高度。

通过将元素切换为 display:block,firefox 遵循了 min-height 属性。

【讨论】:

    【解决方案5】:

    overflow: hidden; 添加到ul

    问题是您的LIs 是浮动的,这导致父级不知道其内容的高度。

    【讨论】:

      【解决方案6】:

      我添加了以下内容,并且有效:

      body {
        height:100%;
      }
      

      【讨论】:

        【解决方案7】:

        你必须像这样清除嵌套的 li 标签的浮动:

        ul:after {
            content: ".";
            display: block;
            clear: both;
            visibility: hidden;
            line-height: 0;
            height: 0;
        }
        

        【讨论】:

          【解决方案8】:

          而不是 min-height:50px;只需添加填充:25px 0;

          【讨论】:

            猜你喜欢
            • 2017-03-31
            • 1970-01-01
            • 2012-08-01
            • 2016-12-30
            • 1970-01-01
            • 1970-01-01
            • 2023-03-31
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多