(1)スタイル宣言でセレクターをスタックする、(2)HTMLタグでクラスをスタックする、または(3)一意のセレクターで重複した宣言をスタックする方が良い/速いですか?
私の質問を明確にするために、それぞれの例を示します。コードの各部分は同じ最終目標を達成する必要がありますが、最終的に読み込みが速くなるかどうか、または単に好みの問題であるかどうかはわかりません。
1 (クラスセレクターが重複しています):
<style>
.one, .two, .three {color:white}
.one, .two {background:blue;height:30px}
.one, .three {width:800px}
.two, .three {font-size:16pt}
.one {font-size:10pt}
.two {width:650px}
.three {background:#333}
</style>
<div class="one"></div>
<div class="two"></div>
<div class="three"></div>
2 (インライン クラスが複製されます):
<style>
.white {color:white}
.bluebg {background:blue}
.heightThirty {height:30px}
.widthEight {width:800px}
.sizeSixteen {font-size:16pt}
.one {font-size:10pt}
.two {width:650px}
.three {background:#333}
</style>
<div class="one white bluebg heightThirty widthEight"></div>
<div class="two white bluebg heightThirty sizeSixteen"></div>
<div class="three white widthEight sizeSixteen"></div>
3 (宣言が重複しています):
<style>
.one {color:white; background:blue; height:30px; width:800px; font-size:10pt}
.two {color:white; background:blue; height:30px; font-size:16pt; width:650px}
.three {color:white; width:800px; font-size:16pt; background:#333}
</style>
<div class="one"></div>
<div class="two"></div>
<div class="three"></div>
以前は 3 番目の方法でサイトを作成していましたが、たとえばサイトの配色を変更する場合、値を変更するのが困難でした。検索/置換を実行して、別のbackground:blue
ものに変更する必要があります(ただし、一貫性がない場合、検索/置換は効果がないことがわかります)。今は、最初の方法を優先して、最初の方法と 2 番目の方法を組み合わせて使用しています。スタイル宣言を共有する要素を決定し、スタイルシートでグループ化します。
最初の方法は (少なくともこの例では) 使用する文字数が少ないため、HTML ファイルのファイルサイズが小さくなることはわかっていますが、読み込み時間についてはわかりません。そして、私が気付いていない他のものがあるかもしれません。
使用すべき方法はありますか?3 番目の方法で発生する可能性がある問題を指摘しましたが、他に (3 番目の方法で) 私が知らない問題はありますか?