代码之家  ›  专栏  ›  技术社区  ›  James Hughes

IE未兑现的页边距

css
  •  0
  • James Hughes  · 技术社区  · 17 年前

    我有一个带有一组字段集的窗体。这些字段集将有条件地隐藏并显示在服务器端,因此我需要这些字段集从左到右从上到下流动。下面的代码实现了这一点,但是10px的边缘底部并没有得到IE的认可(IE7只测试过)。

    我读过一些文章,建议如果不添加填充,这与页边距折叠有关,但是我尝试了这个方法,同样的事情也发生了。如何在两行字段集之间创建一个10px的空间?

    <html>
    <head>
        <style>
            fieldset {
                display: inline-block;
                width: 30%;
                height:90px;
                vertical-align: top;
                border: 1px solid black;
                margin-bottom:10px;
            }
        </style>
    </head>
    <body>
        <form>
            <fieldset>
                <label>Label:</label>
                <input type="text"/>
            </fieldset>
            <fieldset>
                <label>Label:</label>
                <input type="text"/>
            </fieldset>
            <fieldset>
                <label>Label:</label>
                <input type="text"/>
            </fieldset>
            <fieldset>
                <label>Label:</label>
                <input type="text"/>
            </fieldset>
            <fieldset>
                <label>Label:</label>
                <input type="text"/>
            </fieldset>
        </form>
    </body>
    

    4 回复  |  直到 17 年前
        1
  •  3
  •   eyelidlessness    17 年前

    对于IE 6和IE 7,

    display: inline;
    zoom: 1;
    

    在块级别上,元素等价于 inline-block 因为 zoom 触发IE hasLayout 属性(了解更多信息 here )

        2
  •  1
  •   Phil Rae    17 年前

    来自: http://www.quirksmode.org/css/display.html

    在IE6和7inline块中,只适用于具有自然显示的元素:inline。

    火狐2和更低版本不支持这个值。您可以使用-moz inline-box,但请注意它与inline块不同,在某些情况下它可能无法按预期工作。

    字段集有一个自然的显示:块,而不是内联,所以IE6/7正变得不安。

    尝试将inline块更改为“block”(如果您希望它们位于同一行,则改为“inline”),然后查看是否解决了问题。

        3
  •  0
  •   Meep3D    17 年前

    我想我喜欢搞砸直列块-如果你只用块怎么办?这样可以解决问题。

        4
  •  0
  •   SvenFinke    17 年前

    如果将显示从inline块更改为inline,则在ie7和ff3中可以正常工作。