Enhanced Rich Editing Experiences in IE11

With Internet Explorer 11, Web-based applications and sites can offer rich editing experiences enabling users to easily capture and share data. Online and cloud-based content creation scenarios, such as e-mail and Web-based document editing—including Office 365, rely on the contentEditable feature of HTML5. With IE11, users can now paste images from a variety of input sources, copy lists while preserving formatting, and undo their editing more easily.

Pasting Images from All Sources and with Full Control

With IE11, Web sites now have direct access to images pasted from the clipboard. IE11 is the first browser that supports both pasting images directly from clipboard (for example, from photo editing software or from PrintScreen) and pasting HTML that incorporates local images (for example, from applications such as Microsoft Office that store images temporarily in local paths). Either DataURI or Blob can be used to encode these images.

With the new DataURI encoding capability in IE11, Web sites can automatically support pasting images from the clipboard, without requiring additional Javascript. By default, IE11 pastes images from the clipboard by converting them into DataURI and inserting them as HTML in the contentEditable. For example, if you draw a red box in photo editing software and copy it into contentEditable, the image becomes an <img> tag within the markup that you are editing:

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAI

Web developers can choose to use a Blob instead of DataURI by adding a few lines of code. By using blobs, applications can process the image data directly. For example, a Web mail client may need to encode images into MIME format before uploading them to the cloud. Applications that use blobs manage object lifetime, in contrast to DataURI, which does not require object management.

The new clipboard APIs in IE11 make supporting image paste as Blob very easy. The following code will convert all pasted images to Blob.

var blobList = [];
        var fileList = clipboardData.files;
        for (var i = 0; i < fileList.length; i++)
            var file = fileList[i];
            var url = URL.createObjectURL(file);
            event.msConvertURL(file, "specified", url);
    } );

Here is a table that summarizes how to choose between dataURI and blob:

  DataURI Blob
Requires extra JavaScript code No Yes
Works when pasting images from clipboard Yes Yes
Works when pasting HTML that references local images Yes Yes
Where image data is stored Inline inside pasted HTML (can expand the size of HTML dramatically) External reference (no concern with HTML size but the application needs to handle exporting images when sending the HTML)
Flexibility of image data Low (needs to be extracted from HTML first) High (can be processed using the blob reference)

You can try image paste out for yourself in the Paste Image Test Drive where you can switch between using DataURI and Blob to paste images.

The Paste Image Test Drive tests whether your browser can paste images using either DataUIri or Blob

The Paste Image Test Drive tests whether your browser can paste images using either DataUIri or Blob

Pasting Lists as HTML Lists

With IE11, users can paste lists from popular office applications and continue editing that list within the browser. After pasting the list, the user can simply press enter at the end of the list to create new items. This capability is particularly valuable when pasting formatted content from word processing applications such as Microsoft Word. IE11 recognizes that the formatted text contains a list and converts it into a real HTML list using <ul> or <ol> elements, so you can edit the list in the way you would expect.

Pasting and editing formatted lists from applications such as Microsoft Word (left) is easy and natural in IE11 (right)

Pasting and editing formatted lists from applications such as Microsoft Word (left) is easy and natural in IE11 (right)

Rich and Natural Undo Experiences

With IE11, Web pages automatically receive better undo experiences, and Web developers have fine-grain control over how DOM manipulations in script participate in the undo stack. In most cases, developers do not need to worry about the undo stack, and IE11 just works as expected. For example, if the page contains a “bold” button that calls execCommand(“bold”) when clicked, IE11 automatically supports undo of this action, so the user can hit Ctrl-Z to unbold the text. IE11 tracks each script-initiated DOM change and puts it into a separate undo unit.

IE11’s default undo stack handles most simple script editing, but sometimes, Web developers need to support more complex, multi-step editing. For example, the page may detect that the user has typed “:)”, delete this text, and insert a smiley face glyph. In this case, IE ordinarily would create two undo units (one for the deletion and the other for the insertion), and the user must hit Ctrl+Z twice to undo the script change—probably not what you would expect. IE11 adds two new commands so Web developers make this scenario work: you can call ms-beginUndoUnit, run your script, and then call ms-endUndoUnit. All the DOM changes in between the two commands will be grouped into a single undo unit.

Web developers can programmatically reset the undo history using the ms-clearUndoStack command. This capability is helpful if you reuse your editor instance for multiple contexts. For example, when the user is replying through multiple emails, you can clear the undo stack from the previous email whenever a new one is opened.

You can try the Undo Test Drive which uses the new commands to group undo units during the auto-replacement of smiley face.

The Undo Test Drive tests multi-step undo operations in your browser

The Undo Test Drive tests multi-step undo operations in your browser


With Internet Explorer 11, Web-based applications and sites can offer rich editing experiences enabling users to easily capture and share data. Users can create rich content with automatic image paste, improved copy-and-paste of formatted lists, and natural undo.

Try out these new capabilities with IE11 on either Windows 7 or Windows 8.1, and share your feedback with us through Connect.

Jianfeng Lin and Ben Peters
Program Managers, Internet Explorer

Comments (31)

  1. Randall says:

    Very cool. Hope some kind of undo-unit thing becomes a standard.

  2. Huh? says:

    Is this image pasting supposed to work with IE11 in 64-bit mode (W8.1)? Or did this come with the update that was just released (this just doesn't work – though I haven't restarted my PC yet)?

  3. John West says:

    FYI, the image paste page is telling me I have an old version of IE, when in fact I have the latest version of 8.1 and IE11.

  4. WIchert says:

    With all the push towards making IE an actually standards compliant browser recently I am wondering: where is the (proposed) specification for this? Or this a step backwards and will stay an IE-specific feature, making it useless for anyone targeting all browsers instead of the IE-using minority?

  5. davis says:

    Given this, is there any chance of prevailing upon the MS Word team to improve their HTML consumption and generation then?

  6. Sardoc says:

    It's all pretty, but I can't wait for Win7 release.

  7. Brian LePore says:

    Funny, I *still* cannot drag images around in an element with contentEditable using my finger or a stylus in IE11 on my Surface Pro. Need to use my Bluetooth mouse to drag images.

    This is not possible with any other browser either, but this was my hope when I saw the headline. =/

  8. Steve says:

    This is both interesting and extremely scary.  Previously it has been well known in the industry that the "rich" content pasted in from Word is the absolute worst, invalid HTML content you could ever add to a page. Chock full of bad code, non-standard code, mis-matched tags, mso-styles that are non-standard to anything and about a 10:1 ratio of actual markup vs. needed markup.

    If you have essentially completely fixed this mess – congratulations.  If however you have just "embraced, enhanced & extended" this mess I have zero interest in supporting this and will actively disable it since it is not based on any W3C standard.

  9. Brandon says:

    **re-posting** on the latest blog post until this get the attention needed.

    @Rob (Microsoft) – I too can not install the messed up IE11 browser from my Windows 7 install. The browser doesn't load tabs properly and the dev tools are messed up and magenta on the last "tab".

    A stand-alone uninstall is ****REQUIRED**** because IE11 (or an update listing) does NOT show up in any part of the windows installed programs list to be removed.  We would have removed this weeks ago if there had been an obvious way to do so.

    IIRC the fact that this was broken (both IE11 and the uninstaller) was posted SEVERAL times on the IE Blog when it was first released.  If you fixed the blog comment form there likely would have been even more filings as they would not have been lost in the abyss that is "Community Server's Failed Legacy Blog System" that should have been put out to pasture about 7 years ago.

  10. Steve says:

    @Rob [MSFT] Here's the problem with the IE11 uninstaller.  It is available as an item to "uninstall" from the Windows feature list but when you do you end up with no "iexplore.exe" at all.

    Fine – so you go to download the IE10 installer from Microsoft's site and when you run it you get this error:


    Note that Windows/IE is very confused.  IE10 is installed – but no it isn't installed yet because it didn't finish installing.  Microsoft needs to supply a FULL IE11 uninstaller that really uninstalls it properly AND an IE10 installer that can FIX a broken installation or at least enable a FORCED install.

    Right now many of us are stuck in no-mans-land with either no IE browser at all (my current situation) or a broken IE11 alpha install (my only other option if I try to re-install IE11)!

    My bet is that the installers have an issue in workplace environments where users have full admin rights —EXCEPT— to manually update windows (e.g. via Windows Update) due to IT policies that block it.

    Since IE11 is technically a standalone install it runs fine to install but when you try to remove it you run into this gray zone where you have full permissions to uninstall a feature but NO PERMISSIONS to install a new feature/update Windows.

    This is something that should have been FULLY tested before releasing the IE11 alpha version for Windows 7.  Sadly it wasn't and now a pile of developers are stuck with a Frankenstein IE install that either doesn't exist or is a broken IE11 install.

    Rather than continuously tell us that we don't know what we are talking about – how about working on the actual solution so that those of us that develop for the Web for a living can actually get some work done on our PCs.

    Like the old saying goes: "If you are not part of the solution – you are part of the problem!"

    So we will ask once again.

    1.) Please provide a full, standalone uninstaller for IE11 for Windows 7

    2.) Please provide a full, standalone installer for IE10 for Windows 7 (that doesn't halt if it **thinks** that IE10 is already installed

    And finally it goes without saying – please fix the comment form on this blog!

  11. Ben Peters (MSFT) says:


    This should work even without the update. Please let me know what scenario is not working for you. Ben.Peters@microsoft.com

    @John West

    The incorrect IE11 check should be fixed shortly. Please make sure you're using the latest document mode (which is the default).

  12. Real McCoy says:

    Thanks for this blog post! I have been waiting for ages. 😎

    I am having issues developing, fixing and working with wysiwyg for IE since IE7. When IE9 was launched, the first thing I want to test was rich text editor. connect.microsoft.com/…/problems-with-popups-iframe-based-rich-text-editors

    Fortunately, IE11 brings bundle of improvements in this regard. But unfortunately, its not as fluid/robust as other browsers.  To wit: open http://www.cdolivet.com/…/exemple_full.html in IE11, once the editors are loaded. Click on any line (say line 11) of editor 1. Then click on line 16 of same editor. You will notice the cursor will jump to line 15. The experience in IE10 and lesser was horrible. But IE11 brought brilliance. Please make it *fluid* like other browsers. Please do not ignore this. Everyone uses rich text editors these days.

    Another unfortunate thing is until IE11 preview, I was unable to get Mercury editor working for me. jejacks0n.github.com/mercury

    Its a gem for Ruby on rails, it renders a first class HTML5 editor, which works in all non-IE browsers happened to mankind.

    connect.microsoft.com/…/internet-explorer-and-html5-content-editors. (I am stuck with preview, waitng for HP to send me the recovery media. Thus haven't test on IE11 GA. If its resolved in final version, then it IS a very big dea! )

    If you honestly monitor and solve issues reported on Connect, IE will be the best browser in the world. This is the closest thing to contribution that we can provide. Imo, there must be a platform, where we can submit pull request in some kind of pseudo code using public interface/classes-specifications or something more interactive like http://conceptsharing.com to assert our desired/intended behavior. If the yay-nay voting qualifies, IE team put it into the ready backlog and implement it.

  13. Ben Peters (MSFT) says:

    @Brian LePore

    Thanks for the feedback on dragging images!


    One goal of this feature was for IE to 'just work' with older versions of productivity software. So we actually convert lists to W3C HTML lists.

    @Real McCoy

    We appreciate your feedback on this.  We do review all Connect feedback and are happy you're submitting issues that you see. Glad we could help you out with IE11!

  14. Ximing [MSFT] says:


    Regarding your issues about uninstalling IE11 on Windows 7, let me try to clarify. After IE11 is installed on a Windows 7 machine, you can go to Control PanelProgramsPrograms and Features and click "View uninstalled updates" and see "Internet Explorer 11" in the update list. Then you can uninstall it there to go back to your previous IE version. Steve, did you uninstall IE11 in this way?

    You could also go to "Turn Windows features on or off" to turn off IE by unchecking "Internet Explorer 11". However that is not uninstalling IE and the current version of IE will still be on the machine. Steve, did you happen to have disabled IE?


    When you had tab and dev tools problems, were you running IE11 Developer Preview or Release View on your Windows 7 machine? Can you provide more detail about the issues?

  15. Mark says:

    The IE11 uninstaller DOES NOT WORK! please do not tell us it is an easy task as it isn't! there is no item in the "installed updates" list. The only option is to uninstall IE11 from the Windows features on/off list which will uninstall IE11 but leave you IE browser-less as you now have no browser.

    We've told you this was busted since you released IE11 preview! Why is it only now that Microsoft is actually looking into this disaster? You guys seriously need to read this blog religiously the week after you release an update!

  16. hAl says:

    A question about suggested sites on Windows phones IE10.

    Why if I always type in a homepage of a site like


    after just a few characters typed it suggests

    http://www.somenewssite.com/a12345/article_about something_1

    http://www.somenewssite.com/a23456/article_about something_2

    http://www.somenewssite.com/a23457/article_about something_3

    but it does not sugest the main


    page itself.

    I do not want articles of yesterday to take preference over de siteportal nor do I want click trough results tot take preference over sites I actually fully entered myself.

    Suggested sites work much better on the desktop version of IE10

    p.s. Windows Phone Internet Explorer might have seperate developers but I do not know a channel to reach them

  17. davis says:

    @Ben Peters (MSFT), another issue related to dragging the image in the contentEditable field that would improve usability is to enable the field to consume the Explorer clipboard formats so the user can copy/paste (or drag/drop) image *files* rather than clipboard image data into the contentEditable field.

  18. Michael Kozakewich says:

    Ooh, this is nice! I've been doing my novel typing into a contenteditable box in Chrome, because it works nice. It's interesting being able to move blocks around by their handles in IE. I might end up switching if my custom JS ports over properly.

  19. Anuj Shukla says:

    IE team need to improve "Internet options" UI in next version of IE. It is pathetic for a browser that is called "Modern" and exists from very long time.

    **  It's difficult to look for settings. (There are so many options available there)

    ** There is no way to search for settings.

    ** IE team should take a page from office team and designed it the way backstage view (once we click File) in word/excel looks. It seems like IE team is neglecting this UI overhaul from a long time for no reason.

    In one of the video i saw on you tube that one of the MS employee preferred Chrome to IE 10. If MS' own employee are finding IE slower than chrome then how come IE team will convince people out there to use IE 10 over Chrome or any other browser for that matter.

  20. Mike says:

    Why is IE still the slowest browser in the market ? I  guess slow and buggy became the IE trademark.

  21. Ximing [MSFT] says:



    When you are seeing the update list at Control PanelProgramsPrograms and FeaturesInstalled Updates, Internet Explorer should be under the "Microsoft Software" section with other updates on the machine. Even if your machine is running IE10 or IE9, you should see a corresponding Internet Explorer entry in the section.

    On your machine, do you see the Microsoft Software section in the Installed Updates list or what items do you see in the section? You can also type in "internet explorer" in the search control near the upper right corner to find IE more quickly.

    If you still can't find Internet Explorer in the update list, feel free to email me at ximingz@microsoft.com to have an offline conversation about this issue.

  22. Jianfeng Lin (MSFT) says:

    @Real McCoy

    Thank you for reporting the issues to us. I tried the issues you listed and here are the results:

    1. Cursor jumps when clicking on line 16 of the editor at http://www.cdolivet.com/…/exemple_full.html

       I don't see the issue on the final build. Please upgrade your Preview build and try again.

    2. Script error in Mercury editor when adding hyperlink.

       We are still investigating the issue under Connect feedback ID 805319.

    3. Your previous bug report in connect.microsoft.com/…/problems-with-popups-iframe-based-rich-text-editors

       3.1 Issues with http://www.cdolivet.com/editarea

           I don't see the issues on IE11 in the final build of Windows 8.1.

       3.2 Windows Team Blog messaging issue

           I can edit and send messages without issue. Focus is set correctly when I click back and forth between the title and the message body.

       3.3 ATT device support page issue

           I don't see the issue with IE11.

    Please upgrade your build and let us know if you still see the issues.

  23. Esben says:

    It seems that IE11 cleans the HTML when copying from Word. If I copy the same content from Word into IE9 and IE11 then it looks clean and nice in IE11 whereas IE9 has all the messy Word stuff. And the html in IE11 is about 25% of the size of the html in IE9.

    Could you make a blog post about what you did to clean up the Word html?

    …and thank you very much for this Cleanup feature! 🙂

  24. Tim Down says:

    I'm very happy to see some measure of developer control over the undo stack. However, there is already an UndoManager spec covering this which WebKit and Mozilla partially implement:


    Why have you implemented a proprietary API rather than the spec in IE11? I thought you were embracing the standards these days.

  25. Tim Down says:

    While I'm here, I'm going to make one more plea for implementing Selection.extend() in IE11. I appreciate this is the wrong forum but my please are being ignored in the bug tracker. It's the only way of creating a backwards selection programmatically, which is a big deal for me in some projects, it's in the standard and every other browser has it. Please implement it.


  26. Tim Down says:

    Pleas, not please.

  27. Ben Peters (MSFT) says:

    @Tim Down – Thanks for following up on this. I'll keep selection.extend() in mind as we think about future improvements.

  28. CvP says:

    @MSFT Do you think you can do anything to fix IE9/10/11 issues with vBulletin websites (version 4.x)? There are thousands of sites using it but vBulletin refuses to fix the issues. vBulletin 4.x is using an older version of CKEditor.

    Also, IE on Windows Phone can not type any msg in reply box (of vb4.x). The on screen keyboard disappears within a second.

  29. Real McCoy says:

    @Jianfeng Lin (MSFT), thanks for the input. I have tested on IE11 final build and indeed its working like a charm! 🙂

    I hope the mercury editor issues will be resolved soon.

  30. madmed says:

    I don't get why you don't support the input event on contenteditable, keyup fires too late and keypress too soon. All other browsers implement the input event on contenteditable.

  31. Jianfeng Lin (MSFT) says:

    @madmed, thank you for reporting the issue. We are aware of this interoperability issue and will consider it in our future release. For now, please use DOMCharacterDataModified event.