Yii 為JUI設定自己的CSS樣式

2022-10-10 23:39:30 字數 773 閱讀 2393

yii中的jui真是強大的東西,但是很多時候,自帶的樣式和我們製作的**並不協調。比如我製作了兩個**,乙個藍色,乙個紅色,而自帶的jui確實灰色的。 

yii中每乙個jui的widget都繼承了cjuiwidget。所以yii給出的方法是在每乙個cjuiwidget中設定theme或者themeurl。但是問題又來了: 

如果我設定cjuiwidget::theme,我一旦更換了主題,我需要在程式中所有用到的地方都修改。 

如果我設定了cjuiwidget::themeurl,無法知道更換主題之後的themeurl,即使使用ctheme來指定當前的theme位址,也不能保證別人製作的主題也放置了jui的樣式。 

所以,在程式中指定jui的css樣式,是不靠譜的。那麼,既然是要保證隨時可以更換主題,且更換之後jui部分保持和主題一樣的配色,那麼可以這樣在主題的layout檔案中寫:

<?php

if(class_exists(『cjuiwidget』, false))

?>

這段**的思路是,一旦出現cjuiwidget類,說明當前頁面使用了cjuiwidget派生出來的widget,那麼我們就可以引入乙個當前theme的css樣式來覆蓋自帶的樣式。

這樣完全由主題確定是否使用自定義的jui樣式是目前我想到的最好的解決方法。

jQuery為元素設定css的問題

例子 有如下的html 對文字框設定字型大小為20px 即font size 20px 首先會想到如下 input css 由於屬性不能使用 分隔,所以會報錯 於是想到將屬性font size使用字串形式表示,即 input css 此時,正確。其實還有另一種寫法,就是font size屬性不使用字...

css 設定元素背景為透明

要設定某一元素的背景為透明,在 chrome firefox opera 下是這樣的 background color rgba 0,0,0,0.4 rgba 中的最後乙個引數 0.4 就是想要的透明度,範圍在0 1之間。在 ie 中一般是這樣的 background color rgb 0,0,0...

css 設定元素背景為透明

要設定某一元素的背景為透明,在 chrome firefox opera 下是這樣的 background color rgba 0,0,0,0.4 rgba 中的最後乙個引數 0.4 就是想要的透明度,範圍在0 1之間。在 ie 中一般是這樣的 background color rgb 0,0,0...