【问题标题】:How do I insert a Font Awesome glyph/icon in a CakePHP submit button?如何在 CakePHP 提交按钮中插入 Font Awesome 字形/图标?
【发布时间】:2013-11-26 03:08:41
【问题描述】:

我正在尝试使用 CakePHP 和 Twitter Bootstrap 3 在提交按钮中插入 Font Awesome icon

代码如下:

echo $this->Form->submit('Send', array('class' => 'btn btn-warning fa fa-envelope', 'escape' => false));

它适用于常规按钮,但对于由上面的 FormHelper 生成的输入,它不会以图标呈现。我可以调整 FormHelper::submit 来解决这个问题吗?

我可以使用其他类型的 FormHelper 按钮,但 CakePHP 文档明确指出:

尽量避免使用 FormHelper::input() 来生成提交按钮。请改用 FormHelper::submit()。

【问题讨论】:

    标签: cakephp font-awesome


    【解决方案1】:

    你可以使用:

    echo $this->Form->button('<i class="fa fa-envelope"></i> Send', array(
        'type' => 'button',
        'class' => 'btn btn-warning fa fa-envelope',
        'escape' => false
    ));
    

    我不认为您列出的报价是为了阻止您这样做,但可能应该澄清一下。

    底线,如果它生成正确的 HTML,那就没问题了。但是 - 最重要的是,使用 buttonsubmit 而不是 `input(因此它没有提交的值)是可行的方法。

    http://book.cakephp.org/2.0/en/core-libraries/helpers/form.html#FormHelper::button

    【讨论】:

    • 是的,我试过了,字形出现了,但是 Bootstrap 字体样式被删除了,所以看起来很奇怪。但我同意你的说法,即 ->button 原则上应该没问题!编辑:.fa 样式“font-family: FontAwesome;”是罪魁祸首。
    • 啊,解决办法:echo $this->Form->button(' Send', array('class' => ' btn btn-warning', 'escape' => false)); - 这不会通过更改类来弄乱字体。但是这个解决方案不适用于 FormHelper::submit,只能使用 ::button。感谢您让我走上正轨!
    • 酷 - 乐于助人。感谢更新。已更新我的答案以匹配以帮助未来的用户。
    猜你喜欢
    • 2019-06-06
    • 2017-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-11
    • 2016-12-12
    • 2016-03-07
    • 1970-01-01
    相关资源
    最近更新 更多