2011-12-30 10 views
5

空白を使用してhtmlドキュメントをインデントするときの全体的な影響を考え始めました。HTML空白インデントのオーバーヘッド

タブをインデントするだけではどうですか?これはコスト効率が良いでしょうか?例1のchar(\ t)と例4の文字(スペース)?

タブを使い、レンダリングされたマークアップのサイズを比較するようにasp.netページを変換することで少し実験しました。 1つのパーシャルビューの白いスペースだけを置き換えると、22kbサイズのページが19,4kb - > 12%に縮小されました。すべての字下げを変更すると、ページが16,7kb - 24%削減に割り当てられました! (検証にChrome開発ツールとFiddlerを使用しました)

私の推論は鳴っていますか? HTMLの字下げにタブを使用する必要がありますか?スペース(エキゾチックなブラウザとの互換性など)を使用する理由はありますか?

ps。 Stackoverflowもスペースを使用するようです。 SOのメインページをタブを使用するように変換すると、9%減少しました。これは有効な観測ですか?もしそうなら、なぜ彼らはタブを使用していないのですか?

+1

'\ t'は実際には1つの文字です。 –

+2

圧縮を考慮していません。オンの場合、これらの違いははるかに小さくなります。 – Oded

+1

で、イベントタブを使用しないと、ページサイズが減少します。 htmlにはインデントの概念がありません。プログラマーはインデントを行う。本当に最適化されたサイトでは、タブもスペースも使用しません。 – BigMike

答えて

5

StackOverflow use HTTP Compression - これをオンにすると、スペースとタブの使用の違いが大きくなります。

信頼できる結果を得るには、圧縮されたバージョンに対してrun your testsが必要です。

ブラウザがサーバーでサポートされている圧縮方式をサポートしていない場合には、ポイントがあります。

+1

本当にありがとうございます。これは良い学習経験です。あなたがリンクしているウィキペディアの記事:「Googleのエンジニア、Arvind JainとJason Glasgowは、ユーザーが圧縮コンテンツを受け取らない場合、ページの読み込み時間が増加するため、毎日99人人年が無駄になると述べています – Fdr

2

最初のもの:htmlにインデントを行うルールはありません。コードの可読性とプログラムの構造については、プログラマーが行っています。もっとずっと圧縮でインデントと空白のサイズを減らすことができます。

HTMLの圧縮/圧縮/圧縮:HTMLコードを圧縮して、多数のデータを保存し、ダウンロード、解析、実行時間を短縮できます。 、ネットワークの待ち時間を減らす圧縮を強化し、より高速なブラウザの読み込みと実行:

StackOverflowのは、HTTP圧縮を使用しています

により縮小HTMLは、CSSを縮小化し、JSのものと同じ利点があります。さらに、HTMLにはインラインJSコード(タグ内)とインラインCSS(タグ内)が頻繁に含まれているため、これらも同様に縮小すると便利です。

注:このルールは実験的なものであり、現在は厳格なHTML整形式ではなくサイズ縮小に焦点を当てています。ルールの将来のバージョンもまた、正確さを考慮に入れます。現在の動作の詳細については、Page Speed wikiを参照してください。

ヒント:HTMLファイルを参照するページに対してページスピードを実行すると、それが自動的にファイルに(これは任意のインラインJavaScriptとCSSにJSMinとcssmin.jsを適用します)ページスピードHTMLコンパクタを実行し、縮小された出力を設定可能なディレクトリに保存します。

は参照してください:http://code.google.com/speed/page-speed/docs/payload.html#MinifyHTML

1

なぜ単純にインデントするためにタブを使用していませんか?これはコスト効率が良いでしょうか?例1のchar(\ t)と例4の文字(スペース)?

あなたがダウンロードしたHTMLのサイズを心配している場合は、タブ-VS-スペースオーバー大騒ぎしません - あなたよcompress your HTML as it goes over the wire and minify your markup, CSS, and Javascript、本当の節約を提供し、独自のコーディングガイドラインに干渉しません。