一、 transition 过渡
1. 属性
属性 | 版本 | 继承性 | 描述 |
---|---|---|---|
transition | CSS3 | 无 | 复合属性。检索或设置对象变换时的过渡效果 |
transition-property | CSS3 | 无 | 检索或设置对象中的参与过渡的属性 |
transition-duration | CSS3 | 无 | 检索或设置对象过渡的持续时间 |
transition-timing-function | CSS3 | 无 | 检索或设置对象中过渡的类型 |
transition-delay | CSS3 | 无 | 检索或设置对象延迟过渡的时间 |
2. 语法
transition: property duration timing-function delay;
二、 transform 变换
1. 属性
属性 | 版本 | 继承性 | 描述 |
---|---|---|---|
transform | CSS3 | 无 | 检索或设置对象的变换 |
transform-origin | CSS3 | 无 | 检索或设置对象中的变换所参照的原点 |
transform-style | CSS3 | 无 | 指定某元素的子元素是否位于三维空间内 |
perspective | CSS3 | 无 | 指定观察者与「z=0」平面的距离 |
perspective-origin | CSS3 | 无 | 指定透视点的位置 |
backface-visibility | CSS3 | 无 | 指定元素背面面向用户时是否可见 |
3d 效果(立体)
设置父元素的 transform-style
-
transform-style
不能与overflow:hidden
一起用,可以把overflow:hidden
设置在外层
transform-style: preserve-3d;
2. 语法
transform: none|transform-functions;
值 | 描述 |
---|---|
none | 定义不进行转换。 |
matrix(n,n,n,n,n,n) | 定义 2D 转换,使用六个值的矩阵。 |
matrix3d(n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n) | 定义 3D 转换,使用 16 个值的 4x4 矩阵。 |
translate(x,y) | 定义 2D 转换。 |
translate3d(x,y,z) | 定义 3D 转换。 |
translateX(x) | 定义转换,只是用 X 轴的值。 |
translateY(y) | 定义转换,只是用 Y 轴的值。 |
translateZ(z) | 定义 3D 转换,只是用 Z 轴的值。 |
scale(x,y) | 定义 2D 缩放转换。 |
scale3d(x,y,z) | 定义 3D 缩放转换。 |
scaleX(x) | 通过设置 X 轴的值来定义缩放转换。 |
scaleY(y) | 通过设置 Y 轴的值来定义缩放转换。 |
scaleZ(z) | 通过设置 Z 轴的值来定义 3D 缩放转换。 |
rotate(angle) | 定义 2D 旋转,在参数中规定角度。 |
rotate3d(x,y,z,angle) | 定义 3D 旋转。 |
rotateX(angle) | 定义沿着 X 轴的 3D 旋转。 |
rotateY(angle) | 定义沿着 Y 轴的 3D 旋转。 |
rotateZ(angle) | 定义沿着 Z 轴的 3D 旋转。 |
skew(x-angle,y-angle) | 定义沿着 X 和 Y 轴的 2D 倾斜转换。 |
skewX(angle) | 定义沿着 X 轴的 2D 倾斜转换。 |
skewY(angle) | 定义沿着 Y 轴的 2D 倾斜转换。 |
perspective(n) | 为 3D 转换元素定义透视视图。 |
三、 animation 动画
1. 属性
属性 | 版本 | 继承性 | 描述 |
---|---|---|---|
animation | CSS3 | 无 | 复合属性。检索或设置对象所应用的动画特效 |
animation-name | CSS3 | 无 | 检索或设置对象所应用的动画名称 |
animation-duration | CSS3 | 无 | 检索或设置对象动画的持续时间 |
animation-timing-function | CSS3 | 无 | 检索或设置对象动画的过渡类型 |
animation-delay | CSS3 | 无 | 检索或设置对象动画延迟的时间 |
animation-iteration-count | CSS3 | 无 | 检索或设置对象动画的循环次数 |
animation-direction | CSS3 | 无 | 检索或设置对象动画在循环中是否反向运动 |
animation-play-state | CSS3 | 无 | 检索或设置对象动画的状态 |
animation-fill-mode | CSS3 | 无 | 检索或设置对象动画时间之外的状态 |
2. 语法
animation: name duration timing-function delay iteration-count direction;
3. @keyframes 自定义动画
语法
@keyframes animationname {keyframes-selector {css-styles;}}
值 | 描述 |
---|---|
animationname | 必需。定义动画的名称。 |
keyframes-selector |
必需。动画时长的百分比。 合法的值:0-100% , from(与 0% 相同) to(与 100% 相同)
|
css-styles | 必需。一个或多个合法的 CSS 样式属性。 |
四、 animation.css 动画库
1. 下载
点击进入官网下载animate.css
在官网里,可以Download Animate.css
or View on GitHub
点击Download Animate.css
后出现一大堆代码,你只需要 ctrl+a
全选, ctrl+c
,ctrl+v
复制到你本地的 css 文件中即可,当然,直接在github下载文件也行
2. 引入
把你下载的文件引入到你的项目中
<link rel="stylesheet" href="./css/animate.css" />
或使用使用在线 cdn
<link
rel="stylesheet"
href="https://unpkg.com/animate.css@3.5.2/animate.min.css"
/>
3. 使用
为元素添加类名即可使用.
使用 animated 动画效果必须添加 animated
类名,然后添加对应的动画效果类名,如 fadeIn
.
|`
<div class="animated fadeIn">|`</div>
五、 gradient 渐变
linear-gradient() 线性渐变
1. 属性
属性 | 描述 |
---|---|
<angle> : |
用角度值指定渐变的方向(或角度)。 |
to left: | 设置渐变为从右到左。相当于: 270deg |
to right: | 设置渐变从左到右。相当于: 90deg |
to top: | 设置渐变从下到上。相当于: 0deg |
to bottom: | 设置渐变从上到下。相当于: 180deg。这是默认值,等同于留空不写。 |
<color-stop> |
用于指定渐变的起止颜色: |
<color> : |
指定颜色。 |
<length> : |
用长度值指定起止色位置。不允许负值 |
<percentage> : |
用百分比指定起止色位置。 |
2. 语法
|`<linear-gradient> = linear-gradient([ [ |`<angle> | to |`<side-or-corner> ] ,]? |`<color-stop>[, |`<color-stop>]+)
|`<side-or-corner> = [left | right] || [top | bottom]
|`<color-stop> = |`<color> [ |`<length> | |`<percentage> ]?
/* 例子 */
linear-gradient(#fff, #333);
linear-gradient(to bottom, #fff, #333);
linear-gradient(to top, #333, #fff);
linear-gradient(180deg, #fff, #333);
linear-gradient(to bottom, #fff 0%, #333 100%);
radial-gradient() 径向渐变
1. 属性
属性 | 描述 |
---|---|
<position> |
确定圆心的位置。如果提供 2 个参数,第一个表示横坐标,第二个表示纵坐标;如果只提供一个,第二值默认为 50%,即 center |
<percentage> |
用百分比指定径向渐变圆心的横坐标值。可以为负值。 |
<length> |
用长度值指定径向渐变圆心的横坐标值。可以为负值。 |
left: | 设置左边为径向渐变圆心的横坐标值。 |
center: | 设置中间为径向渐变圆心的横坐标值。 |
right: | 设置右边为径向渐变圆心的横坐标值。 |
<percentage> |
用百分比指定径向渐变圆心的纵坐标值。可以为负值。 |
<length> |
用长度值指定径向渐变圆心的纵坐标值。可以为负值。 |
top: | 设置顶部为径向渐变圆心的纵坐标值。 |
center: | 设置中间为径向渐变圆心的纵坐标值。 |
bottom: | 设置底部为径向渐变圆心的纵坐标值。 |
<shape> |
确定圆的类型 |
circle: | 指定圆形的径向渐变 |
ellipse: | 指定椭圆形的径向渐变。 |
<extent-keyword> circle | ellipse |
都接受该值作为 size |
closest-side: | 指定径向渐变的半径长度为从圆心到离圆心最近的边 |
closest-corner: | 指定径向渐变的半径长度为从圆心到离圆心最近的角 |
farthest-side: | 指定径向渐变的半径长度为从圆心到离圆心最远的边 |
farthest-corner: | 指定径向渐变的半径长度为从圆心到离圆心最远的角 |
<circle-size> |
circle 接受该值作为 size |
<length> : |
用长度值指定正圆径向渐变的半径长度。不允许负值。 |
<ellipse-size> |
ellipse 接受该值作为 size |
<length> : |
用长度值指定椭圆径向渐变的横向或纵向半径长度。不允许负值。 |
<percentage> : |
用百分比指定椭圆径向渐变的横向或纵向半径长度。不允许负值。 |
<color-stop> |
用于指定渐变的起止颜色: |
<color> : |
指定颜色。 |
<length> : |
用长度值指定起止色位置。不允许负值 |
<percentage> : |
用百分比指定起止色位置。不允许负值 |
2. 语法
/* 例子 */
radial-gradient(circle, #f00, #ff0, #080);
radial-gradient(circle at center, #f00, #ff0, #080);
radial-gradient(circle at 50%, #f00, #ff0, #080);
radial-gradient(circle farthest-corner, #f00, #ff0, #080);