如何在按钮内显示字形?

How to display glyph inside button?

在表单中我有以下提交按钮:

<%= f.submit "Send message".html_safe, class: "buttony" %>

我在整个应用程序中使用 font-awesome 没有问题,但是如果我尝试使用下面的代码在按钮内添加一个字形,<i class='fa fa-envelope'></i> 代码显示为文本和字形不显示。

我做错了什么?这可能与一行中的两个 类 有关吗?

<%= f.submit "<i class='fa fa-envelope'></i> Send message".html_safe, class: "buttony" %>

Update:从代码中删除 html.safe 没有任何区别。该页面在浏览器中的源代码为:

<input type="submit" name="commit" value="<i class='fa fa-envelope'></i> Send message" class="buttony" />

关于你可以改写为

<%= button_tag(type: 'submit', class: "buttony", value: 'Send message') do %>
        <i class="fa fa-envelope"></i>
<% end %>

只需使用常规 HTML 按钮即可:

<button class="buttony" type="submit">
  <i class="fa fa-envelope"></i>
  Send message
</button>