仅使用 CSS 的打字机效果

2023-10-22 08:20

本文主要是介绍仅使用 CSS 的打字机效果,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文已整理到 Github,地址 👉 blog

如果我的内容帮助到了您,欢迎点个 Star 🎉🎉🎉 鼓励鼓励 :) ~~

我希望我的内容可以帮助你。现在我专注于前端领域,但我也将分享我在有限的时间内看到和感受到的东西。


我们可以在完全不使用 JavaScript 的情况下,仅使用 CSS 一些小技巧便可以完成打字机效果。

我们可以使用 white-space: nowrapoverflow: hidden 来隐藏溢出字符,定义等宽字体以使容器的宽度可预测,然后设置周围容器宽度的动画。闪烁的光标通过设置右边框的动画来实现。

定义两个动画,typing 以设置角色动画和 blink 动画插入符号。

<div class="type-writer"><div class="text">All work and no play makes Jack a dull boy!</div>
</div>

CSS 如下:

/* 调整了上述自定义元素的 CSS */
.type-writer .text {width: 43ch;animation: typing 2s steps(22), blink .5s step-end infinite alternate;white-space: nowrap;overflow: hidden;border-right: 3px solid;font-family: monospace;font-size: 1.5em;margin: 1em auto;
}@keyframes typing {from {width: 0}
}@keyframes blink {50% {border-color: transparent}
}

👇以下的输入是在没有 JavaScript 的情况下完成的!

打字机效果

你可能需要注意的是,你要根据你内容的长度对宽度进行调整,但整体效果还是不错吧!😃

查看效果

更多资源

  • Typewriter effect 添加部分 JS,以根据文本内容的宽度设置动画。
  • typeit 一个通用的 JavaScript 打字机效果,仅用于开源或个人项目。
  • Typewriter Animation That Handles Anything You Throw at It
  • Typewriter Effect

http://www.taodudu.cc/news/show-8030093.html

相关文章:

  • Adobe iIIustrator + Camsatia 制作模拟打字机效果视频
  • (C++注意点)C++编码规范与指导
  • python中pandas什么意思_Python的pandas是什么?
  • NGUI之UIPanel
  • GUI编程之面板panel
  • java panel布局_java panel布局问题
  • R语言ggplot2中的panel. strip 基本概念
  • AWT学习笔记一Frame和Panel
  • python中pandas是什么意思_pandas在python中是什么
  • 会议panel是什么意思中文_Nature会议|此次会议中你绝对不能错过的Panel discussion~...
  • 【AltiumDesigner专栏】01.04——面板PANEL
  • panel在java中什么意思_JAVA中的JPanel怎么使用呢? java中的JPanel
  • 高手教你在win8平板上查看软件大小
  • 在win8平板下用QQ截图时局部放大的解决办法
  • win8 android 双系统平板,推出Win8/安卓双系统平板 蓝魔的一次积极尝试
  • win8计算机管理用户,Win8.1怎么打开管理员Administrator账户(图文)
  • Win8平板查看电池损耗情况
  • 三星win8平板装Android,安卓+Win8双系统平板 三星ATIV Q发布
  • win7 android 双系统平板 p1000,三星win8平板可以安装双系统吗?,我有一台三星XE700T1C平板电脑 ,原机带来的是win8 64位操作。...
  • 平板android4,平板:Android4/Win8平板
  • 乱七八糟的记录~
  • VideoCapture打开视频失败
  • Pycharm打不开的bug
  • cv2.VideoCapture()打不开视频
  • 个人无人机常见错误和容灾场景思考
  • 罗斯柴尔德盾徽下的德国和意大利
  • linux内核分析笔记---中断实现
  • Java EE复习(一)
  • ZIGBEE的硬件介绍和应用工程
  • 嵌入式开发笔记
  • 这篇关于仅使用 CSS 的打字机效果的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



    http://www.chinasem.cn/article/260239

    相关文章

    Python使用FastAPI实现大文件分片上传与断点续传功能

    《Python使用FastAPI实现大文件分片上传与断点续传功能》大文件直传常遇到超时、网络抖动失败、失败后只能重传的问题,分片上传+断点续传可以把大文件拆成若干小块逐个上传,并在中断后从已完成分片继... 目录一、接口设计二、服务端实现(FastAPI)2.1 运行环境2.2 目录结构建议2.3 serv

    Spring Security简介、使用与最佳实践

    《SpringSecurity简介、使用与最佳实践》SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文给大家介绍SpringSec... 目录一、如何理解 Spring Security?—— 核心思想二、如何在 Java 项目中使用?——

    springboot中使用okhttp3的小结

    《springboot中使用okhttp3的小结》OkHttp3是一个JavaHTTP客户端,可以处理各种请求类型,比如GET、POST、PUT等,并且支持高效的HTTP连接池、请求和响应缓存、以及异... 在 Spring Boot 项目中使用 OkHttp3 进行 HTTP 请求是一个高效且流行的方式。

    Vue和React受控组件的区别小结

    《Vue和React受控组件的区别小结》本文主要介绍了Vue和React受控组件的区别小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录背景React 的实现vue3 的实现写法一:直接修改事件参数写法二:通过ref引用 DOMVu

    Java使用Javassist动态生成HelloWorld类

    《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

    使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

    《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

    Java实现将HTML文件与字符串转换为图片

    《Java实现将HTML文件与字符串转换为图片》在Java开发中,我们经常会遇到将HTML内容转换为图片的需求,本文小编就来和大家详细讲讲如何使用FreeSpire.DocforJava库来实现这一功... 目录前言核心实现:html 转图片完整代码场景 1:转换本地 HTML 文件为图片场景 2:转换 H

    Java使用jar命令配置服务器端口的完整指南

    《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

    C#使用Spire.Doc for .NET实现HTML转Word的高效方案

    《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

    Vue3绑定props默认值问题

    《Vue3绑定props默认值问题》使用Vue3的defineProps配合TypeScript的interface定义props类型,并通过withDefaults设置默认值,使组件能安全访问传入的... 目录前言步骤步骤1:使用 defineProps 定义 Props步骤2:设置默认值总结前言使用T