Учитывая следующее, как сделать мой последний столбец автоматическим размером с его содержимым? (Последний столбец должен автоматически изменять размер по ширине содержимого. Предположим, у меня есть только 1 элемент li, он должен сжиматься по сравнению с 3 элементами li и т. Д.):
<table cellspacing="0" cellpadding="0" border="0">
<thead><!-- universal table heading -->
<tr>
<td class="tc first"><input type="checkbox" value="true" name="data-1-check-all" id="data-1-check-all"></td>
<td class="tc">Type</td>
<th>File</th>
<th>Sample</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<tr>
<td>Division 1</td>
<td>Division 2</td>
<td>Division 3</td>
<td>Division 4</td>
<td>Division 5</td>
</tr>
<tr>
<td>Division 1</td>
<td>Division 2</td>
<td>Division 3</td>
<td>Division 4</td>
<td class="last">
<ul class="actions">
<li><a class="iconStats" href="#">Statystyki</a></li>
<li><a class="iconEdit" href="#">Edytuj</a></li>
<li><a class="iconDelete" href="#">Usuń</a></li>
</ul>
</td>
</tr>
</tbody>
</table>
CSS:
table { table-layout: fixed; width: 100%; }
table tr { border-bottom:1px solid #e9e9e9; }
table thead td, th {border-left: 1px solid #f2f2f2; border-right: 1px solid #d5d5d5; background: #ddd url("../images/sprites4.png") repeat-x scroll 0 100% ; font-weight: bold; text-align:left;}
table tr td, th { border:1px solid #D5D5D5; padding:15px;}
table tr:hover { background:#fcfcfc;}
table tr ul.actions {margin: 0;}
table tr ul.actions li {display: inline; margin-right: 5px;}
table-layout: fixed
если оно не задано в css в вопросе jsfiddle.net/hCkch/1.fitwidth
а затем просто установил класс для столбцов, которые вы не хотите использовать в нескольких строках. Я отредактирую ваш ответ, чтобы добавить это.Если вы хотите убедиться, что последняя строка не переносится и, таким образом, размер соответствует вашему желанию, взгляните на
источник
Вы можете указать ширину всех ячеек таблицы, кроме последних, и добавить table-layout: fixed и width к таблице.Вы можете установить
(или установите это для последнего TD, как предложил Сандер).
Это заставляет встроенные LI не ломаться. К сожалению, это не приводит к новому вычислению ширины в содержащем UL (и в этом родительском TD) и, следовательно, не изменяет размер последнего TD автоматически.
Это означает: если встроенный элемент не имеет заданной ширины, ширина TD всегда сначала вычисляется автоматически (если не указано). Затем его встроенное содержимое с этой рассчитанной шириной визуализируется, и применяется
white-space
свойство -property, растягивая его содержимое за пределы вычисленных границ.Я думаю, это невозможно без элемента в последнем TD с определенной шириной.
источник
используйте авто и минимальную или максимальную ширину следующим образом:
источник