CSSと(X)HTMLでページを作っています。角丸なページにしたいため、
/* ---------- 角丸画像の上辺 ---------- */
#main_contents_header {
width: 800px;
height:20px;
background:url(./top.png) no-repeat top;
margin: 10px auto 0px;
padding: 0;
text-align: center;
}
/* ---------- 上辺と下辺の間のメイン部分 ---------- */
#main_contents {
background:url(./bg.png);
width: 800px;
margin: 0 auto;
padding: 0;
text-align: center;
}
/* ---------- 角丸画像の下辺 ---------- */
#main_contents_bottom {
width: 800px;
height:20px;
background:url(./bottom.png) no-repeat top;
margin: 0 auto;
padding: 0;
text-align: center;
}
というCSSを作り、
HTMLは
<div id="main_contents_top"></div>
<div id="main_contents">
ここにいろいろなコンテンツを置いていく
</div>
<div id="main_contents_bottom"></div>
という書き方にしているのですが、<div id="main_contents">の背景画像が正しく出ず、地の色が見えてしまうのです。試しに<div id="main_contents">へpadding-bottom:300pxというような指定を加えると、正しく背景画像が出ました。
<div id="main_contents">
ここにいろいろなコンテンツを置いていく
</div>
という書き方ではダメなのでしょうか・・・?
確認はFirefoxとSafariでやっています。
No.3ベストアンサー
- 回答日時:
最初のソースでいいですので、以下を試してください。
#main_contents_bottom {}
内部に
clear:both;
を入れる。
</div>
<div id="main_contents_bottom"></div>
を
<div id="main_contents_bottom"></div></div>
にする。要は下のコーナーも一くくりにする
以上
簡単にいうとfloatとは浮かせて右か左に配置させる指示です。浮いているので高さが無く高さがないので背景が無いというような状態です。でclearとはそれをクリアーする指示。floatがleftだけなら、clear:leftでもオッケイ。というわけ。
html的物理レイアウトの悪癖をひきづっておられるようです。Web標準を学ばれるとレイアウトがとんでもなく楽になるので、初歩からの学習をおすすめします。
な、なるほど!できました・・・!
昔ながらの「上にフタして真ん中があって、下にフタ」という考えが根強くあったため、
<div id="main_contents_bottom"></div></div>
という書き方は試しておりませんでした。
浮いたところを元に戻しつつフタをする、みたいな感じでしょうか。
Web標準、勉強します。ありがとうございました。
No.2
- 回答日時:
<div id="main_contents_top"></div>
これ
<div id="main_contents_header"></div>
の間違いですよね。^~^
「top.png」「bg.png」「bottom.png」をそれぞれ
width: 800px;
height:20px;
の画像で作成し、CSSのURLを「./top.png」でなく「../top.png」にしたところ、Mozilla FirefoxやIE7では表示されていますね。
ありがとうございます。そして、スミマセン!ご指摘の通り、指定ミスがありました。お恥ずかしい限りです。
最初の質問で、
<div id="main_contents">
ここにいろいろなコンテンツを置いていく
</div>
↑
ここを省略して書きすぎました。どうも私の場合は「floatさせた内容を入れると背景が出ない」という状態のようです。
http://2nose.com/css/?ID=120
<div id="main_contents">の間に、左右にfloatさせた内容(メニューとコンテンツ)を入れていました。
だんだんと難しい世界になってきましたが、がんばってみます。
ご回答ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- HTML・CSS PCサイズで赤い画像2つと、青い画像2つがそれぞれ横に2つずつ並んでいるのですが、これをスマホサイズ 5 2022/04/11 12:01
- HTML・CSS テキストを画面の真ん中に配置したいです。 2 2022/11/25 16:11
- JavaScript vertical sliderをautoplayしたい 2 2022/08/25 14:47
- JavaScript ソースコードのいじる場所が分かりません。 1 2022/12/23 02:06
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- HTML・CSS CSSがなぜかfont-sizeだけ効かない...記述がまちがっているんでしょうか 5 2022/04/09 17:52
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- HTML・CSS img と p を縦中央に配置したいのですがうまくいきません。 2 2023/01/12 14:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
htmlの文字が縦書きになる
-
CSS、width100%でもできる余白
-
インラインフレーム内の表示位...
-
CSS テキストフィールドの文字...
-
widthやheightの数値に単位(px...
-
div要素の左寄せ、中央寄せ、右...
-
CSS:animation開始位置の設定
-
マウスオーバー時に画像と一緒...
-
safariだけ、cssが効きません!
-
初心者html・CSS ウィンドウを...
-
border-style:solidで文字がずれる
-
ライトボックスでスクロールバー
-
余分な縦スクロールバーが出て...
-
テーブルのセル間に余白が空い...
-
ヘッダーの高さが合わない
-
CSSでiframe要素の編集
-
CSSで「overflow:scroll」をしてい
-
cssでの幅の分割(固定・可変混...
-
HTMLのiframeの入れ子について
-
【HTML】【CSS】【Swiper】 元...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
htmlの文字が縦書きになる
-
widthやheightの数値に単位(px...
-
画像イメージの上下左右、欲し...
-
css初心者 フレックスボックス...
-
表示倍率を変えるとレイアウト...
-
CSSがなぜかfont-sizeだけ効か...
-
CSS、width100%でもできる余白
-
W3Cのソースコードの検証サービ...
-
CSS:animation開始位置の設定
-
CSSで指定した背景画像にリンク...
-
<div>と<div>の間の10px程の...
-
余分な縦スクロールバーが出て...
-
CSSでボックスのheightが0になる
-
【CSS】ヘッダーの高さが不明の...
-
スクロールボックスを中央に配...
-
li 黒丸含んで移動する方法
-
border-style:solidで文字がずれる
-
【HTML&CSS】フッター下部の余...
-
Media Queries 4 で 非推奨とな...
-
初心者html・CSS ウィンドウを...
おすすめ情報