- ベストアンサー
3列コラムのデザインがブラウザによって崩れてしまう
- 3列コラムのデザインがブラウザによって崩れてしまう原因を解説します
- 問題の原因として、IE8以下のバージョンのブラウザではデザインが崩れてしまうことがあります
- コラムのデザインを正しく表示させるためのCSSの書き方について説明します
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
> 横幅をピクセルで固定したいときにはwidthとpadding (left or right) を同時に指定しない http://adp.daa.jp/archives/000250.html 主にこれですね。
その他の回答 (3)
- k0021
- ベストアンサー率26% (32/120)
指定外でもfloat:left;が効いてしまう事ですか。 デザインが崩た行に<div style="clear:both;">を指定しても直りませんか。 私の参考にしているホームページでは、不明ですがやたらに<div style="clear:both;">を指定していますが。 <div style="clear:both;">は<div class="cle_b">で記述していますが
お礼
ご回答ありがとうございます。 CSSを見させていただきましたが、この使い方はすごいですね; classが半端ないし、floatの使い方ってこんな使い方なのですか!? 崩れ方ですが…私はIE7のブラウザを見ながら作っていました。(IE8ではなくIE7でした;) IE6で確認した際に<div>のブロックが全て縦に、左の画面に全てくっついた状態で表示されるのです。。 昨日色々調べていましたが、CSSハックというものが有効なのかなと思いました。 IE6の場合、余白、マージンを大きく解釈されてしまうらしく、 試しに、右側のコラムの余白を“0”にしてみると、直りました。 しかし、firefoxで確認すると、文字が左のコラムに大きく入り込み、文字が読めない状態になってしまいます… 全てのブラウザに対応させるのは難問ですね…^^;
- ORUKA1951
- ベストアンサー率45% (5062/11036)
≫それと、やはりトップページならトップページのCSS、その他のページならその他のCSSと分けてデザインするべきなのでしょうか。。 いいえ、一つのサイトだとデザインが統一されていたほうが訪問者には優しいですよね。 ということは、すべてのページに共通な部分、あるいはあるテーマで共通なもの、そして一つ一つのページで独自なものがあります。 そこで、次のように作成すると良い 固定スタイルシート Default.css すべてのページ、メディアで有効なもの 優先スタイルシート スクリーン用 すべてのページで有効なもの 特定のグループで有効なもの★ 個別のページで有効なもの 代替スタイルシート・・・・・・・・・・・訪問者が選択できるもの。 これを選択すると優先スタイルシートは無効になる メディアごとのスタイルシート・・・・プリント用とか、携帯、PDA、読み上げ用とか また、★については、デザインだけと色指定だけと分けておくとメンテナンスが楽 適用のさせ方・・・継承(カスケード)と、詳細度 table等を除いて、多くのプロパティは親要素から継承される。 詳細度を比較して、その値によって適用の優先順を判断する。 それも同じ場合、後出のもので上書きする。 本当なら、CSSは、参照方式→優先順(セレクタの書き方)→プロパティの書き方の順番で習得すべき。残念ながら、プロパティ書き方だけに熱心なサイトや参考書もありますね。一般的にそういうものは、見栄えだけにこだわり、HTMLやCSSの精神を理解していないというか、そもそも仕様書を読んでいない可能盛大(^^) 【典型的例】 セレクタを、クラスだけで指定している。そのため、HTMLの中は、classだらけ。 要素中のclassが一つしか指定していない。class="body memo note"としてけばCSSは楽になるのに・・・
お礼
とても詳しく書いていただいてありがたいのですが… 言葉等…専門的過ぎてまったく理解できません。 私の今の段階の知識では、難しい事を詳しく書かれても分かりません^^; それに、私のCSSから、なぜ他のブラウザで崩れて見えるのか、直接的な原因を教えてくれていません。。 CSSの作り方を、HPが出来上がった今説明されてもどうすればいいのか困ってしまいます。 答えの的があまりに外れていて理解しかねます。 質問の仕方がいつも悪いようです… 本当にすみません、貴重な時間を本当にありがとうございました。
- ORUKA1951
- ベストアンサー率45% (5062/11036)
非効率なCSSですね。わたしなら投げ出す。 今日は無理なので、後日・・・ ヒント) ・CSSは複数使用すること ・IE7以前はブロックの寸法解釈に問題あり ・floatは極力使わない(IE対策) ・カスケード・詳細度を活用する
お礼
ご回答ありがとうございます。 CSSは初心者と言っていいほど、ほどんど理解しきれていません 見る方が見るととても見苦しいCSSなのですね…>< 見よう見まねで、手探りなものなので、CSSのルール、ブラウザのルール等理解しきれていませんでした。。 グダグダなCSSをさらしてしまい、とても恥ずかしいです。 ヒントありがとうございました。 floatは使わない方がいいのですか!? それ以外の使い方は知りません… それと、やはりトップページならトップページのCSS、その他のページならその他のCSSと分けてデザインするべきなのでしょうか。。
お礼
ご回答ありがとうございました。 何かしら原因がありそうですね。。 このサイトを参考に調べながら解決していきたいと思います。 ありがとうございました!