【IE5Quirks/IE7〜9互換モード】
定義リスト(dl要素)を横並びさせる際、dd要素内でem要素が折り返される長さだけあると横に並ばなくなる。
定義リストをfloatで横並びにして表組み風にするのは、よくある。
Cf. http://blog.d-spica.com/entry/080512dtfloat.html
その際、IE6において、dt要素の高さよりdd要素内の段が高い場合、dtの横に隣接するddの一行目テキストだけ3pxほど右にずれるバグがある。
これに対処するには、zoom:1; を指定してhasLayoutをtrueにすれば解消する。
Cf. http://www.coolwebwindow.com/weblife_column/coolweb/000174.php
しかし、或る条件下では、この横並びが崩れた。
dd要素内にemなど斜体(font-style:italic;)で表示される要素があり、且つその文字列が途中で行の右端に掛かって折り返しされるのがその条件。
下記の例で、横並びにならなくなって、ddがdtの一行下から表示された。
dt {clear:both; float:left; min-width:1em;}
dd {margin-left:1.2em; zoom:1;}
<dl>
<dt><a name="n25" href="#t25">註2</a></dt>
<dd><p>……著者名,<em>折り返される長さの書名</em>,出版社,刊年,pp29-31.</p></dd>
</dl>

zoom:1;を削るか、em {font-style:normal} とすると、floatが効いて横並びに戻った。