都道府県穴埋めゲーム

スタイルシートについてお尋ねしたいのですが・・・。
下記のようにしてスタイルシートを使用したいのです。

<table style="position:absolute;top:140;left:170">

スタイルシートはIEのバージョンによって、使えたり使えなかったりするのでしょうか?
私が使用しているIEのバージョンがIE5.5で、同じプログラムをIE6.0で
動作させるとstyleが効いていたり効いていなかったりするのです。

何かわかる方がいらっしゃれば、ご指導ください。

A 回答 (2件)

おそらくIE6から追加された機能である「!DOCTYPE スイッチ」


が影響していると思います。

結論から言います。
top:140;left:170の部分の数値を
top:140px;left:170pxというように
単位を書いてください。そうすれば、IE5.5・IE6どちらでも
そのスタイルシートは有効になるはずです。

では、どうしてそのような現象が起きるのか?スタイルシートを
使う場合知っておいても損はないと思います。

!DOCTYPE スイッチとは、!DOCTYPE宣言を設定する事によって
CSS Level 1 に準拠させたり、させなかったりする機能です。

わかりやすくいうと、!DOCTYPE宣言の仕方によって
スタイルシートの動作が変わってきます。

1:標準準拠モード
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

2:非標準準拠モード
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

実際にソースを作り比較してみると同じような現象が起きました。
つまり、1の場合だと例に示されたようなスタイルシートは無効になり
2だと有効になります。

標準準拠モードではスタイルシートの記述に厳格なルール
が設けられております。

例:
16進数で色を指定する場合
#000000の#は省略してはいけません

今回の場合、IE6でスタイルシートが有効にならないのは、
!DOCTYPE宣言を1のような標準準拠モードで、単位を
いれなかったためにブラウザがそのスタイルシートを無視
したためと思います。

参考URL:http://www.microsoft.com/japan/developer/article …
    • good
    • 0
この回答へのお礼

お礼が遅くなってごめんなさいm(__)m

教えていただいたとおりにやってみましたところ、
スタイルシートが有効になったようです。
助かりました。ありがとうございました。

お礼日時:2002/04/01 17:29

スタイルシートだけでなくJavaScriptやHTMLなどでもブラウザによってかなり挙動が違ったりします。


ブラウザのバージョンが同じでもOSが違えば挙動が異なってくる場合があるので注意が必要です。

そのため、サポートするOSとブラウザを決定したらそのすべての組み合わせで動作確認を行う必要があります。

基本的な動作はHTML辞典のようなもので調べるといいかも知れません。

で、この場合ですが、ほかのタグでテーブルを囲んでそこでスタイルを定義してみたりして試して見てはいかがでしょうか。
    • good
    • 0
この回答へのお礼

お礼が遅くなってごめんなさいm(__)m

OSやIEのバージョンによって違うんですね。
知りませんでした。いろんなOSでためして確認してみます。

お世話になりました。

お礼日時:2002/04/01 17:13

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


おすすめ情報