模板樣式(TemplateStyles)是允許非管理員用戶寫入和管理模板的CSS樣式的功能。它允許編輯模板的貢獻者區分內容及外觀。這是網頁上的良好實踐,可使管理模板輸出變得容易。
模板樣式因為以下原因很有用:
- 它使模板在行動裝置上工作更佳。
- 它減少了在應用CSS規則的位置問題上的混亂。
- 編輯CSS目前只限於管理員,這是參與編輯模板主要的障礙。
- 所有樣式表必須在所有頁面加載(無論其是否實際使用頁面),這浪費了帶寬,並使調試樣式規則變得更加困難。
基本使用方法
添加<templatestyles src="[某頁面]" />
到需要使用CSS樣式的頁面,然後在[某頁面]
內編寫CSS語法,這樣就會加載到使用了這個<templatestyles>
標籤的頁面(無論直接使用或是通過模板嵌入)。
如果要在Lua模塊中加載模板樣式,則在需要使用CSS樣式輸出的文本中確認包含以下內容(frame一般為調用時傳入的第一個參數):
frame:callParserFunction{ name = '#tag:templatestyles', args = { '-{}-', src='[某页面]' } }
或者
frame:extensionTag{ name = 'templatestyles', args = { src = [某页面]} }
[某頁面]
的內容模型必須是sanitized-css
(已過濾的CSS),在模板名字空間、是子頁面、並且以.css
結尾為標題創建的頁面皆會是sanitized-css
內容模型。如果要在其他地方創建sanitized-css
頁面,請找管理員協助。
僅在部份情況使用
MediaWiki在html和body標籤提供了一些類別選擇器,用來指示用戶現在的狀態,包括指示用戶正在使用哪個外觀。你可以使用這些選擇器來進行不同的樣式設置。
/* 仅在Vector外观中使用 */
body.skin-vector .foo { color: green; }
/* 仅在用户没有激活JavaScript时使用 */
html.client-nojs .foo { color: green; }
現有的模板樣式
搜索框中輸入contentmodel:sanitized-css即可查詢已經創建的模板樣式。
已轉換的模板
已轉換到調用模板樣式的模板可在說明頁上加上{{模板樣式|某頁面}}
維護
要將模板樣式加入到分類,使用以下語法:
/* [[Category:分类名称]] */