维基百科:模板样式

模板样式(TemplateStyles)是允许非管理员用户写入和管理模板的CSS样式的功能。

规范

基本规范

  1. 模板样式页应和特定模板或某系列模板有关,且应被特定模板或某一系列模板引用
  2. 孤立的模板样式页应使用WP:CSD#G15快速删除
  3. 样式必须只会影响到关系模板的输出。
    • 说明:如果添加模板到页面时,却会影响不相关部分的显示样式,这将导致页面显示混乱。

命名规范

  1. 模板样式页应置于特定模板的子页面,并以stylestyle-功能命名
    • 例如应使用Template:MyTemplate/styles.cssTemplate:MyTemplate/styles-foo.css而不是Template:Styles.cssTemplate:Foo.css
    • 说明:这方便于识别及编辑样式页。
  2. 如需要单独的模板样式页需先获取共识,并由管理员创建,例如Template:Hello.css
    • 说明:例如共享的CSS
  3. 可能广泛应用到所有模板的模板样式应置于Template:ShareCSS的子页面
  4. 进行模板样式测试的沙盒应置于子页面,如Template:Foo/sandbox.css

内容规范

  1. CSS中定义的规则或类别应以关系模板名称作为前缀命名
    • 例如.row的样式规则在模板样式页中应使用.myTemplate-row;同理tr应使用.myTemplate tr来定义规则。
    • 说明:模板名称基本上不会重复,以关系模板名称作为前缀命名可以避免引用到条目时有CSS规则名称冲突问题
  2. 样式页使用的选择器和类别名称应该是唯一的,并以使用ASCII字符为主,避免使用中文。
    • 如需使用中文(如模板名称有中文)应使用汉语拼音拼出其音作为名称
    • 说明:这减少了CSS规则发生冲突的可能性。
  3. 背景图片只能使用无需署名的图片(例如公有领域),不能使用合理使用的图片,即便用于条目时有符合合理使用也不能。
    • 说明:一般使用图片的情况下,能够点击图片连到文件说明页查看署名或著作权协议。但使用在背景的图片将无法这么做。
  4. 不建议使用!important
    • 说明:使用!important将导致用户自定义CSS难以甚至无法覆盖模板样式。
  5. 不建议使用#id-styles
    • 说明:HTML ID应该在页面上是唯一的,但模板通常不会在一个页面只被引用一次,即使是单一用途的模板也可能有无法预期的使用方式,因此推荐使用类别而不是ID来作为样式选择器。

其他规范

  1. 主页面移动时也应移动相应的模板样式页,
    • 例如Template:1移动到Template:2那么若有Template:1/2.css也要移动到Template:2/2.css
  2. 样式页的保护层级应该和模板一致。
    • 说明:如果模板是高风险模板,那么样式页也会是高风险的。
      如果模板不是高风险模板而没有被保护,那么破坏模板本身就能够造成混乱。
      如果样式页的保护层级比模板高,因为模板页能够编辑,将会促使编辑者于在模板页添加内联样式。
  3. 禁止在签名中加入任何模板样式
    • 说明:当在签名中使用模板样式时,当模板样式更改时可能会改变之前或已存档的签名