My Little World

Shadow DOM

Shadow DOM是HTML的一个规范,它允许浏览器开发者封装自己的HTML标签,css样式和特定js代码
同时也可以让开发者常见类似video这样的自定义一级标签,
创建的这些新标签和相关的api被称为 WEB Component

Shadow host 是shadow dom 的容器元素,就是最终使用的标签元素
Shadow root 是shadow dom 具体内容的根节点,可以使用document.createShadowRoot()创建
shadow tree 是shadow dom 包含的子节点数

在shadow root 上可以任意通过DOM操作添加任意shadow tree,同时指定样式和处理逻辑
并将自己的API暴露出来
完成创建后需要通过document.registerElement()在文档中注册元素
shadow dom 创建就完成了