HTML与CSS中的动画模块

这次给大家带来htmlcss中的动画模块,使用html与css中的动画模块注意事项有哪些,下面就是实战案例,一起来看一下。

一. 动画模块

1.过渡和动画之间的异同

1.1不同点

过渡必须人为的触发才会执行动画
动画不需要人为的触发就可以执行动画

立即学习“前端免费学习笔记(深入)”;

1.2相同点

过渡和动画都是用来给元素添加动画的
过渡和动画都是系统新增的一些属性
过渡和动画都需要满足三要素才会有动画效果

2 动画三要素

2.1告诉系统需要执行哪个动画
2.2告诉系统我们需要自己创建一个名称叫做lnj的动画
2.3告诉系统动画持续的时长

p{             width: 100px;     height: 50px;   background-color: red;        /*1.告诉系统需要执行哪个动画*/    animation-name: lnj;        /*3.告诉系统动画持续的时长*/               animation-duration: 3s;       }         /*2.告诉系统我们需要自己创建一个名称叫做lnj的动画*/   @keyframes lnj {              from{                 margin-left: 0;           }               to{                 margin-left: 500px; }           }

二.动画模块 – 其它属性 (上)

  p {           width: 100px;           height: 50px;           background-color: red;           animation-name: sport;           animation-duration: 2s;           /*告诉系统多少秒之后开始执行动画*/           /*animation-delay: 2s;*/           /*告诉系统动画执行的速度*/           animation-timing-function: linear;           /*告诉系统动画需要执行几次*/           animation-iteration-count: 3;    //infinite : 无限的           /*告诉系统是否需要执行往返动画           取值:         normal, 默认的取值, 执行完一次之后回到起点继续执行下一次           alternate, 往返动画, 执行完一次之后往回执行下一次           */         animation-direction: alternate;     }       @keyframes sport {           from{             margin-left: 0;         }           to{             margin-left: 500px;         }     }       p:hover{           /*         告诉系统当前动画是否需要暂停           取值:         running: 执行动画,默认取值           paused: 暂停动画, 当动画执行时,鼠标hover到p上方时,动画停止,鼠标移开,则继续动画;           */           animation-play-state: paused;     }

三.动画模块 – 其它属性 (下)

      .box2{                   width: 200px;                   height: 200px;                   background-color: blue;                   margin: 100px auto;                   animation-name: myRotate;                   animation-duration: 5s;                   animation-delay: 2s;                   /*             通过我们的观察, 动画是有一定的状态的                   1.等待状态             2.执行状态             3.结束状态             */      /*             animation-fill-mode作用:             指定动画等待状态和结束状态的样式                   取值:             none: 不做任何改变                               forwards: 让元素结束状态保持动画最后一帧的样式;                   //向前的                   backwards: 让元素等待状态的时候显示动画第一帧的样式;                    // 向后的                                both: 让元素等待状态显示动画第一帧的样式, 让元素结束状态保持动画最后一帧的样式      */                   /*animation-fill-mode: backwards;*/                   /*animation-fill-mode: forwards;*/                   animation-fill-mode: both;         }               @keyframes myRotate {                   0%{                 transform: rotate(10deg);             }                    50%{                 transform: rotate(50deg);             }                    100%{                 transform: rotate(70deg);             }                }       animation-fill-mode

四. 动画模块-连写

1.动画模块连写格式
animation:动画名称 动画时长 动画运动速度 延迟时间 执行次数 往返动画;

2.动画模块连写格式的简写
animation:动画名称 动画时长;

五. 云层效果

           104-动画模块-云层效果              *{             margin: 0;             padding: 0;         }         ul{             height: 400px;             background-color: skyblue;             margin-top: 100px;             animation: change 5s linear 0s infinite alternate;             position: relative;             overflow: hidden; //让屏幕下方的滚动条隐藏掉         }          ul li{             list-style: none;             width: 400%;      //设置li的宽度为屏幕的四倍,移动最多的为屏幕宽度的三倍,为保证屏幕内一直有云朵,故多设置一个屏幕的宽度的云朵        height: 100%;             position: absolute;         // 设置子绝父相后,三个li会重叠到一起                     left: 0;             top: 0;         }         ul li:nth-child(1){                     background-image: url("images/cloud_one.png");                     animation: one 30s linear 0s infinite alternate;         }                 ul li:nth-child(2){             background-image: url("images/cloud_two.png");                     animation: two 30s linear 0s infinite alternate;         }                 ul li:nth-child(3){             background-image: url("images/cloud_three.png");                     animation: three 30s linear 0s infinite alternate;         }                 @keyframes change {                     from{                 background-color: skyblue;             }                     to{                 background-color: black;             }         }                 @keyframes one {                     from{                 margin-left: 0;             }                      to{                 margin-left: -100%;           //如果先往右移动,又出现屏幕上有一节没云朵的情况,故先往左移动;                      }         }                  @keyframes two {                      from{                 margin-left: 0;             }                       to{                 margin-left: -200%;          //由于动画的时间都一样,但是运动的距离不一样,又由于都是线性速度,所以就会出现有点运动快,有的运动慢!                       }         }                  @keyframes three {             from{                 margin-left: 0;             }                      to{                 margin-left: -300%;             }         }                 

六. 无限滚动

           105-动画模块-无限滚动              *{             margin: 0;             padding: 0;         }         p{             width: 600px;             height: 188px;             border: 1px solid #000;              margin: 100px auto;             overflow: hidden;         }         ul{             width: 2000px;    //这个无限滚动原理就是ul做动画                height: 188px;             background-color: black;     //背景颜色黑色,当li的透明度为半透明时,li就会有黑色蒙版效果                animation: move 10s linear 0s infinite normal;                         //name 时间 速度 延时 无限重复 是否往返(normal代表不往返)            }                     ul li{             float: left;             list-style: none;             width: 300px;                         height: 188px;             background-color: red;                                      border: 1px solid #000;             box-sizing: border-box;         }                                  ul:hover{                                               /*动画添加给谁, 就让谁停止*/                                               animation-play-state: paused;         }                                                       ul:hover li{             opacity: 0.5;                                                       //当li的透明度为0.5时,就会看到父元素的背景颜色(黑色),就会有蒙版效果                                                               }                                                                        ul li:hover{             opacity: 1;                                                                //透明度为1,不透明,看不到父元素的背景色,故没有蒙版效果                                  }         @keyframes move {                                               from{                 margin-left: 0;             }                                               to{                 margin-left: -1200px;                                  //只需要移除屏幕4个li的宽度就可.   屏幕上就会显示第5.6两个li,这时,原本的动画就会恢复的原来的位置接着动画,实现了无线滚动效果                                    }         }        

  • ![](images/banner1.png)
  • ![](images/banner2.jpg)
  • ![](images/banner3.jpg)
  • ![](images/banner4.jpg)
  • //把前两个li加在后面,起到过度效果;动画不会显得太生硬.
  • ![](images/banner1.png)
  • ![](images/banner2.jpg)

相信看了本文案例你已经掌握了方法,更多精彩请关注创想鸟其它相关文章!

推荐阅读:

HTML与CSS中2D转换模块

企业开发中使用H5有哪些注意事项

以上就是HTML与CSS中的动画模块的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1545921.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月21日 17:39:04
下一篇 2025年12月21日 17:39:22

相关推荐

  • HTML与CSS中的3D转换模块

    这次给大家带来html与css中的3d转换模块,使用html与css中的3d转换模块注意事项有哪些,下面就是实战案例,一起来看一下。 文中的img标签![](images/jacky/xin.png) 全部变成了macdown格式 一. 什么是2D和3D 1.什么是2D和3D 2D就是一个平面, 只…

    2025年12月21日
    000
  • 怎样用CSS3制作登录框

    这次给大家带来怎样用css3制作登录框,用css3制作登录框的注意事项有哪些,下面就是实战案例,一起来看一下。 作为一个新手,个人觉得难点在:1.阴影的使用(外框,账户栏,密码栏,button)2.账户栏,密码栏的布局3.button颜色渐变下面给出一些思路,也希望大家提供一些简洁的方法帮助更多的新…

    2025年12月21日
    000
  • CSS常见样式

    这次给大家带来css常见样式,使用css常见样式的注意事项有哪些,下面就是实战案例,一起来看一下。 CSS Sprite(雪碧图)指什么? 有什么作用 CSS雪碧图 即CSS Sprite,也有人叫它CSS精灵图,是一种CSS图像合并技术,该方法是将小图标和背景图像合并到一张图片上,然后利用css的…

    好文分享 2025年12月21日
    000
  • sublime怎样快速的创建html头部代码

    这次给大家带来sublime怎样快速的创建html头部代码,sublime快速创建html头部代码的注意事项有哪些,下面就是实战案例,一起来看一下。 html5快捷键:html:5 Document xhtml1.1快捷键:html:xxs Document xhtml1.0快捷键:html:xs …

    好文分享 2025年12月21日
    000
  • html的盒模型详解

    这次给大家带来html的盒模型详解,使用html盒模型的注意事项有哪些,下面就是实战案例,一起来看一下。 1.1. 盒的内容区的尺寸— content width和content height —取决于几个因素: –生成该盒的元素是否设置了’width’或&#82…

    好文分享 2025年12月21日
    000
  • html基础图像知识详解

    本文主要和大家分享html基础图像知识详解,html 图像- 图像标签( )和源属性(src)在 html 中,图像由 标签定义。 是空标签,意思是说,它只包含属性,并且没有闭合标签。 要在页面上显示图像,你需要使用源属性(src)。src 指 “source”。源属性的值是…

    好文分享 2025年12月21日
    000
  • post提交获得html页面源码的实现代码

    本文主要和大家分享post提交获得html页面源码的实现代码,希望能帮助到大家。 /// /// 获得页面的html源码 主要用于后台生成静态文件时获得源码 /// /// /// public static string GetPageHTML(string url) { string httpS…

    好文分享 2025年12月21日
    000
  • vue文件中HTML代码格式化方法

    本文主要和大家分享vue文件中HTML代码格式化方法,希望鞥帮助到大家。 问题:一般用Shift+Alt+F,可以格式化JS和CSS的部分,但template部分没反应。 1. 在应用商店中搜索并安装 “vetur” 插件 2. 配置。文件 -> 首选项 -> 设置,在编辑框加上这两句 …

    2025年12月21日
    000
  • HTML选择图片并直接预览实现代码

    本文主要和大家分享html选择图片并直接预览实现代码,希望大家可以根据本文的代码,实现html选择图片并直接预览的效果。 选择图片并预览 function getFileUrl(sourceId) { var url; if (navigator.userAgent.indexOf(“MSIE”)&…

    好文分享 2025年12月21日
    000
  • HTML中相对路径和绝对路径的区别

    在实际web开发中,插入图片、包含css文件等都需要有路径,如果文件路径的添加错误,就会导致引用失效(无法浏览链接文件,或无法显示插入的图片等)。很多初学者感到困惑,下面我就详细的介绍一下相对路径与绝对路径。 HTML相对路径 指由这个文件所在的路径引起的跟其它文件(或文件夹)的路径关系。 例如: …

    好文分享 2025年12月21日
    000
  • HTML和JS实现简单的计算器

    HTML和JS实现计算器功能的也是很容易的,本文主要和大家分享HTML和JS实现简单的计算器,希望能帮助到大家。 下面是代码: 无标题文档 var result=””; function jisuan(num){ if(num==”=”){ document.form1.text.value=eva…

    好文分享 2025年12月21日
    000
  • 用HTML+CSS做一个实时预览的markdown编辑器

    这次给大家带来用html+css做一个实时预览的markdown编辑器,用html+css做一个实时预览的markdown编辑器的注意事项有哪些,下面就是实战案例,一起来看一下。 第一步 搭建布局: 1.构思布局(以下是总体布局) 2.项目下新建个index.html页面,写入以下代码: 立即学习“…

    2025年12月21日
    000
  • CSS布局之盒子模型属性

    这次给大家带来CSS布局之盒子模型属性,CSS布局的盒子模型属性的注意事项有哪些,下面就是实战案例,一起来看一下。 宽高width/height   在css中,可以对任何块级元素设置显式高度。   如果指定高度大于显示内容所需高度,多余的高度会产生一个视觉效果,就好像有额外的内边距一样;   如果…

    好文分享 2025年12月21日
    000
  • 怎样在CSS中解决长英文单词的页面显示问题?

    简言 在页面排版中,经常遇到长英文单词溢出段落容器的情况,如何解决该问题?现编制如下对比演示程序: 演示程序 42du.cn-在线演示程序 部分html代码 word-break:break-all; Extraordinarily longlong word!CSS代码 .break-all { …

    好文分享 2025年12月21日
    000
  • CSS预处理器之Less详解

    CSS 预处理器 为什么要有 CSS 预处理器 css基本上是设计师的工具,不是程序员的工具。在程序员的眼里,css是很头痛的事情,它并不像其它程序语言,比如说php、javascript等等,有自己的变量、常量、条件语句以及一些编程语法,只是一行行单纯的属性描述,写起来相当的费事,而且代码难以组织…

    好文分享 2025年12月21日
    000
  • CSS基础语法之CSS的3种引入

    这次给大家带来css基础语法之css的3种引入,css基础语法的css3种引入的注意事项有哪些,下面就是实战案例,一起来看一下。 CSS可算是网页设计的一个突破,它解决了网页界面排版的难题。可以这么说,HTML的Tag主要是定义网页的内容(Content),而CSS决定这些网页内容如何显示(Layo…

    好文分享 2025年12月21日
    000
  • HTML和CSS重点难点问题

    本文主要和大家分享HTML和CSS重点难点问题,希望能帮助到大家。 1.怎么让一个不定宽高的 p,垂直水平居中? 使用flex 只需要在父盒子设置:display: flex; justify-content: center;align-items: center; 使用 CSS3 transfor…

    好文分享 2025年12月21日
    000
  • HTML和CSS重难点知识点总结

    本文主要和大家分享html和css重难点知识点总结,希望能帮助到大家。 怎么让一个不定宽高的 p,垂直水平居中? 使用 Flex 只需要在父盒子设置:display: flex; justify-content: center;align-items: center; 使用 CSS3 transfo…

    好文分享 2025年12月21日
    000
  • HTML在两个div标签中间画一条竖线的代码

    近日在画一个界面的时候,遇到一个需求:在界面当中画一条竖线,且这条竖线在高度上需要自动占满整个父p(即这条竖线的高度和两个p中较高的一个等高)。 往常我们画一条横线直接用标签 即可,当画一条竖线的时候发现找不到标签。在网上查找了一下资料,大致推荐用js来做。小弟比较偏执想用纯css来做,最终找到了解…

    2025年12月21日
    000
  • HTML页面点击下载文件的方法实例

    1.使用标签来完成 点击下载 这样当用户打开浏览器点击链接的时候就会直接下载文件。 但是有个情况,比如txt,png,jpg等这些浏览器支持直接打开的文件是不会执行下载任务的,而是会直接打开文件,这个时候就需要给a标签添加一个属性“download”; 以下为例子 移到标签标签上可以显示文件路径,根…

    好文分享 2025年12月21日
    000

发表回复

登录后才能评论
关注微信