contentEditable, CTRL-B CTRL-I and saving

This is standard in all major browsers. There are also programmatic equivalents of the keyboard shortcuts available via document.execCommand() in all major browsers. Bold and italic commands, for example, can executed as follows:

document.execCommand("Bold", false, null);
document.execCommand("Italic", false, null);

However, the mark-up generated varies between browsers. For example, variations for bold include <b>foo</b>, <strong>foo</strong> and <span style="font-weight: bold">foo</span>.

References:

  • MSDN, list of commands
  • MDN (Mozilla)

Short answer 'yes'. You might find this article interesting. Many a' developer have gone down this route. If you want a nice wysiwyg editor, there are many to choose from.

On to your question: yes you can read the formatting. Try an innerHTML on the element and you'll find <b> tags around your bolds and <i> around your italics. Also - in the article I shared, you'll find out how to create a button that will bold. Hope this helps!