<!DOCTYPE html> <html> <head> <style> span { color: red } :default + span { color: green } span.reverse { color: green } :default + span.reverse { color: red } input { display: none } </style> </head> <body onload="var foo = document.getElementById('foo'); var bar = document.createElement('input'); bar.type = 'image'; foo.insertBefore(bar, foo.firstChild)"> <form id="foo"><span>This should be green</span> <input type="submit"> </form> </body> </html>