CSS揭秘—打字动效(四)
前言:
所有实例均来自《CSS揭秘》,该书以平时遇到的疑难杂症为引,提供解决方法,只能说秒极了,再一次刷新了我对CSS的认知
该书只提供了关键CSS代码,虽然有在线示例代码链接,但访问速度较慢。下面示例代码是我自己写的,若有错误,欢迎指正
注:我会在最开头附上每个相关示例所需CSS属性链接作为补充,以供查阅和学习
我会在每个示例最后附上书中提供的在线示例代码链接;
我会从书中选择一些css技巧来分享,有兴趣的小伙伴可以去看看这本书,你不会失望的
CSS需知:
ch长度单位 (ch介绍及实际使用场景)
steps(通俗易懂的steps属性讲解)
场景:
如果让你实现自动打字动效(如下图,想象用键盘在电脑上输入文字的场景)你会怎么做呢?

以前要实现该效果可能需要写较多复杂的JS代码,而且代码较为冗杂,也不利于维护
解决方法:
只需要借用CSS3新增长度单位ch + steps属性即可
注:建议先看上面css需知中2篇张大神的博文,能帮助你更好的理解
Demo
<!DOCTYPE html>
<html> <head>
<meta charset="utf-8" />
<title></title>
<style>
@keyframes typing {
0% {
width: 0;
}
} @keyframes caret {
50% {
border-right-color: transparent;
}
} h1 {
width: 11ch;
white-space: nowrap;
overflow: hidden;
font-weight: bold;
font-size: 36px;
font-family: Monaco,monospace,Consolas,"微软雅黑";
border-right: 10px solid #ccc;
animation: typing 8s steps(11), caret 1s steps(1) infinite;
}
</style>
</head> <body>
<h1>hello world</h1>
<h1>0000000000000000000</h1>
</body> </html>
书中在线实例:http://dabblet.com/gist/b04ab9f41084b0a66960
补:ch兼容性(PC端支持不错,IE9及以上和其它主流浏览器都支持,移动端安卓暂不支持,所以更多可能考虑在PC端使用)

CSS揭秘—打字动效(四)的更多相关文章
- [css]《css揭秘》学习(四)-一个元素实现内圆角边框
如图所示的圆角边框有两个元素很好实现,用一个元素也可以实现. <html> <head> <meta charset="utf-8"> < ...
- svg和css实现波浪动效
效果: 截图有点模糊~ 实现: <svg教程> //html <body> <svg class="wave-container" xmlns=&qu ...
- 从浏览器渲染层面解析css3动效优化原理
引言 在h5开发中,我们经常会需要实现一些动效来让页面视觉效果更好,谈及动效便不可避免地会想到动效性能优化这个话题: 减少页面DOM操作,可以使用CSS实现的动效不多出一行js代码 使用绝对定位脱离让 ...
- [css 揭秘]:CSS揭秘 技巧(四):边框内圆角
我的github地址:https://github.com/FannieGirl/ifannie/ 源码都在这上面哦! 喜欢的给我一个星吧 边框内圆角 问题:有时候我们需要一个容器,只在内侧有圆角,而 ...
- CSS动效集锦,视觉魔法的碰撞与融合(二)
引言 长久以来,我认识到.CSS,是存在极限的.正如曾经替你扛下一切的那个男人,也总有他眼含热泪地拼上一切,却也无法帮你做到的事情,他只能困窘地让你看到他的无能为力,怅然若失. 然后和曾经他成长的时代 ...
- js+css 动效+1的效果
点击数值 +1 的动效 vue data:{ timer: null,plus:''// 次数 } method:{ animate(plus) { var _this = this; clearIn ...
- [CSS]《CSS揭秘》第四章——视觉效果
投影 单侧投影 box-shadow:0px 10px 10px -5px black; 邻边投影 box-shadow:10px 10px 10px 2px black; 双侧投影 box-shad ...
- css 揭秘-读书笔记
css 揭秘 [希]Lea verou 著 css 魔法 译 该书涵盖7大主题,47个css技巧,是css进阶必备书籍,开阔思路,探寻更优雅的解决方案.这本书完全用css渲染出的html写成的(布局. ...
- CSS揭秘读书笔记 (一)
CSS揭秘读书笔记 (一) 一.半透明边框 要想实现半透明边框可以使用border: border: 10px solid hsla(0,0%,100%,.5); background: ...
随机推荐
- Zabbix的snmp监控一些snmp常用的一些OID (KEY)
摘自: http://www.iyunv.com/thread-167287-1-1.html System Group sysDescr 1.3.6.1.2.1.1.1 sysObjectID 1. ...
- smokeping 报警配置
摘自: http://blog.csdn.net/achejq/article/details/51556494 smokeping 默认用sendmail 发邮件告警,也可以直接调用外部程序进行报警 ...
- VIM命令总结【转】
命令历史 以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令. 启动vim 在命令行窗口中输入以下命令即可 vim 直接启动vim vim filename 打开vim ...
- openfire插件开发环境
创建java工程 SamplePlugin: package com.hoo.server.plugin; import java.io.File; import org.jivesoftware.o ...
- Java企业微信开发_12_异常:java.lang.OutOfMemoryError: Java heap space
一.异常现象 今天客户迁到正式环境,在做企业微信 接收消息服务器配置 时,出现如下异常: java.lang.OutOfMemoryError: Java heap space 二.异常原因 JAV ...
- C/C++ 混合编程
[面试] C/C++ 语法(五) -- extern 1. C 调用 C++ 开发的DLL库 C和C++混合编程(__cplusplus 与 external "c" 的使用) # ...
- OpenCV——Skewing
// define head function #ifndef PS_ALGORITHM_H_INCLUDED #define PS_ALGORITHM_H_INCLUDED #include < ...
- python处理时间汇总
1.将字符串的时间转换为时间戳 方法: a = "2013-10-10 23:40:00" 将其转换为时间数组 import time timeArray = time.strpt ...
- CodeForces - 123E Maze
http://codeforces.com/problemset/problem/123/E 题目翻译:(翻译来自: http://www.cogs.pw/cogs/problem/problem.p ...
- SQL Replication
http://www.cnblogs.com/CareySon/archive/2012/06/20/IntroductToSQLServerReplicationPart1.html http:// ...