前端优化还可以这么优化!_html/css_WEB-ITnose
做了将近两年的前端工作,我也来总结总结一下在工作中学到的经验 。
首先了,跟着我的思维一起走,用户打开网页的这个动作,可以理解为 涉及到如下 两个大项 浏览器 和服务端 。
我先谈谈服务器端 ,如图
上图可以看出 访问页面动作(客户端) 在服务端拿HTTP 。既然是拿东西那就好说了,(求更合适的比喻)
一:速度要快,前端能做的就是使用CDN服务了。
二:够轻,前端能做的事情有很多,比如压缩图片 压缩css js文件 html+css高效使用 (避免 table tr td 和 .div ul li span div{} 等等类似的代码出现) ,json数据交互(比xml txt 轻n多倍啊)。
三:次数少, 比如合成图片 css js文件整合 , 缓存 (cookie,缓存重要的东西即可 ,因为缓存是以文件的方式存在客户端的,若是太大会影响浏览器读取文件的效率)
下面了我们就来看看浏览器和客户端之间的关系了,同样先看图
一: 浏览器解析页面的顺序是从上到下的,而js是浏览器中的霸主(因为浏览器在执行javascript时 是不能同时做其他操作的javascript执行完后浏览器才能继续渲染页面。),
所以css放在 头部,js放在底部。
二:Repaint(重绘) Reflow(重排) 重绘就是一个元素的外观被改变,但是没有改变布局(宽高)的情况 如改变 outline 颜色 背景色等等。 重排就是DOM的变化影响到了元素
的宽高,浏览器会重新计算元素的宽高,会影响页面的排版,这也是reflow低效的原因,如改变窗口大小 改变文字大小 内容改变等等。解决方案是尽可能避免reflow,难以
避免的话尽量将元素定位成fixed和absolute。
三: css的效率 id>class>tag>伟类 。这个不做多的解释。
四:DOM的操作。js和DOM可以看成两个岛,js每操作一次DOM元素便要经过一次桥,操作的次数越多那么过桥的次数越多 效率就低了 所以尽量减少次数。而且修改DOM元素
会造成重绘和重排,循环操作DOM元素那就是更大的罪恶了。
五:另外就是cookie了。大家都懂的。
一总结发现优化就是这么回事儿,不过我总觉得我的比喻不是很恰当,大家要是有好的比喻的话 一定要告诉我,方便大家一起学习和理解。我的QQ是523463345

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Cache kemas kini laman web akaun rasmi, perkara ini mudah dan mudah, dan ia cukup rumit untuk minum periuknya. Anda bekerja keras untuk mengemas kini artikel akaun rasmi, tetapi pengguna masih membuka versi lama. Dalam artikel ini, mari kita lihat kelainan dan bertukar di belakang ini dan bagaimana menyelesaikan masalah ini dengan anggun. Selepas membacanya, anda boleh dengan mudah menangani pelbagai masalah caching, yang membolehkan pengguna anda sentiasa mengalami kandungan segar. Mari kita bincangkan asas -asas terlebih dahulu. Untuk meletakkannya secara terang -terangan, untuk meningkatkan kelajuan akses, penyemak imbas atau pelayan menyimpan beberapa sumber statik (seperti gambar, CSS, JS) atau kandungan halaman. Kali seterusnya anda mengaksesnya, anda boleh mengambilnya secara langsung dari cache tanpa perlu memuat turunnya lagi, dan ia secara semula jadi cepat. Tetapi perkara ini juga pedang bermata dua. Versi baru dalam talian,

Artikel ini menunjukkan penambahan sempadan PNG yang cekap ke halaman web menggunakan CSS. Ia berpendapat bahawa CSS menawarkan prestasi unggul berbanding dengan JavaScript atau perpustakaan, memperincikan cara menyesuaikan lebar sempadan, gaya, dan warna untuk kesan halus atau menonjol

Artikel ini membincangkan menggunakan atribut pengesahan bentuk HTML5 seperti had, corak, min, max, dan panjang untuk mengesahkan input pengguna secara langsung dalam penyemak imbas.

Artikel ini membincangkan html & lt; datalist & gt; elemen, yang meningkatkan bentuk dengan menyediakan cadangan autokomplete, meningkatkan pengalaman pengguna dan mengurangkan kesilapan. Kira -kira: 159

Artikel ini membincangkan html & lt; kemajuan & gt; elemen, tujuan, gaya, dan perbezaan dari & lt; meter & gt; elemen. Tumpuan utama adalah menggunakan & lt; kemajuan & gt; untuk menyelesaikan tugas dan & lt; meter & gt; untuk stati

Artikel ini membincangkan html & lt; meter & gt; elemen, digunakan untuk memaparkan nilai skalar atau pecahan dalam julat, dan aplikasi umum dalam pembangunan web. Ia membezakan & lt; meter & gt; dari & lt; kemajuan & gt; dan Ex

Artikel membincangkan amalan terbaik untuk memastikan keserasian silang pelayar HTML5, memberi tumpuan kepada pengesanan ciri, peningkatan progresif, dan kaedah ujian.

Artikel ini membincangkan & lt; iframe & gt; Tujuan TAG dalam membenamkan kandungan luaran ke dalam halaman web, kegunaan umum, risiko keselamatan, dan alternatif seperti tag objek dan API.
