【问题标题】:disable a css only for one layout yii2仅对一个布局禁用 css yii2
【发布时间】:2016-04-30 07:39:32
【问题描述】:

我正在尝试在 YII2 基本应用上集成自定义主题。

我有两种布局,主要布局和登录布局。

现在我不需要一个 css 文件,比如登录布局上的 xyz.css,但它会在那里加载,我的设计变得一团糟。在那个布局上禁用它的任何正确方法?

我正在从 AppAsset.php 文件注册我的 css 文件。

css 部分看起来像

    public $css = [
        'themes/mytheme/assets/css/xyz.css',
        'themes/mytheme/assets/css/main.css'
    ];

【问题讨论】:

    标签: css yii yii2 yii2-basic-app


    【解决方案1】:

    步骤 - 1:assets 文件夹中创建 LoginAsset.php

    LoginAsset.php

    在此文件中,保留登录所需的.css.js

    <?php
    namespace app\assets;
    use yii\web\AssetBundle;
    
    class LoginAsset extends AssetBundle
    {
        public $basePath = '@webroot';
        public $baseUrl = '@web';
        public $css = [
        'css/include-your-css-if-any.css'
        ];
        public $js = [
          'js/include-your-js-if-any.js',
        ];
    }
    

    第 2 步: 因为您告诉过您还有一个布局,即login layout。因此,在您的login layout 中使用 LoginAsset.php,例如:

    login.php(两种布局之一,即main/login.php

    <?php
    use yii\helpers\Html;
    
    use app\assets\LoginAsset;
    LoginAsset::register($this);
    ?>
    <?php $this->beginPage() ?>
    .
    . // Your code
    

    第 3 步:即使没有成功。那么,

    包括

    <?php
    use app\assets\LoginAsset;
    LoginAsset::register($this);
    .
    .
    ?>
    

    在您的 view 文件之上。

    相关搜索

    【讨论】:

    • 永远欢迎@hs19 :)
    猜你喜欢
    • 2015-07-18
    • 1970-01-01
    • 2014-12-31
    • 1970-01-01
    • 2017-01-13
    • 1970-01-01
    • 1970-01-01
    • 2012-02-08
    相关资源
    最近更新 更多