Google Pagespeed测试与样式表一起使用时无法识别预加载。我尝试过
<link rel="preload stylesheet" href="http://www.example.com/style.css" />
并且它仍然显示“考虑用于优先获取当前在页面加载中稍后请求的资源”。如果我从rel属性中删除样式表,它将识别出预加载。
我正在尝试尝试此操作:
<link rel="preload" rel="stylesheet" href="http://www.example.com/style.css" />
但是我不确定同一链接标签是否可以具有2个相同的属性。这行得通吗?
要异步加载CSS样式,应将其表示为预加载样式表。每次单独使用rel="preload"
时,它在页面加载时都不会转换为样式表,并且将保持为preload
,因此,将其表示为样式表时,应使用另一个属性,例如as
来指示元素的类型和在您的情况下,应为style
。然后,您需要在加载过程完成时告诉浏览器,您需要以此作为样式表,因此您必须定义另一个属性,例如onload
,并定义该元素的实际rel
是什么。
所以您必须像这样导入它:
<link rel="preload" as="style" onload="this.rel='stylesheet'" href="http://www.example.com/style.css" />