php - Yii 中 registerCssFile 的正确位置是什么?

标签 php css yii

我是 Yii 新手。

在 Controller 的 Action 中调用 registerCssFile 是否正确?

我的意见是在内部 View 中进行此操作是正确的地方

例如,我创建了一些用户菜单 block 并将其包含在我的一些 View 中。我为用户菜单获得了单独的 css 文件,我不想在每个 View 使用此用户菜单的操作或 Controller 中包含此 user_menu.css。所以我在 parts/user_menu.php View 中使用这段代码:

<?php
    Yii::app()->getClientScript()->registerCssFile(yii::app()->request->baseUrl.'/css/user_menu.css', 'screen');
?>
<ul class="user-menu">
...here comes menu

是正确的还是我必须在每个操作或 Controller 中包含此 css 文件?

也许有一些关于这个的风格指南?任何链接表示赞赏...

最佳答案

我不能代表一个“官方”正确的地方,但我有一个自定义的基本 Controller ,我的所有 Controller 都扩展了它。我将我的全局 registerCssFile() 调用放在这个基本 Controller 的 init() 方法中,因此它们会自动在整个站点上注册。

如果您经常重复使用局部 View 文件,我可以看到在 View 中注册 CSS 我猜 但是...

将整个站点的所有 CSS 包含在 init() Controller 方法中可能是最有意义的,然后使用 extensions like these 组合和压缩它

(除非一个 View 有很多未在网站其他任何地方使用的自定义 CSS。)

编辑:正如 briiC.lv 在下面提到的,使用 themes 意味着您需要将所有 CSS 保留在您的 View /布局文件中,与 Controller 代码分开。

关于php - Yii 中 registerCssFile 的正确位置是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8504230/

相关文章:

php - 显示最新帖子标题的标题标签

html - 输入在 <details> 标签内变得困惑

php - Yii2 - 获取未知属性:yii\console\Application::user

php - yii : Trying to get property of non-object

php - Yii select2具体数据

php - 如何在 PHP 中阅读 Google Drive 电子表格?

php - 在 Laravel 中存储和检索常量

php - 无法在本地主机中查看备份文件

html - css 菜单项相互重叠

javascript - jQuery 根据特定文件夹设置的间隔淡入不同的主体背景图像