过去两个晚上,我一直在努力解决这个问题。
我在将外部样式表应用于我的 Zend 应用程序中的每个页面时遇到问题。问题是我的外部样式表要么应用于位于公共(public)文件夹中的 index.php 文件,要么应用于我在应用程序文件夹中创建的 .phtml View 页面。
这是我放在 Bootstrap.php 中的代码:
$view->headLink()->appendStylesheet('css/bootstrap.min.css');
在 layout.phtml 中,我只是这样调用样式表:
echo $this->headLink();
我尝试了“$this->baseUrl()”以及在附加样式表时在“css”之前放置一个“/”,但无济于事。
当我在“css”之前放置一个“/”时,我的 index.php 也会停止定位该文件,而是在以下位置查找它:
http://localhost/css/bootstrap.min.css
当我在公用文件夹中运行我的应用程序 (index.php) 时,这些方法工作正常,但应用程序文件夹中的所有其他 .phtml View 文件及其 Controller 没有找到附加的样式表。
当我查看输出时,浏览器会查找样式表的以下路径,在本例中,我正在加载“注册”页面:
http://localhost/php_project/public/signup/css/bootstrap.min.css
我不明白为什么 PHP 在 css 文件夹之前添加一个额外的“注册”文件夹。
到目前为止,我无法在网上的任何地方找到答案。我认为在我的应用程序中创建多个相同样式表的文件是不明智的。
非常感谢您的帮助。
最佳答案
我通常在布局文件中添加样式表(而不是在 Bootstrap 中),如下所示:
$this->headLink()->appendStylesheet($this->baseUrl('css/bootstrap.min.css'));
关于php - 为 index.php 和 .phtml 文件链接 Zend Framework 内的样式表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23481828/