css实现霓虹灯特效字体
在开始之前先了解外部字体的引入:vite
中字体的引入方法(.otf
字体等)如下:
1、在src
下的assets
文件夹下创建font
文件夹,将下载好的字体包放到该文件夹下
2、在font
文件夹下创建font.css
文件,如果你用的是scss
,那么就是font.scss
。less
同理。
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 粉丝
推荐阅读
前端换肤,聊一聊主题切换那些事
一些网站通常会提供白天、夜间模式,以及自定义主题等等,这种主题切换也就是本文说的前端换肤。这次案例用的是白天和夜间模式的切换,在做换肤之前,得先知道一件事情:css的变量定义,对变量定义不熟悉的同学请...
兔子先森阅读 263
安全地在前后端之间传输数据 - 「3」真的安全吗?
在「2」注册和登录示例中,我们通过非对称加密算法实现了浏览器和 Web 服务器之间的安全传输。看起来一切都很美好,但是危险就在哪里,有些人发现了,有些人嗅到了,更多人却浑然不知。就像是给门上了把好锁,还...
边城赞 31阅读 7.2k评论 5
涨姿势了,有意思的气泡 Loading 效果
今日,群友提问,如何实现这么一个 Loading 效果:这个确实有点意思,但是这是 CSS 能够完成的?没错,这个效果中的核心气泡效果,其实借助 CSS 中的滤镜,能够比较轻松的实现,就是所需的元素可能多点。参考我们...
chokcoco赞 20阅读 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 来实现这样的功能呢?一起...
XboxYan赞 21阅读 1.6k评论 1
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。