cari
Rumahhujung hadapan webhtml tutorialWeb 前端性能优化概要_html/css_WEB-ITnose

优化方向

  • 页面加载速度。
  • 代码运行速度。

优化的方法

  1. 指定优化目标。目标需要是具体的,可度量的。比如,在 50Kb 每秒的网络环境下,加载首屏所用时间少于 2 秒。
  2. 从大头去优化。如果提高页面加载速度,考虑优化加载时间最长的资源。如果要提高代码运行速度,考虑优化最耗时的操作。
  3. 制定和实施优化策略。
  4. 验证。

提升页面加载速度

  • HTTP 的缓存。
    • 强缓存。
    • 协商缓存。
  • 减少 HTTP 发送内容的大小。
    • 服务器端启用压缩服务,如用 gzip。
    • 文件内容的压缩。
    • 删除无用的代码。
    • 用没有 Cookie 的域来放静态资源。
    • 选择合适的图片格式。考虑用 Webp 格式的图片。
  • 减少 HTTP 数量。
    • 多个资源文件合并一个。JS,CSS,图片(小图标可以用图片精灵 或 图标字体)。
    • 首屏的一些 CSS 可以考虑内联。
    • 体积比较小的图片可以考虑内联。
    • 避免空的 src 和 href。
  • 提升资源下载速度。
    • 使用 CDN。
    • 无阻塞加载 Script。
  • 减少 DNS 查找时间。
    • 减少域名数量。
  • 避免重定向。
  • 其他。
    • CSS 写在 中,JS 写在 前。

提升代码运行速度

JS

  • 优化耗时的循环。
  • 缓存一些耗性能的中间结果。
  • 将耗时的任务交给 worker 来做。
  • 防止内存泄漏。
  • 算法改进。

CSS

  • 如果需要动态更改CSS样式,尽量采用触发 reflow 次数较少的方式。
  • 选择器优化。
  • 避免使用 CSS 表达式。

HTML

  • 尽量不要用 iframe。
  • 减少 DOM 数量。

工具

  • YSlow 分析网站,提出提升网站性能的建议。
  • 阿里测 网站在不同地区的访问情况。
  • Chrome 开发工具中的 Profiles 和 Timeline。
  • jsPerf JS 执行效率测试。
  • Benchmark.js 同 jsPerf。

本文遵守创作共享CC BY-NC-SA 4.0协议网络平台如需转载必须与本人联系确认。

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Apakah tag root dalam dokumen HTML?Apakah tag root dalam dokumen HTML?Apr 29, 2025 am 12:10 AM

Theroottaginanhtmldocumentis.itservesasthetop-levelementthatencapsulatesallotherContent, memastikanproperdocumentstructureandbrowserparsing.

Adakah tag dan elemen HTML perkara yang sama?Adakah tag dan elemen HTML perkara yang sama?Apr 28, 2025 pm 05:44 PM

Artikel ini menerangkan bahawa tag HTML adalah penanda sintaks yang digunakan untuk menentukan unsur -unsur, manakala unsur -unsur adalah unit lengkap termasuk tag dan kandungan. Mereka bekerjasama untuk menyusun laman web.Character Count: 159

Apakah kepentingan & lt; kepala & gt; dan & lt; body & gt; Tag dalam html?Apakah kepentingan & lt; kepala & gt; dan & lt; body & gt; Tag dalam html?Apr 28, 2025 pm 05:43 PM

Artikel ini membincangkan peranan & lt; kepala & gt; dan & lt; body & gt; Tag dalam HTML, kesannya terhadap pengalaman pengguna, dan implikasi SEO. Penstrukturan yang betul meningkatkan fungsi laman web dan pengoptimuman enjin carian.

Apakah perbezaan antara & lt; strong & gt;, & lt; b & gt; tags dan & lt; em & gt;, & lt; i & gt; Tags?Apakah perbezaan antara & lt; strong & gt;, & lt; b & gt; tags dan & lt; em & gt;, & lt; i & gt; Tags?Apr 28, 2025 pm 05:42 PM

Artikel ini membincangkan perbezaan antara tag HTML ,, dan, memberi tumpuan kepada kegunaan semantik dan presentasi mereka dan kesannya terhadap SEO dan kebolehaksesan.

Sila jelaskan bagaimana untuk menunjukkan set aksara yang digunakan oleh dokumen dalam HTML?Sila jelaskan bagaimana untuk menunjukkan set aksara yang digunakan oleh dokumen dalam HTML?Apr 28, 2025 pm 05:41 PM

Artikel membincangkan menentukan pengekodan aksara dalam HTML, memberi tumpuan kepada UTF-8. Isu Utama: Memastikan paparan teks yang betul, menghalang watak -watak yang dihiasi, dan meningkatkan SEO dan kebolehcapaian.

Apakah pelbagai tag pemformatan dalam html?Apakah pelbagai tag pemformatan dalam html?Apr 28, 2025 pm 05:39 PM

Artikel ini membincangkan pelbagai tag pemformatan HTML yang digunakan untuk penstrukturan dan gaya web kandungan, menekankan kesannya pada penampilan teks dan kepentingan tag semantik untuk akses dan SEO.

Apakah perbezaan antara atribut 'ID' dan atribut 'kelas' elemen HTML?Apakah perbezaan antara atribut 'ID' dan atribut 'kelas' elemen HTML?Apr 28, 2025 pm 05:39 PM

Artikel ini membincangkan perbezaan antara atribut 'ID' dan 'kelas' HTML, yang memberi tumpuan kepada keunikan, tujuan, sintaks CSS, dan kekhususan mereka. Ia menerangkan bagaimana penggunaan penggunaannya mempengaruhi gaya dan fungsi laman web, dan menyediakan amalan terbaik untuk

Apakah atribut 'kelas' dalam HTML?Apakah atribut 'kelas' dalam HTML?Apr 28, 2025 pm 05:37 PM

Artikel ini menerangkan peranan atribut kelas HTML 'dalam kumpulan penggabungan untuk gaya dan manipulasi JavaScript, membezakannya dengan atribut' ID 'yang unik.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

MinGW - GNU Minimalis untuk Windows

MinGW - GNU Minimalis untuk Windows

Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

SublimeText3 versi Inggeris

SublimeText3 versi Inggeris

Disyorkan: Versi Win, menyokong gesaan kod!

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular