code: public function registerCssFile($url, $options = [], $key = null)
      {
          $url = Yii::getAlias($url);
          $key = $key ?: $url;
  
          $depends = ArrayHelper::remove($options, 'depends', []);
  
          if (empty($depends)) {
              $this->cssFiles[$key] = Html::cssFile($url, $options);
          } else {
              $this->getAssetManager()->bundles[$key] = Yii::createObject([
                  'class' => AssetBundle::className(),
                  'baseUrl' => '',
                  'css' => [strncmp($url, '//', 2) === 0 ? $url : ltrim($url, '/')],
                  'cssOptions' => $options,
                  'depends' => (array) $depends,
              ]);
              $this->registerAssetBundle($key);
          }
      }
docs: Registers a CSS file.
  
  This method should be used for simple registration of CSS files. If you want to use features of
  [[AssetManager]] like appending timestamps to the URL and file publishing options, use [[AssetBundle]]
  and [[registerAssetBundle()]] instead.
  
  @param string $url the CSS file to be registered.
  @param array $options the HTML attributes for the link tag. Please refer to [[Html::cssFile()]] for
  the supported options. The following options are specially handled and are not treated as HTML attributes:
  
  - `depends`: array, specifies the names of the asset bundles that this CSS file depends on.
  
  @param string $key the key that identifies the CSS script file. If null, it will use
  $url as the key. If two CSS files are registered with the same key, the latter
  will overwrite the former.