在p:panel中添加图标?

mem*_*und 2 jsf primefaces

如何向组件p:panel中添加图标?

<p:panel header="text" />
Run Code Online (Sandbox Code Playgroud)

不幸的是,它不支持“ icon”属性。所以我尝试了这个:

<f:facet name="header">
 <h:outputText value="text">
</h:outputText>
 <p:commandLink styleClass="ui-icon ui-icon-comment" />
</f:facet>
Run Code Online (Sandbox Code Playgroud)

但这会在文本和仅显示为图标的命令“链接”之间添加换行符。

有人知道我还能怎么做吗?ty

map*_*aft 5

图标导致其下方的文本向下移动的原因是因为ui-icon该类具有一种display: block样式,该样式导致图像贪婪地占用该行并将文本向下推。下面的页眉构面将围绕图像和文本构建一个2列表,强制页眉并排显示它们。

<f:facet name="header">
  <h:panelGrid columns="2">
    <span class="ui-icon ui-icon-comment" />
    <h:outputText value="text" />
  </h:panelGrid>
</f:facet>
Run Code Online (Sandbox Code Playgroud)

  • 你的提示!这还不错,但是它为标题栏增加了很大的空间。几乎是没有网格的2倍。我认为网格为此花费了很多空间。但是根据您的提示,我只是改写了ui-icon的显示样式,例如`style =“ display:inline-block;`和voila,它可以正常工作! (2认同)