有趣的CSS - 一串乱码

大家好,我是 Just,这里是「设计师工作日常」,今天分享的是通过 css 来实现一段不停变化的 bug 乱码效果。


《有趣的css》系列最新实例通过公众号「设计师工作日常」发布。

目录

  • 整体效果
  • 核心代码
    • html 代码
    • css 部分代码
  • 完整代码如下
    • html 页面
    • css 样式
    • 页面渲染效果

整体效果

通过 animation 配合伪元素搭配 content 属性来实现字符变换,实现一段字符不停更换。

适用于网页异常状态等场景应用。


核心代码部分,简要说明了写法思路;完整代码在最后,可直接复制到本地运行。

核心代码

html 代码

<div class="font25">The Bug!</div>

一个 div 标签,div 内文字元素为英文字符最好。

css 部分代码

.font25{position: relative;font-size: 24px;font-weight: 900;color: #1630f1;letter-spacing: 10px;background-color: #ffffff;
}
.font25:after{content: '';position: absolute;top: 0;z-index: 10;background-color: inherit;  /* 继承背景色使伪元素遮挡住后面 */animation: text-ani25 2.4s linear infinite;animation-delay: 2s;
}
@keyframes text-ani25{0%{content: "$-";left: 0;}5%{content: ";y";left: 0;}10%{content: "*&#H";left: 0;}15%{content: "-!);";left: 0;}20%{content: "#$_}-'";left: 0;}25%{content: ":0^!$.";left: 0;}30%{content: "#{+.-?#u";left: 0;}35%{content: "f7*%}-;#";left: 0;}40%{content: "^='?'*$!";left: 0;}45%{content: "+0^&!`^-";left: 0;}50%{content: "&-?>-=|`";left: 0;}55%{content: "u<|:#-";left: auto;right: 0;}60%{content: ";~0![,";left: auto;right: 0;}65%{content: ")+->";left: auto;right: 0;}70%{content: "+.=d";left: auto;right: 0;}75%{content: "&%";left: auto;right: 0;}80%{content: "`@";left: auto;right: 0;}85%{content: "-";left: auto;right: 0;}90%{content: "#";left: auto;right: 0;}95%{content: "";left: 0;}100%{content: "";left: 0;}
}

:after 配合 content 属性,设置 animation 的参数让 content 内的字符进行变化,实现视觉上一种乱码的效果。

这里要注意的是 content 内的字符长度不能超过主体 div 内字符的长度,也是前面为什么说主体 div 内的文字元素最好是英文字符的原因,为的是保持视觉上的统一。

完整代码如下

html 页面

<!DOCTYPE html>
<html lang="zh"><head><meta charset="utf-8"><link rel="stylesheet" href="style.css"><title>一串乱码</title></head><body><div class="app"><div class="font25">The Bug!</div></div></body>
</html>

css 样式

/** style.css **/
.app{width: 100%;height: 100vh;background-color: #ffffff;position: relative;display: flex;justify-content: center;align-items: center;
}
.font25{position: relative;font-size: 24px;font-weight: 900;color: #1630f1;letter-spacing: 10px;background-color: #ffffff;
}
.font25:after{content: '';position: absolute;top: 0;z-index: 10;background-color: inherit;animation: text-ani25 2.4s linear infinite;animation-delay: 2s;
}
@keyframes text-ani25{0%{content: "$-";left: 0;}5%{content: ";y";left: 0;}10%{content: "*&#H";left: 0;}15%{content: "-!);";left: 0;}20%{content: "#$_}-'";left: 0;}25%{content: ":0^!$.";left: 0;}30%{content: "#{+.-?#u";left: 0;}35%{content: "f7*%}-;#";left: 0;}40%{content: "^='?'*$!";left: 0;}45%{content: "+0^&!`^-";left: 0;}50%{content: "&-?>-=|`";left: 0;}55%{content: "u<|:#-";left: auto;right: 0;}60%{content: ";~0![,";left: auto;right: 0;}65%{content: ")+->";left: auto;right: 0;}70%{content: "+.=d";left: auto;right: 0;}75%{content: "&%";left: auto;right: 0;}80%{content: "`@";left: auto;right: 0;}85%{content: "-";left: auto;right: 0;}90%{content: "#";left: auto;right: 0;}95%{content: "";left: 0;}100%{content: "";left: 0;}
}

页面渲染效果

以上就是所有代码,以及简单的思路,希望对你有一些帮助或者启发。


[1] 原文阅读


CSS 是一种很酷很有趣的计算机语言,在这里跟大家分享一些 CSS 实例 Demo,为学习者获取灵感和思路提供一点帮助,希望你们喜欢。

我是 Just,这里是「设计师工作日常」,求点赞求关注!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/508569.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

异常网络下TCP的可靠服务机制(慢启动、拥塞避免、快重传、快恢复)

目录 TCP超时重传拥塞控制概述慢启动和拥塞避免下面讲解发送端如何判断拥塞发生。 快速重传和快速恢复 本文描述TCP在异常网络下的处理方式 以保证其可靠的数据传输的服务 TCP超时重传 tcp服务能够重传其超时时间内没有收到确认的TCP报文段&#xff0c;tcp模块为每一个报文段都…

加密与安全_探索数字证书

文章目录 Pre概述使用keytool生成证书使用Openssl生成证书 &#xff08;推荐&#xff09;证书的吊销小结 Pre PKI - 借助Nginx 实现Https 服务端单向认证、服务端客户端双向认证 PKI - 04 证书授权颁发机构&#xff08;CA&#xff09; & 数字证书 PKI - 数字签名与数字证…

mysql8修改密码

mysql8.0修改密码 windows下忘了MySQL8.0的密码&#xff0c;可以通过以下方式修改。 1、管理员方式打开cmd命令窗口 输入&#xff1a; net stop mysql接着输入&#xff1a; mysqld --console --skip-grant-tables --shared-memory2、管理员方式打开另外一个cmd窗口 输入&…

电脑要用多少V的电源?电脑电源输入电压是市电

台式电源的输出电压是多少&#xff1f; 电脑电源输出一般有三种不同的电压&#xff0c;分别是&#xff1a; 12V、5V、3.3V。 电脑电源负责给电脑配件供电&#xff0c;如CPU、主板、内存条、硬盘、显卡等&#xff0c;是电脑的重要组成部分。 工作电流根据不同的硬件及其使用状…

数据结构c版(2)——二叉树

本章我们来了解一下二叉树这一概念。 目录 1.树概念及结构 1.1树的概念​​​​​​​ 1.2 树的特点&#xff1a; 1.3 树的相关概念 1.4 树的表示​​​​​​​ 1.5 树在实际中的运用&#xff08;表示文件系统的目录树结构&#xff09; 2.二叉树概念及结构 2.1概念 …

HTML+CSS:花式加载

效果演示 实现了一个动态加载文本效果&#xff0c;通过定义变量和应用动画效果来实现文本的动态展示。 Code <div class"container"><h1>loading...</h1> </div>:root {--text-color: orangered; /* 定义文本颜色变量为橙红色 */--inner-st…

设计模式(十二)享元模式

请直接看原文: 原文链接:设计模式&#xff08;十二&#xff09;享元模式-CSDN博客 -------------------------------------------------------------------------------------------------------------------------------- 享元模式定义 享元模式是结构型设计模式的一种&am…

java 企业培训管理系统Myeclipse开发mysql数据库web结构jsp编程计算机网页项目

一、源码特点 java 企业培训管理系统是一套完善的java web信息管理系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发&#xff0c;数据库为Mysql5.0&…

【Linux取经路】文件系统——inode与软硬链接

文章目录 一、前言二、认识硬件——磁盘2.1 磁盘的存储构成2.2 磁盘的逻辑抽象 三、操作系统对磁盘的使用3.1 再来理解创建文件3.2 再来理解删除文件3.3 再来理解目录 四、硬链接五、软链接六、结语 一、前言 在之前的【Linux取经路】文件系统之被打开的文件——文件描述符的引…

突破编程_前端_JS编程实例(网站标题栏TAB组件)

1 开发目标 实现如下网站标题栏 TAB 组件&#xff1a; 在点击"页面2"选项卡后&#xff0c;TAB 组件会切换对应的面板&#xff1a; 2 详细需求 网站标题栏 TAB 组件该组件需根据客户端提供的参数创建&#xff0c;具备动态构建 TAB 区域、选项卡切换及自定义内容…

Dockerfile构建过程详解

Dockerfile介绍 docker是用来构建docker镜像的文件&#xff01;命令参数脚本&#xff01; 构建步骤&#xff1a; 1、编写一个dockerfile文件 2、docker build构建成为一个镜像 3、docker run 运行镜像 …

MySql表子查询

目录 表子查询数据准备 表子查询 子查询返回的结果是多行多列&#xff0c;常作为临时表&#xff0c;这种子查询称为表子查询。 案例&#xff1a;查询入职日期是 “2006-01-01” 之后的员工信息 , 及其部门信息 分解为两步执行&#xff1a; 查询入职日期是 “2006-01-01” 之后…