Javascript DocType导致div过高(未执行页边距顶部)
我在HTML文档中使用了特定的DocType,以确保IE呈现Arial的方式与Firefox、Chrome和Safari相同 我的问题:由于这个特定的doctype,它会导致一些div坐得比它们应该坐的高(y轴)。这只发生在IE中。你知道我能做些什么来解决这个问题吗?可能是CSS重置或IE黑客 我正在使用的导致此错误的doctype是:Javascript DocType导致div过高(未执行页边距顶部),javascript,html,css,internet-explorer,Javascript,Html,Css,Internet Explorer,我在HTML文档中使用了特定的DocType,以确保IE呈现Arial的方式与Firefox、Chrome和Safari相同 我的问题:由于这个特定的doctype,它会导致一些div坐得比它们应该坐的高(y轴)。这只发生在IE中。你知道我能做些什么来解决这个问题吗?可能是CSS重置或IE黑客 我正在使用的导致此错误的doctype是: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 我之所以使用这
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
我之所以使用这种doctype,是因为它使IE显示的Arial文本与其他浏览器的字体相同(否则就不同),但它也会使div放得太高
。doctype只是用来防止怪癖模式(而不是修复所有的不一致)。DTD设置要使用的HTML(HTML4、XHTML等),并告诉浏览器标记的有效性。HTML5 doctype中不使用DTD
使用HTML5 doctype:
。doctype只是用来防止怪癖模式(而不是修复所有的不一致)。DTD设置要使用的HTML(HTML4、XHTML等),并告诉浏览器标记的有效性。HTML5 doctype中不使用DTD
确保此doctype之前没有空格:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
IE中的原因
我在HTML文档中使用特定的DocType来确保IE
以与Firefox、Chrome和Safari相同的方式呈现Arial
您应该让IE9使用(这是“不同的”文本呈现技术)。IE9(标准模式)和Firefox之间的文本呈现应该非常相似。如果不是,那就是出了问题
如果您坚持让IE9使用GDI文本呈现,那么有一个比通过古老的doctype强制使用怪癖模式更好的解决方案
您应该使用触发标准模式的任何doctype,例如HTML5 doctype:
<!DOCTYPE html>
然后,您应该在
中添加此meta标记,以强制IE与IE8一样工作,并完成GDI文本呈现:
<meta http-equiv="X-UA-Compatible" content="IE=8" />
这样,IE将使用IE8模式,这是从怪癖模式(即IE5.5)的一个重大改进
我已经暗示过这一点,但我必须明确地说:请不要为了避免DirectWrite而强制使用IE8模式。相反,接受IE9新的和改进的文本呈现 此doctype:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
IE中的原因
我在HTML文档中使用特定的DocType来确保IE
以与Firefox、Chrome和Safari相同的方式呈现Arial
您应该让IE9使用(这是“不同的”文本呈现技术)。IE9(标准模式)和Firefox之间的文本呈现应该非常相似。如果不是,那就是出了问题
如果您坚持让IE9使用GDI文本呈现,那么有一个比通过古老的doctype强制使用怪癖模式更好的解决方案
您应该使用触发标准模式的任何doctype,例如HTML5 doctype:
<!DOCTYPE html>
然后,您应该在
中添加此meta标记,以强制IE与IE8一样工作,并完成GDI文本呈现:
<meta http-equiv="X-UA-Compatible" content="IE=8" />
这样,IE将使用IE8模式,这是从怪癖模式(即IE5.5)的一个重大改进
我已经暗示过这一点,但我必须明确地说:请不要为了避免DirectWrite而强制使用IE8模式。相反,接受IE9新的和改进的文本呈现 未选择doctype对演示文稿产生影响。doctype用于将浏览器置于标准模式或非标准模式,是页面上的第一件事。您显示的doctype不适用于现代网页,因此不应使用。IE的任何问题都是由于它的缺陷而不是doctype。请参阅Joseph的回答。未选择doctype对演示文稿产生影响。doctype用于将浏览器置于标准模式或非标准模式,是页面上的第一件事。您显示的doctype不适用于现代网页,因此不应使用。IE的任何问题都是由于它的缺陷而不是doctype。见Joseph的回复。这里有一个相关的MSDN链接:这里有一个相关的MSDN链接: