DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> WEB網站前端 >> 前端技巧 >> 空路徑對頁面性能影響的解決方案
空路徑對頁面性能影響的解決方案
編輯:前端技巧     

前幾天在 Google Reader 中看到玉伯博客的分享——空路徑對頁面性能的影響。確實,在寫 CSS 的時候,用 background:url(#) 還是會對頁面進行多一次請求的。

空路徑對頁面性能影響的解決方案

不過,因為寫多 CSS,一般需要用空背景來解決 bug 的時候,測試結果用 background:url(about:blank) 才是我們想要的:解 bug,不影響性能。那很簡單,解決方案不就不出來?等等,讓我們來做個測試吧。
測試代碼:

復制代碼代碼如下:
<!DOCTYPE html>
<html lang="">
<head>
<meta charset="utf-8" />
<title>empty src</title>
<style>body{font-family:courier, 'courier new';}code{background:#f7f7f7;border:1px solid #ddd;padding:0 3px;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;font-size:12px;color:#080;}p{font-size:12px;color:#999;}cite{font-size:14px;color:#c30;}</style>
</head>
<body>
<h3>一、發送請求:</h3>
<p>浏覽器:<code>All</code>, 像 <code>chrome</code> 等部分浏覽器,<code>hash(#)</code> 和空都只請求本路徑</p>
<ol>
<li><img src="" alt="empty image src"/></li>
<li><div style="background:url(#background)">背景圖片使用 <code>background:url(#)</code> 也是發送請求的</div></li>
<li><img src="#image" alt="image src using hash(#)"></li>
<li><img src="http://www.apple.com/favicon.ico" /></li>
</ol>
<h3>二、部分發送請求:</h3>
<p>浏覽器(延時非常小):<code>safari</code>, <code>chrome(多個 about:blank 會多次發送多次請求)</code></p>
<cite>使用 <code>about:blank</code></cite>
<ol>
<li><img src="about:blank" alt="empty image src"/></li>
<li><div style="background:url(about:blank)">hello world</div></li>
<li><code>&lt;iframe /&gt;</code><iframe src="javascript:''" frameborder="0" height="15"></iframe></li>
</ol>
<h3>二、不發送請求:</h3>
<p>浏覽器:<code>all</code>, <code>chrome(延時無效,相當於不發送請求)</code></p>
<cite>使用 <code>javascript:''</code></cite>
<ol>
<li><img src="javascript:''" alt="empty image src"/></li>
<li><code>&lt;script /&gt;</code> <script type="text/javascript" src="javascript:''"></script></li>
<li><code>&lt;iframe /&gt;</code><iframe src="javascript:''" frameborder="0" height="15"></iframe></li>
</ol>
</body>
</html>

懶得截圖了,自己自行搞搞吧,浏覽結果已經把大致的都寫在測試頁面上了。最終的解決方案是:

大膽使用 about:blank 來代替空,或者‘#’,特別是在 background-image 中使用
在 img / script / iframe 這些推薦使用 javascript:” 來解決問題
其他更好的辦法?這個測試結果有問題?隨時歡迎提供、指正。謝謝。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved