2013-01-04 20 views
1

有人可以給我理由爲什麼(或不)我們創建一個行html?成本和收益一行html

我知道只是減少文件大小(好處),但在服務器中,我們必須添加一些函數來生成一行html(服務器成本),否則我們將有麻煩,當我們需要改變一些代碼(編輯成本)。

+0

你有沒有*試過*編輯一行,幾百KB的HTML文件? – BoltClock

+0

是否與該主題有關?有很多工具可以用來編輯它。 – Reinstar

+0

你提到了編輯費用,我同意:編輯一個班輪只有一個或兩個步驟,因爲你限制了編輯工具的選擇 – wuppi

回答

0

你不應該縮小你的HTML。這是不值得的時間和編輯時你將不得不做的工作。看看這個非常好的answer
儘管你應該優化你的CSS。有一個免費的程序:Scout,它檢查你的css文件的變化,並自動創建它的縮小版本。它實現了Sass,這將使編碼CSS更容易。你應該試試。

0

您不需要像那樣手動創建HTML。就我個人而言,我的CMS緩存它的輸出爲靜態文件提供給用戶。在緩存之前,它運行:

$ tocache是​​要顯示的頁面內容。我這樣做,然後寫入磁盤。然後,Apache爲靜態內容提供服務,而不是在隨後的訪問中避免使用DB和PHP。

// Remove white space 
$tocache = str_replace(array("\n", "\t","\r")," ",$tocache); 

// Remove unnecessary closing tags (I know </p> could be here, but it caused problems for me) 
$tocache = str_replace(array("</option>","</td>","</tr>","</th>","</dt>","</dd>","</li>","</body>","</html>"),"",$tocache); 

// remove ' or " around attributes that don't have spaces 
$tocache = preg_replace('/(href|src|id|class|name|type|rel|sizes|lang|title|itemtype|itemprop)=(\"|\')([^\"\'\`=<>\s]+)(\"|\')/i', '$1=$3', $tocache); 

// Turn any repeated white space into one space 
$tocache = preg_replace('!\s+!', ' ', $tocache); 

現在,我每運行一次頁面更改一次,然後向用戶提供較小的HTML。

雖然這是非常沒有意義的,因爲gzipping的過程造成了最大的差異。我這樣做是因爲我可能 - 我已經在緩存這些文件,所以爲什麼不先讓自己感覺聰明!

對於CSS和JS,我使用SASS的壓縮選項和uglifyJS將它們作爲一個小文件。

這意味着在一個頁面上我有1個HTML文件,1個CSS和1個JS,最大限度地減少了HTTP請求的數量和要傳輸的數據量。

Gzip +確保1 css和1 js是最大的節約。

+0

你去掉結束標籤嗎?讓人驚訝。這簡直太可怕了。 –

+0

這很酷,不是!它們不是必需的,代碼驗證這是否是可怕的手段。請記住,我沒有閱讀/編輯此代碼。 –