在primefaces中更改FontAwesome图标大小(p:commandButton和p:menuitem)

时间:2016-05-25 11:35:05

标签: css jsf primefaces font-awesome font-size

我在p:commandButton和p:menuitem中尝试了FontAwesome图标。

我能够显示图标,但与内置移动图标相比,FontAwesome图标看起来太小了。如果你有其他PF组件使用themeroller图标,它看起来不一致。

有没有办法增加FontAwesome图标的大小?

我也尝试使用样式来增加font-size和fa-lg,fa-2x,fa-3x,fa-4x或fa-5x类但不起作用。

<p:commandButton icon="ui-icon-mobile-phone" id="sendSMSBtn"
    styleClass="btn btn-info btn-lg" onclick="modalDialog.show()"
    oncomplete="modalDialog.hide();"
    action="#{myBean.getMobileNo()}"
    update=":frm:messages" style="font-size:30px">

生成的HTML:

<button type="submit" title="Send Bulk SMS" onclick="modalDialog.show();PrimeFaces.ab({source:'frm:dataTable:sendSMSBtn',update:'frmMassSMS frm:messages',oncomplete:function(xhr,status,args){modalDialog.hide();;}});return false;" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-icon-only btn btn-info btn-lg fa-fw" name="frm:dataTable:sendSMSBtn" id="frm:dataTable:sendSMSBtn" role="button" aria-disabled="false"><span class="ui-button-icon-left ui-icon ui-c ui-icon-mobile-phone"></span><span class="ui-button-text ui-c">ui-button</span></button>

3 个答案:

答案 0 :(得分:4)

仅当未在value中使用<p:commandButton>组件时,才可以使用fa-2x,fa-3x...。只要将您要描述此按钮的内容放入styleClass中即可。

<p:commandButton styleClass="fa fa-pencil fa-2x btn btn-lg btn-success someclass" process="staffTable" update=":MStaffUpdateForm:staffUpdate" oncomplete="PF('staffUpdateDialog').show()"  />

然后,您的XHTML生成代码:

<span class="ui-button-text ui-c">ui-button</span>

图片:
image

然后,像这样组成您的JavaScript:

<script>
     $(function() {
         $('.someclass').text("");
     }
</script>

具有常规尺寸的结果:
Result with normal-size

fa-2x的结果:
Result with fa-2x

答案 1 :(得分:3)

覆盖“ui-icon”的宽度和字体大小属性CSS对我有用:

.button {
  width: 100px;
  height: 50px;
}

.ui-icon {
  width: 24px !important;
  font-size: 24px !important;
}

示例按钮:

<p:commandButton image="fa fa-download" value="Test" styleClass="button"/>

enter image description here

答案 2 :(得分:-3)

是的,你可以!

但是如果你想使用FA,你应该添加库的参考。我有同样的问题,我这样做了:

    <!-- CSS With Font-Awesome.jar -->  
        <link href="/webjars/font-awesome/4.6.3/css/font-awesome.css" rel="stylesheet" type="text/css" media="screen"/>

一些代码:

                    <td >
                        <i class="fa fa-camera-retro"></i> fa-camera-retro              
                        <i class="fa fa-camera-retro fa-lg"></i> fa-lg
                        <i class="fa fa-camera-retro fa-2x"></i> fa-2x
                        <i class="fa fa-camera-retro fa-3x"></i> fa-3x
                        <i class="fa fa-camera-retro fa-4x"></i> fa-4x
                        <i class="fa fa-camera-retro fa-5x"></i> fa-5x
                    </td>

您应该在web.xml中添加片段:

<context-param>
    <param-name>primefaces.FONT_AWESOME</param-name>
    <param-value>true</param-value>
</context-param>
祝你好运!