「みんな教えて! 選手権!!」開催のお知らせ

XHTML1.0 StrictまたはTransitional+CSSで制作をしていてCSSのバージョンで疑問があります。
CSSにはCSS1~3まであるようで
自分が今記述しているCSSがバージョン何で書いているのかが分かりません。

CSSのサイトや書籍を手にしてスタイルシートCSSを書いていっているんですが
そこにはCSSバージョンなんて書いてないんです。どうやったらわかりますか?
書籍はHTML/XHTML&スタイルシート レッスンブック(ソシム)を使っています。

【具体的な疑問】
自分がコーディングしているCSSのバージョンとは
このようにセレクを指定したらこのバージョン、こう記述したらこのバージョンって言う風に自分で意識するものなのですか?
てことは、自分が書いているCSSがCSS1とCSS2が混在したような書き方をしている場合も
あるってことですよね?

A 回答 (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になります。

 
    • good
    • 0
この回答へのお礼

そうですか、やはりCSSのバージョンは自分がどう書くかで
CSS1とCSS2が混在するような書き方もある。ということみたいですね。
たとえば複数のバージョンのCSSの書き方を混在させたコードの中で
ある部分においてCSS3で書いていたとするならば
それはあるブラウザでは動かなかったり・・・そういうイメージですかね。

お礼日時:2013/04/10 17:28

>ある部分において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. … )

読み飛ばしていましたが
>XHTML1.0 StrictまたはTransitional+CSS
 他のアプリケーションで利用するとかHTML4.01strict が将来を考えると楽でしょう。transitinalは、1999年の勧告以来「この仕様における、他のDTDセットではなく strict DTD に適合する文書を作るよう推奨する。( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )」です。

 HTML5は、HTML4.01strictの改訂版です。
HTML5,CSS3ははっきりと、対応できたものから利用されるようになるだろうと宣言されています。
    • good
    • 0

 


 CSS3で出来る事

 面白いアニメーションや角を丸くする、
 影やグラデーション等を付けるなど
 その他の機能があります。

 記述方法は、他のCSSと変わりないです。
 IEの最新版でも限定されて不可能ですので
 CSSを使用する際には、
 googleのChromeをダウンロードして下さい。
 
 http://www.google.co.jp/intl/ja/chrome/browser/
 
 詳しくは、無料の動画のドットインストールで
 勉強することをおすすめします。

 http://dotinstall.com/
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報