CSS 2D的转换与部分Animation动画

CSS 2D的转换

transform属性可以对元素进行移动、缩放、转动、拉长或拉伸。

Transform属性有四个常用方法:rotate(x,y)旋转,scale(x,y)缩放,translate(x,y)移动(平移)和skew(x-angle,y-angle)倾斜

1 translate () 从其当前位置移动元素(根据为 X 轴和 Y 轴指定的参数)。

示例:

<title>无标题文档</title>
	<style>
		body{
			background:#2D9AAE;
		}
		div{
			width:50px;
			height: 50px;
			background: reds;
			transform: translate(30px,50px);/*translate()方法控制元素的移动*/
		}
	</style>

2 rotate () 方法根据给定的角度顺时针或逆时针旋转元素

示例:

<title>无标题文档</title>
	<style>
		body{
			background:#2D9AAE;
		}
		div{
			width:50px;
			height: 50px;
			background: red;
			transform: rotate(120deg);/*rotate()方法根据给定的角度顺时针或逆时针旋转元素。*/
		}
	</style>

3 scale () 方法增加 或 减少元素的大小(缩放)(根据给定的宽度和高度参数)。

示例:

<title>无标题文档</title>
	<style>
		body{
			background:#2D9AAE;
		}
		div{
			width:50px;
			height: 50px;
			background: red;
			transform:scale(2,2);/*scale()方法增加或减少元素的大小(根据给定的宽度和高度参数)。*/
		}
	</style>

4 skewX () 方法使元素沿 X 轴倾斜给定角度。skewY()方法使元素沿 Y 轴倾斜给定的角度。

示例:

<title>无标题文档</title>
	<style>
		body{
			background:#2D9AAE;
		}
		div{
			width:50px;
			height: 50px;
			background: red;
			transform:skewX(30deg) skewY(20deg);/*skewX()方法使元素沿 X 轴倾斜给定角度。skewY()方法使元素沿 Y 轴倾斜给定角度。。*/
		}
	</style>

2D 所有转换方法
函数描述
matrix(n,n,n,n,n,n)定义 2D 转换,使用六个值的矩阵。
translate(x,y)定义 2D 转换,沿着 X 和 Y 轴移动元素。
translateX(n)定义 2D 转换,沿着 X 轴移动元素。
translateY(n)定义 2D 转换,沿着 Y 轴移动元素。
scale(x,y)定义 2D 缩放转换,改变元素的宽度和高度。
scaleX(n)定义 2D 缩放转换,改变元素的宽度。
scaleY(n)定义 2D 缩放转换,改变元素的高度。
rotate(angle)定义 2D 旋转,在参数中规定角度。
skew(x-angle,y-angle)定义 2D 倾斜转换,沿着 X 和 Y 轴。
skewX(angle)定义 2D 倾斜转换,沿着 X 轴。
skewY(angle)定义 2D 倾斜转换,沿着 Y 轴。

Animation动画

可以灵活实现需要的动画效果。

Animation动画
css3为Animation动画提供的几个属性如下:
animation-name:指定动画名称,该属性指定一个已有的关键帧定义。
animation-duration:指定动画持续时间。
animation-timing-funtion:指定动画变化速度。
animation-delay:指定动画延迟多长时间才开始执行。
animation-iteration-count:指定动画的循环执行次数。
animation:这是一个复合属性。该属性的格式为:
animation:animation-name animation-duration animation-timing-funciotn
animation-delay animation-iteration-count.
keyframes(关键帧):计算机动画术语, 帧——就是动画中最小单位的单幅影像画面,
相当于电影胶片上的每一格镜头。在动画软件的时间轴上帧表现为一格或一个标记。
关键帧——相当于二维动画中的原画。指角色或者物体运动或变化中的关键动作所处的那一帧。
关键帧与关键帧之间的动画可以由软件来创建,叫做过渡帧或者中间帧。
Keyframes被称为关键帧,其类似于Flash中的关键帧。在CSS3中其主要以“@keyframes”开头,
后面紧跟着是动画名称加上一对花括号“{…}”,括号中就是一些不同时间段样式规则。
@keyframes changecolor{
0%{
background: red;
}
50%{
background: red;
}
100%{
background: green;
}
}
在一个“@keyframes”中的样式规则可以由多个百分比构成的,
如在“0%”到“100%”之间创建更多个百分比,分别给每个百分比中给需要有动画效果的元素加上不同的样式,
从而达到一种在不断变化的效果

eg:将鼠标移入,可以动画的改变背景颜色。也可以切换多种颜色。

视图页面 的代码
<body>
	<div>鼠标放在我这儿,看变化</div>
</body>

CSS外链样式 代码
@charset "utf-8";
/* CSS Document */
* {
	margin: 0;
	padding: 0;
}
@keyframes changecolor{
	0%{
		background:#E82733;
	}
	20%{
		background:#E038BA;
	}
	40%{
		background:#482EB1;
	}
	60%{
		background:#1DDD2D;
	}
	100%{
		background:#E3E834;
	}
}

div {
	width: 300px;
	height: 300px;
	margin: 100px auto;
	line-height: 300px;
	text-align: center;
	color: #fff;
	font-size: 20px;
	background: #0F3;
}
div:hover{
	animation-name:changecolor;
	animation-duration:3s;
	animation-timing-function:ease-in;
	animation-delay:.4s;
	animation-iteration-count:3;
	/*animation:changecolor 3s ease-in 0.3s 2;*/
}

效果图一:鼠标还没有放进去的时候

效果图二:鼠标放进去之后,鼠标不动,它会自动变化背景颜色。很神奇。简称动画。【这只是一部分截图,颜色变化太多了。】


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值