不被注意的几个CSS3属性之强大应用

  一、timing-function: steps() 

  一开始在使用CSS3的时候并没有太注意这个timing-function,只是注意到自定义贝塞尔曲线。

  1)一个项目中的实例

  先来看看左边加了steps和右边没加的区别。左边的是一锤一锤的,右边会出现影子。

不被注意的几个CSS3属性之强大应用

  【注意下面这个demo在firefox中不能执行,只能在chrome中执行,因为我动画的是“background-image”属性

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

  代码如下,我只把关键的几个代码贴出来了,详细的可以查看这里:

.btn-pay {  background: url(t_btn-pay.png) no-repeat -30px;  animation: pay-interval 0.5s steps(1) infinite;}.btn-pay2 {  animation: pay-interval 0.5s linear infinite;}@keyframes pay-interval {  from {    background-image: url(t_btn-pay.png);  }  30% {    background-image: url(t_btn-pay-active.png);  }  to {    background-image: url(t_btn-pay.png);  }}

  2)参数说明

  语法如下:  

不被注意的几个CSS3属性之强大应用

  a. 第一个参数指定了时间函数中的间隔数量(必须是正整数),这个间隔数量作用用于两个关键帧之间,也就是form与30%之间、30%与to之间。

  b. 第二个参数可选,接受 start 和 end 两个值,指定在每个间隔的起点或是终点发生阶跃变化,默认为 end。 

  我在CSS中设置了1(这个例子中start与end区别不大),也就是一步一步动画,而如果不设置,那其实里面就会有多步操作,就会出现影子。 

  国外有篇文章中写了个例子,可以区分这两个值的区别,demo链接可以点击这里,具体的原理可以在网上搜索。

.contain-car {  animation: drive 4s steps(4, end) infinite;}.contain-car-2 {  animation: drive 4s steps(4, start) infinite;}

不被注意的几个CSS3属性之强大应用

  3)通过sprite图片制作动画

  通过合成的图片,再设置个间隔数,就能出现动画了,例如下面的这张loading图片,点击查看在线demo。

不被注意的几个CSS3属性之强大应用

 

  二、animation-direction

  animation-direction 定义是否应该轮流反向播放动画,选项有normal、alternate(交替)、reverse(反向)等。 

  1)一个项目中的实例

  左边的抖动明显要流畅很多,而右边的抖动在完成100%以后就直接跳回到0%的状态。

不被注意的几个CSS3属性之强大应用

  代码如下,我只把关键的几个代码贴出来了,详细的可以查看这里:

.img1 {  animation: tel-rotate 1s linear infinite alternate;}.img2 {  animation: tel-rotate 1s linear infinite;}@keyframes tel-rotate {  from {    -webkit-transform: rotate(-20deg);    transform: rotate(-20deg);  }  to {    -webkit-transform: rotate(40deg);    transform: rotate(40deg);  }}

  2)CSS3动画帧数计算器

  在做这个抖动的时候,一开始没有注意到这个属性,后面查到有这么一个CSS3动画帧数计算器。

  并注意到这个里面来回滚动的动画非常流畅。关键帧的计算是蛮有讲究的,里面还有些算法了,网上相关资料也蛮多的。

不被注意的几个CSS3属性之强大应用 

  三、timing-function: cubic-bezier()

  自定义贝塞尔曲线函数,通过设置四个参数,可以控制动画的速度。

  平时使用的ease、linear、ease-in等,其实也是输入了四个参数后得到的结果。

  1)一个网上的实例

  通过自定义可以组织比较复杂的合成动画,例如球跌落到地上的情景,点击查看在线代码。

不被注意的几个CSS3属性之强大应用

  当我看到这个实例的时候,我是蛮震惊的,我一直以为这种动画需要与JavaScript配合才行。

  图片来自于《网页动画的十二原则》,这篇文章从国外翻译过来的,里面的原则是迪士尼动画总结的。

  2)贝塞尔辅助工具

  在easings.net这个网页上,可以查看各种缓动的效果。

不被注意的几个CSS3属性之强大应用

  在cubic-bezier.com中,可以在线制作,拖动红色或蓝色的那两个点,可以自动显示相应的参数。

不被注意的几个CSS3属性之强大应用

以上就是不被注意的几个CSS3属性之强大应用的详细内容,更多请关注创想鸟其它相关文章!

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月23日 22:21:47
下一篇 2025年12月23日 22:22:02

相关推荐

  • CSS中bottom属性语法

    CSS中bottom属性语法及代码示例 在CSS中,bottom属性用于指定一个元素与容器底部之间的距离。它可以控制一个元素相对于其父元素底部的位置。 bottom属性的语法如下: element { bottom: value;} 其中,element表示要应用该样式的元素,value表示要设置的…

    2025年12月24日
    000
  • 总结CSS中的Margin属性

    CSS中margin属性总结 CSS中的margin属性用来设置元素的外边距,它可以控制元素与周围元素之间的间距。本文将对margin属性进行总结,并提供一些具体的代码示例供参考。 margin属性有四个值,分别表示元素上、右、下和左的外边距。可以使用以下几种方式来设置margin值: 单个值:设置…

    2025年12月24日
    000
  • 揭开CSS属性选择器的神秘面纱

    CSS属性选择器的秘密揭示 CSS属性选择器是一种非常有用和强大的工具,它允许我们通过元素的属性值来选择和样式化特定的元素。这些属性选择器可以根据元素的属性值、属性值的出现位置以及属性值的特定字符等条件进行匹配和选择。本文将通过具体的代码示例来揭示CSS属性选择器的秘密。 首先,让我们来了解一些基本…

    2025年12月24日
    000
  • CSS 响应式图像属性优化技巧:max-width 和 object-fit

    CSS 响应式图像属性优化技巧:max-width 和 object-fit 在设计响应式网页时,优化图像是至关重要的一环。图像的处理不仅影响页面的加载速度,还会影响用户体验。在传统的网页开发中,经常会使用 max-width 属性来实现图像的响应式调整,但这往往会导致图像变形或者失真。而近年来引入…

    2025年12月24日
    000
  • CSS 径向渐变属性优化技巧:radial-gradient 和 background-position

    CSS 径向渐变属性优化技巧:radial-gradient 和 background-position 引言:CSS 径向渐变(radial-gradient)是一种用于创建圆形渐变效果的属性,常用于设计网页的背景、按钮样式等。在使用径向渐变时,结合合理的 background-position …

    2025年12月24日
    000
  • CSS 外边距属性指南:margin-top,margin-right,margin-bottom 和 margin-left

    CSS 外边距属性指南:margin-top,margin-right,margin-bottom 和 margin-left,需要具体代码示例 引言:在 CSS 中,外边距(margin)是定位元素与其周围元素之间的间距,可以用来控制元素与其他元素的距离,给网页设计带来更多的灵活性和美观性。 本文…

    2025年12月24日
    000
  • CSS 透明度属性:opacity 和 rgba

    CSS 透明度属性:opacity 和 rgba 在网页设计中,透明度是一种非常重要的效果,它可以使元素的背景或内容变得半透明。CSS 提供了不同的方法来实现透明度效果,其中最常用的两种就是 opacity 和 rgba。 opacity 属性 opacity 是 CSS 中的一个属性,它用于控制一…

    2025年12月24日
    000
  • CSS 动画属性优化技巧:animation 和 transition

    CSS 动画属性优化技巧:animation 和 transition 引言:随着 Web 技术的不断发展,CSS 动画成为了网页设计和开发中非常重要的一部分。在过去,开发者通常使用 JavaScript 来实现动画效果,但现在通过 CSS 动画属性,我们可以更加轻松和高效地创建各种动画效果。本文将…

    2025年12月24日
    000
  • CSS 模糊属性详解:filter 和 backdrop-filter

    CSS 模糊属性详解:filter 和 backdrop-filter 导语:在设计网页时,我们常常需要一些特效来增加页面的视觉吸引力。而模糊效果是其中一种常见的特效之一。CSS 提供了两种模糊属性:filter 和 backdrop-filter,它们分别用于对元素内容以及背景内容进行模糊处理。本…

    2025年12月24日
    000
  • CSS 内边距属性探索:padding-top,padding-right,padding-bottom 和 padding-left

    CSS 内边距属性探索:padding-top,padding-right,padding-bottom 和 padding-left,需要具体代码示例 引言:CSS(层叠样式表)是一种用于控制网页样式的标记语言,其中的各种属性能够实现丰富多样的排版效果。在CSS中,内边距属性(padding)是一…

    2025年12月24日
    000
  • CSS 渲染属性:box-shadow,text-shadow 和 filter

    CSS 渲染属性:box-shadow,text-shadow 和 filter 在现代的网络开发中,美观的界面设计和用户体验极其重要。CSS(Cascading Style Sheets)是一种样式表语言,用于描述文档的呈现方式,其中的渲染属性可以帮助开发者实现各种各样的效果。本文将重点介绍三个常…

    2025年12月24日
    000
  • CSS 行高属性指南:line-height 和 vertical-align

    CSS 行高属性指南:line-height 和 vertical-align,需要具体代码示例 标题:CSS 行高属性指南:line-height 和 vertical-align 引言:在进行网页设计或者前端开发过程中,我们经常需要调整文本的行高和垂直对齐方式,以达到更好的排版效果。在 CSS …

    2025年12月24日
    000
  • 如何使用CSS3属性创建网页导航栏?

    如何使用CSS3属性创建网页导航栏? 在现代网页设计中,导航栏在页面上起到非常重要的作用。它可以帮助用户快速导航到不同的页面或不同的部分,提高用户体验和网站的可用性。CSS3提供了许多新的属性和技术,使得创建和设计导航栏变得更加灵活和有趣。在本文中,我们将探讨如何使用CSS3属性来创建网页导航栏。 …

    2025年12月24日
    000
  • 如何使用CSS3属性创建网页背景效果?

    如何使用CSS3属性创建网页背景效果? 背景是网页设计中一个非常重要的元素,它能够提升用户体验,使网页更加吸引人。在CSS3中,有许多新的属性可以帮助我们创建各种各样的网页背景效果。本文将介绍一些常用的CSS3背景属性,并附带代码示例。 一、渐变背景 渐变背景可以为网页增添层次感,使其更加吸引人。在…

    2025年12月24日
    000
  • 带你吃透CSS3属性:transition 与 transform

    本篇文章带大家了解下css 中的 transition (过渡) 和 transform (动画) 属性,这两个属性的参数确实比较复杂,它们可以做出 css 的一些基础动画效果,平移,旋转,倾角……等等,这些也是我早期学习 css 的难记易忘之处,今天给大家详细总结出来。 一…

    2025年12月24日 好文分享
    000
  • 一文详解CSS3中的Flex布局

    本篇文章带大家了解一下css3中的flex布局,希望对大家有所帮助! 简介 什么是Flex布局 Flex是Flexible Box 的缩写,也称为弹性盒子布局。 Flex布局组成: flex容器(flex container)flex项(flex items)主轴(main axis)交叉轴(cro…

    2025年12月24日 好文分享
    000
  • 【整理总结】这些高级CSS技巧,你会几种?

    本篇文章带你玩转css,分享一些高级css技巧,快来看看你是否都会呀! 学习目标 能够使用精灵图能够使用字体图标能够写出 CSS 三角能够写出常见的 CSS 用户界面样式能够说出常见的布局技巧 精灵图 1. 为什么需要精灵图? 客户端要访问一个网页时,浏览器会向服务器发送请求,服务器接收到请求后,会…

    2025年12月24日 好文分享
    000
  • 手把手教你使用CSS实现酷炫六边形网格背景图

    本篇文章给大家分享不规则图形背景排版高阶技巧,介绍一下如何使用css实现酷炫六边形网格背景图,希望对大家有所帮助! 今天,收到一个很有意思的提问,如何实现类似如下的背景效果图: 嗯?核心主体是由多个六边形网格叠加形成。 立即学习“前端免费学习笔记(深入)”; 那么我们该如何实现它呢?使用纯 CSS …

    2025年12月24日 好文分享
    000
  • CSS新特性学习:方向裁切overflow:clip

    本篇文章将介绍一个新特性,从 chrome 90 开始,overflow 新增的一个新特性 — overflow: clip,使用它,轻松的对溢出方向进行控制。 overflow: clip 为何 首先,简单介绍下 overflow: clip 的用法。 overflow: clip: …

    2025年12月24日 好文分享
    000
  • 看看CSS如何利用计数器来实现长按点赞累积动画

    本篇文章给大家分享一个css自定义计数器的使用小技巧,聊聊如何利用它实现长按点赞累积动画,希望对大家有所帮助! 【推荐学习:css视频教程】 在某条 APP 中,如果长按点赞,会出现这样花里胡哨的动画,如下 立即学习“前端免费学习笔记(深入)”; 这个动画有两部分组成,其中这个随机表情的实现可以参考…

    2025年12月24日 好文分享
    000

发表回复

登录后才能评论
关注微信