我有一些CSS看起来像这样:
#content h2 {
background: url(../images/tContent.jpg) no-repeat 0 6px;
}
我想用字体很棒的图标替换图像。
我不认为在CSS中使用图标作为背景图像。这是可能的,假设字体Awesome样式表/字体在我的CSS之前加载?
我有一些CSS看起来像这样:
#content h2 {
background: url(../images/tContent.jpg) no-repeat 0 6px;
}
我想用字体很棒的图标替换图像。
我不认为在CSS中使用图标作为背景图像。这是可能的,假设字体Awesome样式表/字体在我的CSS之前加载?
当前回答
这似乎是最简单的解决方案:-)
#content h2:before {
font-family: FontAwesome;
content: "\f055";
position:absolute;
left:0;
top:0;
}
其他回答
您不能使用文本作为背景图像,但可以使用:before或:after伪类将文本字符放置在您想要的位置,而不必添加各种凌乱的额外标记。
请确保在实际的文本包装器上设置position:相对位置,以便定位工作。
.mytextwithicon {
position:relative;
}
.mytextwithicon:before {
content: "\25AE"; /* this is your text. You can also use UTF-8 character codes as I do here */
font-family: FontAwesome;
left:-5px;
position:absolute;
top:0;
}
编辑:
Font Awesome v5使用了比旧版本更多的字体名称:
对于FontAwesome v5,免费版本,使用:Font -family: "Font Awesome 5 Free" 对于FontAwesome v5, Pro版本,使用:Font -family: "Font Awesome 5 Pro"
注意,您也应该设置相同的font-weight属性(似乎是900)。
找到字体名称的另一种方法是右键单击页面上的示例字体awesome图标,并获得字体名称(与找到utf-8图标代码的方法相同,但请注意,您可以在:before上找到它)。
要使用字体awesome使用css遵循以下步骤-
步骤1 -在CSS中添加FontAwesome字体
/*Font Awesome Fonts*/
@font-face {
font-family: 'FontAwesome';
//in url add your folder path of FontAwsome Fonts
src: url('font-awesome/fontawesome-webfont.ttf') format('truetype');
}
使用下面的css在HTML的class元素上应用字体
.sorting_asc:after {
content: "\f0de"; /* this is your text. You can also use UTF-8 character codes as I do here */
font-family: FontAwesome;
padding-left: 10px !important;
vertical-align: middle;
}
最后,使用“sorting_asc”类在所需的HTML标签/元素上应用css。
这似乎是最简单的解决方案:-)
#content h2:before {
font-family: FontAwesome;
content: "\f055";
position:absolute;
left:0;
top:0;
}
或者,如果使用Sass,可以“扩展”FA图标来显示它们:
.mytextwithicon:before {
@extend .fas, .fa-angle-double-right;
@extend .mr-2; // using bootstrap to add a small gap
// between the icon and the text.
}
巩固以上所有内容,下面是工作良好的最终类
.faArrowIcon {
position:relative;
}
.faArrowIcon:before {
font-family: FontAwesome;
top:0;
left:-5px;
padding-right:10px;
content: "\f0a9";
}