• ベストアンサー

Webページのレイアウトが崩れてしまいます。

Web制作初心者です。WinのパソコンでDreamweaver MX2004を使ってページを作っています。 Winのパソコンではデザイン通りに表示できるのに、MacでIE5ではレイアウトが崩れてしまいます。いくつかのボタンが表示しなかったりもしてしまいます。 MacでIE5という環境が古すぎると言うこともあると思いますが、他のサイトは見えない動画部分があったり、少しレイアウトが崩れてる事はあるようですが、私の作成したページはかなりレイアウトが崩れるだけでなくナビゲーションのボタンが8個のうち1個しか表示しなかったりと問題にならない位にひどいです。 タグの入力ミスも無いと思います。 文書型宣言などは <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> としています。 この辺りに問題点はあるのでしょうか? よろしくお願いします。

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

  • ベストアンサー
  • abril
  • ベストアンサー率69% (388/560)
回答No.2

> MacでIE5ではレイアウトが崩れてしまいます。 Mac版IEはもう何年も前に5.2を最後に開発が中止されており、その最終ヴァージョンもCSS関連の多くの不具合を抱えたままです。 今後この状態が改善される事はありませんし、IEが最初から搭載されていたMacはもうかなり昔の時代のものになっていますから、現在のMacユーザの大多数はSafariをメイン・ブラウザとして使用しているでしょう。依って、もはやこの環境は(よほど特殊な事情がない限り)無視してかまわないと思います。 > 文書型宣言などは(中略)この辺りに問題点はあるのでしょうか? HTML 4.01 Transitionalというかなり解釈の緩いDOCTYPEなのであまり関係ないと思います。 > 他のサイトは見えない動画部分があったり、少しレイアウトが崩れてる事はあるようですが、 > 私の作成したページはかなりレイアウトが崩れるだけでなく(中略)問題にならない位にひどいです。 推測ですが、Mac版IEで多少崩れてもそこそこ見えているサイト、というのはフルCSSでレイアウトをしていない(例えば全体のカラム組を昔ながらのtableレイアウトで済ませている等)、あるいは元々の構造がかなりシンプルなのでMac版IEでの致命的崩れが出る様なCSSの指定(floatやpositionを駆使する等)を必要としていない、というタイプだと思います。 逆に、HTML側が本来の論理的な文書構造のみで、レイアウト・スタイル部分を全てCSSで作り込んでいる場合には、Mac版IEのバグによる不具合を大量に抱えて込んでしまい全く意図しない表示結果になってしまう可能性が高くなります。 CSSや各ブラウザ毎のバグなどを充分把握していれば、Mac版IEにも何とか対応できるフルCSSでのレイアウトもある程度は可能なのですが、その不具合を回避する為だけにHTML側の論理構造に無駄を設けなくてはならなかったりするので、すこぶる効率が悪いですし、初心者の方には相当困難を極めると思います。 ですので、可能であればMac版IEへの対応は思い切られるのが賢明かと… 対応を試みる場合、参考になるかもしれないコンテンツを一応あげておきますが。 【参考】「Mac版 Internet Explorer 5 の CSS バグと回避方法」 http://www.lucky-bag.com/appendix/ie5cssbugsj.html

kanaflan
質問者

お礼

参考になりました。ありがとうございました。

その他の回答 (1)

noname#119957
noname#119957
回答No.1

(1)CSSは、ブラウザによって解釈が異なりますので、HTMLよりもCSSの問題の方が大きいと思います。 (2)IE5は、windows95の時代のブラウザで,windows98以降はIE6となりますので、もはや対応の必要はないかと思います。したがってwindowsでテストする必要があります。 (3)DOCTYPE宣言の種類と標準/互換モード切替対応状況はこちらにあるようです。 http://www.dspt.net/html_tag/mode.html (4)他人に解決してもらいたい場合は、hTMLとCSSを後悔するしか方法はないと思います。CSSは複雑ですからね。

kanaflan
質問者

お礼

ありがとうございました。