文字到底能玩出多少花样(三)使用background实现花式下划线

简介: 文字到底能玩出多少花样(三)使用background实现花式下划线

前言


该文作为《文字效果到底能玩出多少花样》的第三篇文章,带大家学习 background实现各种下划线效果


基础知识


按照惯例,首先进行基础知识的学习。


  1. background-size: 指定背景图像的大小


  • length: 设置背景图片的高度和宽度,第一个值为高度,第二个值为宽度
  • percentage: 将计算相对于背景定位区域的百分比。第一个值设置宽度,第二个值设置的高度。
  • cover: 保持图片的宽高比并将图像缩放成将完全覆盖背景定位区域的最小大小
  • contain: 此时会保持图像的宽高比并将图像缩放成将适合背景定位区域的最大大小。


background实现下划线


文字的下划线其实并不难实现,css3 提供的 text-decoration 属性就可以轻易实现,但这里咱们使用 background 来实现一下。


设置背景颜色 background 为渐变颜色,之后通过上面学习 background-size 将高度设置为 3px 就可以实现下划线效果。


span {
    background: linear-gradient(90deg, #0cc, #0cc);
    background-size: 100% 3px;
    background-repeat: no-repeat;
    background-position: 100% 100%;
    color: #0cc;
}
复制代码

image.png


下滑虚线实现


background 实现下划线功能怎么都感觉有几分大材小用,那咱们需求升级一下,生成下滑虚线效果。


下划虚线与下划线的区别只在于虚线部分,因此 background-size 无需修改,那该如何实现那?


很简单,只需要设置背景为一半透明,一半蓝色,使用 background-repeat 就能实现。下面直接来看代码


background: linear-gradient(90deg, #0cc 50%, transparent 50%, transparent 1px);
background-size: 10px 2px;
background-repeat: repeat-x;
复制代码


image.png


实现hover时出现的渐变下划线


感觉上面的还是很简单,继续难度加大,当 hover 时,文字底部出现渐变的下划线(封面效果三)。


咱们来分析一下需求:


  • 渐变下划线: 实现起来比较简单,background: linear-gradient 使用渐变色即可
  • 渐渐出现: 动画效果,使用 transition 实现
  • hover 时显示: hover 伪类
  • 下划线从 0 到全部显示: 下划线是通过 background 实现的,并且可以通过配置 background-position 设置其显示大小,那么我们可以初始化时设置为不显示 ,hover 时设置为 100% 就可以实现。


a{
    background-size: 0 3px;
    background-position: 0 100%;
    transition: 1s all;
}
a:hover {
    background-size: 100% 3px;
    color: #000;
}
复制代码

image.png

源码仓库



相关文章
|
2月前
|
机器学习/深度学习
给文字动画注入语义灵魂!港科大开源文字跳动技术,每个单词都浪漫
【5月更文挑战第21天】港科大开源动态排版技术(Dynamic Typography),旨在为文字动画赋予语义深度,让每个单词都能生动表达情感。该技术通过字母变形和运动效果,结合神经位移场与端到端优化,生成可读且有表现力的动画。实验显示其优于其他基线方法,但尚无法处理复杂语义和高昂的应用成本。[论文链接](https://arxiv.org/abs/2404.11614)
26 4
|
2月前
L1-039 古风排版
L1-039 古风排版
34 0
7-130 古风排版
7-130 古风排版
26 0
L1-039 古风排版 (20 分)
L1-039 古风排版 (20 分)
105 0
L1-039 古风排版 (20 分)
|
存储 程序员
七夕快到了,用SwiftUI做一个表达爱意的心形动画
传统的七夕快到了,作为一个程序猿,最浪漫的礼物当然是自己写的啦! 思来想去也不知道写什么好,在某天在某音上学习时看到点赞的动画效果还不错,那不如就做一个表达爱意的动画吧。
324 0
七夕快到了,用SwiftUI做一个表达爱意的心形动画
|
前端开发
妙用 background 实现花式文字效果
妙用 background 实现花式文字效果
164 0
妙用 background 实现花式文字效果
|
JavaScript 前端开发
文字到底能玩出多少花样(四)实现跃动的文字
文字到底能玩出多少花样(四)实现跃动的文字
131 0
文字到底能玩出多少花样(四)实现跃动的文字
|
Web App开发 前端开发
文字底能玩出多少花样(五)实现渐变文字和文字倒影
文字底能玩出多少花样(五)实现渐变文字和文字倒影
115 0
文字底能玩出多少花样(五)实现渐变文字和文字倒影
|
存储 算法 Java
字符作画,我用字符画个冰墩墩
字符作画,我用字符画个冰墩墩
206 0
字符作画,我用字符画个冰墩墩