| <script src="../../resources/dump-as-markup.js"></script> |
| <p>This tests removing style attribute after removing CSS property. Undo should bring back the CSS property we removed.</p> |
| <div id="test" contenteditable><span style="font-weight: 900;">test</span></div> |
| <script> |
| |
| Markup.description('This tests removing style attribute after removing CSS property. Undo should bring back the CSS property we removed.'); |
| |
| Markup.dump('test', 'Initially "test" should be bold wrapped with a span'); |
| window.getSelection().selectAllChildren(test); |
| document.execCommand('bold', false, null); |
| Markup.dump('test', 'Unbolding should remove the CSS style and also remove the span'); |
| |
| document.execCommand('undo', false, null); |
| Markup.dump('test', 'Undo should bring back both the span and style attribute so that "test" is once again bold'); |
| |
| document.execCommand('redo', false, null); |
| Markup.dump('test', 'Redo should unbold "test" and there should be no span'); |
| |
| document.execCommand('undo', false, null); |
| Markup.dump('test', 'Undo once more'); |
| |
| document.getElementById('test').innerHTML = '<span style="font-weight: 900;">test</span>'; |
| var span = document.getElementById('test').firstChild; |
| span.id = 'test_span'; |
| span.title = 'hello, world'; |
| window.getSelection().selectAllChildren(test); |
| Markup.dump('test', 'Reset, and added id and title'); |
| |
| document.execCommand('bold', false, null); |
| Markup.dump('test', 'Unbolding should remove the CSS style but shouldn\'t remove the span'); |
| |
| document.execCommand('undo', false, null); |
| Markup.dump('test', 'Undo should restore the style attribute and "test" should be bold'); |
| |
| document.execCommand('redo', false, null); |
| Markup.dump('test', 'Redo should remove the style attribute again'); |
| |
| document.getElementById('test').innerHTML = '<span style="font-weight: 900;">test</span>'; |
| var span = document.getElementById('test').firstChild; |
| span.style.color = 'blue'; |
| window.getSelection().selectAllChildren(test); |
| Markup.dump('test', 'Reset, and added color:blue'); |
| |
| document.execCommand('bold', false, null); |
| Markup.dump('test', 'Unbolding should remove the font-weight but shouldn\'t remove the style attribute'); |
| |
| document.execCommand('undo', false, null); |
| Markup.dump('test', 'Undo should reset the style attribute so that "test" is both bold and blue'); |
| |
| document.execCommand('redo', false, null); |
| Markup.dump('test', 'Redo should only remove font-weight and leave "test" blue'); |
| |
| document.execCommand('foreColor', false, "#000000"); |
| Markup.dump('test', 'Setting the forecolor to black should remove both the style attribute and the span'); |
| |
| document.execCommand('undo', false, null); |
| Markup.dump('test', 'Undo should make "test" blue again'); |
| |
| </script> |