- ベストアンサー
自分が書いているCSSのバージョンが分からない
- 自分が書いているCSSのバージョンがどれなのか分からないです。CSSにはCSS1からCSS3までのバージョンがありますが、自分が今書いているCSSがどのバージョンなのか確認する方法が知りたいです。
- CSSのサイトや書籍を使ってスタイルシートを書いていますが、どのバージョンのCSSを書いているのかがわかりません。具体的には、セレクタを指定する記述方法やプロパティの使い方によって、どのバージョンのCSSを意識して書いているのかを知りたいです。
- 自分が書いているCSSにはCSS1とCSS2が混在しているかもしれないですが、それでも問題はありませんか?CSSのバージョンによってサポートされるプロパティや機能が異なるため、混在している場合には互換性の問題が発生する可能性があります。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
スタイルシートに関しては、バージョン情報は意味ないです。 ブラウザが対応しているか否かだけです。 HTMLについても、「ブラウザは、HTMLの文書定義に関わらず可能な限り表示を試みる」よう仕様で求められています。HTMLについては、だからと言って、それに期待して書くことは禁じられています。なぜならエラー処理の方法がブラウザによって異なるからです。 XHTMLは、そもそも文書エラーは拒否されます。(だからXHTMLは使わない) >自分が書いているCSSがCSS1とCSS2が混在したような書き方をしている場合も あるってことですよね? だと思います。 .menue{}とか#message{}なんてのは、CSS1の書き方です。CSS2以降は基点となるセレクタを書かなければならないので div.menue{}、.menue{}と書けば基点となるセレクタを*(全称セレクタ)と解釈、すなわち*.menue{}---*は詳細度0 として解釈するようになっています。 私は一意セレクタ以外は、基点セレクタを書くようにしています。一意セレクタはそのHTMLにひとつしかないので、わざわざ基点セレクタを書かなくても特定できますから。 このようにCSSでは、後の仕様で定められたことと齟齬が生じないように工夫されていますから、混在しても影響はないのですが、CSS2については、CSS2.1になった時点で一部変更になった部分があるため、現実にはフェブ標準とみなされているCSS2.1で記述するのが良いでしょう。 特に詳細度の計算などカスケーディングや、displayの値は変更になっています。 気をつけないとならない部分もあります。プロパティ値が解釈されないとき、そのすべての指定が無視されるものですね。background-color:rgba(255,255,255,0.5)とすると、この指定はCSS3のrgbaを解釈できないブラウザは、すべてを無視してinheritになります。
その他の回答 (2)
- ORUKA1951
- ベストアンサー率45% (5062/11036)
>ある部分においてCSS3で書いていたとするならばそれはあるブラウザでは動かなかったり・・・そういうイメージですかね。 バージョンどころか、同じバージョンでもおきます。 例えば、display:inline-block;というCSS2.1(ウェブ標準として認められている)を古いIEは解釈しません。 気をつけないとならないのは、 color:rgba(0,0,0,0.5); と指定した場合、rgbaに対応していないブラウザは、エラーとしてすべてを無視します。そのため color:rgb(0,0,0); color:rgba(0,0,0,0.5); と書かなければならないことになります。 一般的に、HTMLに限らず、デザインではなく内容が重視されるので、たとえスタイルシートが利用できないユーザーエージェントで利用されても、利用できるようHTMLをきちんと書くことが大前提です。 例えば、視覚障害の人がスクリーンリーダーでページを閲覧するときに、スクリーンリーダーがきちんと読んでくれるように・・・。Lynxのようなテキストブラウザで利用しているユーザーにも内容が正しく伝わるように。--Lynxで見ても ⇒(ほとんどの検索エンジンのスパイダーには Lynx で見えるようにサイトが映ります)。( http://support.google.com/webmasters/bin/answer.py?hl=ja&answer=35769#2 ) 読み飛ばしていましたが >XHTML1.0 StrictまたはTransitional+CSS 他のアプリケーションで利用するとかHTML4.01strict が将来を考えると楽でしょう。transitinalは、1999年の勧告以来「この仕様における、他のDTDセットではなく strict DTD に適合する文書を作るよう推奨する。( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/conform.html#h-4.1 )」です。 HTML5は、HTML4.01strictの改訂版です。 HTML5,CSS3ははっきりと、対応できたものから利用されるようになるだろうと宣言されています。
- 澁谷 聡美(@roseheart)
- ベストアンサー率45% (15/33)
CSS3で出来る事 面白いアニメーションや角を丸くする、 影やグラデーション等を付けるなど その他の機能があります。 記述方法は、他のCSSと変わりないです。 IEの最新版でも限定されて不可能ですので CSSを使用する際には、 googleのChromeをダウンロードして下さい。 http://www.google.co.jp/intl/ja/chrome/browser/ 詳しくは、無料の動画のドットインストールで 勉強することをおすすめします。 http://dotinstall.com/
お礼
そうですか、やはりCSSのバージョンは自分がどう書くかで CSS1とCSS2が混在するような書き方もある。ということみたいですね。 たとえば複数のバージョンのCSSの書き方を混在させたコードの中で ある部分においてCSS3で書いていたとするならば それはあるブラウザでは動かなかったり・・・そういうイメージですかね。