1. ホーム
  2. html

[解決済み] CSS td width absolute, position の使用

2022-12-17 19:12:43

質問

こちらをご覧ください JSFIDDLE

td.rhead { width: 300px; }

なぜCSSの幅が効かないのか?

<table>
<thead>
<tr>
<td class="rhead">need 300px</td>
<td colspan="7">Week #0</td>
<td colspan="7">Week #1</td>
<!-- etc..-->
</tr>
<tr>
<td class="rhead"></td>
<td>S</td><td>M</td><td>T</td><td>W</td><td>T</td><td>F</td><td>S</td>
<td>S</td><td>M</td><td>T</td><td>W</td><td>T</td><td>F</td><td>S</td>
<!-- etc... -->
</tr>
<thead>
</table>

また、position:fixed、absoluteなどがtdの幅に与える影響があるとすれば、どのようなものでしょうか?私は、修正よりも理由を探しています。私はそれがどのように動作するかを理解することを望んでいます。

どのように解決するのですか?

これはあなたが聞きたいことではないかもしれませんが display: table-cell は幅を考慮しないので、テーブル全体の幅に基づいて折りたたまれます。 これを簡単に回避するには、単に display: block 要素を、幅を指定したテーブルセル自体の中に置くことで簡単に回避できます。

<td><div style="width: 300px;">wide</div></td>

これは、もし <table>position: fixed であるか、またはセルの位置がすべてテーブルに対する相対的な静的なものであるため、絶対的なものです。

http://jsfiddle.net/ExplosionPIlls/Mkq8L/4/

編集部:手柄を立てることはできませんが、コメントにあるように、単に min-width の代わりに width をテーブルのセルに書いてください。