摘要:優(yōu)化之壓縮我們一般都會(huì)對(duì)進(jìn)行常規(guī)壓縮,主要做去空格和換行的工作。具體的優(yōu)化策略,點(diǎn)此查看地址優(yōu)化之合并使用將多個(gè)合并在一起不要使用減少阻塞和請求拆分看起來和上面有些沖突,這也是和其它部分優(yōu)化不同的地方。
轉(zhuǎn)自 優(yōu)化你的css 感覺很有用,收藏一下
系列概述在移動(dòng)web興起的年代,速度優(yōu)化重新被大家重視起來,因?yàn)槭謾C(jī)的網(wǎng)絡(luò)環(huán)境和性能比PC端差了很多,估計(jì)大家也能感覺到用手機(jī)打開網(wǎng)頁的時(shí)候,能明顯感覺到頁面蝸牛般的速度。
這個(gè)系列的優(yōu)化會(huì)以移動(dòng)環(huán)境為基礎(chǔ),當(dāng)然絕大多數(shù)規(guī)則也同樣適合PC端。
優(yōu)化的基本原則速度優(yōu)化有一些基本思路,提前總結(jié)一下
按需加載(只加載你需要的)
并行(讓串行的事情并行起來)
壓縮(通過壓縮減少體積)
緩存(利用緩存,減少請求等待)
預(yù)測(預(yù)測用戶行為,提前發(fā)出請求)
合并(把多個(gè)零散文件合并起來,減少請求)
自動(dòng)化(讓速度優(yōu)化變成一種常規(guī),和自動(dòng)化工具(例如gulp,grunt,fis)結(jié)合,減少成本)
進(jìn)入正題,優(yōu)化你的css為什么第一篇講css,因?yàn)閏ss是最難優(yōu)化的,圖片和js你都可以延遲加載,而css不可以,你必須在dom前面加載css,你必須接受css阻塞dom渲染的現(xiàn)實(shí)。
css優(yōu)化之壓縮(cssshrink)我們一般都會(huì)對(duì)css進(jìn)行常規(guī)壓縮,主要做去空格和換行的工作。這里推薦的cssshrink會(huì)做更精細(xì)的工作,cssshrink會(huì)首先通過css parser對(duì)css進(jìn)行解析,然后有針對(duì)性的進(jìn)行優(yōu)化。例如會(huì)吧0px和0%轉(zhuǎn)換成0,bold轉(zhuǎn)換成700,字符級(jí)別的極致壓縮,為作者點(diǎn)個(gè)贊。
cssshrink具體的優(yōu)化策略,點(diǎn)此查看
cssshrink GitHub地址
css優(yōu)化之合并使用gulp-concat將多個(gè)css合并在一起
不要使用@import 減少阻塞和請求
css拆分看起來和上面有些沖突,這也是css和其它部分優(yōu)化不同的地方。 一般我們大家都習(xí)慣把css放在最上面,js放在最下面。這是一個(gè)好習(xí)慣,但是對(duì)于css來說并不是最好的選擇。
在移動(dòng)端,大家非常重視首屏?xí)r間,也就是用戶看到頁面的時(shí)間。把整個(gè)頁面的css都放在最上面,大量首屏用不到的css會(huì)阻塞首屏的展現(xiàn)。
head只放首屏能用到的css,首屏外的css下移
css使用率一般頁面經(jīng)過多人維護(hù)后,會(huì)產(chǎn)生大量用不到css,大家也不敢隨意刪除,這就需要一些檢測工具
unu
1.1 unu是一個(gè)用來檢測頁面哪些css沒有用到的Node.js模塊
1.2 優(yōu)點(diǎn):提供可視化界面,使用非常簡單,輸入url,即可查看頁面css的使用情況
1.3 缺點(diǎn):目前只支持style標(biāo)簽式的css,另外沒有執(zhí)行頁面的js
uncss
2.1 uncss是可以把頁面css沒有用到去除的模塊
2.2 優(yōu)點(diǎn):支持命令行和gulp、grunt插件,支持link方式,基于phantomjs,模擬瀏覽器執(zhí)行,支持js執(zhí)行
2.3 缺點(diǎn):僅憑一個(gè)url導(dǎo)出的css,不具有實(shí)際價(jià)值,另外不支持style標(biāo)簽
critical
3.1 critical是一個(gè)用來檢測首屏css有哪些沒用到的模塊
3.2優(yōu)點(diǎn):可以輸入首屏寬高來檢測、有g(shù)ulp、grunt插件
3.3 缺點(diǎn):不支持url,只支持本地html,不支持style標(biāo)簽
總結(jié)速度優(yōu)化對(duì)于開發(fā)人員來說是件降低生產(chǎn)力的事情,所以需要盡可能的自動(dòng)化,設(shè)置好規(guī)則,無痛優(yōu)化,同時(shí)避免后續(xù)惡化。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/111013.html
摘要:各種各樣的編碼錯(cuò)誤可能會(huì)導(dǎo)致網(wǎng)站加載速度非常慢,從而用戶離開的網(wǎng)站。同時(shí)提高網(wǎng)站加載速度也是提高網(wǎng)站排名的必要步驟之一。 翻譯:瘋狂的技術(shù)宅原文:https://likegeeks.com/improve... 為你網(wǎng)站的用戶留下良好的第一印象是非常必要的。隨著商業(yè)領(lǐng)域的競爭,擁有一個(gè)吸引人的網(wǎng)站可以幫助你脫穎而出。研究表明,如果加載時(shí)間超過3秒,會(huì)有 40% 的用戶放棄訪問你的網(wǎng)站...
摘要:性能最好具有可量化可監(jiān)測以及可改動(dòng)的特性。下文是一份年的前端性能優(yōu)化清單,闡述了作為前端開發(fā)人員,為了確保反饋速度以及瀏覽器兼容性我們需要考慮的問題。地圖設(shè)計(jì)的決定違背了性能理念,所以他在這份清單內(nèi)的順序有待考慮。 2017前端性能優(yōu)化清單 你開始使用漸進(jìn)啟動(dòng)了么?是不是已經(jīng)使用過React和Angular中tree-shaking和code-splitting兩個(gè)工具?有沒有用過Br...
摘要:性能最好具有可量化可監(jiān)測以及可改動(dòng)的特性。下文是一份年的前端性能優(yōu)化清單,闡述了作為前端開發(fā)人員,為了確保反饋速度以及瀏覽器兼容性我們需要考慮的問題。地圖設(shè)計(jì)的決定違背了性能理念,所以他在這份清單內(nèi)的順序有待考慮。 2017前端性能優(yōu)化清單 你開始使用漸進(jìn)啟動(dòng)了么?是不是已經(jīng)使用過React和Angular中tree-shaking和code-splitting兩個(gè)工具?有沒有用過Br...
摘要:性能最好具有可量化可監(jiān)測以及可改動(dòng)的特性。下文是一份年的前端性能優(yōu)化清單,闡述了作為前端開發(fā)人員,為了確保反饋速度以及瀏覽器兼容性我們需要考慮的問題。地圖設(shè)計(jì)的決定違背了性能理念,所以他在這份清單內(nèi)的順序有待考慮。 2017前端性能優(yōu)化清單 你開始使用漸進(jìn)啟動(dòng)了么?是不是已經(jīng)使用過React和Angular中tree-shaking和code-splitting兩個(gè)工具?有沒有用過Br...
摘要:延遲加載當(dāng)我們調(diào)用外部的時(shí)候,使用事件在頁面內(nèi)部被加載前,外部將不被加載腳本調(diào)用外部文件拷貝以上代碼。代碼代碼片段組合外部工具列表頁面加速優(yōu)化頁面請求工具工具大全擴(kuò)展閱讀方面的設(shè)置 內(nèi)聯(lián) CSS 優(yōu)點(diǎn) 使用內(nèi)聯(lián) CSS 可以減少瀏覽器去服務(wù)端去下載 CSS 文件 關(guān)鍵 CSS 內(nèi)聯(lián)到 HTML 文件中 缺點(diǎn) CSS 文件沒法被緩存 注意:該方法只適用于很小的 CSS...
閱讀 3513·2023-04-25 15:52
閱讀 585·2021-11-19 09:40
閱讀 2598·2021-09-26 09:47
閱讀 1031·2021-09-22 15:17
閱讀 3555·2021-08-13 13:25
閱讀 2223·2019-08-30 15:56
閱讀 3468·2019-08-30 13:56
閱讀 2104·2019-08-30 11:27