我对所有列都使用了宽度属性,但在显示中,列没有调整。
我可以这样吗?如果,请指导我实现我想要的列宽。
您必须使用 columnClasses 属性并用逗号(,)分隔每个列样式。下面的代码示例展示了如何使用 columnClassess 属性。
在头部标签中:
<style type="text/css">
.column1{width: 10px;height:auto}
.column2{width: 5px;height:auto}
.column3{width: 20px;height:auto}
</style>
在正文标签中:
<p:panelGrid columnClasses="column1,column2,column3" columns="4" style="width: 100%" >
<p:column></p:column>
<p:column></p:column>
<p:column></p:column>
<p:column></p:column>
</p:panelGrid>
它也适用于 h:panelGrid 标签。
您可以使用硬编码值:
<p:column style="width:20px">
或百分比:
<p:column style="width:20%">
取决于什么最适合你。
我建议您使用primefaces show中描述的 ui-grid-col css 类。其中 12 = 100%
<div class="ui-grid ui-grid-responsive">
<div class="ui-grid-row">
<div class="ui-grid-col-2">
<h:outputText value="To :" />
</div>
<div class="ui-grid-col-4">
<h:outputText value="#{bean.name}" />
</div>
</div>
<div class="ui-grid-row">
<div class="ui-grid-col-2">
<h:outputText value="Address :" />
</p:column>
<div class="ui-grid-col-4">
<p:outputLabel value="#{bean.address}" />
</div>
</div>