我有一个在CSS中使用HTC行为的大型遗留Web应用程序。例如,
.tabButtons
{
BEHAVIOR: url(/Echo/common/behaviors/tabPanel.htc);
}
这适用于IE 11,但我必须转到兼容性视图设置并添加域名。
可以用另一种方式使用CSS behavior
吗?
我试图把
<meta http-equiv="X-UA-Compatible" content="IE=5">
位于页面顶部。这似乎调用了怪癖模式,因为当我alert("compatMode = " + document.compatMode)
时,它会说 BackCompat 。
然而,CSS行为仍然无效。它甚至没有尝试获取文件tabPanel.htc
。
我还能尝试什么?
答案 0 :(得分:3)
在Internet Explorer 10标准和怪癖模式中删除了对元素行为和HTML组件(HTC)的支持,以提高互操作性并符合HTML5。这意味着先前绑定到Element Behaviors或HTC的元素将被视为通用元素,就像在其他浏览器中一样。此更改可能会影响专门为Windows Internet Explorer编写的页面或使用浏览器嗅探来改变其在Internet Explorer中的行为的页面。
尝试在页面顶部附近添加以下元标记,以选择加入Internet Explorer 9行为:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9">
来源: https://msdn.microsoft.com/en-us/library/hh801216(v=vs.85).aspx
您可以尝试使用严格的doctype,而不是过渡。即:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
虽然这些是变通办法,但修改代码将是最佳解决方案。