電子書籍の厳選無料作品が豊富!

tableの中にtableを作りスクロールさせたい。

tableの中にtableを作りスクロールさせたいのですが、書きサンプルで思うようになりません。
table一つなら上手くいくのですが、どこが悪いでしょうか。


<html lang="ja">
<head>
<title></title>
</head>
<body>
<table border="1" width="100%"><tr><td></td></tr>
<tr>
<td >
<div style="height:40%;width:100%;overflow-y:scroll;">
<table border=1 width="100%" bgcolor="#9999ff">
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
<tr><td>表示したいテーブル</td></tr>
</table>
</div>
</td>
</tr>
</table>
</body>
</html>

「tableの中にtableを作りスクロー」の質問画像

A 回答 (3件)

高さ指定してないじゃん。



>height:40%;width:100%;overflow-y:scroll;
どの要素に対しての40%なの?
Chromeとかなら要素を描画した後の高さから40%に調節するけど、本来は親要素の高さに対して指定するもんだから、親の高さ決まってなければ%指定しても高さ固定されないよね。
IEではそういう判断で高さ指定を無視して表示します。
今回の場合は、外側tableの高さがないうえに、セルの高さも指定していないのが原因。
(そもそも論になっちゃうけど、tableの入れ子するならブロックで配置考えたほうがいいんじゃないかね・・・。)

ちなみにtable一つの場合は、全体の高さに対する%なので、ウィンドウサイズ変えればサイズも変わるね。
高さを設定するなら、pxで固めるかどれがどの親になっているのかをきちんと考えて設定しないと、勝手に遊びをつくられるよ。
しかもブラウザで動作は変わる。

#インフレームとかオブジェクトとか使うほうが、どー考えても面倒だしスマートじゃないよなぁ。
    • good
    • 0
この回答へのお礼

仰せの通り高さ指定しておりませんでした。(ノ_-;)ハア…
上手くいきました。

お礼日時:2010/10/27 11:10

No.1の者です。


なんかややこしいことをしているようなので、手っ取り早い方を紹介させていただこうと思っていますが、大丈夫でしょうか。

ぶっちゃけ、インラインフレームを使ったほうが単純で簡単ですよ。
ページも1ページ増えるだけなので、サーバー転送の際に影響はそこまでないと思います。
インラインフレームはこちらで説明が載っていますので、参考にどうぞ。
http://www.tagindex.com/html_tag/frame/index.html
    • good
    • 0

んーと、スクロールできるテーブルが2つになればいいんですか?


こんな感じ?
「tableの中にtableを作りスクロー」の回答画像1

この回答への補足

二つ目のテーブルの中がスクロールできればいいのですが。
<table border=1 width="100%" bgcolor="#9999ff">

現状ではスクロールバーは表示されますが、スクロールされない。

補足日時:2010/10/26 14:54
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!