直到最近,我的网站(www.heatexchangers.ca)在Google Page Speed上得分为98%.有一些我无能为力的事情,比如来自网络字体的查询字符串.我对此非常满意,因为这代表了我所能做的一切.
最近谷歌添加了一些影响页面速度得分的东西,我现在只有89%的页面速度得到这个建议:
解决此问题的建议似乎涉及拖拽我所有的.css和.js文件并分离它们的某些部分并将它们内联添加到我的html中.这让我有些困惑,因为我的印象是我们必须尽可能多地保留HTML和CSS.
究竟什么是"折叠以上"的内容?如果它是一些样式,如字体,背景颜色等; 然后我可以看到包括内联可能不是太大的交易.我无法找到确切的列表.
我发现 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 …