我有以下本地XML文件(不是由web服务器提供的),其中包含一个嵌入式样式块:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="#style" type="text/css"?>
<bitext version="1.2">
<st id="style">
none { }
bitext { font-family: Arial; }
title { position: fixed; width: 100%; display: block; font-size: 10pt; font-weight: bold; text-align: center; color: #fff; background-color: #0082b8; padding: 5px; margin-bottom: 10px; }
st { display: none; }
segments { margin: 5px; margin-top: 30px; display: table; font-size: 10pt; }
seg { display: block; clear: both; margin: 0; padding: 0; height: 6px; }
src { float: left; margin: 0; width: 48%; padding: 6px; vertical-align: middle; border-top: 1px solid #ddd; }
tgt { float: right; margin: 0; width: 48%; padding: 6px; vertical-align: middle; border-top: 1px solid #ddd; }
</st>
<meta>
<title>Document Title</title>
</meta>
<segments>
<seg>
<src><b>Sample-e.doc</b></src>
<tgt><b>Sample-f.doc</b></tgt>
</seg>
<seg match="1-1" id="1">
<src>Sample sentence</src>
<tgt>Phrase d'exemple</tgt>
</seg>
</segments>
</bitext>
这个XML文件在IE8中可以正常显示,但需要兼容性视图才能在IE10中正确显示。
是否有办法告诉IE10在XML中使用兼容性视图?我知道我可以在"工具","兼容性视图设置"或"工具","F12开发人员工具"中强制兼容性视图,但我更喜欢有一个无缝的解决方案…
在网上搜索,我很难在XML中找到关于这种嵌入式样式的信息(也许这是一个暗示,我们不应该使用它…)。我试过<meta http-equiv="X-UA-Compatible" content="IE=9" />
,但显然XML不喜欢它
X-UA-Compatible
标志可以指定为HTTP标头,也可以通过元标记指定。
如果你的内容不是HTML, meta标签选项是不可用的,所以我建议使用HTTP头选项代替。
如何设置将取决于您使用的服务器软件,所以我不会详细介绍如何配置它,但希望您能够从这里解决它。
就像你已经猜到的那样,XML中的嵌入式样式并不是真正的标准…
<?xml version="1.0" encoding="UTF-8"?>
和
<meta http-equiv="X-UA-Compatible" content="IE=8">
据我所知,是"强制"兼容性视图的唯一正确方法。
要获得IE8渲染,您可以使用
<meta http-equiv="X-UA-Compatible" content="IE=Emulate8" />