久々に定義リストを横並びにしたら、IE7で上手くいかず、ちょっと苦戦したのでメモめもMEMO。
おそらく、ddがテキスト量などで高さがdtより多い場合は問題が無いんだろうけど、dtの方が高さがある場合、IE7だと上手い具合に回り込みが解決されない(っぽい
dtの方が高さがある場合。っていうのは今回の場合は画像にdtが来て、ソレを定義付ける説明がちょろっとあるようなイメージ。
---- こっから続き
実際の表示は下のような感じ。

- SQ Lifeのバナーです。

- SQ Lifeのバナーです。
スタイルは以下のようになられます。
dl#sample_070228 dt {
float:left;
clear:both;
width:125px;
margin-right:10px;
margin-bottom:20px;
border-bottom:0;
}
dl#sample_070228 > dd {
float:left;
width:300px;
}
*+html dl#sample_070228 > dd {
float:none;
}
精査をしきってないですけど、dl dtを横並びにする場合のポイントはfloat:left;とclear:both;をどっちもdtに指定することかな。
最初の頃って何となく、同時に使えないような印象があったからそういう発想が出なかったって人も、居たりしないでしょうか?(ボクだけ?
htmlは以下のような感じで。
<dl id="sample_070228"> <dt><img src="/img/bnr_sqlife.gif" alt="sqBnr" /></dt> <dd>SQ Lifeのバナーです。</dd> <dt><img src="/img/bnr_sqlife.gif" alt="sqBnr" /></dt> <dd>SQ Lifeのバナーです。</dd> </dl>
定義リストの使い方とか、考えもコレまた人それぞれでしょうけど、辞書的なイメージとかっすかね。
aに対しての説明とかそういうの。
一番使いどころがある気がする。
・・・の割には使いこなせてないのがボクの現状ですが。










comment [3]
1 - やまざき さん
> 同時に使えないような印象があったから
私の場合、結構早い時期にこれで色々ハマった経験があり両方指定すると色々上手く行くというのが分かりました。
逆に、IEの場合、特に 6 ? は、width を指定すると上手くいくことが多いのも経験上分かって来ました。
今回の問題は、float, clear, width の 3つが揃わないと上手く行かないケースのような気がします。
試していないのでなんとも分かりませんが、なんとなくそう思いました。
URL|2007年2月28日 22:22
2 - ひら@管理人 さん
>やまざきさん
コメントありがとうございます。
何か、今までIE7以外問題なかっただけに、ちょっとIE7にやられたって感じでした。
2007年3月 1日 23:29
3 - かつお さん
はじめまして。です
いままでdlの横並びが苦手でulで逃げていたのですが今回から使わせていただきます!
clearとfloatを同時に指定してもIEですぐにddがdtにぶら下がってしまって・・・
ただ、自分の今回担当していたデザインだと、上記のCSSではIE6でddが伸びたときにdtの下に回りこんでしまったので
ddに対するwidthには継承を使わない方法にしました。
dl#sample_070228 > dd {
float:left;
}
dl#sample_070228 dd {
width:300px;
}
2007年3月 8日 19:26