Sie können stattdessen ein anderes Tag verwenden input
und FontAwesome auf normale Weise anwenden.
Anstelle Ihres input
with-Typs können image
Sie Folgendes verwenden:
<i class="icon-search icon-2x"></i>
schnelles CSS :
.icon-search {
color:white;
background-color:black;
}
Hier ist eine kurze Geige:
DEMO
Sie können es etwas besser gestalten und dem i-Objekt Ereignisfunktionalität hinzufügen, indem Sie ein <button type="submit">
Objekt anstelle von i
oder mit Javascript verwenden.
Der Button sollution wäre ungefähr so:
<button type="submit" class="icon-search icon-large"></button>
Und das CSS :
.icon-search {
height:32px;
width:32px;
border: none;
cursor: pointer;
color:white;
background-color:black;
position:relative;
}
Hier ist meine Geige mit dem Button anstelle von i: DEMO aktualisiert
Update: Verwenden von FontAwesome für ein beliebiges Tag
Das Problem mit FontAwsome ist, dass das Stylesheet Pseudoelemente verwendet :before
, um die Symbole zu einem Element hinzuzufügen - und Pseudoelemente funktionieren nicht / sind für input
Elemente nicht zulässig . Aus diesem Grund funktioniert die normale Verwendung von FontAwesome nicht input
.
Es gibt jedoch eine Lösung : Sie können FontAwesome wie folgt als normale Schriftart verwenden:
CSS:
input[type="submit"] {
font-family: FontAwesome;
}
HTML:
<input type="submit" class="search" value="" />
Die Glyphen können als Werte des value
Attributs übergeben werden. Der ASCII - Codes für die einzelnen Buchstaben / Symbole können in der FontAwesome CSS - Datei gefunden werden, müssen Sie sie nur in eine HTML - ascii - Nummer ändern , wie \f002
zu 
und es sollte funktionieren.
Link zum FontAwesome ASCII- Code ( Cheatsheet ): fortawesome.github.io/Font-Awesome/cheatsheet
Die Größe der Symbole kann einfach über angepasst werden font-size
.
Siehe das obige Beispiel mit einem input
Element in einer jsfidde:
Update: FontAwesome 5
Mit FontAwesome Version 5 hat sich das für diese Lösung erforderliche CSS geändert - der Name der Schriftfamilie wurde geändert und die Schriftstärke muss angegeben werden:
input[type="submit"] {
font-family: "Font Awesome 5 Free"; // for the open access version
font-size: 1.3333333333333333em;
font-weight: 900;
}
Siehe @ WillFasties Kommentar mit Link zum aktualisierten Geigenbalg. Vielen Dank!
:before
und daher nicht mitinput
oderimg
Tags funktioniert ... aber es gibt eine einfache Lösung - nämlich die Verwendung von FontAwesome als reguläre Schriftart ... siehe meine aktualisierte Lösung über. Ich hoffe ich verdiene die Abstimmung zurück ;-)