今まで Safari では出来ないと思っていました var element = document.createElement('style'); document.getElementsByTagName('head')[0].appendChild(element); var sheet = element.sheet; alert(sheet); // null こんな感じで null になってしまうのです。。。 しかし! さっき出来る方法が分かりました! var element = document.createElement('style'); element.appendChild(document.createTextNode('')); // この行を追加 document.getElementsByTagName('head')[0].appendChild(element