2012-01-05 68 views
0

直到最近,我们的应用程序没有指定文档类型。然后,为了使应用程序更适合跨浏览器,我们添加了严格的文档类型。这使得不同浏览器中的所有内容都表现得更加类似。但是,在IE9中,我们注意到这改变了选择元素的外观。为了确保这是唯一的事情的时候,我有由HTML页面如下:为什么HTML选择在基于doctype的IE中看起来不同?

<html> 
<select> 
    <option>Testing</option> 
</select> 
</html> 

这个HTML呈现这样在IE9:

no doc type

然后,我只加DOCTYPE如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 
<html> 
<select> 
    <option>Testing</option> 
</select> 
</html> 

然后HTML呈现这样的:

with doc type

有一些细微的差异,但突出给我的最大的是下拉箭头所在的部分。一个有白色背景,另一个是灰色的。是否有某种CSS标准改变了选择的样式?我们想保留它的显示方式,但我不确定这是否可行。

我试着在FireFox中做同样的测试,并且没有doctype和严格的文档类型显示,并带有向下箭头的白色背景。 Chrome的相同测试都采用灰色背景进行测试。

有什么办法可以控制这个吗?任何有关这方面的信息将不胜感激。谢谢。

回答

0

一个DOCTYPE的缺乏让您进入quirks mode,你从来没有想要的。为了进入标准模式,所有现代网页都需要使用文档类型。在怪癖模式下,没有遵循正确的盒子模型,特别是IE浏览器,并且可能会出现各种奇怪的事情。这就是为什么doctype始终是每个网页上首要的东西。一旦设定好,你永远不会改变它。

相关问题