HTMLのテーブルの文字サイズを自動調整する方法
HTMLのテーブルの文字サイズを自動調整する方法について説明します。
以下では、HTMLとCSSを別ファイルに分けて、クラス名とID名に「test-」というプレフィックスを使用した例を示します。
HTMLファイル(index.html)
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>テーブルの文字サイズ自動調整</title> <link rel="stylesheet" href="styles.css"> </head> <body> <table class="test-table"> <thead> <tr> <th class="test-header">見出し1</th> <th class="test-header">見出し2</th> </tr> </thead> <tbody> <tr> <td class="test-cell">データ1</td> <td class="test-cell">データ2</td> </tr> <tr> <td class="test-cell">データ3</td> <td class="test-cell">データ4</td> </tr> </tbody> </table> </body> </html>
CSSファイル(styles.css)
body { font-family: Arial, sans-serif; } .test-table { width: 100%; border-collapse: collapse; } .test-header, .test-cell { border: 1px solid #ddd; padding: 8px; text-align: left; } .test-table { table-layout: auto; } .test-header { font-size: 1.2em; } .test-cell { font-size: 1em; } /* 自動調整のための設定 */ .test-table { font-size: calc(1em + 0.5vw); }
解説
1. HTMLファイル:
- table要素にはクラスtest-tableが付与されており、テーブルのスタイルを適用しています。
- th要素とtd要素にはそれぞれクラスtest-headerとtest-cellが付与されています。
これにより、各セルのスタイルを個別に設定できます。
2. CSSファイル:
- tableのwidthプロパティを100%に設定してテーブルが親要素の幅に合わせるようにしています。
- border-collapseプロパティをcollapseにして、テーブルの境界線が重ならないようにしています。
- font-sizeプロパティをcalc(1em + 0.5vw)に設定しています。
これにより、画面サイズに応じて文字サイズが自動的に調整されます。
1emは基本のフォントサイズ、0.5vwは画面の幅に対する割合で、両方を組み合わせて動的にサイズを変更します。
この方法により、テーブルの文字サイズが画面サイズに応じて適切に自動調整されます。