Frequently Asked Questions
Is rich-html-editor a WYSIWYG editor?
No. rich-html-editor is intentionally not a generic WYSIWYG editor.
It is designed for controlled editing of existing HTML templates, not free-form content creation.
Can users edit any part of the HTML?
No. Only certain candidate content elements (paragraphs, headings, spans, etc.) can be edited; users enable editing by clicking or focusing those elements.
This interaction-driven model prevents accidental layout breakage and ensures structural integrity.
Why does the editor use an iframe?
The iframe provides strong isolation:
- CSS does not leak
- DOM is isolated
- Editor UI does not interfere with the host app
This is critical for predictable and safe editing behavior.
Can I use external URLs in the iframe?
Cross-origin iframes prevent the editor from accessing the DOM due to browser security restrictions.
Use iframe.srcdoc or same-origin HTML instead.
Does rich-html-editor sanitize HTML?
Yes. When exporting HTML using
editor.getHTML(), editor-specific attributes and unsafe
markup are removed.
Can rich-html-editor be used in production?
Yes. rich-html-editor is designed for production use cases such as:
- Email template editors
- CMS content editing
- Enterprise internal tools
- Approval-based workflows
Is this a page builder like Elementor or Webflow?
No.
rich-html-editor does not provide drag-and-drop layout editing or design-time controls.
It focuses solely on safe content editing within predefined templates.
Can I customize the toolbar?
Toolbar customization is planned but currently limited.
See the Roadmap for upcoming features.
Does the editor support server-side rendering (SSR)?
The editor itself runs only in the browser.
However, it can be safely integrated into SSR frameworks by initializing it on the client after mount.
Where should I report bugs or request features?
Please use the GitHub repository:
Next steps
- Roadmap — planned features and direction
- API Reference Changelog — full technical details