如何進行網站的性能優化
content方面
- 減少http請求 合并文件 css精靈圖
- 減少 DNS 查詢 DNS緩存 將資源分布到恰當數量的主機名
- 減少 DOM 元素的數量
Server方面
- 使用CDN
- 配置Etag
- 對組件使用 Gzip 壓縮
Cookie方面
- 減小cookie大小
css方面
- 將樣式表放到頁面頂部
- 不使用css表達式
- 使用不使用@import
javascript方面
- 將腳本放到頁面底部
- 將js和css從外部引入
- 壓縮 js 和css
- 刪除不需要的腳本
- 較少DOM的訪問
圖片方面
- 優化css精靈圖
- 不要在html中拉伸圖片
HTTP狀態嗎
狀態碼 | 含義 |
---|---|
100 | 繼續,一般在發送 post請求時,已經發送了http header之后服務器將返回此信息,表示確認,之后發送具體的參數信息 |
200 | 正常返回信息 |
201 | 請求成功,并且服務器創建了新資源 |
202 | 服務器已接收請求但是尚未處理 |
301 | 請求的網頁已經永久移動到新的位置 |
302 | 臨時性重定向 |
303 | 臨時性重定向,而且總是使用get請求新的url |
304 | 自從上次請求后,請求的網頁未修改過 |
400 | 服務器無法理解請求的格式,客戶端不應該嘗試再次使用相同的內容發起請求 |
401 | 請求尚未授權 |
403 | 禁止訪問 |
404 | 請求的網頁不存在 |
500 | 服務器錯誤 |
503 | 服務器暫時無法處理請求 |
HTML5增加新特性
- video和audio元素 用于媒介回訪
- canvas用于繪畫
- localStorage 長期儲存數據 瀏覽器關閉后數據不會丟失
- sessionStorage 在瀏覽器關閉后會自動刪除
- 添加了一些更加語義化的標簽 header nav footer等
cookie、localStorage、sessionStorage之間的區別
- cookie的作用是為了表示用戶身份而儲存在用戶本地終端上的數據
- cookie中的數據始終會在同源的http請求中攜帶 在瀏覽器和服務器之間來回傳遞
- sessionStroage和localStorage不會將數據發給服務器 只是在本次存儲
- cookie的數據不能超過4K
- 另外兩個雖然也有限制但是遠超過cookie的大小限制 可以達到5M甚至更大
- localStorage的數據會一直保存 瀏覽器關閉后也不會刪除 除非主動刪除
- sessionStroage數據在當前瀏覽器關閉后主動刪除
- cookie 過期時間決定數據的刪除與否
W3c的標準是什么
- 標簽的閉合
- 標簽的小寫
- 不亂嵌套
- 使用外連css和js
HTML的全局屬性有哪些
- class:全局設置類標識
- id:元素id,文檔內的唯一
- data-*:為元素添加自定義屬性
- lang:元素內容的語言
- style:行內的css樣式
- title:元素相關的建議信息