Css 从@import加载的打印样式表不工作?

Css 从@import加载的打印样式表不工作?,css,printing,internet-explorer-8,Css,Printing,Internet Explorer 8,我有以下html: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <link href

我有以下html:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <link href="main.css" rel="stylesheet" type="text/css" />
</head>
<body>
    <span class="print">Print only</span> - <span class="noprint">Display Only</span>
</body>
</html>
screen.css

@import url("screen.css") screen;
@import url("print.css") print;
.print
{
    display:none;
}
.noprint
{
    display: none;
}

span.print
{
    display: inline !important;
}

div.print
{
    display: block !important;
}
print.css

@import url("screen.css") screen;
@import url("print.css") print;
.print
{
    display:none;
}
.noprint
{
    display: none;
}

span.print
{
    display: inline !important;
}

div.print
{
    display: block !important;
}
当我在浏览器中查看页面时,如预期,“仅显示”范围显示,而“仅打印”范围不显示

但是,当我转到打印预览或打印页面时,它似乎没有使用print.css


我使用的是IE8,我认为它支持@import?

显然IE不支持@import行末尾的“打印”。 改用这个:

@import url("screen.css");
@import url("print.css");
然后将“@media”规则添加到样式表本身中

@media print
{

    .noprint
    {
        display: none !important;
    }

    span.print
    {
        display: inline !important;
    }

    div.print
    {
        display: block !important;
    }

}

谢谢你,伙计!我当时正想弄清楚为什么IE没有展示我的打印样式。