我正在使用“皮肤”方法将 css 加载到我的 Zend Framework 站点中。
来自 layout.phtml:
<head>
<?php
print $this->headTitle();
print $this->headScript();
$this->loadSkin($this->skin);
print $this->headLink();
print $this->jQuery();
print $this->layout()->customJS;
?>
</head>
其中 loadSkin() 是一个 View 助手,如下所示:
class Zend_View_Helper_LoadSkin extends Zend_View_Helper_Abstract {
public function loadSkin ($skin) {
$skinData = new Zend_Config_Xml('./skins/' . $skin . '/skin.xml');
$stylesheets = $skinData->stylesheets->stylesheet->toArray();
if (is_array($stylesheets)) {
foreach ($stylesheets as $stylesheet) {
$this->view->headLink()->appendStylesheet('$skin.'/css/'.$stylesheet);
}
}
}
}
一切都在浏览器(任何图形浏览器)中正常显示,包括 jQueryUI 元素,如下所示:http://i.stack.imgur.com/70PVl.png .
但是当我打印时,css 被完全忽略,就像这里: http://i.stack.imgur.com/NGC25.png .
我完全被难住了——在这里或 ZF 论坛上找不到任何关于为打印提供单独的 css 参数的信息。任何指针将不胜感激!
提前致谢, -罗马
最佳答案
我不确定,但我认为您必须为 CSS 文件设置 MediaType:
//Display + Print
->appendStylesheet($skin.'/css/'.$stylesheet, 'screen,print');
//Only for Printers
->appendStylesheet($skin.'/css/'.$stylesheet, 'print');
查看以下链接以获取有关样式表查看助手的更多信息 http://framework.zend.com/manual/de/zend.view.helpers.html#zend.view.helpers.initial.headlink
关于css - Zend Framework 中的打印与屏幕布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8738318/