我有一些问题需要自定义menuitem组件的图标。
我试过这个表格,但我没有成功:
<p:menuitem value="Clientes" outcome="/clientes/CadastroCliente" icon="resources/images/person.png"/>
我也尝试使用css
<p:menuitem value="Clientes" outcome="/clientes/CadastroCliente" icon="user"/>
.user{
background: url('resources/images/menu/users.png') no-repeat;
height:16px;
width:16px;
}
我使用的是PrimeFaces 5.
答案 0 :(得分:0)
试试这个
<p:menuitem value="Clientes" outcome="/clientes/CadastroCliente" icon="user"/>
.user {
background: url(../images/menu/users.png) !important;
height:16px;
width:16px;
}
您需要!important
覆盖Primefaces的默认图像并直接在src目录下创建文件夹images
答案 1 :(得分:0)
primeFaces 6
如果您不想创建自己的皮肤并直接设置样式并仅显示图标/图像,
你可以这样做: 请注意,标记内没有 value =“avoid”属性。
<p:menuitem url="./config.xhtml" styleClass="myStyleName"/>
结果是:
<li role="menuitem">
<a tabindex="-1"
class="ui-menuitem-link ui-corner-all myStyleName"
href="./Konfiguration.xhtml">
<span class="ui-menuitem-text"></span>
</a>
</li>
请注意,会有一个空的流量爆炸范围标记。
使用的风格:
a.ui-menuitem-link.ui-corner-all.myStyleName{
background: url("img/zahnrad.png") no-repeat;
background-size: 1em;
width: 1em;
height: 1em;
}
重要的是我的案例1em中的背景大小
如果您想添加带文字的图标,请执行以下操作:
<p:menuitem url="./Konfiguration.xhtml"
styleClass="myStyleName" value="navigation" />
结果是:
<li role="menuitem">
<a tabindex="-1" class="ui-menuitem-link ui-corner-all myStyleName" href="./config.xhtml">
<span class="ui-menuitem-text">navigation</span>
</a>
</li>
使用的风格:
a.ui-menuitem-link.ui-corner-all.myStyleName{
background: url("img/zahnrad.png") no-repeat;
background-size: 1em;
padding-left: 1.2em; /* reserved text space */
/*
right to left
background-position: right;
padding-right: 1.2em;
*/
}