CSS3渐变、过渡、转换、动画

10 篇文章 0 订阅
订阅专栏
4 篇文章 0 订阅
订阅专栏
本文详细介绍了CSS3中的关键特性,包括线性渐变和径向渐变的创建方法,以及如何使用透明度。接着讲解了CSS3过渡效果,实现元素样式平滑变换所需的属性和时间设置。此外,还涵盖了2D转换,如translate、rotate和scale方法,以及3D转换的各种方法。最后,文章提到了CSS3动画的创建,利用@keyframes规则定义动画帧并绑定到元素上,实现丰富的动态效果。
摘要由CSDN通过智能技术生成

一、CSS3渐变

1.CSS3渐变的分类

线性渐变(Linear Gradient)- 向下/向上/向左/向右/对角方向

径向渐变(radial-gradient)- 由它们的中心定义

 2.CSS3 线性渐变

为了创建一个线性渐变,你必须至少定义两种颜色结点。同时,你也可以设置一个起点和一个方向(或一个角度)。

1.从上到下

下面的实例演示了从顶部开始的线性渐变。起点是红色,慢慢过渡到蓝色:

#grad { background-image: linear-gradient(#e66465, #9198e5); }

2、从左到右

下面的实例演示了从左边开始的线性渐变。起点是红色,慢慢过渡到蓝色:

#grad { 

height: 200px; background-image: linear-gradient(to right, red , yellow); }

3.对角

下面的实例演示了从左上角开始(到右下角)的线性渐变。起点是红色,慢慢过渡到蓝色:

#grad { height: 200px; background-image: linear-gradient(to bottom right, red, yellow); }

4.对角使用多个颜色结点

带有多个颜色结点的从上到下的线性渐变:

#grad { background-image: linear-gradient(red, yellow, green); }

5.使用透明度(transparent)

CSS3 渐变也支持透明度(transparent),可用于创建减弱变淡的效果。从左到右的线性渐变,带有透明度:

#grad {background-image: linear-gradient(to right, rgba(255,0,0,0), rgba(255,0,0,1)); }

3.CSS3 径向渐变

 颜色结点均匀分布(默认情况下)

#grad { background-image: radial-gradient(red, yellow, green); }

  1. 颜色结点不均匀分布

#grad { background-image: radial-gradient(red 5%, yellow 15%, green 60%); }

指的是到百分之几的时候是什么颜色,而不是某一个颜色占比多少。

  1. 设置形状

shape 参数定义了形状。它可以是值 circle 或 ellipse。其中,circle 表示圆形,ellipse 表示椭圆形。默认值是 ellipse。

#grad { background-image: radial-gradient(circle, red, yellow, green); }

二、CSS3过渡

1.它是如何工作?

CSS3 过渡是元素从一种样式逐渐改变为另一种的效果。要实现这一点,必须规定两项内容:

1、指定要添加效果的CSS属性

2、指定效果的持续时间。

如果未指定的期限,transition将没有任何效果,因为默认值是0。

例子:

div:hover { width:300px; }

div { transition: width 2s, height 2s, transform 2s;

 -webkit-transition: width 2s, height 2s, -webkit-transform 2s; }

如果未指定的期限,transition将没有任何效果,因为默认值是0。

2.过渡属性

属性

描述

CSS

transition

简写属性,用于在一个属性中设置四个过渡属性。

3

transition-property

规定应用过渡的 CSS 属性的名称。

3

transition-duration

定义过渡效果花费的时间。默认是 0。

3

transition-timing-function

规定过渡效果的时间曲线。默认是 "ease"。

3

transition-delay

规定过渡效果何时开始。默认是 0。

3

ease 过渡速度:慢-快-慢

linear过渡速度:匀速

 三、CSS3 2D 转换(保持原来的位置,不会占别人的位置)

1.translate() 方法

translate()方法,根据左(X轴)和顶部(Y轴)位置给定的参数,从当前元素位置移动

div { transform: translate(50px,100px);

-ms-transform: translate(50px,100px); /* IE 9 */ 

-webkit-transform: translate(50px,100px); /* Safari and Chrome */

}

例:translate(50px,100px)是从左边元素移动50个像素,并从顶部移动100像素。

2.rotate() 方法

rotate()方法,在一个给定度数顺时针旋转的元素。负值是允许的,这样是元素逆时针旋转。

div { transform: rotate(30deg);

-ms-transform: rotate(30deg); /* IE 9 */

      -webkit-transform: rotate(30deg); /* Safari and Chrome */ 

}

rotate(30deg)元素顺时针旋转30度。

 transform-origin: right top; 设置旋转轴心(也可用像素)

3.scale() 方法

scale()方法,该元素增加或减少的大小,取决于宽度(X轴)和高度(Y轴)的参数:

-ms-transform:scale(2,3); /* IE 9 */

 -webkit-transform: scale(2,3); /* Safari */ 

transform: scale(2,3); /* 标准语法 */

scale(2,3)转变宽度为原来的大小的2倍,和其原始大小3倍的高度

4。skew() 方法

包含两个参数值,

skewX(<angle>);表示只在X轴(水平方向)倾斜

skewY(<angle>);表示只在Y轴(垂直方向)倾斜

div { transform: skew(30deg,20deg);

-ms-transform: skew(30deg,20deg); /* IE 9 */ 

-webkit-transform: skew(30deg,20deg); /* Safari and Chrome */ 

}

skew(30deg,20deg) 元素在X轴和Y轴上倾斜20度30度。

四、CSS3 3D 转换

1.rotateX() 方法

rotateX()方法,围绕其在一个给定度数X轴旋转的元素。

div { transform: rotateX(120deg);

-webkit-transform: rotateX(120deg); /* Safari 与 Chrome */ 

}

演示示例rotateX() 方法

2.rotateY() 方法

rotateY()方法,围绕其在一个给定度数Y轴旋转的元素。

div { transform: rotateY(130deg);

-webkit-transform: rotateY(130deg); /* Safari 与 Chrome */ 

3.3D 转换其他方法

函数

描述

matrix3d(n,n,n,n,n,n,
n,n,n,n,n,n,n,n,n,n)

定义 3D 转换,使用 16 个值的 4x4 矩阵。

translate3d(x,y,z)

定义 3D 转化。

translateX(x)

定义 3D 转化,仅使用用于 X 轴的值。

translateY(y)

定义 3D 转化,仅使用用于 Y 轴的值。

translateZ(z)

定义 3D 转化,仅使用用于 Z 轴的值。

scale3d(x,y,z)

定义 3D 缩放转换。

scaleX(x)

定义 3D 缩放转换,通过给定一个 X 轴的值。

scaleY(y)

定义 3D 缩放转换,通过给定一个 Y 轴的值。

scaleZ(z)

定义 3D 缩放转换,通过给定一个 Z 轴的值。

rotate3d(x,y,z,angle)

定义 3D 旋转。(如:ratate(1,0,1,30deg))

rotateX(angle)

定义沿 X 轴的 3D 旋转。

rotateY(angle)

定义沿 Y 轴的 3D 旋转。

rotateZ(angle)

定义沿 Z 轴的 3D 旋转。

perspective(n)

定义 3D 转换元素的透视视图。

五、CSS3动画

1.@keyframes 规则

@keyframes 规则是创建动画。

2.CSS3动画是什么?

动画是使元素从一种样式逐渐变化为另一种样式的效果。您可以改变任意多的样式任意多的次数。

当在 @keyframes 创建动画,把它绑定到一个选择器(动画的名称),否则动画不会有任何效果。规定动画的名称,规定动画的时长

请用百分比来规定变化发生的时间,或用关键词 "from" 和 "to",等同于 0% 和 100%。

0% 是动画的开始,100% 是动画的完成。

例:把 "myfirst" 动画捆绑到 div 元素,时长:5 秒:当动画为 25% 及 50% 时改变背景色,然后当动画 100% 完成时再次改变:

div { animation: myfirst 5s;

-webkit-animation: myfirst 5s; /* Safari 与 Chrome */ 

}

@keyframes myfirst { 

0% {background: red;} 

25% {background: yellow;} 

50% {background: blue;} 

100% {background: green;} 

} 

3.居于与CSS3的动画属性

属性

描述

CSS

@keyframes

规定动画。

3

animation

所有动画属性的简写属性,除了 animation-play-state 属性。

3

animation-name

规定 @keyframes 动画的名称。

3

animation-duration

规定动画完成一个周期所花费的秒或毫秒。默认是 0。

3

animation-timing-function

规定动画的速度曲线。默认是 "ease"。

3

animation-fill-mode

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

3

animation-delay

规定动画何时开始。默认是 0。

3

animation-iteration-count

规定动画被播放的次数。默认是 1。

3

animation-direction

规定动画是否在下一周期逆向地播放。默认是 "normal"。

逆向为:alternate

3

animation-play-state

规定动画是否正在运行或暂停。默认是 "running"。只有这个需要单独写,不能和别的合写)暂停是:paused

3

设置钟表时:

steps(60)指:分60次走完这个动画

Bub_ble___
关注 关注
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CSS渐变过渡
weixin_46162015的博客
07-29 566
一、线性渐变: 1.方向:默认从上到下 2.语法:background: linear-gradient(2~多个颜色,颜色中间用逗号分隔); linear-gradient(to方向[1到2两个],2~多个颜色,颜色中间用逗号分隔) linear-gradient(度数deg,2~多个颜色,颜色中间用逗号分隔) 3.加浏览器内核 4.方向:方向没有to直接跟的left/ri...
css3动态渐变动画
qq_39015698的博客
09-06 2501
<html> <meta charset="UTF-8"> <head> <title>动态渐变</title> </head> <body> <style> *{margin:0px;padding:0px} .page{height: 900px; background: ...
25个CSS3 渐变动画效果教程
weixin_30273501的博客
07-21 125
随着最新版CSS3渐变动画功能发布,Web开发者在开发的过程中有了更多的选择。实际上,已经有了一些替代的技术,目的都是使网站的建设变得简易,高效和快速。不过CSS3所提供的渐变功能有着显著的优点,特别是对于新手网站管理员。这使得他们有更好的体验,而不仅仅是网站的设计或者开发人员。本文所收集的CSS3动画教程,你都不需要任何代码开发、flash动画或者JavaScript方面的知识,就能感受到它的...
渐变过渡转换动画
最新发布
m0_72498273的博客
07-23 1177
CSS3 线性渐变backgroud-image:linear-gradient(梯度变化曲线)()为了创建一个线性渐变,你必须至少定义两种颜色结点。颜色结点即你想要呈现平稳过渡的颜色。同时,你也可以设置一个起点和一个方向(或一个角度)。1、从上到下下面的实例演示了从顶部开始的线性渐变。起点是红色,慢慢过渡到蓝色:2、从左到右#grad {3、对角#grad {4、使用透明度(transparent)CSS3 渐变也支持透明度(transparent),可用于创建减弱变淡的效果。
css---颜色过渡渐变
weixin_34413065的博客
02-19 372
CSS---颜色过渡渐变 <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> *{margin:0px; padding:0px...
css过渡渐变
weixin_46579411的博客
04-03 247
渐变: 一、线性渐变: 从一个方向到另一个方向的颜色的变化。 标准模式的语法(不添加浏览器前缀): background: linear-gradient(direction, color-stop1, color-stop2, …); 说明: direction:默认为to bottom,即从上向下的渐变; stop:颜色的分布位置,默认均匀分布,例如有3个颜色,各个颜色的stop均为33.33...
09.CSS3渐变过渡转换动画
weixin_60806359的博客
11-21 360
CSS3渐变 (1)、什么是渐变 CSS3 渐变(gradients)可以让你在两个或多个指定的颜色之间显示平稳的过渡。 以前,你必须使用图像来实现这些效果。但是,通过使用 CSS3 渐变(gradients),你可以减少下载的时间和宽带的使用。此外,渐变效果的元素在放大时看起来效果更好,因为渐变(gradient)是由浏览器生成的。 CSS3 定义了两种类型的渐变(gradients): (2)、CSS3渐变的分类 线性渐变(Linear Gradients)- 向下/向上/...
浅谈:CSS3渐变以及2D转换
01-08
CSS3的2D转换2.1 transform2.2 rotate() 方法2.3 skew() 方法2.4 scale() 方法2.5 translate() 方法3. CSS3过渡3.1 transition3.2 pointer-events3.3 backface-visibility 1. CSS3渐变 CSS3 Gradient 分为线性渐变...
css3渐变背景动画特效.zip
10-15
CSS3CSS(层叠样式表)的第三个主要版本,它引入了许多新功能,如选择器、边框和背景的更多选项、多列布局、动画以及转换等。 【描述】提到这个特效"可以完美运行,可以二次修改",意味着开发者或设计师可以轻松...
css-渐变过渡
Jared864的博客
04-03 311
Day19 1、 浏览器css3属性前缀 很多css3属性,最初的预览版没有形成最终的正式版,但是浏览器为了对这些新属性形成支持,主流浏览器都提供了属于自己的语法规则“浏览器前缀“。 -webkit- 谷歌、苹果 浏览器前缀 -moz- 火狐浏览器前缀 -ms- IE浏览器前缀 -o- 欧鹏浏览器前缀 注: 添加浏览器前缀 -&g...
CSS3 渐变、变形、过渡动画小结
爱丽丝漫游前端小世界
03-04 1944
CSS3 渐变(IE9&amp;-用滤镜filter来兼容)线性渐变:linear-gradient([ [ &lt;angle&gt; | to &lt;side-or-corner&gt; ] ,]? &lt;color-stop&gt;[, &lt;color-stop&gt;]+)&lt;side-or-corner&gt; = [left | right] || [top | botto...
CSS3渐变过渡
2301_79002342的博客
07-08 1088
此外,渐变效果的元素在放大时看起来效果更好,因为渐变 (gradient) 是由浏览器生成的。closest-side: 最近边 、farthest-side: 最远边:、closest-corner: 最近角、 farthest-corner: 最远角。径向渐变不同于线性渐变,线性渐变是从“一个方向”向“另一个方向”的颜色渐变,而径向渐变是从“一个点”向四周的颜色渐变。以中心 (50% 50%) 为起点,到最远角 (farthest-corner) ,从red到green、blue的均匀渐变
利用css实现渐变色(通俗易懂)
热门推荐
DZQ1223的博客
07-07 3万+
类型语法线性渐变linear-gradient(方向, 颜色1, 颜色2, … ,颜色n)径向渐变radial-gradient(颜色1 覆盖区域大小, 颜色2 覆盖区域大小, …
css渐变效果
weixin_55639808的博客
01-15 4881
*使用 at 来定义最终的圆心位置 at后面可以接代表方向的关键字 也可以使用百分值默认是先设置水平方向的位置 然后是垂直方向 这里就表示将圆心的位置定义在右上角*//*这里表示的就是创建一个圆形 且该圆形的圆心位于水平方向50% 垂直方向50%的位置*//*这里表示定义了一个水平半径为150px 垂直半径为110px 圆心的位置在水平方向50% 垂直方向50% 即居中显示*/注意:自定义径向大小时,不能自定义形状。
第97天:CSS3渐变过渡详解
lelara的博客
11-27 269
一,渐变 渐变CSS3当中比较丰富多彩的一个特性,通过渐变我们可以实现许多炫丽的效果,有效的减少图片的使用数量,并且具有很强的适应性和可扩展性。 可分为线性渐变,径向渐变 1,  线性渐变 (gradient变化)   线性梯度线性渐变指沿着某条直线朝一个方向产生渐变效果。 linear-gradient:方向,起始颜色,终止颜色 方向:to left/ to right...
CSS渐变动画
weixin_64811434的博客
07-23 280
CSS渐变动画
CSS3渐变过渡、2d变换
sinat_40036565的博客
09-11 553
CSS3渐变过渡、2d变换 1.渐变(gradient) 1.1线性渐变(linear线性) 写法(一): background:gradient(linear,起点(水平 垂直),终点,color-stop(开始渐变的位置,颜色) ); 注:color-stop(开始渐变的位置,颜色) , ...后面可以连着写多个值。 写法(二):          background:-we
CSS高级篇——过渡动画
老梁的专栏
10-04 1593
CSS Transitions 让我们不写一行 JavaScript 代码也能实现过渡动画。当鼠标悬浮于某个链接时,它的颜色会从瞬间变化为。这个变化因为没有过渡,会显得特别生硬。有了transition动画效果就有了,当鼠标悬浮在链接上时,颜色会发生渐变,非常平滑。这里的transition表示所有的属性在半秒内完成线性过渡,没有延迟。注意,这么多渐变属性中,只有所以最简单的渐变可以写成。
写文章

热门文章

  • CSS3渐变、过渡、转换、动画 504
  • 使用anaconda编写Python简单程序 364
  • CSS选择器与标签的分类 272
  • Pycharm编写python简单项目(菜鸟教程) 265
  • 浮动与定位 236

分类专栏

  • js 6篇
  • 前端 6篇
  • HTML 10篇
  • css 4篇
  • Java 1篇
  • JavaSE 1篇
  • python 12篇
  • python基础 8篇
  • 软件安装 4篇

大家在看

  • 【C++】C++ STL探索:Priority Queue与仿函数的深入解析 1500
  • 最新毕设-Node.js-游戏网站-031726(免费领项目)可做计算机毕业设计JAVA、PHP、爬虫、APP、小程序、C#、C++、python、数据可视化、大数据、全套文案 2231
  • 科普文:软件架构数据库系列之【MySQL 8.0新特性--函数索引functional indexes】
  • java计算机毕业设计生态农业信息管理系统(开题+程序+论文)
  • java计算机毕业设计品牌服饰网站的设计与实现(开题+程序+论文)

最新文章

  • 运算符流程控制
  • java介绍、环境搭建、变量
  • DOM操作
2023年30篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

天下网标王邵阳网站搜索优化方案涞源县网站关键词优化重庆江津效果好的网站优化路桥网站优化费用启东网站优化收费潮州网站的优化优化专业网站两个域名优化网站恩施网站优化建议大港网站优化哪家便宜福州网站优化和推广津南区网站优化哪家效果好百度为什么禁止推广网站优化昆明网站seo优化服务从哪些方面进行网站结构优化益阳网站优化推广靖江企业营销网站如何优化怎样判断网站优化程度顺德网站seo优化排名网站优化博客舟山网站优化公司哪家好为什么我的网站一直优化不上平台网站的优化的案例网站图片比较多如何优化宁波外包网站优化城中网站seo优化排名池州网站优化没有网站外链好优化么信阳专业网站优化广东怎么做网站优化香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

天下网标王 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化