css新增属性描述

CSS3新增属性

一、CSS3过渡

1.什么是过渡

(transition)是CSS3中具有颠覆性的特征之一,我们可以在不使用 Flash 动画或 JavaScript 的情况下,当元素从一种样式变换为另一种样式时为元素添加效果。

2.过渡的语法

transition: 要过渡的属性 花费时间 运动曲线 何时开始;

详细语法
在这里插入图片描述

二、2D转换

转换(transform)是CSS3中具有颠覆性的特征之一,可以实现元素的位移(transform)、旋转(rotate)、变形、缩放(scale)。

2.1二维坐标系

在这里插入图片描述

2.2 2D转换—移动 translate

语法:transform: translate(x,y);
例:translate(4)==>translate(4,4)

translate总结:

1.定义 2D 转换,沿着 X 和 Y 轴移动元素
2.translate中的百分比单位是相对于自身元素的 translate:(50%,50%);
3.translate类似定位,不会影响到其他元素的位置
4.对行内标签没有效果

2.3 2D转换–旋转 rotate

1>语法:transform:rotate(角度)–单位deg
2>总结:

1.角度为正时,顺时针,负时,为逆时针
2.默认旋转的中心点是元素的中心点

3>利用旋转来完成小三角案例,代码如下
在这里插入图片描述
最后效果:

在这里插入图片描述

2.4 2D转换中心点 transform-origin

我们可以设置元素转换的中心点
1>语法:transform-origin: x y;
2>重点:
在这里插入图片描述

2.5 2D旋转–缩放scale

缩放,顾名思义,可以放大和缩小。 只要给元素添加上了这个属性就能控制它放大还是缩小。

1>语法:transform:scale(x,y);
2>总结:
在这里插入图片描述

三、动画

动画(animation)是CSS3中具有颠覆性的特征之一,可通过设置多个节点来精确控制一个或一组动画,常用来实现复杂的动画效果。

3.1 动画的基本使用

  1. 用keyframes 定义动画(类似定义类选择器)
    在这里插入图片描述
    2.元素使用动画
    在这里插入图片描述

3.2动画常用属性

在这里插入图片描述

3.3动画简写属性

animation:动画名称 动画时间 运动曲线 何时开始 播放次数 是否反方向 动画等待或者结束的状态;
animation: 动画名称 5s(持续时间) linear(匀速) 2s infinite(无限循环) alternate( 动画先正常运行再反方向运行,并持续交替运行);

1.动画的属性连写没有书写顺序,如果有动画延迟,那么要写在动画的持续时间后面
2.动画名称和动画持续时间为必写项
3.暂停动画:animation-play-state: paused; 不能写在animation连写属性当中(记住)

四、3D转换

4.1 三维坐标系

三维坐标系其实就是指立体空间,立体空间是由3个轴共同组成的。

x轴:水平向右 注意: x 右边是正值,左边是负值
y轴:垂直向下 注意: y 下面是正值,上面是负值
z轴:垂直屏幕注意: 往外面是正值,往里面是负值
在这里插入图片描述

4.2 3D移动–translate3d

3D移动在2D移动的基础上多加了一个可以移动的方向,就是z轴方向。

transform: translate3d(x,y,z):其中 x、y、z 分别指要移动的轴的方向的距离
transform:translateX(100px):仅仅是在x轴上移动
transform: translateY(100px):仅仅是在Y轴上移动
transform: translateZ(100px):仅仅是在Z轴上移动(注意:translateZ只能跟px单位

4.3 3D–透视 perspective

语法:perspective: 300px;

当为元素定义 perspective 属性时,其子元素会获得透视效果,而不是元素本身。
在2D平面产生近大远小视觉立体,但是只是效果二维的

4.4 3D–旋转rotate3d

语法:

transform:rotateX(45deg):沿着x轴正方向旋转 45度
transform:rotateY(45deg):沿着y轴正方向旋转 45deg
transform:rotateZ(45deg) :沿着Z轴正方向旋转 45deg
transform:rotate3d(x,y,z,deg): 沿着自定义轴旋转 deg为角度(了解即可)

五、私有前缀

语法:
在这里插入图片描述
提倡写法:

-moz-border-radius: 10px;
-webkit-border-radius: 10px;
-o-border-radius: 10px;
border-radius: 10px;

5.1 解决兼容性问题的两种解决方案

优雅降级(Graceful Degradation)

一开始就构建站点的完整功能,然后针对浏览器测试和修复。比如一开始使用 CSS3 的特性构建了一个应用,然后逐步针对各大浏览器进行 hack
使其可以在低版本浏览器上正常浏览。

渐进增强(Progressive Enhancement)

一开始就针对低版本浏览器进行构建页面,完成基本的功能,然后再针对高级浏览器进行效果、交互、追加功能达到更好的体验。

一般是看需求决定用哪种方案的

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值