よろしくお願い致します。
<div>の<height>を100%に指定して、
タブレット等での表示時、縦でも横でも画面一杯に
表示させたいと考えています。
とりあえず css で以下は宣言済みです。
html, body {
height: 100%;
margin: 0px;
padding: 0px;
}
親子構造としては以下を想定しています(いくらか簡略化しています)
<html>
<body>
<div id="H" style="height:60px;">
(1)ここにヘッダー的なもの
</div>
<div id="B" style="height:100%; overflow: auto;">
(2)この部分を縦一杯にしたい
</div>
</body>
</html>
(2)の部分にはjavascriptでサーバから取得した
XMLのデータを埋め込んでおります。
その際、選択行の色付け等を行いたかった為、
大枠を<div>でくくり、その中に<table>で表組みしています。
最終的な構造は以下のようになっているはずです。
<div id="B" style="height:100%; overflow: auto;">
<div id="rdiv1"><table id="rtbl1"><tr><td ・・・ /td></tr></table></div>
<div id="rdiv2"><table id="rtbl2"><tr><td ・・・ /td></tr></table></div>
<div id="rdiv3"><table id="rtbl3"><tr><td ・・・ /td></tr></table></div>
・・・
</div>
行ごとの<div>や、その中の<table>でも height: 100%; は指定しています。
また、1行あたりの高さは<td style="height: 40px;">と指定しています。
(rowspanを使ってのぶち抜きを行っているため)
html と body に height:100%; を指定しているので、
予想ではヘッダー用のdivが指定の高さで表示され、
次のdivが残りの高さ分一杯に表示。
その中のデータは overflow:auto; でスクロールできる。
と考えていたのですが、実際はjavascriptで埋め込んだdiv、
及びtableの高さまで伸びてしまい画面上を大きくはみ出してしまいます。
(divのoverflowが全く機能しません)
100%ではなく 500px としてみたところ、
そのサイズに収まってスクロールできました。
(縦一杯ではありませんがdivのoverflowは機能しました)
何とか height 100% を実現して、
divのスクロールバーのみでの表示を行いたいのですが、
何か指定が足りないのでしょうか?
No.1ベストアンサー
- 回答日時:
>html と body に height:100%; を指定しているので、
予想ではヘッダー用のdivが指定の高さで表示され、
次のdivが残りの高さ分一杯に表示。
まずこの予想の部分が間違っています。質問の通りに作って、高さ500pxの画面で確認した場合、html、bodyの高さは500px、ヘッダー60px、そしてその次のdivの高さも500pxで、60pxはみ出る形になります。height:100%というのは親セレクタに対しての100%です、残りの100%ではありません。
残りの高さいっぱいにしたい場合はcssのみではできません。JSを使うか、似たような見え方で違う組み方をするか…
回答ありがとうございます。
返事が遅くなってしまい申し訳ありません。
100%とは差し引いた残り全てではないのですね。
とりあえず回答待ちの間に
JSでwindowサイズから計算して全体表示するようにしてみましたが、
100%指定と違いワンテンポ遅れるので妙に気持ち悪い感じです。
CSSのみで不可能であること理解しました。
頑張って可能な限り美しく仕上げたいと思います。
ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript vertical sliderをautoplayしたい 2 2022/08/25 14:47
- JavaScript ソースコードのいじる場所が分かりません。 1 2022/12/23 02:06
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- HTML・CSS html/cssで要素が出てこなくて困ってます 1 2022/12/31 16:59
- HTML・CSS スクロールすると追従する画像のコードを書いているのですが、追従する画像の大きさの調節が上手くいきませ 2 2022/04/18 12:52
- HTML・CSS (Javascript)印刷するファイルに応じて印刷プレビュー画面で用紙を自動的に切り替えたい!! 2 2022/04/11 12:04
- HTML・CSS flex の各子要素を横幅 100% にしたい 1 2022/09/22 21:25
- PHP ランキングを表示する際の画像の大きさを固定することは可能でしょうか? <?php if ( has_ 1 2022/07/21 14:55
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- Visual Basic(VBA) Selenium.ChromeDriverの使い方について 7 2022/09/22 06:43
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
スタイルシートで画面を上下に...
-
フッター上部に謎の隙間
-
2行目のブラウザ表示以上を省略
-
プログラミングでのビンゴマシ...
-
チェックボックスの背景色って...
-
オンマウス時に別画像を上に重...
-
html/cssで要素が出てこなくて...
-
フッターの下に隙間ができてしまう
-
指定した項目を二重線で消す
-
ホームページビルダー14のどこ...
-
Ctrl+F(検索)の窓を出したいの...
-
リキッドデザイン3カラム左端幅...
-
SafariでもBGMを流す方法という...
-
【コーディング】途中から位置...
-
TABLEの高さを固定したいのですが…
-
【html5】canvasでの文字の形の...
-
背景の左右端に画像を表示する方法
-
スクロール可能なチェックボックス
-
大分類・中分類・小分類
-
文字をクリックしたら別の文字...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フッター上部に謎の隙間
-
【CSS】floatで左右に並べた...
-
CSS <div>の入れ子が反映さ...
-
Ctrl+F(検索)の窓を出したいの...
-
css固定したフッターが本文と重...
-
textareaで入力した文字を改行...
-
オンマウス時に別画像を上に重...
-
文字を固定したいのですが…
-
スクロール可能なチェックボックス
-
divのheight指定で画面一杯に表...
-
Flickity で画像にリンクを貼る...
-
スタイルシートで画面を上下に...
-
1行で左寄せと右寄せと中央揃え...
-
CSS のみのタブ切り替えについて
-
CSS 可変マージン
-
HTMLですCSSです この画像のよ...
-
チェックボックスの背景色って...
-
HTMLですCSSです 画像のように...
-
画像の特定の座標にカーソルが...
-
TABLEの高さを固定したいのですが…
おすすめ情報