Ответ 1
Этот связанный ответ честно не имеет смысла для меня. <h:column>
как и в реализации JSF по умолчанию не поддерживает эти атрибуты вообще. Это далеко за пределами меня, почему он получил 6 голосов и отмечен признанным. Это будет невежество или совпадение (возможно, и вопросник, и ответ используют реализацию JSF. Я не знаю, у кого есть средство визуализации для <h:column>
, которое автоматически преобразует все неизвестные атрибуты в реальные атрибуты HTML, но, по крайней мере, стандартный JSF RI/Mojarra этого не делает, возможно, MyFaces?).
Тем не менее, чтобы разделить столбцы отдельно, вам нужно использовать атрибут columnClasses
<h:dataTable>
. Он принимает компаразированную строку имен классов CSS, которая впоследствии будет применяться к элементам <td>
, сгенерированным с помощью <h:column>
.
<h:dataTable columnClasses="column1,column2,column3">
<h:column>...</h:column>
<h:column>...</h:column>
<h:column>...</h:column>
</h:dataTable>
Это будет выглядеть примерно так:
<table>
<tbody>
<tr>
<td class="column1">...</td>
<td class="column2">...</td>
<td class="column3">...</td>
</tr>
</tbody>
</table>
Чтобы указать ширину, просто примените CSS.
.column1 { width: 200px; }
.column2 { width: 100px; }
.column3 { width: 50px; }