ありません。
テキストエディター(Gedit)の構文の強調表示をハイフンで乱すため、私は常にアンダースコアを使用していますが、それは個人的な好みです。
私はこれらの慣習が至る所で使われているのを見てきました。自分が最も使いやすいと思うものを使用します。読みやすく、見やすく、使いやすいので入力も簡単です。たとえば、キーボードの下側にアンダースコアキーがある場合(可能性は低いですが、完全に可能です)、ハイフンを使用します。自分に最適なものを選びましょう。さらに、これらの3つの規則はすべて簡単に読み取ることができます。チームで作業している場合は、チームが指定した規則(存在する場合)を守るようにしてください。
2012年の更新
時間の経過とともにプログラム方法を変更しました。現在thisIsASelector
はハイフンの代わりにキャメルケース()を使用しています。後者はかなり醜いです。時間の経過とともに簡単に変わる可能性のある、好きなものを使用してください。
2013年更新
毎年物事を混ぜ合わせたいようです... Sublime Textに切り替えて、Bootstrapをしばらく使用した後、ダッシュに戻りました。今の私には、un_der_scoresやcamelCaseよりもずっときれいに見えます。私の元のポイントはまだ残っています:標準はありません。
2015年の更新
ここでの規則による興味深いコーナーケースはRustです。私は本当に言語が好きですが、以外のものを使用して何かを定義すると、コンパイラーは警告を出しますunderscore_case
。警告をオフにすることもできますが、興味深いことに、コンパイラーはデフォルトで規則を強く推奨しています。大規模なプロジェクトでは、それが悪いことではない、よりクリーンなコードにつながると思います。
更新2016(あなたがそれを求め)
今後のプロジェクトにBEM標準を採用しました。クラス名はかなり冗長になりますが、クラスとそれに付随するCSSに優れた構造と再利用性を与えると思います。BEM は実際には標準だと思います(つまりno
、yes
おそらく私はそうなるでしょう)が、プロジェクトで使用するかどうかはあなた次第です。最も重要なことは、選択した内容と一致することです。
更新2019(あなたがそれを求め)
しばらくCSSを書かなかった後、私は彼らの製品の1つでOOCSSを使用する場所で働き始めました。私は個人的に、クラスをどこにでも散らかすのはかなり不愉快だと思っていますが、HTMLとCSSの間を常に移動する必要がないので、非常に生産的に感じられます。
しかし、私はまだBEMに落ち着いています。冗長ですが、名前空間により、Reactコンポーネントでの操作が非常に自然になります。また、ブラウザのテスト時に特定の要素を選択するのにも最適です。
OOCSSとBEMは、世の中にあるCSS標準のほんの一部です。CSS はそれほど良くないので、あなたに合ったものを1つ選んでください-それらはすべて妥協に満ちています。
アップデート2020
今年は退屈なアップデートです。まだBEMを使用しています。上記の理由により、私の立場は2019年のアップデートから実際には変更されていません。チームのサイズに合わせて調整し、CSSの貧弱な機能セットを好きなだけ非表示にする機能を使用してください。