Discuz-x系列教程 DX的css命名規(guī)則、緩存、加載機(jī)制
首先,每個(gè)頁(yè)面都會(huì)加載以下兩個(gè)類似的css:
data/cache/style_1_common.css
data/cache/style_1_forum_index.css
一、兩個(gè)文件名的命名規(guī)則
style_1_common.css
|--是整站通用的全局css,所以命名為【style_1_common.css】
|--前面的代號(hào)是當(dāng)前使用這套風(fēng)格的ID,所以style_1_common.css也就是第一套風(fēng)格的共用的css
style_1_forum_index.css
|--是【forum】廣場(chǎng)BBS頻道首頁(yè)的css樣式,那么forum和index分別對(duì)應(yīng)這CURSCRIPT和CURMODULE的常量值,這個(gè)在每個(gè)頻|--道的入口腳本里都有定義,比如forum頻道頁(yè)面對(duì)應(yīng)的是forum.php。
以上介紹的是css的緩存加載文件,當(dāng)然,還有一些在特殊頁(yè)面的css,這里就不詳細(xì)描述了。
這兩個(gè)css文件的生成
首先,那兩個(gè)css是程序生成的css緩存文件,所以如果要改css的話,不能直接改那兩個(gè)文件,否則一更新緩存,之前的改動(dòng)就無(wú)效了。
拿自帶的default模板舉例吧,default模板中,帶有一個(gè)common的文件夾,這個(gè)文件夾存放的是全局模板文件,
里面有css文件:
style_1_common.css 是【common.css】生成的緩存
style_1_forum_index.css 是【module.css】生成的緩存
二、module.css的緩存和加載機(jī)制
打開(kāi)module.css,可以看到有這樣的說(shuō)明
/** forum::index **/ 廣場(chǎng)頻道:首頁(yè) css代碼開(kāi)始
這里是css代碼
/** end **/ 廣場(chǎng)首頁(yè)css代碼結(jié)束
這就是經(jīng)常在模板中用到的判斷,程序讀取這個(gè)css文件的內(nèi)容,通過(guò)標(biāo)識(shí)進(jìn)行判斷,最后把符合條件內(nèi)的所有css生成在一個(gè)對(duì)應(yīng)的緩存文件中。
再舉個(gè)例子:
/** forum::index,forum::viewthread **/ 廣場(chǎng)頻道:首頁(yè)模塊和帖子閱讀頁(yè)CSS代碼開(kāi)始
這里是css代碼
/** end **/ 結(jié)束
第二個(gè)例子大家應(yīng)該知道了,就是再增加一個(gè)條件,這里可以不止兩個(gè):
/** forum::index,forum::viewthread,forum::forumdisplay,XXXX **/
ok,根據(jù)自己的需要來(lái)加就行了,記得符號(hào)【,】
大家可以參照這個(gè)學(xué)習(xí)一下,包括你想擴(kuò)展他,都可以直接在里面直接添加就可以。
下面講講緩存css是如何生成的
common.css比較簡(jiǎn)單,就是直接讀取,然后生成到data/cache目錄下。
每個(gè)頻道模塊獨(dú)立的css,會(huì)先將module.css在data/cache下生成一個(gè)對(duì)應(yīng)的風(fēng)格id下的緩存的css,然后當(dāng)你訪問(wèn)某個(gè)頻道時(shí),會(huì)生成對(duì)應(yīng)頻道下的css,此時(shí),剛才介紹的那些標(biāo)識(shí)就起作用了。程序會(huì)根據(jù)/** group::index **/和/** end **/這種標(biāo)識(shí),拆分出哪些頻道、哪些模塊該需要哪些css。
程序部分就不介紹了,程序的代碼主要在source/class/class_template.php文件處理,有興趣的同學(xué)可以深入研究一下。
三、在模板制作中充分的運(yùn)用好css加載機(jī)制,提高頁(yè)面的加載速度
新建模板后同學(xué)們可以在【模板文件夾\common】中建立附加樣式表并命名為:
extend_module.css
extend_common.css
這兩個(gè)css文件就是重新定義common.css與module.css里面的樣式,這兩個(gè)附加樣式與上面講的兩個(gè)css文件分別合并,最終就生成css緩存文件了
extend_module.css 這里面必須根據(jù)上面第二節(jié)里講的,寫(xiě)好標(biāo)識(shí)?。?
如果想重新定義默認(rèn)模板中的一些css,那么直接在這兩個(gè)文件中重寫(xiě)就行了。
注意:如果你的模板布局是完全要重寫(xiě)的,那就命名為:common.css和module.css 這樣程序就只處理新模板中的css,不會(huì)與default里面的合并了
上一篇:Discuz Bad Request (Invalid Hostname)問(wèn)題解決方法(Discuz 和DX都適用)
欄 目:discuz
下一篇:Linux 環(huán)境搭建推薦教程(php運(yùn)行環(huán)境)
本文標(biāo)題:Discuz-x系列教程 DX的css命名規(guī)則、緩存、加載機(jī)制
本文地址:http://www.jygsgssxh.com/a1/discuz/12918.html
您可能感興趣的文章
- 01-11Discuz! 6.1.0 圖文安裝教程
- 01-11Discuz! 6.0.0到Discuz! 7.0.0升級(jí)教程
- 01-11安裝Discuz!7.0.0 的方法與圖文教程
- 01-11Discuz6.1.0升級(jí)到Discuz7.0.0圖文教程
- 01-11Discuz! 遠(yuǎn)程附件設(shè)置簡(jiǎn)明教程
- 01-11Discuz-x 默認(rèn)模板目錄結(jié)構(gòu)說(shuō)明
- 01-11火車頭 Discuz-X 1.0 論壇免登陸發(fā)布接口
- 01-11discuz 分類信息設(shè)置教程(圖文教程、DZX系列)
- 01-11Windows php+discuz環(huán)境搭建推薦教程(圖文)
- 01-11Discuz 7.2 主題列表頁(yè)模板(Forumdisplay.htm)修改教程


閱讀排行
- 1C語(yǔ)言 while語(yǔ)句的用法詳解
- 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹(shù)的示例代碼(圣誕
- 3利用C語(yǔ)言實(shí)現(xiàn)“百馬百擔(dān)”問(wèn)題方法
- 4C語(yǔ)言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
- 5c語(yǔ)言計(jì)算三角形面積代碼
- 6什么是 WSH(腳本宿主)的詳細(xì)解釋
- 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
- 8正則表達(dá)式匹配各種特殊字符
- 9C語(yǔ)言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
- 10C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
本欄相關(guān)
隨機(jī)閱讀
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
- 01-11Mac OSX 打開(kāi)原生自帶讀寫(xiě)NTFS功能(圖文
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
- 01-11ajax實(shí)現(xiàn)頁(yè)面的局部加載
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改
- 04-02jquery與jsp,用jquery
- 01-10SublimeText編譯C開(kāi)發(fā)環(huán)境設(shè)置
- 01-10delphi制作wav文件的方法
- 01-10C#中split用法實(shí)例總結(jié)
- 01-10使用C語(yǔ)言求解撲克牌的順子及n個(gè)骰子


