grandswellと申します。
よろしくお願いいたします。
サンプルをIE、Firefoxそれぞれで見ていただけると
わかっていただけると思うのですが、Firefox側が
意図した通りのレイアウトになっていません。
サンプルをIEで表示したレイアウトを
Firefoxでも同じCSSで実現するにはどのような
工夫が必要でしょうか。
ぜひご教示くださいますよう、お願いいたします。
以下、サンプルのCSSとHTMLとなります。
*cssサンプル(style2.css)
----------
div.main {
border-style : dashed;
width : 100%;
}
div.main div.contents{
border-style : dashed;
width : 75%;
float : left;
}
div.contents div.contentsmain{
border-style : dashed;
width : 100%;
}
div.contentsmain div.sidebar{
border-style : solid;
float : left;
width : 32%;
}
div.contentsmain div.entry{
border-style : solid;
float : right;
width : 66%;
}
div.main div.subspace {
border-style : dashed;
float : right;
width : 23%;
}
div.footer {
border-style : dashed;
}
----------
*htmlサンプル
----------
<html>
<head>
<meta http-equiv="Content-Style-Type" content="text/css">
<link rel="stylesheet" href="./style2.css" type="text/css">
</head>
<body>
<div class="main">
<p>main</p>
<div class="contents">
<p>contents</p>
<div class="contentsmain">
<p>contentsmain</p>
<div class="sidebar">
<p>sidebar</p>
</div>
<div class="entry">
<p>entry</p>
</div>
</div>
</div>
<div class="subspace">
<p>subspace</p>
</div>
</div>
<div class="footer">
<p>footer</p>
</div>
<body>
</html>
----------
No.2ベストアンサー
- 回答日時:
floatをさせた場合、それを含むブロックの高さにfloatしているブロックの高さは影響しない事になっています。
IEのようにfloatしているブロックの高さに自動で合わせられるのは便利な面もありますが、仕様どおりの動作ではありません。
以下のようにfloatしているブロックの下でflaotをクリアするようにすると、Firefox等の正しい動作をするブラウザでも段組ができます。
なお、テキストの上下のマージンがまだ異なります。
p {margin:0;} としてしまえばとりあえず揃いますが、
各ブロックに適当にmarginやpaddingを指定して揃えてください。
スタイルの追加
.FloatEnd {clear:both;}
HTMLへの追加(<br class="FloatEnd"> の追加)
<body>
<div class="main">
<p>main</p>
<div class="contents">
<p>contents</p>
<div class="contentsmain">
<p>contentsmain</p>
<div class="sidebar">
<p>sidebar</p>
</div>
<div class="entry">
<p>entry</p>
</div>
<br class="FloatEnd">
</div>
</div>
<div class="subspace">
<p>subspace</p>
</div>
<br class="FloatEnd">
</div>
<div class="footer">
<p>footer</p>
</div>
<body>
ご回答ありがとうございます。
ストライクです!
質問掲示後、自分で試行錯誤した結果
左右に分割している領域の親領域の
widthとfloatを設定すると段組的にはほぼ
同じになることがわかったのですが
正解を知りたくて、もやもやしていました。
気分すっきりです。
本当にありがとうございます。
No.1
- 回答日時:
あえて言うならば無理。
CSSの挙動がもともと違ったものなので。
どちらかにあわせるのは簡単なCSSならば可能ですが、段組などを統一するのは難しいところがあります。
どうしてもやる場合はCSSを使用しないで、HTMLのテーブルで組めば何とかなります。
またはブラウザごとにCSSを変えるか。
ちなみに段組CSSは、Operaだともっと崩れます。
ご回答ありがとうございます。
ブラウザ毎にCSSを替えることも検討に
入れたいと思います。
質問に記載したCSS/HTMLにおけるIEでの
レイアウトをFirefoxで実現できるCSSを
ご存知でしたらご教示ください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS CSS のみのタブ切り替えについて 1 2023/01/11 16:47
- HTML・CSS html/cssで要素が出てこなくて困ってます 1 2022/12/31 16:59
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- HTML・CSS cssが効かなくて困ってます 1 2023/01/01 23:57
- HTML・CSS HTML、cssのatomつぅーやつで 課題Ex1ってやつを表示させたいのですが、 私は課題Ex1が 2 2022/12/15 16:56
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- HTML・CSS 吹き出し 下記の吹き出しのスタイルシートについて 下記のスタイルシートは左側にアイコンがでる使用にな 1 2022/11/12 17:55
- HTML・CSS flex の各子要素を横幅 100% にしたい 1 2022/09/22 21:25
- HTML・CSS アコーディオンメニューが思うように動作しません。 1 2023/08/20 16:48
このQ&Aに関連する記事
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
HTML属性での「""」 「''」違い
-
<div id="container">の使いか...
-
htmlのolやulなどlistにtitleや...
-
インラインフレームのページ内...
-
スペースを使わず文字位置を揃...
-
複数のボタンを等間隔に、かつ...
-
HTML5 iframe の代わり
-
横並びdivで一部の初期高さがず...
-
<!-- #BeginLibraryItemとは
-
div要素が重なってします
-
HEADタグとheaderタグ
-
divとpの使いわけ
-
標題<h1>に、網掛けはできますか?
-
htmlの見出しタグ(<h1>)の次...
-
画面を縮小するとカラムが落ち...
-
フッターがウインドウの一番下...
-
CSSで、contentsがfooterに重な...
-
特定範囲内のCSSの継承を断ち切...
-
セクションをdivで囲むと見出し...
-
背景画像に全体または部分的に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
htmlのolやulなどlistにtitleや...
-
HTML属性での「""」 「''」違い
-
div要素が重なってします
-
<div id="container">の使いか...
-
複数のボタンを等間隔に、かつ...
-
html の divとtable の役割
-
divとpの使いわけ
-
ヘッダーとフッターだけ背景を...
-
min-heightとheightの違いについて
-
セクションをdivで囲むと見出し...
-
画面を縮小するとカラムが落ち...
-
ヘッダーを左右に二分割する方...
-
1時間30分を簡単に表したいで...
-
スペースを使わず文字位置を揃...
-
CSSで、contentsがfooterに重な...
-
h1に自分自身へのリンクを張...
-
divの中に外部のHTMLを埋め込む
-
divを横に並べる方法
-
hタグの右横に画像を表示
-
h1のテキストサイズよりh2の方...
おすすめ情報