CSS3里怎么实现打字动画
相较于之前的CSS版本,我们利用css3可以实现很多炫酷的东西,比如老版的CSS无法实现的打字动画。下面我们就给大家带来一个小案例,看看酷炫的打字动画是怎么做出来的。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>Document</title> <style type="text/css" media="screen"> .box { width:100%; height:500px; text-align:center; position:relative; } .container { width:80%; height:400px; border:1px solid red; text-align:left; margin:0 auto; } .container span { display:inline-block; border:1px solid red; transition: all 2s; transform:translateY(0px) rotate(0deg); font-size:14px; } textarea { width:200px; resize:none; height:20px; line-height:20px; padding:10px 0px; font-size:14px; font-weight:400; } .clone { font-size:14px; border:1px solid red; width:80%; height:20px; margin:0 auto; line-height:20px; padding:10px 0px; text-align:left; visibility:hidden; } .clone span { transition:all 2s; position:absolute; } </style> </head> <body> <div> <div> </div> <div> <span></span> </div> <textarea placeholder="请输入文字"></textarea> </div> </body> <script> //计算出input输入框的偏移值 var container = document.querySelector(".container"); var inner = document.querySelector(".inner"); var clone = document.querySelector(".clone"); var textarea = document.querySelector(".textarea"); var offx = (container.offsetWidth - textarea.offsetWidth-20)/2; var offy = (container.offsetHeight + inner.offsetHeight); //创造一个span标签 需要注入需要注入起始坐标 function createspan(text,x,y) { this.text = text; this.x = x; this.y = y; this.init = {}; } createspan.prototype.render = function() { var span = document.createElement("span"); container.appendChild(span); span.style.display = "inline-block"; span.style.transform = "translateX("+this.x+"px) translateY("+this.y+"px) rotate(720deg)"; span.style.transition = "all 2s"; span.innerHTML = this.text; this.init = span; } createspan.prototype.recover = function() { var that = this; setTimeout(function(){ that.init.style.transform = "translateX(0px) translateY(0px) rotate(0deg)"; },10) } var newtext = ""; var oldtext = ""; var x = 0; var y = 0; var total = ""; //监听textarea文本框的输入变化情况 textarea.addEventListener("input",function(){ var text = ""; if (inner.offsetWidth >= container.offsetWidth ) { offx = (container.offsetWidth - textarea.offsetWidth-20)/2 - textarea.offsetWidth; } else if (inner.offsetWidth >= textarea.offsetWidth*3) { offx = (container.offsetWidth - textarea.offsetWidth-20)/2 - textarea.offsetWidth*3; } else if (inner.offsetWidth >= textarea.offsetWidth*2) { offx = (container.offsetWidth - textarea.offsetWidth-20)/2 - textarea.offsetWidth*2; } else if(inner.offsetWidth>=textarea.offsetWidth) { offx = (container.offsetWidth - textarea.offsetWidth-20)/2 - textarea.offsetWidth; } //先算文字的变化 两种情况一种是增加一种是减少 newtext = textarea.value; oldtext = inner.innerHTML; newtext = newtext.trim(); //添加字符 if(newtext.length > oldtext.length) { for(var i = 0;i < newtext.length;i++) { if(newtext[i] != oldtext[i]) { text += newtext[i]; inner.innerHTML = newtext; } } total += text; // 生成 for(var i =0;i < text.length;i++) { var a = new createspan(text[i],offx,offy); a.render(); a.recover(); } } //删除字符 }) </script> </html>
相信通过这个案列大家会熟练的掌握CSS3的这个功能,更多精彩请关注php中文网其它相关文章!
相关阅读:
以上是CSS3里怎么实现打字动画的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

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

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

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

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

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

在 Vue.js 中使用 Bootstrap 分为五个步骤:安装 Bootstrap。在 main.js 中导入 Bootstrap。直接在模板中使用 Bootstrap 组件。可选:自定义样式。可选:使用插件。

WebDevelovermentReliesonHtml,CSS和JavaScript:1)HTMLStructuresContent,2)CSSStyleSIT和3)JavaScriptAddSstractivity,形成thebasisofmodernWebemodernWebExexperiences。

HTML定义网页结构,CSS负责样式和布局,JavaScript赋予动态交互。三者在网页开发中各司其职,共同构建丰富多彩的网站。

在 Bootstrap 中插入图片有以下几种方法:直接插入图片,使用 HTML 的 img 标签。使用 Bootstrap 图像组件,可以提供响应式图片和更多样式。设置图片大小,使用 img-fluid 类可以使图片自适应。设置边框,使用 img-bordered 类。设置圆角,使用 img-rounded 类。设置阴影,使用 shadow 类。调整图片大小和位置,使用 CSS 样式。使用背景图片,使用 background-image CSS 属性。

创建 Bootstrap 分割线有两种方法:使用 标签,可创建水平分割线。使用 CSS border 属性,可创建自定义样式的分割线。

要设置 Bootstrap 框架,需要按照以下步骤:1. 通过 CDN 引用 Bootstrap 文件;2. 下载文件并将其托管在自己的服务器上;3. 在 HTML 中包含 Bootstrap 文件;4. 根据需要编译 Sass/Less;5. 导入定制文件(可选)。设置完成后,即可使用 Bootstrap 的网格系统、组件和样式创建响应式网站和应用程序。

要调整 Bootstrap 中元素大小,可以使用尺寸类,具体包括:调整宽度:.col-、.w-、.mw-调整高度:.h-、.min-h-、.max-h-

如何使用 Bootstrap 按钮?引入 Bootstrap CSS创建按钮元素并添加 Bootstrap 按钮类添加按钮文本
