浏览器兼容性
- 主题必须进行过跨浏览器测试并且在符合标准的浏览器上看起来都尽可能的一样。
- 旧版本非标准浏览器如IE7也必须被兼容(就当前来说)并且能够在上面“正常工作”。这就意味着布局模块不能失效,明显的区别和漏洞也都应该被修正好了。同时这也意味着,和下面这个例子中类似的情况。那就是,使用border-radius来创建圆角的时候,不支持这个属性的浏览器(如IE8)不会产生错误,同时在支持这个属性的浏览器更是非常完美的。
Drupal代码规范
- 一定要遵守代码规范。
- CSS 代码规范,虽然还处在待确认的状态,也应该尽可能的遵守。
- 除非模板文件被更改过,否则他们不应该包含在主题中。
- 核心样式表不能够被主题中的样式表全部代替。而应该采用在主题的样式表文件中有选择地覆写样式表条目的方式。
- 模板文件不应该删除关键的RDFa也不能删除其辅助功能。
- 尽可能地使用默认区块(而不是创建名称不同的类似区块)。
主题的一些特性
- 应该包含一个覆写的样式表。
- 必须增加RTL样式。
- 必须支持颜色模块。
- 不允许用户主题设定(D7中的每一个webchick)
- 不许支持覆盖特性。
- 需要支持主导航和次级导航。
- 至少有一个额外的导航和内容链接的区块。
Web标准,验证和访问性能
- 所使用的标记语言必须在语义和规范两个方面兼容。
- 必须传递XHTML 1.0 Strict验证。
- 在浏览器扩展的错误处理上,样式表必须经过level 3(CSS3)的标准验证。
- 我们的目标是符合WCAG 2.0 level AA的规定,包含以下内容:
注意:这些在drupal核心相关的问题上不适用
- 需要有:fouce/outline样式。
- 在合适的地方使用类似“跳过”的导航功能。
- 字体大小必须采用相对的方式进行设定,例如:ems、%这种形式。
- 对比度和颜色必须通过WCAG2标准。
- 表单的标签必须保留在它们所在的地方(不要删除它们,而是用.element-invisible 类把它们隐藏起来(想想search label))。
- 适当地使用标题。比较好的标题结构,一般是这样的,用h2作为节点teaser和块标题,用h3作为注释,而不是h5或其他什么东东。
关于这些核心问题的讨论请看这个页面:https://drupal.org/node/737136 你也可以参加那里的讨论。