【H2O2|全栈】关于CSS(10)CSS3扩充了哪些新鲜的东西?(三)

目录

CSS3入门

前言

准备工作

过渡属性

transition-property

transition-duration

transition-timing-function

transition-delay

帧动画

@keyframes

animation

animation-name

animation-duration

animation-timing-function

animation-delay

animation-iteration-count

animation-direction

animation-fill-mode

animation-play-state

预告和回顾

后话


CSS3入门

前言

本系列博客主要介绍CSS有关知识点,当前章节讲述CSS3相关内容。

本期主要内容为:

  • CSS3过渡属性
  • CSS3帧动画

部分内容仅代表个人观点,仅供参考,希望能帮助到您。

准备工作

软件: 【++参考版本++ 】Visual Studio Code

插件(扩展包):Open in browser, Live Preview, Live Server

浏览器版本:Chrome

系统版本: Win10/11/其他非Windows版本

*我的电脑是Win10的版本,仅供参考*

过渡属性

在CSS3以前,元素之间的样式过渡(从一个样式过渡到另一个样式)只能使用js实现。而现在,利用新增的transition属性就可以完成一些过渡的效果。

该属性按顺序依次简写下面几个属性值(部分):

css 复制代码
transition-property transition-duration transition-timing-function transition-delay

transition-property

用于设置需要设置过渡的属性,填写all则对应所有属性。

transition-duration

用于设置过渡需要的时间,默认0s。

transition-timing-function

用于设置过渡效果的时间曲线,常见的曲线如下:

时间曲线名 效果
linear 规定以相同速度开始至结束的过渡效果。
ease 规定慢速开始,然后变快,然后慢速结束的过渡效果。
ease-in 规定以慢速开始的过渡效果。
ease-out 规定以慢速结束的过渡效果。
ease-in-out 规定以慢速开始和结束的过渡效果。

transition-delay

用于设置延迟开始的时间,默认为0s。

帧动画

CSS3通过创建帧动画,取代网页中的动图,flash动画以及js实现的部分效果。

@keyframes

帧动画的CSS代码如下:

css 复制代码
@keyframes name{
    0% {}

    n% {}

    100% {}

}

其中name为帧动画的名称,n为0~100之间的值。

通过设置帧动画时间和n%,可以设置元素在某一时刻(帧)的效果。

animation

该属性用于调用动画。该属性依次调用以下属性:

css 复制代码
animation-name
animation-duration
animation-timing-function
animation-delay
animation-iteration-count
animation-direction
animation-fill-mode
animation-play-state
animation-name

用于设置帧动画的名称,对应之前@keyframe中的动画名称,可以设置为none表示没有动画。

animation-duration

用于设置动画持续的时间,单位为s或者ms,类似transition。

animation-timing-function

规定动画的速度曲线,类似transition。

animation-delay

用于设置动画延迟开始的时间。

animation-iteration-count

用于设置动画播放的次数,默认为1。可以设置infinite以无限播放。

animation-direction

用于设置动画是否在下一周期逆向地播放。默认值为normal,可以设置reserve以在结束之后反向播放。

animation-fill-mode

用于设置当动画不播放时(当动画完成时,或当动画有一个延迟未开始播放时),要应用到元素的样式。

该属性的值如下:

  • none 默认值。动画在动画执行之前和之后不会应用任何样式到目标元素。
  • forwards 在动画结束后(由 animation-iteration-count 决定),动画将应用该属性值。
  • backwards 动画将应用在 animation-delay 定义期间启动动画的第一次迭代的关键帧中定义的属性值。这些都是 from 关键帧中的值(当 animation-direction 为 "normal" 或 "alternate" 时)或 to 关键帧中的值(当 animation-direction 为 "reverse" 或 "alternate-reverse" 时)。
  • both 动画遵循 forwards 和 backwards 的规则。也就是说,动画会在两个方向上扩展动画属性。
animation-play-state

用于设置动画是否播放。默认值为running,即播放,设置paused以让动画暂停。可以配合js或者hover等伪类使用。

预告和回顾

对网页布局和制作感兴趣的朋友,可以看下面的CSS专栏,里面有很多讲解详尽的案例,当前为第九期:

专栏 | CSS入门http://t.csdnimg.cn/4bvCJ当然,也欢迎对全栈项目感兴趣的朋友查看我的其他专栏。

后话

在全栈领域,博主也只不过是一个普通的萌新而已。本系列的博客主要是记录一下自己学习的一些经历,然后把自己领悟到的一些东西总结一下,分享给大家。

文章全篇的操作过程都是笔者亲自操作完成的,一些定义性的文字加入了笔者自己的很多理解在里面,所以仅供参考。如果有说的不对的地方,还请谅解。

==期待与你在下一期博客中再次相遇==

------已经缺氧的【H2O2】

相关推荐
周亚鑫5 分钟前
vue3 pdf base64转成文件流打开
前端·javascript·pdf
Justinc.22 分钟前
CSS3新增边框属性(五)
前端·css·css3
fruge29 分钟前
纯css制作声波扩散动画、js+css3波纹催眠动画特效、【css3动画】圆波扩散效果、雷达光波效果完整代码
javascript·css·css3
neter.asia38 分钟前
vue中如何关闭eslint检测?
前端·javascript·vue.js
~甲壳虫38 分钟前
说说webpack中常见的Plugin?解决了什么问题?
前端·webpack·node.js
嚣张农民1 小时前
JavaScript中Promise分别有哪些函数?
前端·javascript·面试
光影少年1 小时前
vue2与vue3的全局通信插件,如何实现自定义的插件
前端·javascript·vue.js
As977_1 小时前
前端学习Day12 CSS盒子的定位(相对定位篇“附练习”)
前端·css·学习
susu10830189111 小时前
vue3 css的样式如果background没有,如何覆盖有background的样式
前端·css
Ocean☾1 小时前
前端基础-html-注册界面
前端·算法·html