我正在开发一个只能从公司内部网上获取的网页。首先,客户的要求是,如果需要使用IE8,那很好。
我们的第一个问题是,在实时启动网站以便客户端可以对其进行测试后,我们意识到每个员工的IE都配置为以兼容模式(员工计算机的设置方式)打开内部网的网站,从而无视经过IE7测试......
我设法通过包含此元标记使其工作在95%:
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
对于页面上的其他小故障,我包含一个小脚本来检测它是否处于兼容模式,然后加载另一个css来修复其他毛刺并且它工作正常,一切都回到了正确的位置和设计很好:
$(document).ready(function () {
try { JSON } catch (e) {
var cssLink = $("<link rel='stylesheet' type='text/css' href='../css/compatibilityMode.css'>");
$("head").append(cssLink);
}
});
现在的问题是他们需要能够打印那个页面,所以我需要制作一个用于打印的CSS。页面分为几个部分,在每个部分之前我使用此代码进行分页。 EX:
.part2 { page-break-before: always; }
这在Chrome和IE9 +中完美运行,但在兼容模式下,它被忽略了,打印预览完全搞砸了......
我在网上进行了很多研究,自从IE4以来,应该支持page-break-before属性,所以我不明白为什么它不起作用...
另外,为了告诉IE哪些样式适用于打印版本,我将print css放在这个标签中:
@media print { }
根据我在网上的研究,有些人说IE8不支持这一点,因为它是媒体查询,有些人说它受支持,因为媒体类型在媒体查询之前得到支持,而且应该有效...
我真的不知道该尝试什么,在哪里可以看,想知道是否有人能指出我正确的方向或给我任何建议作为下一步尝试...
提前致谢!