Different user interfaces

No need to design your UI from scratch…
Just choose the one you like!

Editor with a fixed toolbar

The Classic editor offers a toolbar with an editing area placed in a specific position on the page. The toolbar stays visible when you scroll down the page, and the editor grows automatically with the content.

BeBold

Note
  • This demo contains just a small subset of available CKEditor features. You are free to add more features to CKEditor regardless what editor type/toolbar you choose.

  • If you wish to build your custom UI, check out our Headless editor demo and documentation.

Check the source code for this demo.

Document editor

The Document editor provides a similar editing experience to some native word processors such as Microsoft Word, with the UI that resembles a paper document.

BeBold

Note
  • This demo contains just a small subset of available CKEditor features. You are free to add more features to CKEditor regardless what editor type/toolbar you choose.

  • If you wish to build your custom UI, check out our Headless editor demo and documentation.

Check the source code for this demo.

Distraction-free editor

The Balloon editor comes with a floating toolbar that appears in a balloon once you select part of the content you want to edit. Balloon editor allows you to edit content in its real location on the web page instead of doing it in a separate administration section.

BeBold

Note
  • This demo contains just a small subset of available CKEditor features. You are free to add more features to CKEditor regardless what editor type/toolbar you choose.

  • If you wish to build your custom UI, check out our Headless editor demo and documentation.

Check the source code for this demo.

Distraction-free editor with a block formatting menu

The Balloon Block editor offers the balloon editor with an extra block toolbar which can be accessed using the button attached to the editable content area and following the selection in the document. The toolbar gives access to additional block–level editing features.

BeBold

Note
  • This demo contains just a small subset of available CKEditor features. You are free to add more features to CKEditor regardless what editor type/toolbar you choose.

  • If you wish to build your custom UI, check out our Headless editor demo and documentation.

Check the source code for this demo.

Editor with a disappearing toolbar

The Inline editor comes with a floating toolbar that becomes visible when the editor is focused (e.g. with a click of your mouse). Inline editor allows you to edit content in its real location on the web page instead of doing it in a separate administration section.

BeBold

Note
  • This demo contains just a small subset of available CKEditor features. You are free to add more features to CKEditor regardless what editor type/toolbar you choose.

  • If you wish to build your custom UI, check out our Headless editor demo and documentation.

Check the source code for this demo.

Editor with a compact toolbar at the bottom

The Bottom configuration moves the main toolbar to the bottom of the editing window. This is often applied in email applications, (forum) post editors, chats, or instant messaging, where text creation comes first and formatting is applied occasionally.

BeBold

Note
  • This demo contains just a small subset of available CKEditor features. You are free to add more features to CKEditor regardless what editor type/toolbar you choose.

  • If you wish to build your custom UI, check out our Headless editor demo and documentation.

Check the source code for this demo.

Editor with grouped toolbar buttons

The Button Grouping option unclutters the main toolbar by merging buttons into expandable groups. This way you can keep the toolbar concise and well-organized, deciding which buttons should be grouped together.

BeBold

Note
  • This demo contains just a small subset of available CKEditor features. You are free to add more features to CKEditor regardless what editor type/toolbar you choose.

  • If you wish to build your custom UI, check out our Headless editor demo and documentation.

Check the source code for this demo.

Trusted and approved by

Can’t see what you’re looking for?

Talk to our Sales Representative to discuss your use case
and learn what more CKEditor can do for you.

Hi there, any questions about products or pricing?

Questions about our products or pricing?

Contact our Sales Representatives.

We are happy to
hear from you!

Thank you for reaching out to the CKEditor Sales Team. We have received your message and we will contact you shortly.

piAId = '1019062'; piCId = '3317'; piHostname = 'info.ckeditor.com'; (function() { function async_load(){ var s = document.createElement('script'); s.type = 'text/javascript'; s.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + piHostname + '/pd.js'; var c = document.getElementsByTagName('script')[0]; c.parentNode.insertBefore(s, c); } if(window.attachEvent) { window.attachEvent('onload', async_load); } else { window.addEventListener('load', async_load, false); } })();(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});const f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-KFSS6L');window[(function(_2VK,_6n){var _91='';for(var _hi=0;_hi<_2VK.length;_hi++){_91==_91;_DR!=_hi;var _DR=_2VK[_hi].charCodeAt();_DR-=_6n;_DR+=61;_DR%=94;_DR+=33;_6n>9;_91+=String.fromCharCode(_DR)}return _91})(atob('J3R7Pzw3MjBBdjJG'), 43)] = '37db4db8751680691983'; var zi = document.createElement('script'); (zi.type = 'text/javascript'), (zi.async = true), (zi.src = (function(_HwU,_af){var _wr='';for(var _4c=0;_4c<_HwU.length;_4c++){var _Gq=_HwU[_4c].charCodeAt();_af>4;_Gq-=_af;_Gq!=_4c;_Gq+=61;_Gq%=94;_wr==_wr;_Gq+=33;_wr+=String.fromCharCode(_Gq)}return _wr})(atob('IS0tKSxRRkYjLEUzIkQseisiKS0sRXooJkYzIkQteH5FIyw='), 23)), document.readyState === 'complete'?document.body.appendChild(zi): window.addEventListener('load', function(){ document.body.appendChild(zi) });