目录
先进的内容优先级技术和工具" >先进的内容优先级技术和工具
使用 PurgeCSS 和 Critical 提取关键 CSS" >使用 PurgeCSS 和 Critical 提取关键 CSS
使用 Webpack 进行代码分割和动态导入" >使用 Webpack 进行代码分割和动态导入
图像优化和响应式图像" >图像优化和响应式图像
资源提示:预加载、预取和预连接" >资源提示:预加载、预取和预连接
使用 Google Workbox 实施 Service Worker" >使用 Google Workbox 实施 Service Worker
结论" >结论
首页 web前端 html教程 面向 Web 开发人员的高级内容优先级技术

面向 Web 开发人员的高级内容优先级技术

Nov 23, 2023 am 11:17 AM
web前端

创建高性能和响应式网站是 Web 开发人员的首要任务。实现此目的的一种方法是通过内容优先级,这涉及在非关键内容之前加载关键内容。在本文中,我们将探索先进的技术和工具,帮助 Web 开发人员使用内容优先级优化他们的项目。

先进的内容优先级技术和工具

使用 PurgeCSS 和 Critical 提取关键 CSS

使用 PurgeCSS ( https://purgecss.com/ ) 和 Critical ( https://github.com/addyosmani/ritic )仅提取渲染首屏内容所需的必要CSS规则。PurgeCSS 删除未使用的 CSS,而 Critical 提取并内联关键 CSS,从而改进关键内容的渲染。

例子

安装 PurgeCSS 和 Critical:

npm install purgecss critical
登录后复制

为 PurgeCSS 创建配置文件:

// purgecss.config.js
module.exports = {
  content: ['./src/**/*.html'],
  css: ['./src/css/main.css'],
  output: './dist/css/',
};
登录后复制

提取并内联关键 CSS:

const critical = require('critical').stream;
const purgecss = require('@fullhuman/postcss-purgecss');
const postcss = require('postcss');
// 使用 PurgeCSS 处理 CSS 文件
postcss([
  purgecss(require('./purgecss.config.js')),
])
  .process(cssContent, { from: 'src/css/main.css', to: 'dist/css/main.min.css' })
  .then((result) => {
    // 使用 Critical 内联关键 CSS
    gulp.src('src/*.html')
      .pipe(critical({ base: 'dist/', inline: true, css: ['dist/css/main.min.css'] }))
      .pipe(gulp.dest('dist'));
  });
登录后复制

使用 Webpack 进行代码分割和动态导入

利用Webpack 中的代码分割和动态导入 ( https://webpack.js.org/guides/code-splitting/ ) 将 JavaScript 分解为更小的块。这可确保最初仅加载关键脚本,而在需要时加载非关键脚本。

例子

// webpack.config.js
module.exports = {
  // ...
  optimization: {
    splitChunks: {
      chunks: 'all',
    },
  },
};
// 动态导入的使用
async function loadNonCriticalModule() {
  const nonCriticalModule = await import('./nonCriticalModule.js');
  nonCriticalModule.run();
}
登录后复制

图像优化和响应式图像

使用 ImageOptim ( https://imageoptim.com/ ) 或 Squoosh ( https://squoosh.app/ ) 等工具优化图像。使用srcset属性和现代图像格式(例如 WebP 或 AVIF)实现响应式图像,以提高性能。

例子

<picture>
  <source srcset="image.webp" type="image/webp">
  <source srcset="image.avif" type="image/avif">
  <img src="image.jpg" alt="Sample image">
</picture>
登录后复制

资源提示:预加载、预取和预连接

rel="preload"使用、 、rel="prefetch"和等资源提示rel="preconnect"来确定关键资源加载的优先级,并预取非关键资源以供将来导航。

例子

<!-- 预加载关键资源 -->
<link rel="preload" href="critical.css" as="style">
<!-- 预取非关键资源 -->
<link rel="prefetch" href="non-critical-image.jpg" as="image">
<!-- 预连接到重要的第三方来源 -->
<link rel="preconnect" href="https://fonts.gstatic.com">
登录后复制

使用 Google Workbox 实施 Service Worker

使用 Google 的 Workbox ( https://developers.google.com/web/tools/workbox ) 设置服务工作线程来缓存关键资源并在后续页面加载时立即为其提供服务,从而提高性能。

例子

// workbox.config.js
module.exports = {
  globDirectory: &#39;dist/&#39;,
  globPatterns: [&#39;**/*.{html,js,css,woff2}&#39;],
  swDest: &#39;dist/sw.js&#39;,
};
// 使用 Workbox CLI 生成 Service Worker
npx workbox generateSW workbox.config.js
登录后复制

结论

通过利用先进的内容优先级技术和工具,Web 开发人员可以显着提高其网站的性能和用户体验。首先专注于提供关键内容并推迟非关键内容可以让用户快速访问他们需要的信息。在您的 Web 项目中实施这些先进技术将提高感知性能、降低跳出率并提高用户参与度。

以上是面向 Web 开发人员的高级内容优先级技术的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
威尔R.E.P.O.有交叉游戏吗?
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

web前端有哪些框架 web前端有哪些框架 Aug 23, 2022 pm 03:31 PM

web前端框架有:1、Angular,一种用于创建单一应用程序界面的前端框架;2、react,一个用来构建用户界面的JavaScript开发框架;3、vue,一套用于构建用户界面的渐进式JavaScript框架;4、Bootstartp,是基于HTML、CSS、JavaScript的前端框架;5、QUICK UI,一套企业级web前端开发解决方案;6、SUI,一个前端组件库。

什么是web前端工程师 什么是web前端工程师 Aug 23, 2022 pm 05:10 PM

web前端工程师是从事Web前端开发工作的工程师,主要工作是进行网站的开发、优化、完善;主要职责是利用各种专业技术进行客户端产品的开发,然后结合后台开发技术模拟整体效果,为网站上提供的产品和服务实现一流的Web界面,优化代码并保持良好兼容性,致力于通过技术改善用户体验。

2023年精选Web前端面试题大全及答案(收藏) 2023年精选Web前端面试题大全及答案(收藏) Apr 08, 2021 am 10:11 AM

本篇文章给大家总结一些值得收藏的精选Web前端面试题(附答案)。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

【吐血整理】2023年最新前端面试题大全及答案(收藏) 【吐血整理】2023年最新前端面试题大全及答案(收藏) Jun 29, 2022 am 11:20 AM

本篇文章给大家总结一些值得收藏的精选Web前端面试题(附答案)。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

web前端笔试题库之HTML篇 web前端笔试题库之HTML篇 Apr 21, 2022 am 11:56 AM

总结了一些web前端面试(笔试)题分享给大家,本篇文章就先给大家分享HTML部分的笔试题(附答案),大家可以自己做做,看看能答对几个!

如何区分H5,WEB前端,大前端,WEB全栈? 如何区分H5,WEB前端,大前端,WEB全栈? Aug 03, 2022 pm 04:00 PM

本文带你快速区分H5、WEB前端、大前端、WEB全栈,希望对需要的朋友有所帮助!

web标准有哪些好处 web标准有哪些好处 Sep 20, 2023 pm 03:34 PM

web标准的好处有提供更好的跨平台兼容性、可访问性、性能、搜索引擎排名、开发和维护成本、用户体验以及代码的可维护性和可重用性。详细说明:1、跨平台兼容性,确保网站在不同的操作系统、浏览器和设备上都能正确显示和运行;2、提高可访问性,可以确保网站对所有用户都是可访问的;3、加快网站加载速度,用户可以更快地访问和浏览网站,提供更好的用户体验;4、提高搜索引擎排名等等。

web标准默认的端口有哪些 web标准默认的端口有哪些 Sep 20, 2023 pm 04:05 PM

web标准默认的端口有:1、HTTP,默认端口号为80;2、HTTPS,默认端口号为443;3、FTP,默认端口号为21;4、SSH,默认端口号为22;5、Telnet,默认端口号为23;6、SMTP,默认端口号为25;7、POP3,默认端口号为110;8、IMAP,默认端口号为143;9、DNS,默认端口号为53;10、RDP,默认端口号为3389等等。

See all articles