<!DOCTYPE html> <html> <head> <style> caption { color: green } </style> <script> function boom() { var table = document.getElementById("table"); var newCaption = document.createElement('caption'); newCaption.appendChild(document.createTextNode("TEST")); newCaption.style.background = "inherit" table.insertBefore(newCaption, table.firstChild); } </script> </head> <body onload="boom();"> <table id="table" style="background: green;"><caption></caption></table> </body> </html>