如何在不使用 <meta http-equiv= "x-ua-compatible" content= "IE=edge" /> 的情况下使 IE10 和 IE11 中的 HTA 中的线性



我的HTA中有一个CSS3线性梯度,它不会在IE10或IE 11中显示,除非我的HTA中有'meta http equiv="x-ua-compatible"content="IE=edge">'标记。如果我没有这个,它只是显示一个白色背景。这是CSS。。。。

html {
height: 100%;
}
body {
background-image:
linear-gradient(to bottom, #800000 0%, #DB7093 100%); 
filter:
progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr='#800000', EndColorStr='#DB7093');
height: 100%;
margin: 0;   
background-repeat: no-repeat;
background-attachment: fixed;
font: 14 pt arial;
color: white;
}

只要我有META标签,它就可以正常工作,但我的问题是,为什么没有这个标签就不能工作??如果我使用具有最新语法的最新版本的IE,我肯定不必处于兼容模式吗?

<html>
<head>
<meta http-equiv="x-ua-compatible" content="IE=edge" />
<HTA:application id="main" applicationName="Test HTA" />
<link rel="stylesheet" type="text/css" href="test.css" />

如果在FEATURE_BROWSER_EMULATION下为mshta.exe添加Windows注册表项,则可以使HTA默认为IE10/IE11模式,而不需要meta标记。这是有文件记录的http://msdn.microsoft.com/en-us/library/ee330730(v=vs.85).aspx,但为了节省时间,注册表项是:

New DWORD (32-bit) Value
Name: mshta.exe
Value: 0x00002AF9 (11001)

在32位Windows机器上,它位于以下位置:

HKEY_LOCAL_MACHINESOFTWAREMicrosoftInternet ExplorerMAINFeatureControlFEATURE_BROWSER_EMULATION

在64位Windows机器上,它位于以下位置:

HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoftInternet ExplorerMAINFeatureControlFEATURE_BROWSER_EMULATION

相关内容

最新更新