Применить стиль к определенному льду: колонка
Мой вопрос довольно простой, но не могу найти ответ в Google. Мне интересно, пропустил ли я что-то в компоненте ice: column.
Я использую код как:
<ice:panelGrid columns="3">
<ice:column style="background-color: yellow;">
<ice:outputText value="..." />
</ice:column>
<ice:column>
// row content
</ice:column>
<ice:column>
// row content
</ice:column>
// other rows
</ice:panelGrid>
Кажется, что компонент column имеет атрибут style и styleClass, однако в HTML ничего не отображается.
Как применить стиль к ячейке таблицы с помощью IceFaces?
Заранее спасибо за ответ.
1 ответ
Вроде как стандарт JSF <h:panelGrid>
<ice:panelGrid>
имеет columnClasses
атрибут, который позволяет вам указывать разделенный запятыми список классов столбцов, которые должны впоследствии применяться к столбцам. Также в стандартном JSF <h:panelGrid>
, <h:column>
не поддерживается. Это поддерживается только в <h:dataTable>
, Вместо этого каждый прямой ребенок <h:panelGrid>
рассматривается как один столбец, который может быть просто <h:outputText>
или же <h:panelGroup>
если у вас есть несколько компонентов, которые нужно поместить в один столбец.
Итак, это должно сделать:
<ice:panelGrid columns="3" columnClasses="col1,col2,col3">
<ice:panelGroup>row 1 col 1</ice:panelGroup>
<ice:panelGroup>row 1 col 2</ice:panelGroup>
<ice:panelGroup>row 1 col 3</ice:panelGroup>
<ice:panelGroup>row 2 col 1</ice:panelGroup>
<ice:panelGroup>row 2 col 2</ice:panelGroup>
<ice:panelGroup>row 2 col 3</ice:panelGroup>
...
</ice:panelGrid>
который будет генерировать
<table>
<tbody>
<tr>
<td class="col1">row 1 col 1</td>
<td class="col2">row 1 col 2</td>
<td class="col3">row 1 col 3</td>
</tr>
<tr>
<td class="col1">row 2 col 1</td>
<td class="col2">row 2 col 2</td>
<td class="col3">row 2 col 3</td>
</tr>
...
</tbody>
</table>
Вы можете указать стиль в .col1
, .col2
а также .col3
занятия обычным способом.
.col1 {
background: yellow;
}