html, css を用いて、テーブルを左右に2カラム表示したと考えています。
イメージとしては、アプリケーションのサイドバーとメインウィンドウという感じです。
【現状】
画面サイズが大きい時は左右に表示されているのですが、ウィンドウサイズを小さく変更していくと、右側の[メインカラム]が[サイドバー]の下に落ちてしまいます。
【目標】
[サイドバー]、[メインカラム]共に最小ピクセル数が決まっており、それまでは<曲名>,<再生時間>それぞれの欄が縮んでいく感じです。
ウィンドウサイズが最小ピクセル数を下回った場合には、それ以上各欄(<曲名>,<再生時間>)のサイズは小さくせずに、左右のスクロールバーが現れて画面は切れている感じにしたいです。
環境はmacOS Sierraです。
どなたかわかる方がいらっしゃいましたら、ご教授お願いいたします。
参考までに、現状のコードを記載します。
html
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2<html lang="ja"> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 5 <link rel="stylesheet" type="text/css" href="test.css"> 6 <title>ページのタイトル</title> 7 </head> 8 9 <body> 10 <!-- コンテナ開始 --> 11 <div id="container"> 12 13 <!-- ヘッダ開始 --> 14 <!-- <div id="header"> 15 [ヘッダ] 16 </div> --> 17 <!-- ヘッダ終了 --> 18 19 <!-- ナビゲーション開始 --> 20 <div id="test"> 21 <div id="nav"> 22 [サイドバー]<br> 23 <input style="text", name="search"> 24 <button type="button">検索</button> 25 <table align="center"> 26 <thead> 27 <tr> 28 <th class="col11", align="left">番号</th> 29 <th class="col12", align="left">曲名</th> 30 </tr> 31 </thead> 32 <tbody> 33 <tr> 34 <td class="col11", align="left">1</td> 35 <td class="col12", align="left">hogehoge1</td> 36 </tr> 37 </tbody> 38 </table> 39 </div> 40 <!-- ナビゲーション終了 --> 41 42 <!-- メインカラム開始 --> 43 <div id="content"> 44 [メインカラム] 45 <table> 46 <thead> 47 <tr> 48 <th class="col1", align="left">番号</th> 49 <th class="col2", align="left">曲名</th> 50 <th class="col3", align="left">再生時間</th> 51 <!-- <th class="col4", align="left">アーティスト名</th> --> 52 <!-- <th class="col5", align="left">アルバム</th> --> 53 <!-- <th class="col6", align="left">ジャンル</th> --> 54 </tr> 55 </thead> 56 <tbody> 57 <tr> 58 <td class="col1", align="left">1</td> 59 <td class="col2", align="left">hogehoge1</td> 60 <td class="col3", align="left">hogehoge2</td> 61 <!-- <td class="col4", align="left">hogehoge3</td> --> 62 <!-- <td class="col5", align="left">hogehoge4</td> --> 63 <!-- <td class="col6", align="left">hogehoge5</td> --> 64 </tr> 65 <tr> 66 <td class="col1", align="left">2</td> 67 <td class="col2", align="left">hogehoge1</td> 68 <td class="col3", align="left">hogehoge2</td> 69 <!-- <td class="col4", align="left">hogehoge3</td> --> 70 <!-- <td class="col5", align="left">hogehoge4</td> --> 71 <!-- <td class="col6", align="left">hogehoge5</td> --> 72 </tr> 73 </tbody> 74 </table> 75 </div> 76 </div> 77 <!-- メインカラム終了 --> 78 79 <!-- フッタ開始 --> 80 <!-- <div id="footer"> 81 [フッタ] 82 </div> --> 83 <!-- フッタ終了 --> 84 85 86 </div> 87 <!-- コンテナ終了 --> 88 89 </body> 90</html>
css
1@charset "utf-8"; 2 3/* --- 全体の背景・テキスト --- */ 4body { 5 margin: 0; 6 padding: 0; 7 background-color: #ffffff; /* ページの背景色 */ 8 color: #000000; /* 全体の文字色 */ 9 font-size: 100%; /* 全体の文字サイズ */ 10} 11 12/* --- 全体のリンクテキスト --- */ 13a:link { color: #0000ff; } 14a:visited { color: #800080; } 15a:hover { color: #ff0000; } 16a:active { color: #ff0000; } 17 18/* --- コンテナ --- */ 19#container { 20 width: 100%; /* ページの幅 */ 21 margin: 0 auto; /* センタリング */ 22 background: url(sidebar_200.gif) repeat-y left; /* サイドバーの背景画像 */ 23 background-color: #ffffff; /* メインカラムの背景色 */ 24 border-left: 1px #c0c0c0 solid; /* 左の境界線 */ 25 border-right: 1px #c0c0c0 solid; /* 右の境界線 */ 26} 27 28/* --- ヘッダ --- */ 29#header { 30 background-color: #ffe080; /* ヘッダの背景色 */ 31 /*min-width: 500px;*/ 32} 33 34/* --- ナビゲーション --- */ 35#nav { 36 float: left; 37 width: 20%; /* サイドバーの幅 */ 38 border-right: 1px #c0c0c0 solid; 39 min-width: 300px; 40 box-sizing: border-box; 41 height: 100%; 42} 43 44 45/* --- メインカラム --- */ 46#content { 47 /*float: left;*/ 48 /*float: right;*/ 49 /*box-sizing:border-box;*/ 50 width: 80%; /* メインカラムの幅 */ 51 min-width: 300px; 52 height: 100%; 53} 54 55/* --- フッタ --- */ 56#footer { 57 clear: left; /* フロートのクリア */ 58 width: 100%; 59 background-color: #ffe080; /* フッタの背景色 */ 60} 61 62#test { 63 width: 100%; 64 min-width: 300px; 65} 66 67table thead, 68table tbody { 69 display: block; 70} 71 72table tbody { 73 overflow-y: scroll; 74 height: 120px; /* 高さはお好みで */ 75} 76 77/* 各列の幅を設定 */ 78table .col1 { width: 60px; min-width: 50px;} 79table .col2 { width: 400px; min-width: 300px; } 80table .col3 { width: 200px; min-width: 150px;} 81table .col4 { width: 150px; } 82table .col5 { width: 150px; } 83table .col6 { width: 150px; } 84table .col11 { width: 60px; min-width: 50px;} 85table .col12 { width: 200px; min-width: 150px;} 86 87/*movie06.gif*/
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。