公告
CSS模板 正式启用!请根据CSS使用指南 配置页面CSS!
我们正在对全站css和js进行施工,期间可能出现页面内容显示不正常的情况,敬请谅解。
CN层群已与主层群合并,请查看公告/CN层群已与主层群合并通知。
公告
CSS模板 在bwiki中 正式启用!请根据CSS使用指南配置页面CSS!
我们正在对全站css和js进行施工,期间可能出现页面内容显示不正常的情况,敬请谅解
CN层群已与主层群合并,请查看公告/CN层群已与主层群合并通知。
页面快捷编辑选项已经移动至侧栏
模板:CSS
如何引入样式
创建CSS
首先你需要创建一个CSS页面,它的页面名应遵从“User:<你的BID>/styles/<子页面名>.css”这一格式[1]。你可以在下面的输入框输入子页面名,点击按钮后你会开始编辑这个子页面。
如果页面名正确地以“.css”结尾,你的编辑器应该处于CSS编辑模式。写完CSS代码并保存之后你可以在右边栏的页面工具[2]中点击“页面信息”,你应该能查到页面的内容模型为“CSS”。如果不是,说明你的页面名没有以“.css”结尾,请换一个符合要求的页面名。如果需要删除误操作创建的页面,请联系管理员或内容版主。
CSS页面保存妥善后,根据CSS所适用的页面会有不同的处理:
- 仅用于个人页及其子页面
- 可不作进一步处理。
- 用于文章
- 需要移动至“Template:<文章页面名>.css”,并在CSS的末尾加上
/*<noinclude>[[分类:用于文章的CSS]]</noinclude>*/
。 - 如果是你的草稿完工并发布,文章中又引入了原来的“User:<你的用户名>/styles/<子页面名>.css”,请将文章中引入的CSS页面名也一并改为“Template:<文章页面名>.css”。[3]
- 用于模板
- 需要移动至“Template:<模板名>/styles.css”,并在CSS的末尾加上
/*<noinclude>[[分类:用于模板的CSS]]</noinclude>*/
。
由于管理员有更改内容模型的权限,管理员可以直接将Template名字空间中尚不存在的页面的内容模型改为CSS,然后再创建CSS页面。
导入CSS
在页面中使用{{CSS}}
模板即可向页面导入CSS的源码(不显示),而MediaWiki:Common.js脚本会将CSS导入到页面的HTML里。一个CSS页面被多次导入时,只有第一次会生效。如果在文章中使用,建议放在文末。
模板只需要一个匿名参数,即待嵌入CSS的页面名。例如用{{CSS|Template:Level 0.css}}
会向页面嵌入Template:Level 0.css的源码,而脚本会将其加载进HTML里。如果CSS页面不存在,则会显示一条错误信息:
错误:提供给{{CSS}}
模板的参数“<CSS页面名>”对应的页面不存在。
为管理方便,只有MediaWiki、User或Template三个命名空间的CSS页面允许嵌入;如果传入的页面名不属于以上三个命名空间,则会显示一条错误信息:
错误:提供给{{CSS}}
模板的页面名“<CSS页面名>”不属于User、MediaWiki或Template中的任何一个命名空间。
另外确保待导入页面的内容模型是CSS。如果不是,则会显示一条错误信息:
错误:提供给{{CSS}}
模板的参数“<CSS页面名>”对应页面的内容模型不是CSS。
任一错误发生时,模板会向页面引入“嵌入CSS出错的页面”分类,提醒编辑者检查。
脚本没有CSS语法检查功能,所以请确保你的CSS页面中的代码是没有错误的,以免导入页面HTML时出错。你可以使用一些在线CSS检查工具检查CSS代码是否符合语法。(推荐W3C的CSS检查工具)
关于使用CSS的规定,请见Backrooms Wiki:CSS使用指导。
内联CSS
如果想直接在当前页面提供样式,你可以向{{CSS}}
提供content
参数。例如:
{{CSS|content= /* 在这里写的CSS也能被导入! */ }}
不适合用此种方法的情况
用这种方法引入的CSS是在网页HTML树加载完成后才加入的,所以从网页渲染到CSS生效有一段延迟时间,且CSS生效时页面可能会有非常显著(甚至突兀)的变化。如果页面的视觉效果对于这种变化非常敏感,建议还是使用行内样式(即HTML标签中的style="..."
属性),除非你对伪类选择器有非常迫切的需求。(伪类选择器无法通过行内样式设定)
另外,如果CSS用于模板,而这个模板的用途十分广泛,你可以考虑联系管理员,让管理员将CSS加入MediaWiki:Common.css。
注释
- ↑ 我们不建议使用用户页的一级子页面是因为“User:<用户BID>/<子页面名>.css”会被MediaWiki用作个人CSS。详情见mediawiki.org上对界面CSS功能的介绍。
- ↑ 对于宽度不够的浏览器,页面没有右边栏,页面工具会处于页面底端。
- ↑ 因为移动页面后,原页面会留下一个以
/* #redirect */ @import
开头的代码,而用@import
语句导入CSS会有延迟。网不好的话有可能根本加载不出来
所有模板列表