PrimeFaces 3.0 - <p:dataTable>标头与使用rollable=“true”不符
我有一个使用PrimeFaces 3.0组件的JSF 2 webapp。在一个页面上,我正在使用复合组件中的组件来显示对象表。在我尝试使用该选项之前,我已成功使用此组件。现在,表列标题与列内容不对齐。我尝试使用IE 7(这是我的客户端环境的目标浏览器)和Firefox 4.0.1进行比较。两者都表现出问题,但在IE 7中更为明显。<p:dataTable>
scrollable="true"
IE 7 截图:
火狐 4.0.1 截图:
以下是我的一些 Facelet 页面代码:
<p:dataTable
id="vesselsDataTable"
value="#{cc.attrs.vesselAdapterList}"
var="currentRow"
selection="#{editVesselBean.selectedRow}"
selectionMode="single"
scrollable="true"
height="500">
<p:column
id="imoColumn"
style="width:45px"
sortBy="#{currentRow.imo}">
<f:facet name="header">
<h:outputText value="IMO" />
</f:facet>
<div class="#{currentRow.imoStyleClass}">
<h:outputText value="#{currentRow.imo}"
</div>
</p:column>
<p:column
id="notesIndicatorColumn"
style="width:35px"
sortBy="#{currentRow.hasNotes}">
<f:facet name="header">
<h:outputText value="#{bundle.labelNotes}" />
</f:facet>
<h:outputText
styleClass="noteIndicator"
id="vesselNotesIndicator"
value="#{bundle.stringNoteIndicatorText}"
title="#{currentRow.notesAsTooltipText}"
rendered="#{currentRow.hasNotes}"
</p:column>
<ui:remove>other column definitions omitted for brevity...</ui:remove>
<p:dataTable>
我的每个列都有一个以像素为单位的固定宽度的样式,并且 dataTable 本身具有属性集。这似乎与 Showcase 演示和 2.2 手册 PDF 中显示的内容相同。height
引用手册:
滚动是一种使用固定标题显示数据的方法,为了实现简单的滚动,将可滚动选项设置为 true,以像素为单位定义固定高度,并为每列设置固定宽度。
谁能告诉我我做错了什么?
我正在使用当前的PrimeFaces 3.0-M2-SNAPSHOT和当前的Mojarra 2.1 JSF RI。
更新
我已经迁移到PrimeFaces 3.0-M2(不是快照)版本,问题仍然存在。根据Maple和BalusC的建议,我(暂时)删除了列排序并尝试了不同的文档类型。我最终确定了XHTML 1.0 Strict doc类型。它没有显示IE 7中的任何改进,但确实显示了Firefox 4中的一些改进。
IE 7 与 XHTML 1.0 严格
Firefox 4 with XHTML 1.0 Strict
在 里面 是 在 里面 。这可能相关吗?<p:dataTable>
<p:panel>
<p:layout>