• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:CSSでフローとした際の親要素の高さ)

CSSでフローとした際の親要素の高さ

このQ&Aのポイント
  • CSSでfloatした要素の影響で親要素のheightが反映されない場合の対処方法について
  • floatした要素が親要素のheightに反映されない問題を解決する方法を教えてください
  • floatした要素による親要素のheight反映問題を解消する方法についてご教示ください

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

  • ベストアンサー
  • ao_
  • ベストアンサー率33% (15/45)
回答No.2

まず、外部CSSを作ってリンクしてください。 この現象はCSS2の仕様なんです。 mainback.gifを背景にしたdivにclass名を付け、(仮にAとします) 外部スタイルシートに .A:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } .A {display: inline-table;} /* Hides from IE-mac ?*/ * html .??? {height: 1%;} .A {display: block;} /* End hide from IE-mac */ とコピペすると解決します。 HTMLコードをキレイにする意味でも外部スタイルシートをおすすめします。

参考URL:
http://www.positioniseverything.net/easyclearing.html
coder
質問者

お礼

無事うまくいきました。 ありがとうございました。使いまわし出来るし、最高です!!

その他の回答 (1)

回答No.1

背景のためにやってるのではないのですが、左右に別けたブロックの下にもう一つDIVでブロック(フッタ部分って感じ)を作る時clear:bothを<br>や<tr>に定義しちゃう事はありますね。heightの指定はしたくないので、こういう事やってしまいます。 僕も文法にはこだわる方なんですけど、色々やってると理不尽な事って結構ありマス(^^;。特にDIVを使ったレイアウトをしていると、謎な挙動に結構出くわすんですよね。今回の質問に関しては<br style="clear:both">で回避できるなら、それでいいんじゃないでしょうか。

coder
質問者

お礼

なんか文法にこだわってると、きりないかもですね(汗;) ちなみにこの質問を載せた後に、clear:bothについて調べてみたんですが、本当はブロックレベルにしか使えないらしいです。 だから、やっぱりこれも本当はダメらしい・・まぁうまく表示されるから今のところはOKだけどね(笑) ありがとうございました。