Sur*_*iya 6 css assets broken-image yii
我使用以下代码将我的css文件发布到资产.
Yii::app()->clientScript->registerCssFile( Yii::app()->assetManager->publish( Yii::getPathOfAlias('application').'/../css/combo-autocomplete.css' ));
Run Code Online (Sandbox Code Playgroud)
它成功注册了css并且样式工作正常,但是下面的css类使用了一个图像.
.ui-icon {
background-image: url(../images/down-arrow.png);
}
Run Code Online (Sandbox Code Playgroud)
没有加载,它被称为资产文件夹内的路径.它正在寻找里面的图像
根/资产/图像/
有没有办法将css中的图像URL重定向到原始路径,因为我现在没有将我的图像注册为资产.
根/图像
Jon*_*Jon 11
Yii的资产管理器旨在让您以自包含的方式打包UI小部件等组件(另一种方法是在应用程序目录结构中的不同位置手动分发各种文件).因此,如果将任何内容作为资产从您的组件发布是有意义的,那么将所有内容作为资产发布是有意义的.
在这种情况下,您应该构建组件,例如
component/
assets/
css/
images/
js/
Run Code Online (Sandbox Code Playgroud)
然后,assets/使用Yii的资产管理器发布整个目录,而不是逐个发布文件.如果你这样做,他们最终会以这样的方式发布
assets/
random_hash/
css/
images/
Run Code Online (Sandbox Code Playgroud)
然后,您的CSS可以简单地引用图像而url(../images/image.jpg)无需知道其值random_hash.