<!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 = 'submit'; foo.insertBefore(bar, foo.firstChild)"> <form id="foo"> <input type="image"><span class="reverse">This should be green</span> </form> </body> </html>