MIP 页面会有严格的规范校验,不允许存在任何校验不通过的问题存在。如需审查页面规范,可通过 MIP 代码校验工具 查看。本文档意在帮助开发者找到校验的内容和规则,快速定位校验不通过的原因。
MIP-HTML 标签和属性错误
1. 强制性标签缺失
提示 | MANDATORY_TAG_MISSING |
---|---|
错误说明 | 强制性标签 ‘%s’ 缺失或错误 |
修复方法 | 增加或修改强制性标签 |
例如:原本页面中必须存在 <head>
和 <body>
标签,但结果却未写这些必备标签。
2. 禁用标签
提示 | DISALLOWED_TAG |
---|---|
错误说明 | 禁止使用 ‘%s’ 标签 |
修复方法 | 删除禁用标签 |
例如:原本页面中禁用 <img>
、 <video>
、 <audio>
、 <iframe>
等标签,但结果却加入了其中一种不允许的标签。
3. 唯一标签重复
提示 | DUPLICATE_UNIQUE_TAG |
---|---|
错误说明 | 标签 ‘%s’ 只能出现一次 |
修复方法 | 删除多余标签 |
如:原本页面中只能存在一个 <head>
标签,但结果却使用了多个。
4. 直接父标签错误
提示 | WRONG_PARENT_TAG |
---|---|
错误说明 | 标签 ‘%s’ 的直接父标签应该是 ‘%s’,而不是 ‘%s’ |
修复方法 | 使用正确的父标签 |
如:原本 <link>
标签的直接父标签(非祖先元素)必须是 <head>
,但结果却将 <link>
写在了 <body>
中。
5. 祖先标签错误
提示 | MANDATORY_TAG_ANCESTOR |
---|---|
错误说明 | 标签 ‘%s’ 只能是标签 ‘%s’ 的子级标签 |
修复方法 | 将标签插入到允许的父标签内 |
如:原本 <input>
必须在 <mip-form>
中使用,即 <mip-form>
是 <input>
的祖先元素,但结果却用在了 <body>
中;
6. 非法父级标签
提示 | DISALLOWED_TAG_ANCESTOR |
---|---|
错误说明 | 标签 ‘%s’ 不应该是标签 ‘%s’ 的子标签 |
修复方法 | 将标签移出禁用的父标签 |
如:原本 <script>
的祖先元素禁止是 <template>
标签,但结果却将 <script>
用在了 <template>
中。
7. 强制性属性缺失
提示 | MANDATORY_ONEOF_ATTR_MISSING |
---|---|
错误说明 | 标签 ‘%s’ 的强制性属性 ‘%s’ 缺失 |
修复方法 | 增加缺失属性 |
如:原本 <html>
标签中必须存在 mip
属性,但结果却未写。
8. 无效属性值
提示 | INVALID_ATTR_VALUE |
---|---|
错误说明 | 标签 ‘%s’ 中的属性 ‘%s’ 的属性值 ‘%s’ 无效 |
修复方法 | 将属性值修改为规则限定格式 |
如:原本页面中必须使用 UTF-8 编码,但结果却使用了非 UTF-8 编码。
9. 必要属性缺失或错误
提示 | MANDATORY_ATTR_OR_MISSING |
---|---|
错误说明 | 标签 ‘%s’ 必要属性不符合要求或缺失 |
修复方法 | 标签中添加一组必要属性 |
如:<mip-img>
属性必须存在 src
或 srcset
属性,结果却都没有包含其中之一。
10. 属性值的无效值
提示 | INVALID_PROPERTY_VALUE_IN_ATTR_VALUE |
---|---|
错误说明 | 标签 ‘%s’ 中的属性 ‘%s’ 的属性 ‘%s’ 被设置为 ‘%s’,该属性值无效 |
修复方法 | 使用正确的属性值 |
如:原本 <meta name="viewport">
标签中 content
属性值的 width
必须是 device-width
, initial-scale
必须是 1,但结果却将 initial-scale
写为了 2.0。
11. UTF-8 编码错误
提示 | DISALLOWED_ENCODING |
---|---|
错误说明 | 禁止使用 ‘%s’,请统一使用 UTF-8 编码 |
修复方法 | 使用 UTF-8 编码 |
12. 非法 HMTL
提示 | INVALID_INNER_HTML |
---|---|
错误说明 | 标签 ‘%s’ 的 HTML 内容不合法(%s) |
修复方法 | 使用合法 HTML |
如:一个元素内部只能是 <span>.*</span>
,但结果却加入了其他标签。