[解決済み】CSSで、スタイルのセットを宣言するときの「.」と「#」の違いは何ですか?[重複あり]
質問
とはどのような違いがあるのでしょうか?
#
と
.
ある要素に一連のスタイルを宣言するとき、どれを使うか決定するときのセマンティクスは何ですか?
どのように解決するのですか?
はい、違いますね...。
#
は
id セレクタ
をターゲットにするために使用されます。
シングル
は一意な ID を持つ特定の要素ですが、. は
クラスセレクタ
をターゲットとするために使用されます。
複数
要素を特定のクラスで表示します。別の言い方をすれば
-
#foo {}
は シングル という属性で宣言された要素にid="foo"
-
.foo {}
スタイル すべて 要素に、属性class="foo"
(一つの要素に複数のクラスを割り当てることもできます。空白で区切るだけです。class="foo bar"
)
代表的な使用例
一般的には、一度しか表示されないことが分かっているもの、例えば、サイドバーやバナーエリアなどの高レベルのレイアウトDivのようなものをスタイル付けするために、#を使用します。
クラスは、スタイルが繰り返される場合に使用されます。たとえば、エラー メッセージ用の特別な形式のヘッダーを作成する場合、スタイル
h1.error {}
にのみ適用されます。
<h1 class="error">
特異性
セレクタが異なるもう一つの側面は、その特異性です。idセレクタはclassセレクタよりも特異性が高いと判断されます。これは、スタイル
衝突
で定義されたものが、より特殊なセレクタを上書きします。例えば
<div id="sidebar" class="box">
のルールは
#sidebar
のルールと矛盾する場合は、上書きされます。
.box
CSSセレクタについてもっと知りたい
参照 選択チュートリアル CSS セレクタは非常に強力で、「# は DIV に使うもの」という認識でいるのであれば、CSS をより効果的に利用する方法を学ぶとよいでしょう。
編集:Selectutorialは、空の上の大きなウェブサイトに行ったかもしれないように見えるので、これを試してみてください。 アーカイブリンク 代わりに
関連
-
[解決済み] リンクにアニメーションGIFを表示し、ホバーとリセットで再生する方法
-
[解決済み] DIVの背景色が表示されない
-
[解決済み] Bootstrap 4のナバーボタンのアイコンの色を変更するにはどうすればよいですか?
-
[解決済み] エレメントの角を面取りする方法を教えてください。
-
[解決済み] CSSでcellpaddingとcellspacingを設定する?
-
[解決済み] SCSSとSassの違いは何ですか?
-
[解決済み] visibility:hiddenとdisplay:noneの違いは何ですか?
-
[解決済み] CSSセレクタの"~"(チルダ/スクイグル/ツイドル)はどういう意味ですか?
-
[解決済み] CSSセレクタの「+」(プラス記号)の意味は何ですか?
-
[解決済み] Normalize.cssとReset CSSの違いは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン