百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

css零基础自学教程(十五)css3过渡与转换

itomcoil 2025-01-05 18:05 40 浏览

一 css3过渡 转换

css3过渡(transition)允许我们在限定的时间内从一个属性值转变到另一个属性值.

●transition-property:指定要转换的属性

●transition-duration:指定转换发生的持续时间

●transition-timing-function:指定转换的速度在其持续时间内如何变化

●transition-delay:指定过渡效果的延迟(以秒为单位)

在下面的例子中,我们将transition属性设置为持续时间为5s的转换效果.并设置ease-in定时函数,该函数有淡入的效果.

css代码:

transition:transform 5s ease-in;

过渡效果可以应用于各种css属性,包括:背景颜色,宽度,高度,不透明度等等.

在下面的例子中,div元素的宽度和高度都是100px,并有一个红色的背景.我么为width属性指定一个过渡效果,持续时间为3s.

css代码:

div.transition{ width:100px; height:100px;background:red;color:white;transition:width 3s; }

div.transition:hover{ width:250px;}

效果如下:

如果你将光标悬停在div元素上,则会从左向右移动.

当光标被移出div元素时,它将逐渐变回原来的样式.

transition-timing-function属性指定过渡效果的速度曲线.

它可以有以下值:

ease:动画开始缓慢,然后加速(默认值)

ease-in:缓慢开始,然后加速,突然停止.

ease-out:快速启动,但减速停止.

ease-in-out:类似于缓解,但更加微妙的加速和减速.

linear:匀速转换

cubic-bezier()函数,它允许你在cubic-bezier(立方体-贝塞尔)函数中定义你自己的值.取值范围为0~1之间.

css代码:

transition-timing-function:cubic-bezier(0,0,1,1);

二 css3 transform:rotate()

css3中transform(转换)允许你翻转,旋转,缩放和倾斜元素.

transform(转换)是一种让元素更改形状,大小和位置的效果

css3支持2d和3d转换.

设置15deg的角度旋转(顺时针方向旋转),css代码如下:

transform:totate(15deg);

正值,顺时针旋转;负值,逆时针旋转.

三 css3 transform-origin,translate(),skew()

transition-origin(原点)属性允许你更改要转换元素的位置.该属性的默认值是50% 50%,对应于元素的中间.

在下面的例子中,我们将transform-origin属性和transform-ratate一起使用.x轴(水平)的原点从左侧设定为30%.

y轴(垂直)的原点从上方设定为80%.

css代码:

div.empty-div{position:relative;height:100px;width:100px;margin:30px;padding:10px;border:2px solid black;}

div.green-div{ padding:50px; position:absolute;background-color:LightGreen;border:2px solid red;transform:rotate(15deg);transform-origin:30% 80%;}

效果如下:

0 0 与左上相同,100% 100%与右下相同.

transform-origin属性必须与transform属性一起使用.

translate()方法从当前位置移动一个元素(根据给定的x轴和y轴的参数).正值会将元素

向下推到其默认位置的右侧.而负值则会将元素向上并拖至其默认位置的左侧.

css代码:

transform:translate(120px,60px);

skew()通过给元素设置x轴和y轴的倾斜角度值来实现倾斜.

以下例子,沿着x轴将<div>元素倾斜45度

css代码:

transform:skew(45deg);

-webkit-transform:skew(45deg);

如果没有指定第二个参数,则它的默认值为零.

四 css3 scale()函数和多重变换

scale()方法根据已设定的高度和宽度参数来增加或减少元素的大小.1代表原始大小,2代表原始尺寸的两倍,以此类推.

css代码:

transform:scale(0.7 0.7);

如果只传递一个参数,则默认宽度与高度都使用该参数.

一次可以使用多个转换.比如同时旋转和缩放元素的大小.对元素应用多个变换,只需要用空格隔开它们.

css代码:

transform:rotate(35deg) translate(120px);

五 css3关键帧与动画

动画让一个元素从一种风格变为另一种风格.

你可以根据需要更改任意数量的css属性.

关键帧将保存元素在特定时间的样式

@keyframes规则

当你在@keyframes规则中指定css样式时,动画将在某些时间从当前样式逐渐变为新样式.

要使动画起作用,必须将动画绑定到元素.

以下例子,将更改元素的背景颜色三次:动画完成50%,完成70%,动画完成100%时.

@keyframes animation-name{ 0% {background-color:red;} 50% {background-color:yellow;} 70% {background-color:green;}

100% {background-color:green;} }

animation-name是为动画指定的名字,你可以设置成任意的名字.

作为百分比的替代方法,你可以使用from和to关键字分别代替0%起始点,100%结束点.

要使动画起作用,必须将动画绑定到元素.

在下面的例子中,动画持续一秒钟,并将红色div的背景颜色更改为绿色和蓝色

div.animation{ width:100px;height:100px;background-color:red;animation-name:能否;animation-duration:1s;}

@keyframes 能否{ 0% {background-color:red;} 50%{ background-color:green;} 100%{background-color:blue;} }

效果如下:

背景颜色将在1s内自动变化.

animation-name:指定动画的名字.

animation-duration:指定所选动画的持续时间.

如果为指定animation-duration属性,则动画将不起作用.因为默认值是0.

相关推荐

MySQL修改密码_mysql怎么改密码忘了怎么办

拥有原来的用户名账户的密码mysqladmin-uroot-ppassword"test123"Enterpassword:【输入原来的密码】忘记原来root密码第一...

数据库密码配置项都不加密?心也太大了吧!

先看一份典型的配置文件...省略...##配置MySQL数据库连接spring.datasource.driver-class-name=com.mysql.jdbc.Driverspr...

Linux基础知识_linux基础入门知识

系统目录结构/bin:命令和应用程序。/boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。/dev:dev是Device(设备)的缩写,该目录...

MySQL密码重置_mysql密码重置教程

之前由于修改MySQL加密模式为mysql_native_password时操作失误,导致无法登陆MySQL数据库,后来摸索了一下,对MySQL数据库密码进行重置后顺利解决,步骤如下:1.先停止MyS...

Mysql8忘记密码/重置密码_mysql密码忘了怎么办?

Mysql8忘记密码/重置密码UBUNTU下Mysql8忘记密码/重置密码步骤如下:先说下大概步骤:修改配置文件,使得用空密码可以进入mysql。然后置当前root用户为空密码。再次修改配置文件,不能...

MySQL忘记密码怎么办?Windows环境下MySQL密码重置图文教程

有不少小白在使用Windows进行搭建主机的时候,安装了一些环境后,其中有MySQL设置后,然后不少马大哈忘记了MySQL的密码,导致在一些程序安装及配置的时候无法进行。这个时候怎么办呢?重置密码呗?...

10种常见的MySQL错误,你可中招?_mysql常见错误提示及解决方法

【51CTO.com快译】如果未能对MySQL8进行恰当的配置,您非但可能遇到无法顺利访问、或调用MySQL的窘境,而且还可能给真实的应用生产环境带来巨大的影响。本文列举了十种MySQL...

Mysql解压版安装过程_mysql解压版安装步骤

Mysql是目前软件开发中使用最多的关系型数据库,具体安装步骤如下:第一步:Mysql官网下载最新版(mysql解压版(mysql-5.7.17-winx64)),Mysql官方下载地址为:https...

MySQL Root密码重置指南:Windows新手友好教程

如果你忘记了MySQLroot密码,请按照以下简单步骤进行重置。你需要准备的工具:已安装的MySQL以管理员身份访问命令提示符一点复制粘贴的能力分步操作指南1.创建密码重置文件以管理员...

安卓手机基于python3搜索引擎_python调用安卓so库

环境:安卓手机手机品牌:vivox9s4G运行内存手机软件:utermux环境安装:1.java环境的安装2.redis环境的安装aptinstallredis3.elasticsearch环...

Python 包管理 3 - poetry_python community包

Poetry是一款现代化的Python依赖管理和打包工具。它通过一个pyproject.toml文件来统一管理你的项目依赖、配置和元数据,并用一个poetry.lock文件来锁定所有依赖的精...

Python web在线服务生产环境真实部署方案,可直接用

各位志同道合的朋友大家好,我是一个一直在一线互联网踩坑十余年的编码爱好者,现在将我们的各种经验以及架构实战分享出来,如果大家喜欢,就关注我,一起将技术学深学透,我会每一篇分享结束都会预告下一专题最近经...

官方玩梗:Python 3.14(πthon)稳定版发布,正式支持自由线程

IT之家10月7日消息,当地时间10月7日,Python软件基金会宣布Python3.14.0正式发布,也就是用户期待已久的圆周率(约3.14)版本,再加上谐音梗可戏称为π...

第一篇:如何使用 uv 创建 Python 虚拟环境

想象一下,你有一个使用Python3.10的后端应用程序,系统全局安装了a2.1、b2.2和c2.3这些包。一切运行正常,直到你开始一个新项目,它也使用Python3.10,但需要...

我用 Python 写了个自动整理下载目录的工具

经常用电脑的一定会遇到这种情况:每天我们都在从浏览器、微信、钉钉里下各种文件,什么截图、合同、安装包、临时文档,全都堆在下载文件夹里。起初还想着“过两天再整理”,结果一放就是好几年。结果某天想找一个发...