class/id の名前にハイフン区切りの文字列が使われているのはある程度歴史的経緯があります。

* CSS では、伝統的にプロパティの名前や擬似要素の名前などはハイフン区切りの文字列で統一されていました。
* CSS2 (CSS2.1 の1つ前の版)では、クラスセレクタ・IDセレクタの名前にアンダースコアを直に(エスケープせずに)含むことが文法的に許されていなかったのに対し、ハイフンは問題なく使用できました。
http://www.w3.org/TR/2008/REC-CSS2-20080411/syndata.html#tokenization
* HTML4.0 (HTML4.01 の1つ前の版)では、要素の属性としてアンダースコアを含む文字列を指定する場合、クォーテーションマークを省略することが許されていませんでしたが、ハイフンを含む属性値に対してクォーテーションマークを省略することは許されていました。
http://www.w3.org/TR/1998/REC-html40-19980424/intro/sgmltut.html#h-3.2.2

(ただし、 HTML4.01/CSS2.1 ではアンダースコアを含んでも良いように文面が修正されました。おそらく世の中のページではアンダースコアがバンバン使われており、ブラウザもそれを受け入れていたために規格が修正されたのだと思います)

記事の筆者の方は他のプログラミング言語と比較されているようですが、 CSS はもともと文法的にハイフン区切りの文字列を推奨するように作られていた節があります。少なくとも、私の知る限り、ハイフン区切りの文字列が文法的に許可されていなかったことはありませんでした。

こういう経緯を見る限り、 class/id の名前にハイフン区切りの文字列を使うのは当たり前の帰結のように思えます。古い規格とは言えど、あえて文法違反を犯す必要はどこにもないですから……

12:36 pm, reblogged by hollywoodscandal
permalink
tagged: tips,


Notes
  1. t-n reblogged this from otsune
  2. kkcnnil reblogged this from syoichi
  3. kazzxz reblogged this from syoichi
  4. alicethequeen reblogged this from d6rkaiz
  5. d6rkaiz reblogged this from otsune
  6. sdwrn2sdwrn reblogged this from otsune
  7. dara-j reblogged this from kasei-san
  8. ayu reblogged this from syoichi
  9. illmode reblogged this from otsune
  10. yamaeda reblogged this from saitamanodoruji
  11. saitamanodoruji reblogged this from otsune
  12. kzgwss reblogged this from gtokio
  13. obakehouse reblogged this from hirotakajp
  14. softbear reblogged this from otsune
  15. sjmp reblogged this from katakori
  16. hyu-ruri reblogged this from syoichi
  17. nobby0-0 reblogged this from otsune
  18. kasei-san reblogged this from otsune
  19. lugecy reblogged this from otsune
  20. atm09td reblogged this from otsune
  21. uessai-text reblogged this from otsune
  22. hirotakajp reblogged this from gtokio
  23. wktksan reblogged this from otsune
  24. taka16 reblogged this from syoichi
  25. kurano reblogged this from otsune
  26. tyshu reblogged this from otsune
  27. kechol reblogged this from otsune
  28. gtokio reblogged this from otsune
  29. checkmydesk reblogged this from otsune
  30. maechuu reblogged this from otsune
  31. pixtex reblogged this from otsune
  32. otafood reblogged this from otsune
  33. tmbtter reblogged this from otsune
  34. recursive-reflection reblogged this from otsune
  35. futureisfailed reblogged this from otsune
  36. otsune reblogged this from onykue
  37. teraminato reblogged this from 4mat