【发布时间】:2010-09-17 14:01:57
【问题描述】:
我前段时间遇到了一个“问题”,但我从未深入了解。希望有人可以照亮它。当我将 DOCTYPE 从严格更改为过渡时,是什么导致某些浏览器(Chrome、Opera 和 Safari)以不同方式呈现页面。我知道这种情况的一般原因是触发了 quirks 模式,但是这两个文件的 XHTML 和 CSS 都根据 w3c 验证器进行验证。
我只能假设这些浏览器对两个 DOCTYPE 使用不同的内部样式表,但不知道他们为什么会这样做。我只是希望有人能证实为什么会发生这种情况。
可以看到的区别是“标题图像”底部和菜单栏边框之间的空间。在上述浏览器中,使用过渡 DOCTYPE 时两者之间没有间隙,但在使用 strict 时存在间隙(在 IE 和 FF 中两者都存在间隙)。我最终发现在 img 标签中添加display:block 可以阻止所有情况下出现的差距(这是我的目标)。
【问题讨论】: