我假设您想要插入一个style标签而不是一个link标签(引用外部 CSS),所以这就是以下示例的作用:
<html>
 <head>
  <title>Example Page</title>
 </head>
 <body>
  <span>
   This is styled dynamically via JavaScript.
  </span>
 </body>
 <script type="text/javascript">
   var styleNode = document.createElement('style');
   styleNode.type = "text/css";
   // browser detection (based on prototype.js)
   if(!!(window.attachEvent && !window.opera)) {
        styleNode.styleSheet.cssText = 'span { color: rgb(255, 0, 0); }';
   } else {
        var styleText = document.createTextNode('span { color: rgb(255, 0, 0); } ');
        styleNode.appendChild(styleText);
   }
   document.getElementsByTagName('head')[0].appendChild(styleNode);
 </script>
</html>
另外,我在您的问题中注意到您正在使用innerHTML. 这实际上是一种将数据插入页面的非标准方式。最佳做法是创建一个文本节点并将其附加到另一个元素节点。
关于你的最后一个问题,你会听到一些人说你的工作应该在所有浏览器上工作。这一切都取决于你的观众。如果您的听众中没有人使用 Chrome,请不要担心;但是,如果您希望吸引尽可能多的受众,那么最好支持所有主要的 A 级浏览器