CSS3学习要点

为了浏览器兼容问题,所以需要在css3的一些新的style方法中加前缀
例如:border-radius

-webkit-border-radius//google
-moz-border-radius//foxs
-ms-border-radius//IE
-o-border-radius//Oprea

一、选择器的变化

类似jquery的选择器
新增了属性选择器
位置选择器
伪类选择器

选择器说明
::before在元素里的最前面
::after在元素里的最后面
::selection被选择的元素
::first-line第一行文本
::root元素的根元素

二 、边框与圆角

border-radius圆角边框设置四个值顺序为左上、右上、右下、左下
box-shadow阴影六个值 ,水平阴影、竖直阴影、模糊、扩展(向四周)、颜色、inset(内部模糊)
border-image边框图片六个值 ,文件路径、切分、宽度、扩展、是否重复

三、转换(transform)

-webkit-transform//google
-moz-transform//foxs
-ms-transform//IE
-o-transform//Oprea
  1. 2D转换
方法定义属性说明
transform:rotate(8deg)旋转正数为顺时针,负数为逆时针,deg表示角度
transform:translate(x,y)偏移可分为transform:translateX(x)和transform:translateY(y)
transform:scale(x,y)缩放可分为transform:scaleX(x)和transform:scaleY(y),值不需要单位,是比例
transform:skew(8deg)斜切扭曲正数为逆时针,负数为顺时针,可分为transform:skewX()和transform:skewY(),值为角度
  1. 3D转换
    在这里插入图片描述
方法定义属性说明
transform:rotate3d(x,y,z,角度)旋转x,y,z非0表示该轴参与旋转,否则写0.正数为顺时针,负数为逆时针,deg为角度单位,可分为transform:rotateX(角度)、transform:rotateY(角度)、transform:rotateZ(角度)
transform:translate3d(x,y,z)偏移可分为transform:translateX(x)、transform:translateY(y)和transform:translateZ(z)
transform:scale3d(x,y,z)缩放可分为transform:scaleX(x)、transform:scaleY(y)和transform:scaleZ(z),值不需要单位,是比例
  1. 扩展
方法定义属性说明
transform-style:flat/preserve-3d嵌套元素展现形式默认为flat不互相干涉,preserve-3d会产生嵌套效果
backface-visibility:visible/hidden元素背向用户时是否可见默认visible可见,hidden不可见

四、过渡

在时间区域内平滑的过渡

方法定义属性说明
transition-property:none/all/属性名加过渡效果的属性默认为all,可以写color等属性名
transition-duration:time/0过渡效果的持续时间设置的time值,默认是0
transition-timing-function:很多过渡效果的动画类型ease:平滑过渡;linear:线性过渡;ease-in:由慢到快;ease-out由快到慢;ease-in-out由慢到快到慢
transition-delay:time/0过渡效果的延迟时间设置的time值,默认是0

简写:transition:property duration timing-function delay,其中duration是必需的

五、动画(animation)

手机的浏览器在使用CSS3动画时,要加上webkit前缀

  1. 相关方法
方法定义属性说明
animation-name:none/选择器的关键帧检索或设置对象的动画名称
animation-duration:time/0检索或设置动画的持续时间设置的time值,默认是0
animation-timing-function:很多检索或设置动画的类型ease:平滑过渡;linear:线性过渡;ease-in:由慢到快;ease-out由快到慢;ease-in-out由慢到快到慢
animation-delay:time/0检索或设置动画的延迟时间设置的time值,默认是0
animation-iteration-count:次数/infinite(无限次)检索或设置动画的循环次数默认为1
animation-direction:normal/reverse/alternate/alternate-reverse检索或设置动画在循环中的方向必须先有循环
animation-fill-mode:none/forwords(动画结束时的状态)/backwords(动画开始时的状态)动画未播放时的状态
animation-play-state:paused/running动画暂定或运行默认为running

简写:animation:**name duration** timing-function delay iteration-count direction fill-modeplay-state

  1. 关键帧(@keyframes)
    规定动画:逐步改变一个CSS样式到另一个CSS样式,CSS调用@keyframes来产生动画
@keyframes 帧名{
	动画持续百分比(0-100%){
		css-styles;
	}
}

如果要设置百分比为0时,可以用from表示,为100%时,可以用to表示

  1. 动画优化方法
    (1)position-fixed替代background-attachment
    (2)带图片的内容放在伪元素中
    (3)will-change:提前告诉浏览器元素将要做什么动画,让浏览器准备

六、多列布局

制作分列布局至少需要column-count和column-gap

属性说明
column-count列数
column-gap列之间的间距
column-rule-style定义列之间分割线的风格
column-rule-width分割线宽度
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值