Ale*_*dre 7 css firefox internet-explorer
我很困惑为什么IE9以令人惊讶的方式解释这种基本行为.在Firefox 4或Chrome 11中,我看到div正如我所期望的那样并排出现.但是在IE9中,我看到div出现在另一个之下.
<div style='border: black solid 1px'>
<div style='display: inline-block; width: 10em; height: 1em; background-color: red'>
block one
</div>
<div style='display: inline-block; width: 10em; height: 1em; background-color: green'>
block two
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我确信IE9符合标准,所以我错过了什么?
任何帮助,将不胜感激!
更新:哇,这很奇怪.我以前没有DOCTYPE声明.我<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">在页面顶部添加的那一刻
,IE9工作正常,就像Firefox和Chrome一样.任何想法之前的情况是什么?
Bol*_*ock 14
我唯一能想到的是IE9使用兼容性视图(类似于IE7的渲染引擎,如果我没有错)来渲染你的页面.如果关闭兼容性视图,您将看到这些框按预期水平堆叠.
只有IE8和更新版本才有完全支持display: inline-block.IE7及更早版本将它应用于默认情况下内联的元素(如span),而不是任何其他元素(如li或div).因此,块元素仍显示为块,而不是内联块.
更新:哇,这很奇怪.我以前没有DOCTYPE声明.我
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">在页面顶部添加的那一刻,IE9工作正常,就像Firefox和Chrome一样.任何想法之前的情况是什么?
这很简单:在添加doctype声明之前,IE9在怪异模式下渲染.在怪癖模式中,IE display: inline-block就像在旧版本中那样对待,正如我在上面的段落中所解释的那样.通过拥有doctype声明,IE9将以标准模式呈现,按预期呈现样式.
| 归档时间: |
|
| 查看次数: |
17123 次 |
| 最近记录: |