Css IE(7-compat模式中的8)使用@“媒体印刷”;规则-在屏幕上

Css IE(7-compat模式中的8)使用@“媒体印刷”;规则-在屏幕上,css,internet-explorer,Css,Internet Explorer,我有一条规则,上面写着“这个CSS规则只用于打印 @media print { .yui-dt-bd { width: 920px !important; height: 100% !important; page-break-before: avoid !important; overflow: visible !important; position: static !important; } }

我有一条规则,上面写着“这个CSS规则只用于打印

@media print {
    .yui-dt-bd {
        width: 920px !important;
        height: 100% !important;
        page-break-before: avoid !important;
        overflow: visible !important;
        position: static !important;
    }
}
通过媒体规范链接到CSS文件显示了相同的结果,顺便说一句:

<link rel="stylesheet" type="text/css" href="print.css" media="print" />

然而,当我用IE8开发工具(F12)调试我的页面时,我看到了什么?它将这些规则应用于页面(媒体=屏幕)

我仔细地看了很久,但在网上什么也没发现,只有“IE忽略了这个或那个”,这与我的问题正好相反

IE开发工具窗口显示:“浏览器模式:IE7,文档模式:IE7标准”。我没有在任何地方使用任何@import语句(这是我发现的其他一些IE CSS问题中的一个问题,所以我提到了它)。所有5条规则(以上)都适用(在屏幕媒体上)

编辑:更新并将后续问题合并到此问题中


编辑:这不是CSS3媒体查询,IE8及以下版本当然不支持。这是媒体相关的CSS。我没有发现任何结论,但这似乎应该有效,只要我不使用CSS3媒体查询功能,它似乎不包括此示例。

IE8及以下版本支持媒体查询,所以您的问题可能与css或页面中某个未关闭的标记或条件注释有关。运行一个或您的css以查看是否捕获到任何可能需要关闭的标记。

啊,是的。我只是调试旧代码,当然我检查了兼容性-但最后查看了HTML链接标记中的媒体查询,其中包括css文件。所以奇怪的是,从来没有人抱怨过,使用它的应用已经使用了很多年了……:)我刚刚发布了一个后续问题:这里没有使用媒体查询。IE非常支持CSS2媒体类型,无论是在
还是
@media
块中。好吧……那么它为什么不工作,或者我应该说它为什么工作(虽然我不希望它出现,至少不在屏幕上)?@Mörre超出这一点我们只是猜测。你能发布你的样式表或测试页面来看看吗?