どちらもスタイルの結果に関しては同等ですが、覚えておくべき他のいくつかの要因があります。
使用*
するとファイルサイズが大きくなります
不要なアスタリスクを削除するCSSミニファイア(余分な空白などの不要なデータを削除する)を使用しない場合*
、タグが指定されていないたびに使用すると、ファイルにかなりの余分な文字が含まれ、読み込み時間が長くなります(およびより多くの帯域幅の使用)。大きなファイルを調べて、すでに配置されているアスタリスクを削除することはしませんが(本当にそうする時間があり、何年も発見できないバグを引き起こす可能性のある退屈なタスクが好きでない限り)、不要なアスタリスクを含めないことをお勧めします新しいスタイルを作成するとき、および古いスタイルを編集するときに不要なアスタリスクを削除するとき。
使用*
すると混乱を招く可能性があります
不要なときに使用*
すると、混乱を招く可能性があります。特に、新しい誰かがプロジェクトに取り組んでいて、不要なとき*
に存在することに対処していない場合(これは非常に一般的です)。
例
/**
* This matches an element with the class `alert` within
* any element within an `article` element
*/
article * .alert { /* ... */ }
vs
/**
* This matches an element with the class `alert` within
* an `article` element
*/
article *.alert { /* ... */ }
プロジェクトに100%の一貫性がある場合(そしてそのスタイルがプロジェクトに取り組んでいるすべての個人に知られている場合)、最初の例は決して起こりません(article * *.alert
代わりにそうなります)。ただし、これは理想的な状況であり、数世代の開発者の後に崩壊する可能性が高くなります(人々は代わりに独自のスタイルを使用するのが大好きです)。そのため、一貫したスタイルを使用している場合でも、新入社員が入ってきて独自のスタイルで短時間書き込みを行ったり、現在のスタイルを誤って読み取ってセレクターと一致しないコードを生成したりする可能性があります(またはその逆)。したがって、プロジェクトやWebサイトで最も多く見た(読む:排他的に)標準に固執することをお勧めします。
不要な場合は、アスタリスクを使用しないでください。
いくつかの有名なWebサイト(Facebook、Google、Yahooなど)のソースをざっと見てみると、必要がない限り(縮小されていないスタイルでも)アスタリスクを使用していないことがわかります。GitHubでいくつかのオープンソースプロジェクトを確認することもできます。
結論
アスタリスクは、絶対に必要な場合にのみ使用する必要があります(たとえば、body * p
本文以外の親を持つ段落と一致させる場合など)。これは書かれていない標準であるだけでなく(そして混乱を引き起こす可能性が低い)、スタイルシートのファイルサイズを小さくし、ウェブサイトの読み込み速度を上げます。