CSS(七)元素过渡、变化、动画

简介: CSS(七)元素过渡、变化、动画

一、元素动效

1. 过渡 - transition  

       过渡为一个元素在不同状态之间切换不同的过渡效果,由过渡属性的名称、过渡需要的时间、过渡的方式、过渡的延迟时间四部分组成。注意过渡必须是在元素状态切换下进行,需要用到伪类。


(1)过渡属性的名称 - transition-property  过渡样式


div {
    transition-property: background-color;
}

       值需要直接写需要过渡的属性名称,当过渡多个样式的时候可以写 all。


(2)过渡需要的时间 - transition-duration


div {
   transition-duration: 0.5s;
}

(3)过渡的方式 - transition-timing-function,CSS中封装了5种方式:

image.png

div {
   transition-timing-function: linear;
}

(4)过渡的延迟时间 - transition-delay


       延迟时间指在过渡效果开始作用之前需要等待的时间,以s或ms为单位,取值为正会延迟一段时间来响应过渡效果;取值为负会导致过渡立即开始。

div {
   transition-delay: 1s;
}

(5)简化写法,格式:transition:过渡时间 延迟时间 过渡方式 过渡样式(延迟时间必须写在过渡时间以后,其他可以调换位置;最简写法为 transition:过渡时间)。


div {
   transition: 1s  1s ease background-color;
}

(6)多重样式过渡,使用 transition 进行多个不同的过渡样式时,每一个不同时间的过渡样式用逗号分隔。

div {
   transition: 1s border-radius, 1s 1s opacity;
}

2. 变化

(1)translate( )  位移函数

image.png

       使用margin负值方法的元素居中必须知道子元素的宽高,而位移函数不用:


.zi {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
}

(2)rotate( )  旋转函数,该函数默认为 Z 轴旋转,deg 单位为旋转角度,角度可以为正值或负值,旋转的中心点是元素最中心的点。

div {
   transform: rotateZ(360deg);
}

(3)scale( )  缩放函数,缩放函数中的参数是以倍数为基础的,1代表当前大小,

image.png

       也可以写两个值,如果写一个表示x轴和y轴用同一个值。


div {
   transform: scale(-1, -1);
}

(4)skew( )  倾斜扭曲函数,在 2d 变换中倾斜,可以有 X 轴和 Y 轴的倾斜角度,默认为 X 轴倾斜。


skewX x轴扭曲,正值水平左侧扭曲,负值右侧扭曲

skewY y轴扭曲,正值左侧向上,负值右侧向上

div {
   transform: skewX(-40deg);
   transform: skewY(50deg);
}

(5)基点 - transform-origin


       改变元素变化时的原点,默认情况下,元素的中心原点位于 x 轴和 y 轴的 50% 处。

image.png


3. 动画

(1)关键帧  - @keyframes


       css中的@规则,通过在动画序列中定义关键帧的样式,来控制CSS动画序列中的步骤,以百分比来规定改变发生的时间,或者通过关键词"from"和"to",等价于0%和100%。创建关键帧方法如下:

@keyframes move {
   0% {transform: translate(0);}
   100% {transform: translate(600px);}
}
/* 0%为开始时间 */
/* 100%为结束时间 */
/* move为帧名 */

(2)动画名称  - animation-name,指定动画要使用哪一个关键帧。


(3)结束时间 - animation-duration,代表一个动画周期的时长,默认值0秒,调用动画时必须写:动画名称、持续时间。


(4)运动方式 - animation-timing-function

image.png

div {
   animation-timing-function: steps(8,end);
}

(5)延迟时间 - animation-delay,与过渡延迟时间同用。


(6)结束状态 - animation-fill-mode,设置动画结束时盒子的状态,在动画运行到某个位置的时候,动画停止,元素默认会迅速回到起始位置。

image.png

(7)执行顺序 - animation-direction

image.png

(8)循环次数 - animation-iteration-count,其值通常为整数,默认为1,值infinite表示无限循环。


(9)简写方式


       格式:animation: 执行时间  延迟时间  关键帧名称  运动方式  运动次数  结束状态;


       最简:最简方式 animation: 动画执行时间  执行关键帧名称;( 注意执行时间和延迟时间顺序不可调整)


(10)动画停止 - animation-play-state,单独写,不可加入简写之中。

image.png

/*鼠标移入ul时,暂停动画*/
.xz-roll ul:hover {
    animation-play-state: paused;
}

       css 样式将对布局、字体、颜色、背景和其它文图效果实现更加精确的控制。只通过修改一个文件就改变页数不计的网页的外观和格式。 在所有浏览器和平台之间的兼容性。更少的编码、更少的页数和更快的下载速度。除了还不能全面支持我们常用的大多数浏览器之外,CSS 在实现其它承诺方面作得相当出色。CSS 在改变我们制作样式表的方法。它为大部分的网页创新奠定了基石。




相关文章
|
6月前
|
前端开发 算法 Java
【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式
伪类:伪类这个叫法源自于它们跟类相似,但实际上并没有类会附加到标记中的标签上。 伪类分为两种(以及新增的伪类选择器): UI伪类:会在HTML元素处于某种状态时(例如:鼠标指针位于连接上),为该元素应用CSS样式。 :hover 结构化伪类:会在标记中存在某种结构上的关系时 例如: 某元素是一组元素中的第一个或最后一个,为该元素应用CSS样式。 :not和:target(CSS3新增的两个特殊的伪类选择器)
699 2
|
6月前
|
前端开发 算法 Java
(CSS)使用Flex布局,帮助你快速了解各种基本的Flex布局属性以及帮你让元素快速达到布局中的指定位置!
(CSS)使用Flex布局,帮助你快速了解各种基本的Flex布局属性以及帮你让元素快速达到布局中的指定位置!
210 1
|
6月前
|
前端开发 算法 Java
【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
Flex 布局 布局的传统解决方案,基于盒状模型,依赖 display 属性 + position属性 + float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。 2009年,W3C 提出了一种新的方案----Flex 布局,可以简便、完整、响应式地实现各种页面布局。目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能。 一、Flex 布局是什么? Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。
437 0
|
6月前
|
前端开发 算法 Java
【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距
盒模型 盒模型: 所谓盒模型,就是浏览器为页面中的每个HTML元素生成的矩形盒子。 这些盒子们都要按照可见板式模型在页面上排布。 可见的板式模型主要由三个属性控制:position 属性、display 属性和 float属性。 position属性控制页面上元素间的位置关系。 display属性控制元素是堆叠、并排或者不在页面上显示。 float属性提供控制的方法,以便于把元素组成成多栏布局。 盒模型讲解: 在默认的情况下,每个盒子的边框是不可见的,背景也是透明的。 所以我们 不能直接的看到页面中的盒
856 1
|
前端开发 JavaScript
CSS 过渡和动画
CSS过渡和动画是用于为网页元素添加动态效果的两种重要技术
654 143
|
9月前
|
自然语言处理 前端开发 JavaScript
用 通义灵码 一键生成“水波纹按钮”,连 CSS 动画都不用自己写了!
通义灵码是一款智能编程辅助工具,它可以根据自然语言指令自动生成高质量的代码。例如,只需输入“生成一个按钮,点击时带水波纹动画,模拟 Material Ripple 效果”,它就能生成具备完整交互逻辑、CSS 动画和良好性能的按钮组件。不仅如此,它还支持拓展功能,如长按触发提示、添加图标等,并能自动优化样式适配不同场景。通过通义灵码,开发者可以大幅提升效率,专注于创意实现,而不必纠结于繁琐的代码细节。
|
6月前
|
前端开发 算法 Java
【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation
Animation属性 css3为Animation动画提供的几个属性如下: 属性名 属性值 animation-name 指定动画名称,该属性指定一个已有的关键帧定义。 animation-duration 指定动画持续时间。 animation-timing-funtion 指定动画变化速度。 animation-delay 指定动画延迟多长时间才开始执行。 animation-iteration-count 指定动画的循环执行次数。 animation:这是一个复合属性。
429 3
|
6月前
|
前端开发 算法 Java
【CSS】前端三大件之一,如何学好?从基本用法开始吧!(三):元素继承关系、层叠样式规则、字体属性、文本属性;针对字体和文本作样式修改
继承 我们的CSS中很多的属性也是可以继承的,其中相当一部分是跟文字的相关的,比如说颜色、字体、字号。 当然还有一部分是不能继承的。 例如边框、内外边距。 层叠 层叠是CSS的核心机制。 层叠的工作机制: 当元素的同一个样式属性有多种样式值的时候,CSS就是靠层叠机制来决定最终应用哪种样式。 层叠规则: 层叠规则一:找到应用给每个元素和属性的声明。 说明:浏览器在加载每个页面时,都会据此查找到每条CSS规则, 并标识出所有受到影响的HTML元素。
226 0
|
前端开发 JavaScript
如何使用CSS过渡实现页面元素的淡入淡出效果?
如何使用CSS过渡实现页面元素的淡入淡出效果?
617 79
css3 svg制作404页面动画效果HTML源码
css3 svg制作404页面动画效果HTML源码
288 34

热门文章

最新文章

  • 1
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation
    429
  • 2
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(八):学习transition过渡属性;本文学习property模拟、duration过渡时间指定、delay时间延迟 等多个参数
    340
  • 3
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(七):学习ransform属性;本文学习 rotate旋转、scale缩放、skew扭曲、tanslate移动、matrix矩阵 多个参数
    323
  • 4
    (CSS)使用Flex布局,帮助你快速了解各种基本的Flex布局属性以及帮你让元素快速达到布局中的指定位置!
    210
  • 5
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
    437
  • 6
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(五):背景属性;float浮动和position定位;详细分析相对、绝对、固定三种定位方式;使用浮动并清除浮动副作用
    617
  • 7
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距
    856
  • 8
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(三):元素继承关系、层叠样式规则、字体属性、文本属性;针对字体和文本作样式修改
    226
  • 9
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式
    699
  • 10
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(一):CSS发展史;CSS样式表的引入;CSS选择器使用,附带案例介绍
    397
  • 下一篇
    开通oss服务