HTMLUnknownElement的使用
HTMLUnknownElement 是指那些在HTML规范中未被明确定义或不被支持的元素。当你在网页中使用一个未被浏览器识别的标签时,该标签就会被视为一个 HTMLUnknownElement 。例如,如果你写了一个标签<chanlaogui>
,这个标签就是一个HTMLUnknownElement,因为HTML规范中并没有定义这个标签。
WebComponents API是比较高级复杂的标准化API,所以对于简单的网页可以不使用它,它与HTMLUnknownElement的相似之处是,都可以自定义一个全新的html标签名。
不同的是,
-
未知元素:如果浏览器遇到一个它不认识的 HTML 标签(例如
<my-custom-tag>
),它会将其解析为HTMLUnknownElement
。 -
自定义元素:如果你正确地使用 Custom Elements API 定义了一个自定义元素(例如
<my-element>
),它就不会被视为HTMLUnknownElement
,而是会继承HTMLElement
或其它特定的元素接口。
所以,对于简单的app项目,不需要定义再使用新的html元素了,直接使用HTMLUnknownElement就好了,直接在html中写新的标签比如<news>表示新闻版块。好处就是不需要定义id和class为news了,方便快捷。
兼容性
HTMLUnknownElement
在现代浏览器中广泛支持,但如果你使用自定义元素,请确保检查 Custom Elements API 的兼容性。
虽然比较“反直觉”但是未知元素比自定义元素的兼容性还要好,可以放心大胆的使用。就是有些默认css样式需要设置,比如display:block;。经过我的多方考察和询问,使用HTMLUnknownElement确实没有任何问题,而且比webcomponent更方便,比如名词中不需要加连字符“-”,想到一个单词就能用。只是要注意避开常见的原生html名就好了,很简单!