当前位置: 首页 > news >正文

重庆专业网站建设湖北网站建设制作

重庆专业网站建设,湖北网站建设制作,海外推广有前途吗,淄博网站制作平台形象在现代 Web 开发中,页面加载速度是影响用户体验和搜索引擎优化(SEO)的关键因素之一。为了提高页面加载速度,浏览器提供了一系列资源提示关键词,包括 defer、async、preload、prefetch、prerender 和 preconnect&#x…

在现代 Web 开发中,页面加载速度是影响用户体验和搜索引擎优化(SEO)的关键因素之一。为了提高页面加载速度,浏览器提供了一系列资源提示关键词,包括 deferasyncpreloadprefetchprerenderpreconnect,帮助开发者优化资源加载的优先级和顺序。

一、渲染阻塞回顾

在深入探讨资源提示关键词之前,我们需要回顾一下渲染阻塞的概念。渲染阻塞是指某些资源(如 CSS 和 JavaScript)在加载和解析过程中会阻止页面的渲染,从而延迟页面的首次内容绘制(FCP)和首次可交互时间(TTI)。
image-20211206161801072

(一)DOM 和 CSSOM

浏览器在解析 HTML 时会构建 DOM(文档对象模型),而 CSS 样式会被解析为 CSSOM(CSS 对象模型)。只有当 DOM 和 CSSOM 构建完成后,浏览器才会生成渲染树并开始渲染页面。

(二)JavaScript 的阻塞特性

JavaScript 是一种可以动态修改 DOM 和 CSSOM 的语言。因此,当浏览器遇到 <script> 标签时,必须立即执行脚本,以确保后续内容的正确解析。如果脚本是外部的,浏览器需要暂停解析 HTML,等待脚本下载和执行完成后再继续解析。

(三)CSS 的阻塞特性

CSS 也会阻塞渲染,因为浏览器需要在渲染页面之前解析所有 CSS 样式。如果 CSS 文件过大或加载过慢,会导致页面渲染延迟。

二、资源提示关键词

为了优化页面加载速度,现代浏览器提供了以下资源提示关键词,帮助开发者更好地控制资源加载的顺序和优先级。

(一)deferasync

deferasync 是用于优化 JavaScript 加载的两个属性,它们可以减少 JavaScript 对页面渲染的阻塞。
image-20211208112125053

1. async

async 表示脚本的加载和执行是异步的,不会阻塞 DOM 的构建。脚本会在下载完成后立即执行,但不会影响后续 HTML 的解析。

<script async src="script.js"></script>

特点

  • 适用于不依赖于 DOM 完全加载的脚本。
  • 适合用于加载第三方库(如统计代码)。
2. defer

defer 表示脚本的加载是异步的,但执行会在 DOM 完全解析后、DOMContentLoaded 事件触发前完成。这意味着脚本不会阻塞 DOM 的构建,但会在页面加载完成后执行。

<script defer src="myscript.js"></script>

特点

  • 适用于依赖于 DOM 完全加载的脚本。
  • 适合用于初始化页面功能的脚本。

(二)preload

preload 是一种预加载机制,用于告诉浏览器提前加载某些资源。这些资源会在页面加载时立即可用,从而减少加载时间。

<link rel="preload" href="style1.css" as="style">
<link rel="preload" href="main1.js" as="script">

特点

  • 适用于页面中必须立即加载的资源。
  • 可以通过 as 属性指定资源类型,帮助浏览器优化加载策略。

(三)prefetch

prefetch 是一种预加载机制,用于在浏览器空闲时加载页面将来可能用到的资源。这些资源会被缓存,以便在用户访问相关页面时快速加载。

<link rel="prefetch" href="/path/to/style.css" as="style">

特点

  • 适用于用户可能访问的下一个页面的资源。
  • 可以显著提升多页面应用(MPA)的用户体验。

(四)prerender

prerender 是一种更激进的预加载机制,它会在后台渲染整个页面。这意味着当用户点击链接时,页面已经加载完成,用户可以立即看到内容。

<link rel="prerender" href="https://www.keycdn.com">

特点

  • 适用于用户极有可能访问的页面。
  • 可能会增加服务器负载,需要谨慎使用。

(五)preconnect

preconnect 是一种资源提示,用于告诉浏览器提前建立连接。它可以在实际请求资源之前完成 DNS 查找、TCP 握手和 TLS 协商,从而减少请求延迟。

<link href="https://cdn.domain.com" rel="preconnect" crossorigin>

特点

  • 适用于需要频繁请求的外部资源(如 CDN)。
  • 可以显著减少首次请求的延迟。

(六)dns-prefetch

dns-prefetch 是一种资源提示,用于告诉浏览器提前进行 DNS 查找。它可以在用户浏览页面时后台进行 DNS 解析,从而减少后续请求的延迟。

<link rel="dns-prefetch" href="//fonts.googleapis.com">
<link rel="dns-prefetch" href="//www.google-analytics.com">
<link rel="dns-prefetch" href="//cdn.domain.com">

特点

  • 适用于外部资源(如字体、CDN)的 DNS 解析。
  • 可以显著减少首次请求的延迟。

三、最佳实践

(一)合理使用 deferasync

  • 使用 async 加载不依赖于 DOM 完全加载的脚本。
  • 使用 defer 加载依赖于 DOM 完全加载的脚本。

(二)预加载关键资源

  • 使用 preload 预加载页面中必须立即加载的资源。
  • 使用 prefetch 预加载用户可能访问的下一个页面的资源。

(三)提前建立连接

  • 使用 preconnect 提前建立连接,减少首次请求的延迟。
  • 使用 dns-prefetch 提前进行 DNS 查找,减少后续请求的延迟。

(四)避免过度预加载

  • 预加载资源会增加服务器负载,需要根据实际需求合理使用。
  • 避免预加载过多资源,以免浪费带宽和服务器资源。
http://www.yidumall.com/news/57927.html

相关文章:

  • 电子商务网站模板html网页设计作品集
  • 网站备案账号是什么成都百度推广开户公司
  • 旅游网站设计的目的搜索引擎优化 简历
  • 建网站建设网站网络营销策略包括哪几大策略
  • 合肥高端网站建设公司哪家好推广app是什么工作
  • 网站建设目标与期望哪个推广网站好
  • 设计手机网站建设推广找客户平台
  • 分工做网站如何seo百度seo排名优化软件
  • 济南网站建设培训学校重庆seo团队
  • 做五金有哪些网站推广软文通
  • 全网视频合集网站建设软文自动发布软件
  • 营销网站和展示型网站深圳外贸网站推广
  • 帮人做彩票网站免费自动推广手机软件
  • 纯静态做企业网站拼多多代运营一般多少钱
  • 怎么创自己的网站专业seo网络营销公司
  • 怎么给公司网站上放视频网上广告宣传怎么做
  • 做计量检定的网站seo1视频发布会
  • 铜川网站设计win7系统优化工具
  • 做网站要注意什么问题百度搜一下
  • 学网站开发的书外贸网络营销平台
  • 深圳网站建设zvge全网seo
  • 门户网站开发 系统介绍济南百度竞价代运营
  • 武汉网站制作027贵阳做网络推广的公司
  • 贷款公司如何做网站营销平台
  • 电商设计网站有哪些内容网络优化软件有哪些
  • 做美甲的网站广告公司招聘
  • 张家口网站建设哪家服务好品牌活动策划
  • 有没有做衣服的网站吗网络营销的主要手段
  • 服装设计公司效果图合肥网站优化方案
  • 设计网站的意义抖音热门搜索关键词