vue实战开发009:伪元素中如何引用字体图标

本文介绍在Vue项目中,如何利用伪元素动态添加FontAwesome字体图标,以实现列表项末尾图标显示,同时避免在最后元素重复显示的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

     前面我们有说到如何使用Font Awesome字体图标: vue实战开发008:引入Font Awesome字体图标,在我们使用vue时通常不会把数据写死,而是定义一个数据列表,再通过遍历来获取相应的数据,这里我们模仿2345影视写了点内容,下面的版权声明我都是直接定义的数据列表再遍历展示的。

    我们可以看到在 上海市互联网违法和不良信息举报中心前面有个Window的图标(我随意放的),这是个字体图标,正常情况下我们使用Font Awesome字体图标可以直接在a标签中嵌套一个<i class="fa fa-windows"></i>即可。

 但是我们现在的a标签是通过vue进行列表遍历生成的,内容和个数随数据动态生成的,在代码中我们没法查看到对应的a标签并添加我们的字体图标,如图中所示:

这时我我们就要用到伪元素了,动态添加我们想要的内容,比如说留言板这行,后面的“|”就是后期通过伪元素添加的,我在a标签后面动态添加了一个“|”,但是这样添加的之后我们可以发现,最后一个数据后面也出现了一个“|”所以这里我们要再添加一个样式,把最后一个元素后面的伪元素隐藏起来。

.affirming a::after{
    content:"|"     /*伪元素添加"|"*/
}
.affirming a:last-child::after{
    display: none;  /*隐藏最后一个伪元素*/
} 

 同样的道理,现在我们要为最后一个元素添加字体图标,我们同样要用到伪元素来操作,通过伪元素我动态给a标签添加到元素中去,一开始我想着直接在最后一个元素中添加<i class="fa fa-windows"></i>或许可以实现,但是发现前台没法显示该元素,因为伪元素就是以标签的形式添加的,而我这添加的是个标签,中间的“fa fa-windows“已经被双引号给隔断了,并不是一个整体,所以连内容都无法显示。

 这里我们可以以字体编码的形式来添加字体图标,在伪元素中定义字体类型和对应的字体编码就可以把对应的字体图标给添加进元素中了:Font Awesome 官方图标字体的代码列表,大家可以根据这个来查找自己想要的字体图标,找到对应的图标,后面括号中的代码就是字体编码,如第一个 icon-glass (&#xf000;),我们只要提取f000,然后加上“\”放入content中即:content:"\f000" ;

.equity a:last-child:before{
    font-family:'FontAwesome'; /*字体*/
    content:"\f17a" ; /*字体图标编码*/
    font-size:18px 
}

 这样我们就可以通过伪元素的形式来添加字体图标了,当然如果你觉得麻烦也可以直接在HTML中来添加,这样我们就要用到判断了,我们提前在a标签中写好一个i标签,当它到最后一个元素的时候才显示,这里我用v-if来判断,当index等于列表最后一个元素时显示该字体图标,这个比伪元素简单点,不用再去找对应的字体编码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ProgramNotes

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值