我是Zend框架的新手。
如果我通过转到http://localhost/zendapplicationfolder/contact来访问我的Zend应用程序,它会正确显示css正确应用但如果我通过转到http://localhost/zendapplicationfolder/contact/(添加正斜杠)访问Zend应用程序,页面会显示但是css未应用,但如果我查看源代码,则css链接通常嵌入在head标记之间。
答案 0 :(得分:4)
包含CSS的dcode应该在布局文件中,应该使用baseurl帮助程序,而不是手动将链接写入css文件。
助手类:
class Zend_View_Helper_BaseUrl
{
function baseUrl() {
return Zend_Controller_Front::getInstance()->getBaseUrl();
}
}
布局中的代码:
<link rel="stylesheet" type="text/css" media="screen" href="<?=$this->baseUrl();?>/your/path/from base url/your.css" />
答案 1 :(得分:1)
在不知道你的项目布局的情况下,我怀疑你可以使用/css/screen.css
而不是css/screen.css
来解决问题。正斜杠会给你一个绝对路径到你的css目录,而不是你的相对路径使用。
例如,这可行:<?php echo $this->headLink()->appendStylesheet('/css/main.css') ?>
虽然这符合您所描述的内容:<?php echo $this->headLink()->appendStylesheet('css/main.css') ?> the only diff is the forward slash in front of css.
答案 2 :(得分:0)
我认为在添加样式表时我必须更改代码。事实证明,我需要改变的是添加高山88指出的正斜杠(谢谢!):
HREF = “样式表/ main3.css”
至
HREF = “/样式表/ main3.css”