首先,每個頁面都會加載以下兩個css,data/cache/style_1_common.css和data/cache/style_1_forum_index.css。
先講講這兩個文件名的命名規(guī)則:第一個是整站通用的css,所以命名為common.css,然后前面的代號是你使用了哪套風格,所以style_1_common.css表示是第一套風格的共用的css;第二個是表示forum的index頁面風格,也就是論壇的首頁風格。
下面講一下那兩個css是如何生成的。
首先,那兩個css是程序生成的css緩存,所以你要改css的話,不能直接改那兩個文件,否則一更新緩存,之前的改動就無效了。大家可以看到template對應的每套模板中,就拿自帶的default模板舉例吧,default模板中,帶有一個common的文件夾,里面有css文件,common.css對應的就是生成緩存的style_1_common.css文件,style_1_forum_index.css對應的是module.css。
common.css沒有什么特別之處,里面也有css的說明,跟普通的css差不多。
大家打開module.css,可以看到有這樣的說明,
/** group::index **/
/* 群組 index 模塊使用的CSS */
/** end **/
復制代碼
/** group::index **/開始到/** end **/結束,說明是group頻道的index模塊使用的CSS,也就是群組頻道對應的首頁模板將使用的CSS。
再舉個例子,/** misc::invite,group,forum::viewthread **/開始到/** end **/結束,說明是misc頻道的invite模塊、group頻道的全部模塊和forum頻道的viewthread模塊使用的CSS。
ok,下面的大家可以參照這個學習一下,包括你想擴展他,都可以直接在里面直接添加就可以。
下面講講緩存css是如何生成的,common.css比較簡單,就是直接讀取,然后生成到data/cache目錄下。每個頻道模塊獨立的css,會先將module.css在data/cache下生成一個對應的風格id下的緩存的css,然后當你訪問某個頻道時,會生成對應頻道下的css,此時,剛才介紹的那些標識就起作用了。程序會根據(jù)/** group::index **/和/** end **/這種標識,拆分出哪些頻道、哪些模塊該需要哪些css。
程序部分就不介紹了,程序的代碼主要在source/class/class_template.php文件處理,有興趣的同學可以深入研究一下。