HTML 所见即所得编辑器

在实时编辑器中编写富文本并获取生成的 HTML,支持格式、列表、链接与源码视图。

在实时编辑器中编写富文本并获取生成的 HTML,支持格式、列表、链接与源码视图。 在实时编辑器中编写富文本并获取生成的 HTML,支持格式、列表、链接与源码视图。

背景知识

所见即所得编辑器是什么

WYSIWYG 意为"所见即所得"。你不需要输入原始 HTML 标签,而是可视化地编辑文档—— 加粗、斜体、标题、列表、链接等——编辑器会把你的操作转换为标记。你正在看的 这个页面使用浏览器内置的 contenteditable 能力和 document.execCommand API, 后者已存在十余年且被所有主流浏览器支持。这里没有第三方库:格式化由浏览器 原生完成,因此生成的 HTML 与浏览器为网络上任何其他可编辑区域生成的内容 完全一致。

工具栏能做什么

工具栏覆盖大多数人的常用操作:撤销/重做、加粗、斜体、下划线、删除线、 H1-H3 标题、段落、代码块、项目符号与编号列表、引用块、链接和清除全部格式。 字体与大小选择器改变当前选区的字体和字号。源码切换在渲染视图和包含原始 HTML 的纯文本域之间切换,你可以直接编辑后者。编辑器下方的统计行显示当前 内容的字符数和词数。

HTML 输出如何组织

编辑器尽可能生成语义化标记而非表象化的代码:标题变成 <h1>/<h2>/<h3>, 列表变成 <ul>/<ol>/<li>,引用变成 <blockquote>,代码变成 <pre>。文本级格式 使用 <strong>、<em>、<u> 和 <del>。由于浏览器 execCommand 是引擎,不同浏览器 之间的确切标记可能略有差异——一次加粗点击在一个浏览器中产生 <strong>, 在另一个中产生 <b>。为保证最大兼容性,导出的 HTML 刻意保持最小化,可直接 粘贴到邮件、CMS 编辑器或文档系统中,无需额外清理。

实用技巧

切换到源码视图后从输出字段复制导出的 HTML,或使用"复制 HTML"按钮。粘贴到 邮件客户端时请保持标记简单——许多客户端会剥离 <style> 和复杂嵌套。如果要把 内容嵌入已有样式的页面,优先使用语义标签并避免内联样式;导出的标记不使用 内联样式,因此会自然继承页面 CSS。本页面所有操作都在浏览器本地完成,内容 不会离开页面。

基于浏览器原生 contenteditable 与 document.execCommand API 自研实现。无第三方库,完全离线。

常见问题

为什么同一个操作在不同浏览器中产生不同的标签?
编辑器委托给浏览器原生 execCommand,而浏览器在输出上略有差异(例如 <strong> 与 <b>、<i> 与 <em>)。内容在功能上完全相同;如果需要逐字节精确的标记,请用源码视图调整。
我可以从 Word 或 Google Docs 粘贴内容吗?
通常可以。浏览器的粘贴处理器会把富剪贴板内容转换为 HTML。格式在过程中可能被简化;粘贴后切换到源码视图检查并清理标记。
输出的 HTML 可以安全地用在哪里?
它是纯标记,无内联样式、无脚本,对邮件、CMS 内容和文档是安全的。对于公开网页,若 HTML 会被原样渲染,建议先做净化以防范粘贴进来的脚本标签。
为什么没有图片上传按钮?
图片上传需要服务器或 data-URI 处理,而本工具完全离线运行、无后端。你仍然可以在编辑器中粘贴图片或链接,或在源码视图中添加 <img> 标签。
这个工具会收集我的内容吗?
不会。一切都在浏览器中发生,完全没有网络请求。你的文本不会离开页面,断网也能工作。
输出可以用在邮件中吗?
可以。切换到源码视图,复制 HTML,粘贴到接受 HTML 的邮件编辑器(大多数都接受)。保持标记简单:如果客户端损坏内容,就只保留段落、标题、列表和链接。