• 締切済み

テーブル内でdlタグ使った際の空白をなくしたい

独自の画像での枠を使ってアコーディオンメニューを作るために、 tableタグ内にdl、dt、ddタグでメニューを書きましたが、 どうしてもテーブル内の下に一行ほどの空欄が出来てしまいます。 これを解決する方法をご存知の方、教えてください。 ちなみに、ul,liタグは、テーブル内にメニューを書くには ふさわしくない為使えません。

みんなの回答

  • leap_day
  • ベストアンサー率60% (338/561)
回答No.4

こんにちは ひとつだけ聞いてもいいですか? <dl> <dt></dt>  <dd></dd> </dl> これ、中身だけ抜いてる状態でそのままの形で使っていますか? <dd>の前に全角スペースがあるようなのですが・・・ この状態で使ってるとしたら<dt>と<dd>の間に1行スペースが開くと思うのですが?

smilekoko
質問者

お礼

回答ありがとうございます。 <dd>の前の空白はここに書き込んだときに入りました。 また、一行スペースが空いてしまうのは、ddの下ですし、 html上でこのような状態でスペースが空くことは、 滅多にないかと思います。

  • abril
  • ベストアンサー率69% (388/560)
回答No.3

> cssでマージンは全て0にしてあります。 (省略) > テーブル内に一行ほどの空欄が出来るのは、firefoxのみの場合です。 <dl>自体には他に特にスタイルは設定されていないのでしょうか?であれば<dl>の親要素から継承される何かが適切ではないのかもしれません。 もう少し詳細な情報をご提供して頂ければ原因が特定できるかもしれませんが…

smilekoko
質問者

お礼

回答ありがとうございます。 dlにはjavascriptのためのid要素が入っています。 firefoxではどうしても空欄が空いてしまうようです。 そのままで解決と致しました。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

>ちなみに、ul,liタグは、テーブル内にメニューを書くには >ふさわしくない為使えません。 その論点でいえば、dl、dt、ddでメニューを作ることはふさわしくないです。 メニューが単なるリストであるならul、liで組んだ方がよいのでは?

smilekoko
質問者

補足

回答ありがとうございます。 確かに、通常ならばふさわしくないのでしょうが、 javascriptを使ったアコーディオンメニューであること、 画像を用いたメニューの囲いであることから、 ul,liタグでは機能を発揮しません。 そういう意味での”ふさわしくない”でした。 説明不足、申し訳ありません。

  • abril
  • ベストアンサー率69% (388/560)
回答No.1

> どうしてもテーブル内の下に一行ほどの空欄が出来てしまいます。 <dl><dt><dd>のマージンは0に初期化してありますでしょうか?初期化していないとブラウザのディフォルトのマージンが適用されてしまうので。 もし初期化してある様であれば、情報が不足しておりますので、必要最低限のHTMLとCSSを提供して下さい。

smilekoko
質問者

補足

回答ありがとうございます。 それから、情報不足申し訳ありません。 cssでマージンは全て0にしてあります。 htmlですが、 <dl> <dt></dt>  <dd></dd> </dl> 通常にこの中に文面が画像、リンクが入っています。 それから、 どうしてもテーブル内に一行ほどの空欄が出来るのは、 firefoxのみの場合です。

関連するQ&A