我发现 Google Pagespeed Insight 有时很可笑。它说,优化 CSS 交付......说延迟脚本,移动到页脚,内联样式等等等......同时有很多建议说不要内联 CSS。不管怎样,我试过他们的脚本
</noscript>
<script>
var loadDeferredStyles = function() {
var addStylesNode = document.getElementById("deferred-styles");
var replacement = document.createElement("div");
replacement.innerHTML = addStylesNode.textContent;
document.body.appendChild(replacement)
addStylesNode.parentElement.removeChild(addStylesNode);
};
var raf = requestAnimationFrame || mozRequestAnimationFrame ||
webkitRequestAnimationFrame || msRequestAnimationFrame;
if (raf) raf(function() { window.setTimeout(loadDeferredStyles, 0); });
else window.addEventListener('load', loadDeferredStyles);
</script>
Run Code Online (Sandbox Code Playgroud)
我还尝试将 CSS 链接放在代码的底部。但谷歌仍然大喊“首屏内容”!!而且,延迟 CSS 会弄乱初始渲染,页面看起来像乞丐,直到整个东西都被加载了!
我知道他们说...'inline critical above the fold CSS'并推迟所有其他的。获得正确的方法仍然是一项令人沮丧的努力。
我的问题是,如果我让 CSS 放在 head 部分,它会影响我的 SEO 吗?并忽略“首屏”问题?因为这样即使加载需要时间,至少它会像一个体面的页面一样加载!无论如何,我的 CSS 并不大。
第二个问题是js。我无法让像 min.js 这样的 CDN js 兑现或延期......尽我所能......
总结基本问题 - 为 SEO …