Html 表现得很奇怪还是只有我

Html 表现得很奇怪还是只有我,html,css,internet-explorer-7,Html,Css,Internet Explorer 7,我有一个类似这样的html:其思想是div向左浮动,当有3个以上的div时。下一个应该从下一行开始。(因为宽度)。这几乎适用于所有浏览器。甚至在IE6中。但说到IE7。它把第四个div放在同一条线上。 你知道为什么吗 <div id="content"> <div> <div class="picture" style="float: left; margin-right: 8px;"> <div clas

我有一个类似这样的html:其思想是div向左浮动,当有3个以上的div时。下一个应该从下一行开始。(因为宽度)。这几乎适用于所有浏览器。甚至在IE6中。但说到IE7。它把第四个div放在同一条线上。 你知道为什么吗

<div id="content">
    <div>
        <div class="picture" style="float: left; margin-right: 8px;">
            <div class="pictureName">Name...</div><a href="#" class="borderfree"><img alt="" src="/xsmall.png"></a>
        </div>
        <div class="picture" style="float: left; margin-right: 8px;">
            <div class="pictureName">Name...</div><a href="#" class="borderfree"><img alt="" src="/xsmall.png"></a>
        </div>
        <div class="picture" style="float: left; margin-right: 8px;">
            <div class="pictureName">Name...</div><a href="#" class="borderfree"><img alt="" src="/xsmall.png"></a>
        </div>
        <div class="picture" style="float: left; margin-right: 8px;">
            <div class="pictureName">Name...</div><a href="#" class="borderfree"><img alt="" src="/xsmall.png"></a>
        </div>
        <div class="picture" style="float: left; margin-right: 8px;">
            <div class="pictureName">Name...</div><a href="#" class="borderfree"><img alt="" src="/xsmall.png"></a>
        </div>
    </div>
</div>
以下是一些图片: 你知道为什么吗? IE7

IE8

您是否尝试删除
溢出:隐藏属性

我在Safari中尝试过,并删除了
溢出:隐藏似乎不会更改布局

(这里没有IE7,因此我无法真正测试它)

查看了您的页面——这可能是问题所在,也可能不是问题所在,但我注意到您没有合法的DOCTYPE。试着先把它修好


我的错——我在看Chrome检查员,而不是来源。DOCTYPE看起来不错。

尝试位置:相对,显示:内联;到。图片 此外,所有容器必须具有固定宽度

如果这不起作用,那么你还有别的事情要做

#content {
margin:10px auto;
overflow:hidden;
padding:3px 10px;
width:960px;

}
.picture{
float:left;
width:320px;
position:relative;
display:inline;
}

编辑:我没有注意到额外的div。。。。但不应该引起问题

将“宽度:100%”添加到“#内容”样式时会发生什么情况?(实际上,使用w3c标准模式框模型无法做到这一点;问题是,如果您固定宽度会怎么样?)为什么要在内容中添加额外的
?我更改了下面div的witdh内容(包含图片div)它没有任何效果@Hogan我认为最好设置该内部的witdh,这样就不会在其他页面中共享更改内容的属性。我看到了--在这里的示例中没有显示该更改的代码。实际的页面具有正确的doctype。至少我这么认为,因为w3验证程序不会抱怨规则会使内容中的所有div都是960px。。。您应该使用>子选择器
#content>div{…}
。请记住,IE 6中不支持它溢出:hidden应该与他的要求无关我想我不是一直都有IE7。但是我发现了一种叫做Microsoft Expression Web SuperPreview for Windows Internet Explorer的东西,它可以让你浏览IE6、IE7和IE8的页面,并进行比较等。这里有一个链接:我想给它一个witdh属性就行了。不过,我正在做更多的测试,如果有任何变化,我会让你。干杯
#content {
margin:10px auto;
overflow:hidden;
padding:3px 10px;
width:960px;

}
.picture{
float:left;
width:320px;
position:relative;
display:inline;
}