css实现霓虹灯特效字体

在开始之前先了解外部字体的引入:
vite中字体的引入方法(.otf字体等)如下:
1、在src下的assets文件夹下创建font文件夹,将下载好的字体包放到该文件夹下
在这里插入图片描述
在这里插入图片描述
2、在font文件夹下创建font.css文件,如果你用的是scss,那么就是font.scssless同理。
3、在font.css文件中引入字体包

@font-face{
    font-family: 'AndilanteriaSignature';  /*字体名-自定义*/
    src: url("./Andilanteria\ Signature.otf"); /* 字体路径 */
    font-weight: normal;
    font-style: normal;
}

4、在main文件下引入即可全局使用

import  './assets/font/font.scss' 


根据引入的字体绘制一个创意文字

<div class="grenn">Motley Crue</div>
/* scss */
.grenn{
        font-family: 'AndilanteriaSignature';  /*使用字体*/
        font-size: 80px;
        color: #91bb8d;
}

在这里插入图片描述
给字体添加发光阴影,使用filter: brightness();提升亮度,让字体亮起来

text-shadow: 0px 0px 1px #fff,0px 0px 8px #91bb8d,0px 0px 16px #91bb8d,0px 0px 32px #91bb8d,0px 0px 64px #91bb8d,0px 0px 128px #91bb8d;
filter: brightness(1.5);

在这里插入图片描述
这里添加阴影的方式,第一层给一个白色的阴影,让字体产生光亮的感觉,后面的为字体自身颜色的阴影,颜色层层叠加,并且模糊度层层加大,让它看起来有一层朦胧感。
给字体添加一个hover事件,关联动画,鼠标移入时字体发光,发光的同时,调大阴影的亮度和色彩扩散范围,下面是该特效的完整代码:

<div class="neonFont">
     <div class="grenn">Motley Crue</div>
     <div class="pink">Scorpions</div>
</div>
/* scss */
.neonFont{
    width: 600px;
    height: 300px;
    padding: 20px;
    margin: 20px;
    border: 1px solid red;
    text-align: center;
    background-color: black;

    .grenn{
        font-family: 'AndilanteriaSignature';
        font-size: 80px;
        color: #91bb8d;
        margin-top: 20px;
    &:hover{
        animation: grennLight 2s infinite linear alternate ;
    }
    @keyframes grennLight {
        from {
            text-shadow: 0px 0px 1px #fff,0px 0px 8px #91bb8d,0px 0px 16px #91bb8d,0px 0px 32px #91bb8d,0px 0px 64px #91bb8d,0px 0px 128px #91bb8d;
            filter: brightness(1.5);
        }
        to {
            text-shadow: 0px 0px 2px #fff,0px 0px 16px #91bb8d,0px 0px 30px #91bb8d,0px 0px 70px #91bb8d,0px 0px 150px #91bb8d,0px 0px 310px #91bb8d;
            filter: brightness(1.8);
        }
    }
    }
    
    .pink{
        font-family: 'AndilanteriaSignature';
        font-size: 80px;
        color: #b0355a;
        margin-top: 20px;
        &:hover{
            animation: lights 2s infinite linear alternate ;
        }
        @keyframes lights {
            from {
                text-shadow: 0px 0px 1px #fff,0px 0px 8px #b0355a,0px 0px 16px #b0355a,0px 0px 32px #b0355a,0px 0px 64px #b0355a,0px 0px 128px #b0355a;
                filter: brightness(1.5);
            }
            to {
                text-shadow: 0px 0px 2px #fff,0px 0px 16px #b0355a,0px 0px 30px #b0355a,0px 0px 70px #b0355a,0px 0px 150px #b0355a,0px 0px 310px #b0355a;
                filter: brightness(3);
    
            }
        }
    }
}

在这里插入图片描述


案例源码:https://gitee.com/wang_fan_w/css-diary

如果觉得这篇文章对你有帮助,欢迎点赞、收藏、转发哦~

42 声望
6 粉丝
0 条评论
推荐阅读
前端换肤,聊一聊主题切换那些事
一些网站通常会提供白天、夜间模式,以及自定义主题等等,这种主题切换也就是本文说的前端换肤。这次案例用的是白天和夜间模式的切换,在做换肤之前,得先知道一件事情:css的变量定义,对变量定义不熟悉的同学请...

兔子先森阅读 263

安全地在前后端之间传输数据 - 「3」真的安全吗?
在「2」注册和登录示例中,我们通过非对称加密算法实现了浏览器和 Web 服务器之间的安全传输。看起来一切都很美好,但是危险就在哪里,有些人发现了,有些人嗅到了,更多人却浑然不知。就像是给门上了把好锁,还...

边城31阅读 7.2k评论 5

封面图
涨姿势了,有意思的气泡 Loading 效果
今日,群友提问,如何实现这么一个 Loading 效果:这个确实有点意思,但是这是 CSS 能够完成的?没错,这个效果中的核心气泡效果,其实借助 CSS 中的滤镜,能够比较轻松的实现,就是所需的元素可能多点。参考我们...

chokcoco20阅读 2.1k评论 2

在前端使用 JS 进行分类汇总
最近遇到一些同学在问 JS 中进行数据统计的问题。虽然数据统计一般会在数据库中进行,但是后端遇到需要使用程序来进行统计的情况也非常多。.NET 就为了对内存数据和数据库数据进行统一地数据处理,发明了 LINQ (L...

边城17阅读 1.9k

封面图
【已结束】SegmentFault 思否写作挑战赛!
SegmentFault 思否写作挑战赛 是思否社区新上线的系列社区活动在 2 月 8 日 正式面向社区所有用户开启;挑战赛中包含多个可供作者选择的热门技术方向,根据挑战难度分为多个等级,快来参与挑战,向更好的自己前进!

SegmentFault思否20阅读 5.6k评论 10

封面图
过滤/筛选树节点
又是树,是我跟树杠上了吗?—— 不,是树的问题太多了!🔗 相关文章推荐:使用递归遍历并转换树形数据(以 TypeScript 为例)从列表生成树 (JavaScript/TypeScript) 过滤和筛选是一个意思,都是 filter。对于列表来...

边城18阅读 7.7k评论 3

封面图
你可能不需要JS!CSS实现一个计时器
CSS现在可不仅仅只是改一个颜色这么简单,还可以做很多交互,比如做一个功能齐全的计时器?样式上并不复杂,主要是几个交互的地方数字时钟的变化开始、暂停操作重置操作如何仅使用 CSS 来实现这样的功能呢?一起...

XboxYan21阅读 1.6k评论 1

封面图
42 声望
6 粉丝
宣传栏