プロジェクトでは、特定の幅の列を含むテーブルを、テーブル行ごとに 1 つの HTML 行 (折り返しなし) でレンダリングする必要がありました。各テーブル セルには、上下に 1 ピクセル、左右に 2 ピクセルのパディングが必要です。クロスブラウザで動作することを思い付くことができる最良の方法は、次のように、テーブル内の td 内に div を配置することです。
<style>
table.grid { border: none; border-collapse: collapse; }
table.grid tbody tr td { padding: 1px 2px; }
table.grid tbody tr td div { overflow: hidden; white-space: nowrap; }
table.grid tbody tr td.one { width: 100px; }
table.grid tbody tr td.two { width: 200px; }
</style>
<table class="grid">
<tbody>
<tr>
<td class="one"><div>One</div></td>
<td class="two"><div>Two</div></td>
</tr>
<tr>
<td class="one"><div>Another One</div></td>
<td class="two"><div>Another Two</div></td>
</tr>
</tbody>
</table>
余分な div を追加する必要をなくしたいと考えています。この問題をグーグルで検索するのに何時間も費やしましたが、代替手段が見つかりません。
余分な div を追加せずに必要なことを行う方法はありますか? もしそうなら、それは何ですか?
テーブルをまったく使用せずに目的の結果を得る方法はありますか?