• ベストアンサー

classとIDの使い方?何が違うんでしょうか?

こんにちは、よく<div class"○○○○">とか<div ID=""○○○>などと記述がしてあるのですが、classとIDの違いは何でしょうか? 私はよくわからないので、全部classで書いていたのですが、やはり何かが違うからclassとIDが存在するのだろうと思ったら、気になってしょうがありません。 ちなみに全部classで書いている私は駄目なのでしょうか? また、classとIDの決定的な違いはなんでしょうか?使用方法や正しい使い方などが存在するのでしょうか? とりあえず現在、全てclassで定義しているのですが、特にこれといった問題は内容に思えます。 詳しい方がおられましたら、宜しくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Bo_Bo
  • ベストアンサー率65% (97/149)
回答No.11

#8 への返信です。 > 再度ですが、こんな感じでは駄目なんでしょうか? > classでも1つしか使用しない場合同様の効果が出来るのですが・・・。 効果が問題なのではなく、適用される範囲が問題なのです。 CSSの書式効果のみを見た場合、それがidであろうがclassであろうが関係はあ りません。 スクリプトやアンカー機能で用いないのであれば、IDを忘れ去っても良いです。 #4 でも書きましたが、 『IDを使う必要がないのなら、使わなくてよいです。』 なのです。 私は #8 の例文で、 --------------------------------------------------------------------- 印刷したくないのが「印刷したくない」のブロック以外にない場合、他の要素 にも「display:none」が適用される可能性があるのは問題ですよね。 --------------------------------------------------------------------- と書きました。 ここの『適用される可能性があるのは問題』を回避するために、範囲を明示し たのがIDです。 「そんなもの、自分はclassでも管理できる」とお考えなら、IDは別段必要な いです。 でも、第三者と共同制作する場合など、意味づけを共有しなければならない環 境では、なくてはならない機能です。 今一度、#4, #5, #8 を続けて読んでもらえば、分かると思うのですが、 どうでしょう。

404not_found
質問者

お礼

Bo_Boさん、度々本当にありがとう御座います。 >効果が問題なのではなく、適用される範囲が問題なのです。 素人ながら、心にしみました。実際大分理解が出来てきました。実際私、狭い世界のみで理解しようとしていた事が問題だと思います。それこそスクリプト等を使用した場合を考えたら理解が深まりました。 外部ファイル化した時とかでも、IDが威力を発揮しますよね? 本当にみなさんありがとう御座います。 もっと勉強していいWEBサイトが作れるようにがんばりたいと思います。

その他の回答 (12)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

>なぜ1つしか定義ができないのでしょうか? エレメント(タグ)を特定するためです。 >1つしか定義ができないものを何故皆さんは使うのでしょうか? IDは、CSSでスタイルを適用する時に特定するためだけでなく、scriptからもエレメントを特定するために使われます。 また、複数のHTML文書で、特定のエレメントに特定のスタイルを統一的にほどこす場合にも、スタイルシートは、1つで良いという使い方も考えられます。

404not_found
質問者

お礼

BLUEPIXYさん、度々ありがとう御座います。 しかし、私は納得が出来ません。 あえて1つしか定義できない物を使うより、沢山自由に定義できるclassを使ったほうが簡単なのではないでしょうか? 多分私は理解が出来ていないがために、この様なことを言っていると自分でも思います。 >エレメント(タグ)を特定するためです。 何のために特定するのですか? >IDは、CSSでスタイルを適用する時に特定するためだけでなく、scriptからもエレメントを特定するために使われます。 うーん、わかりません。 全部クラスではやっぱり駄目ですか??

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

IDは基本的に(1つのHTMLで)1つしか書けません。 複数に同じ設定をするために識別子を付けるのだったら classで定義するのが正しいと思います。

404not_found
質問者

お礼

BLUEPIXYさん、ありがとう御座います。 >IDは基本的に(1つのHTMLで)1つしか書けません。 ただ思うのは、なぜ1つしか定義ができないのでしょうか?また、1つしか定義ができないものを何故皆さんは使うのでしょうか? とても不思議です。

関連するQ&A