🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

1回答

3813閲覧

tableの大きさを画面のサイズに合わせて調整したい。

Kokii

総合スコア3

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2021/01/24 14:53

tableの大きさを画面のサイズに合わせて調整したい。
文字を改行するのではなく、縦横そのままの比率で画面サイズに合わせて拡大縮小したい。
(合わせて文字の大きさも拡大縮小)
bootstrapのcontainerの幅にtableを収めたい。

table {table-layout: fixed; width: 100%; box-sizing: border-box;}
等試みましたが上手くいかず。

<!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <title>TEST</title> <!-- Bootstrap core CSS --> <link href="vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet"> </head> <body> <div class="container"> <div class="row"> <table cellpadding="0" cellspacing="0" class="table table-bordered"> <tr> <th>1</th> <th>2</th> <th>3</th> <th>4</th> <th>5</th> <th>6</th> <th>7</th> <th>8</th> <th>9</th> <th>10</th> <th>11</th> <th>12</th> <th>13</th> <th>14</th> <th>15</th> <th>16</th> <th>17</th> <th>18</th> <th>19</th> <th>20</th> </tr> <tr> <td>あ</td> <td>い</td> <td>う</td> <td>え</td> <td>お</td> <td>か</td> <td>き</td> <td>く</td> <td>け</td> <td>こ</td> <td>さ</td> <td>し</td> <td>す</td> <td>せ</td> <td>そ</td> <td>た</td> <td>ち</td> <td>つ</td> <td>て</td> <td>と</td> </tr> </table> </div> </div> </body> </html>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Lhankor_Mhy

2021/01/25 03:35

CSSだけでは難しいように思います。
Kokii

2021/01/25 05:04

CSS以外も含めて、改善方法ご教授頂けないでしょうか。
guest

回答1

0

ベストアンサー

ResizeObserver を使ってみるのはどうでしょうか。

js

1 const outer = document.querySelectorAll('.row'); 2 const resizeObserver = new ResizeObserver(entries => { 3 entries.forEach(entry => { 4 const target = entry.target; 5 const inner = target.querySelector('.table-bordered'); 6 inner.style.transform = `scale(${target.offsetWidth / inner.offsetWidth})`; 7 inner.style.transformOrigin = `top left`; 8 }); 9 }); 10 outer.forEach(e => resizeObserver.observe(e));

ResizeObserver - Web API | MDN

投稿2021/01/25 05:46

Lhankor_Mhy

総合スコア36928

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Lhankor_Mhy

2021/01/29 07:47

「まだ回答を求めています」とのことですが、当方の回答に何か不備がありましたでしょうか。 応答がないとあなたが私の回答に満足しなかった点がわからず、質問の要点がつかめないため、他の回答者も回答しにくいのではないかと思うのですが、その点はどう思われますか。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問