function removeChromeArtifacts(parentElement) {
    function isInlineWithStyle(parentStyle, element) {
      return window.getComputedStyle(element).lineHeight === parentStyle.lineHeight;
    }

    var nodes = Immutable.List(parentElement.querySelectorAll(inlineElementNames
      .map(function(elName) { return elName + '[style*="line-height"]' })
      .join(',')
      ));
    nodes = nodes.filter(isInlineWithStyle.bind(null, window.getComputedStyle(parentElement)));

    var emptySpans = Immutable.List();

    nodes.forEach(function(node) {
      node.style.lineHeight = null;
      if (node.getAttribute('style') === '') {
        node.removeAttribute('style');
      }
      if (node.nodeName === 'SPAN' && node.attributes.length === 0) {
        emptySpans = emptySpans.push(node);
      }
    });

    emptySpans.forEach(function(node) {
      unwrap(node.parentNode, node);
    });
  }
Chrome: If a parent node has a CSS `line-height` when we apply the
insertHTML command, Chrome appends a SPAN to plain content with
inline styling replicating that `line-height`, and adjusts the
`line-height` on inline elements.

As per: http://jsbin.com/ilEmudi/4/edit?css,js,output
More from the web: http://stackoverflow.com/q/15015019/40352