• ベストアンサー

テーブルタグの中に<ol><li>を入れても正常に数字が表示されません。

テーブルタグの中に<ol><li>を入れても正常に数字が表示されません。 例えばテーブルの外に<ol>を入れて中に<li>を入れても表示される数字が 全部1になってしまいます。またテーブルの中に<ol>を入れても同じようになってしまいます。どなたか解決法をご存知の方がいらっしゃりましたら、 アドバイスお願いいたします。

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

  • ベストアンサー
回答No.2

一応、こんな感じで打ってみました。 <table border="1"><tr><td> <ol><li>1行<br> <li>2行<br> <li>3行</td></tr></table> こういう意味で良いのでしょうか… 自分のパソコンで確認した際は、テーブルの中に 1.1行 2.2行 3.3行 と表示されました。 違っていましたら済みません。

ajaxy
質問者

補足

アドバイスありがとうございます。 タグは<tr><tb>ごとに<li>が入ります。 <ol> <table border="1"> <tr><td> <li>1行<br> </tr></td> <tr><td> <li>2行<br> </tr></td> </table> こんな感じなんですが、表示させると0が表示されてしまいます。 <table border="1"> <tr><td> <ol> <li>1行<br> </tr></td> <tr><td> <ol> <li>2行<br> </tr></td> </table> またこのようなタグでも同様に1が表示されてしまいます。

その他の回答 (4)

  • UKY
  • ベストアンサー率50% (604/1207)
回答No.5

<li> は <ol> の中に直接入れなければなりません。 <ol> の中に <table> を入れ、さらに <tr> を入れ、<td> を入れ、そしてやっと <li> を入れるということはできません。 しかし、そもそもリストをテーブルのようにレイアウトしたいということであれば、<table> を使うのは間違っています。レイアウトはスタイルシートで行うものです。

  • suzuko
  • ベストアンサー率38% (1112/2922)
回答No.4

#1の方がおっしゃっているのは、以下の様にだと思うのですが・・・・^^ <table border="1"> <tr><td> <ol> <li>1行</li> </ol> </tr></td> <tr><td> <ol start="2"> <li>2行</li> </ol> </tr></td> </table> <ol><li>は共に必ず</ol></li>等の閉じタグが必要です。

回答No.3

<ol>と<table>の構造に無理があります。<table>の<td>をまたいで<li>を入れることはできません。 <table>内で<ol>を使うのであれば <table> <tr> <td> <ol> <li>1行目</li> <li>2行目</li> <li>3行目</li> </ol> </td> </tr> </table> と、<td></td>内で<ol></ol>が完結していなければなりません。

回答No.1

ソースが書いてないので、どの様に入れ子にしたのかわかりませんが…。 2つ目の<ol>を<ol start="2">等に変更してみてどうでしょうか?

ajaxy
質問者

補足

アドバイスありがとうございます。 start="2"の部分なんですが、何個データが入るかわからないので 不確定な数字は使えないんです。

関連するQ&A