如果我有一个包含一些 JavaScript 的 HTML 页面,例如:
<script type="text/javascript" src="http://example.com/code.js" async></script>
我想添加一些 CSS,以下 2 个选项中哪一个更快,性能方面?
选项1
(更多“网络重磅”)将 CSS 包含在单独的内联标记中,例如:
<link rel="stylesheet" type="text/css" href="http://www.example.com/style.css">
或者
选项 2
(更多“JavaScript Execution Heavy”,因为它需要 DOM 操作)从包含的 JavaScript 文件内部将 CSS 注入 DOM,例如(取自:https://stackoverflow.com/a/707580/1785003] 1):
var css = document.createElement("style"); var css = "text/css"; css.innerHTML = "strong { color: red }"; document.body.appendChild(css);
第二个选项从页面中删除网络请求,但需要 DOM 操作,这在移动设备浏览器中可能成本很高。
那么哪个更好呢?