触发异步样式表下载的技巧是使用一个<link>
元素并为media属性设置一个无效值(我正在使用media =“ none”,但任何值都可以)。当媒体查询的结果为false时,浏览器仍将下载样式表,但是在呈现页面之前,它不会等待内容可用。
<link rel="stylesheet" href="css.css" media="none">
样式表下载完成后,必须将media属性设置为有效值,以便将样式规则应用于文档。onload事件用于将媒体属性切换为所有:
<link rel="stylesheet" href="css.css" media="none" onload="if(media!='all')media='all'">
这种加载CSS的方法将比标准方法更快地将可用内容交付给访问者。仍然可以使用通常的阻止方法(或者可以内联它以获得最终性能)来为关键CSS提供服务,并且可以在以后的解析/渲染过程中逐步下载和应用非关键样式。
该技术使用JavaScript,但是您可以通过将等效的阻塞<link>
元素包装在一个<noscript>
元素中来迎合非JavaScript浏览器:
<link rel="stylesheet" href="css.css" media="none" onload="if(media!='all')media='all'"><noscript><link rel="stylesheet" href="css.css"></noscript>
您可以在www.itcha.edu.sv中查看操作
来源http://keithclark.co.uk/