概述CSS Highlight API 允许为多个 Range 定义命名高亮,避免 DOM 结构破坏,适合搜索标记与协作指示。实践示例const r = new Range()
r.setStart(p.firstChild, 0)
r.setEnd(p.firstChild, 10)
CSS.highlights.set('search', new Highlight(r))
::highlight(search) { background: yellow }
验证方法在长文与多段落下验证选区渲染性能;滚动与编辑变更时确保高亮同步。注意事项旧浏览器需降级至 mark 包裹或 Canvas 叠绘;避免与 Selection 互相覆盖。

发表评论 取消回复