目录
快速刷新文字阴影
第一个阴影
用更多阴影创建深度
用SASS简化代码
交替的颜色
奖励积分:添加动画
首页 web前端 css教程 用CSS文本阴影创建嬉戏效果

用CSS文本阴影创建嬉戏效果

Apr 07, 2025 am 10:15 AM

用CSS文本阴影创建嬉戏效果

让我们看一下如何使用CSS文本阴影属性来创建真正的3D外观文本。您可能会认为文字阴影能够在文本后面涂上模糊,梯度外观的颜色,您将是对的!但是,就像盒子阴影一样,您可以控制阴影有多模糊,包括将其完全降低到没有模糊。结合逗号分开的阴影并堆叠它们,就是我们将在这里做的CSS骗局。

到最后,我们将有一些看起来像这样的东西:

快速刷新文字阴影

语法是这样的:

 .el {
 文本阴影:[x-fartset] [y-offset] [blur] [color];
}
登录后复制
  • X折:位于X轴上。正值将阴影向右移动,负值将阴影向左移动。 (必需的)
  • Y-Orkset:Y轴上的位置。正值将阴影移至底部,负值将阴影移至顶部。 (必需的)
  • 模糊:阴影应该有多少模糊。值越高,阴影越柔软。默认值为0px(无模糊)。 (选修的)
  • 颜色:阴影的颜色。 (必需的)

第一个阴影

让我们开始通过仅添加一个阴影来创造效果。阴影将向右侧向右侧推动6px,底部将6px推到6px:

 :根 {
 -Text:#5362f6; /* 蓝色的 */
  - 阴影:#e485f8; /* 粉色的 */
}


.playful {
 颜色:var( - 文本);
 文本阴影:6px 6px var( -  shadow);
}
登录后复制

用更多阴影创建深度

目前,我们只有一个平坦的阴影 - 还没有太多的3D。我们可以通过将更多文本阴影实例添加到同一元素来创建深度并将阴影连接到实际文本。它所需要的只是分类它们。让我们从中间添加一个开始:

 .playful {
 颜色:var( - 文本);
 文本阴影:6px 6px var( - 阴影),
        3PX 3PX var( - 阴影);
}
登录后复制

这已经到了某个地方,但是我们需要添加更多阴影才能使其看起来不错。我们添加的步骤越多,最终结果就越详细。在此示例中,我们将从6PX 6PX开始,并以0.25px增量逐渐构建,直到达到0。

 .playful {
 颜色:var( - 文本);
 文字阴影: 
  6px 6px var( - 阴影), 
  5.75px 5.75px var( - 阴影), 
  5.5px 5.5px var( - 阴影), 
  5.25px 5.25px var( - 阴影),
  5px 5px var( - 阴影), 
  4.75px 4.75px var( - 阴影), 
 4.5px 4.5px var( - 阴影), 
  4.25px 4.25px var( - 阴影),
 4px 4px var( - 阴影),
  3.75px 3.75px var(-shadow),
 3.5px 3.5px var( - 阴影),
  3.25px 3.25px var(-shadow),
  3px 3px var( - 阴影),
  2.75px 2.75px var(-shadow),
   2.5px 2.5px var( - 阴影),
  2.25px 2.25px var(-shadow),
   2px 2px var( - 阴影),
  1.75px 1.75px var( - 阴影),
  1.5px 1.5px var( - 阴影),
   1.25px 1.25px var( - 阴影),
  1px 1px var(-shadow),
   0.75px 0.75px var( - 阴影),
  0.5px 0.5px var( - 阴影),
 0.25px 0.25px var( - 阴影);
}
登录后复制

用SASS简化代码

结果可能看起来不错,但是现在的代码很难读取和编辑。如果我们想使影子更大,我们必须进行大量复制和粘贴才能实现它。例如,将阴影大小提高到10px将意味着手动增加16个阴影。

这就是SCSS出现的地方。我们可以使用函数来自动生成所有阴影。

 @function textshadow($ precision,$ size,$ color){
 $ value:null; 
 $偏移:0;
 $长度:$ size *(1 / $ precision)-1;


 @for $ i从0到$ length {
  $偏移:$ offset $ precision;
  $ shadow:$ offset px $ offse px $ color;
  $ value:append($ value,$ shadow,comma);
 }


 @return $ value;
}


.playful {
 颜色:#5362F6;
 文本阴影:textshadow(0.25,6,#e485f8);
}
登录后复制

函数文本莎多(TextShadow)采用三个不同的参数:阴影的精度,大小和颜色。然后,它创建一个循环,其中偏移量增加了$ PRICINE(在这种情况下为0.25px),直到达到阴影的总尺寸(在这种情况下为6px)。

这样,我们可以轻松地增加阴影的大小或精度。例如,要创建一个10px大的阴影,并以0.1px的形式增加,我们只需要在代码中更改它:

文本阴影:textshadow(0.1,10,#e485f8);
登录后复制

交替的颜色

我们希望通过购买交替的颜色来稍微增添一点东西。我们将用包裹在跨度包裹的单个字母中(可以手动完成,也可以使用React或JavaScript自动化)。输出看起来像这样:

 <p aria-label="“洗手!”">
 <span aria-hidded="“" true> w </span> <span aria-hidded="“" true> a </span> <span aria aria-hidded="“" true> s </span> <span aria aria-hidded="“" true> h </span> h  ...
</p>
登录后复制

然后,我们可以在跨度上使用:nth-​​child()选择器来更改其文本和阴影的颜色。

 .playful跨度:nth-​​child(2n){
 颜色:#ED625C;
 文本阴影:textshadow(0.25,6,#f2a063);
}
登录后复制

如果我们在香草CSS中做到了这一点,那么这就是我们最终得到的:

 .playful跨度{
 颜色:var( - 文本);
 文字阴影: 
  6px 6px var( - 阴影),
  5.75px 5.75px var( - 阴影),
  5.5px 5.5px var( - 阴影),
  5.25px 5.25px var( - 阴影),
  5px 5px var( - 阴影),
  4.75px 4.75px var( - 阴影),
  4.5px 4.5px var( - 阴影),
  4.25px 4.25px var( - 阴影),
  4px 4px var( - 阴影),
  3.75px 3.75px var(-shadow),
  3.5px 3.5px var( - 阴影),
  3.25px 3.25px var(-shadow),
  3px 3px var( - 阴影),
  2.75px 2.75px var(-shadow),
  2.5px 2.5px var( - 阴影),
  2.25px 2.25px var(-shadow),
  2px 2px var( - 阴影),
  1.75px 1.75px var( - 阴影),
  1.5px 1.5px var( - 阴影),
  1.25px 1.25px var( - 阴影),
  1px 1px var(-shadow),
  0.75px 0.75px var( - 阴影),
  0.5px 0.5px var( - 阴影),
  0.25px 0.25px var( - 阴影);
}


.playful跨度:nth-​​child(2n){
 -Text:#ED625C;
  - 阴影:#f2a063;
}
登录后复制

我们可以用其他颜色和索引重复几次,直到达到我们喜欢的模式:

奖励积分:添加动画

使用相同的原理,我们可以通过添加动画来使文本更加栩栩如生。首先,我们将添加一个重复的动画,使每个跨度上下移动:

 .playful跨度{
 颜色:#5362F6;
 文本阴影:textshadow(0.25,6,#e485f8);
 位置:相对;
 动画:散射1.75s无限;
}
登录后复制

我们可以使用偏爱的动作媒体查询来进一步优化它。这样,不想动画的人们就不会得到它。

 .playful跨度{
  颜色:#5362F6;
  文本阴影:textshadow(0.25,6,#e485f8);
  位置:相对;
  动画:散射1.75s无限;
}

@Media屏幕和(预先减少的动作:降低){
  动画:无;
}
登录后复制

然后,在每个nth-child(n)中,我们将添加不同的动画延迟。

 .playful跨度:nth-​​child(2n){
 颜色:#ED625C;
 文本阴影:textshadow(0.25,6,#f2a063);
 动画 - 延迟:0.3s;
}
登录后复制

以上是用CSS文本阴影创建嬉戏效果的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

VUE 3 VUE 3 Apr 02, 2025 pm 06:32 PM

它的出局!恭喜Vue团队完成了完成,我知道这是一项巨大的努力,而且很长时间。所有新文档也是如此。

您可以从浏览器获得有效的CSS属性值吗? 您可以从浏览器获得有效的CSS属性值吗? Apr 02, 2025 pm 06:17 PM

我有人写了这个非常合法的问题。 Lea只是在博客上介绍了如何从浏览器中获得有效的CSS属性。那样的是这样。

在CI/CD上有点 在CI/CD上有点 Apr 02, 2025 pm 06:21 PM

我说的“网站”比“移动应用程序”更合适,但我喜欢Max Lynch的框架:

带有粘性定位的堆叠卡和一点点的杂物 带有粘性定位的堆叠卡和一点点的杂物 Apr 03, 2025 am 10:30 AM

前几天,我发现了科里·金尼文(Corey Ginnivan)网站上的这一点,当您滚动时,彼此之间的卡片堆放集。

在WordPress块编辑器中使用Markdown和本地化 在WordPress块编辑器中使用Markdown和本地化 Apr 02, 2025 am 04:27 AM

如果我们需要直接在WordPress编辑器中向用户显示文档,那么最佳方法是什么?

比较浏览器的响应式设计 比较浏览器的响应式设计 Apr 02, 2025 pm 06:25 PM

这些桌面应用程序中有许多目标是同时在不同的维度上显示您的网站。因此,例如,您可以写作

如何将CSS网格用于粘头和页脚 如何将CSS网格用于粘头和页脚 Apr 02, 2025 pm 06:29 PM

CSS网格是一系列属性的集合,旨在使布局比以往任何时候都容易。像任何东西一样,那里有一点学习曲线,但是网格是

为什么Flex布局中的紫色斜线区域会被误认为是'溢出空间”? 为什么Flex布局中的紫色斜线区域会被误认为是'溢出空间”? Apr 05, 2025 pm 05:51 PM

关于Flex布局中紫色斜线区域的疑问在使用Flex布局时,你可能会遇到一些令人困惑的现象,比如在开发者工具(d...

See all articles