CSS/DHTMLバグ辞典スレッド ver2.0

このエントリーをはてなブックマークに追加
67Name_Not_Found
こんなのはCSSのバグに入りますか。
==================
・リスト1-用語1
   用語1の説明
・リスト2
・リストn
==================
上図のごとき表示を狙って次の通りHTMLを書きます。
<UL>
<LI>
<DL>
<DT>リスト1-用語1</DT>
<DD>用語1の説明</DD>
<DT>リスト1-用語2</DT>
<DD>用語2の説明</DD>
</DL>
</LI>
<LI>リスト2</LI>
<LI>リスト……n</LI>
</UL>

しかしNNではちゃんと表示されても
IEではこんな風にリストマークがずれた表示になります。
==================

 リスト1-用語1
   用語1の説明
・リスト2
・リストn
==================
そこで、LI DL{display:inline;}と指定してみましたが、結果は変らず。
なぜDLへの指定は効かないのか(泣)。
6865:01/09/17 15:58 ID:gBBO1jIQ
過去ログに関連投稿がありましたね。
http://mentai.2ch.net/hp/kako/987/987003410.html
↑の23参照。
69Name_Not_Found:01/09/17 16:09 ID:Rfgti80s
>>67
その HTML の LI に border-top を指定すると、リストマークが消えるね。
70Name_Not_Found:01/09/17 16:26 ID:oDYBCT.E
リストとかblockquoteとか、デフォルトでインデントしてある要素は
バグが出る感じですね、IEは。6.0での修正に(淡く)期待。
71Name_Not_Found:01/09/17 20:13 ID:2ivkWEYc
IE5.5で縱書きプロパティーを使ってみたら
なぜかfont-family指定が無効になった。
横書きに戻したら元通りに。
ワケワカラン。
72Name_Not_Found:01/09/17 20:25 ID:zAiLig1Q
リンク文字列が右往左往
73Name_Not_Found:01/09/17 20:31 ID:aZXlOYcU
>>67
なんでこんな変な書き方するの。
<DT>リスト*−用語説明*</DT>
 <DD>(用語*の説明があるとき)</DD>
で統一すればすむ話だと思うが。
頭の点が欲しければつけるなりDTにスタイルシートで定義すればいい。
見栄えだけこだわって論理的&シンプルに考えることができてない
好例だと思います。
7473:01/09/17 20:35 ID:aZXlOYcU
>>67はこうしてもいい。

<LI>リスト1
<DL>
<DT>用語1</DT>
 <DD>用語1の説明</DD>
<DT>用語2</DT>
 <DD>用語2の説明</DD>
</DL>
</LI>
<LI>リスト2</LI>

個人的に「リスト1」を何度も出すのはうざいとおもう。
7567:01/09/17 21:02 ID:Jsy1jZpA
>>73-74
>なんでこんな変な書き方するの。

とは言っても別に文法的に誤りではないし、
リストにして定義語を兼ねるって場合もあるでしょ。
リスト2以下との関係ではリスト1だが
それ自身は説明を要する語であるとか。
例:初心者向けウェブ制作支援サイトの目次で――
=====================
1.作者からご挨拶
2.HTML
  HTMLとはウェブページの記法です。〜
3.CSS
  スタイルシートでデザインができます
4.索引
5.参考文献
=======================
上図みたいにインデント表示するだけなら
<li><p>〜</p><p>〜</p></li>に
CSSで指定してやればできるにしても、
文書構造としては<li><dl>〜</dl></li>が相応しいのでは?

それに問題はIEの表示がNN4&6と違って変になること。
スタイル指定してもさらに変なことが起きるのだから(>>69参照)
これはやはりCSS実装のバグかと。
76 :01/09/17 21:14 ID:b.Ns1wOk
>67
IE5.5 SP2 (Win) では inline にすると頭のリストマークが消えて上に上がるよ.
いずれにしても望む動作じゃないだろうけど.
きわめて邪道な方法として li dl{margin-top:-1em} とすれば望むように見えるようになる.
(Moz 0.9.4 でもほぼ同じ見え方)
7767:01/09/17 21:27 ID:Jsy1jZpA
>>76
<li>でなくて<dl>に対してdisplay:inlineを指定したのに
なんでリストマークが消えるんですかね?
まあ何故と問うても虚しくて、理不尽なのがバグってもんなのかな。
IE6.0でも直ってませんか。