CSS3新增的常用方法以及CSS常见属性整理

CSS 用于控制网页的样式和布局,而CSS3 是最新的 CSS 标准。

CSS3的规范仍在开发中,有些CSS3并不能完美兼容所有浏览器。

 

CSS3被拆分为"模块"。旧规范已拆分成小块,还增加了新的。

一些最重要CSS3模块如下:

  选择器  盒模型  背景和边框  文字特效

  2D/3D转换  动画  多列布局  用户界面

CSS3选择器

  添加了关系型选择器、属性选择器、伪元素选择器、伪类选择器等等新的选择器。

    可以更精准的筛选元素。CSS3选择器

CSS3边框

  CSS3中可以为元素创建圆角边框,添加阴影框。

  CSS3圆角

    语法:border-radius: 25px 25px 20px 20px;

     可以拆分为:左上 / 右上 / 右下 / 左下

      border-top-left-radius / border-top-right-radius / border-bottom-left-radius / border-bottom-right-radius

  CSS3盒阴影

    语法:box-shadow: 10px 10px 10px 10px #000;

              X  Y  s    r   color

      可加上inset属性,加上则为内部阴影,没加则为外部阴影

  CSS3图片边框

    语法:border-image: url(  ) 30 30 round;

 

CSS3背景

  css3中包含了新的背景属性,提供更大背景元素控制。

  background-image属性:元素的背景图片

    语法:background-image: url(),url()可连接多个图片地址,如果前一个地址错误或者无法加载,会加载后面的地址。

      也可以为不同的图片设置不同的属性:background-image: url() right bottom no-repeat ,  url() left top repeat;

  backrgound-size属性:元素的背景图片的大小

    语法:background-size: 80px 60px;

  background-Origin属性:可以指定背景图片的位置区域

    语法:background-Origin: padding-box;内填充

                  border-box;边框

                  content-box;内容

  background-clip属性:对图片从指定位置进行裁剪

    语法:background-clip: 值同上;

  在文字中添加背景图:

    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;

CSS3 Flex Box 弹性盒子

  弹性盒子是CSS3的一种新的布局模式

    弹性盒子由弹性容器和弹性子元素组成。

    弹性容器内包含了一个或多个弹性子元素。

  用法:

    display:flex;     //inline-flex

    flex-direction: row | row-reverse / column | column-reverse

          主轴以x为准,|取反  主轴以y为准,|取反

    flex-wrap: 默认no-wrap不换行,会压缩;

        wrap换行  warp反向换行排列

    justify-content: flex-start / flex-end / center / space-between / space-around

        基于主轴的对齐方式

    基于交叉轴的对齐方式:

    适用于单行的:align-items:flex-start / flex-end / center / baseline / stretch

    适用于多行的:align-content:flex-start / flex-end / center / space-between / space-around / stretch

      如果只有一行是没有区别的

    order: flex中子项排序,数值小的排序在前。

    align-self :项目在交叉轴的对齐方式:

          flex-start交叉轴最顶  flex-end最底

          center  baseline  stretch  比前两者优先级更高。

    flex: 子项,以下控制宽

      flex-grow : ; 伸,会按照写的比例来瓜分剩下的空间,写在多个标签内会一起计算比例,不写默认值为0

      flex-shrink : ; 缩,按照比例缩小按比例分配的值

      flex-basis : ;基础宽,可以认为即width。最小宽度,width为最大宽度。

      以加权值来计算,在容器宽不足以容纳子项,以每个项目的宽*比例值相加后,按照比例缩小。

 

  CSS的过渡属性  transition  只要状态发生改变,就会触发过渡

      transition-property--规定设置过渡效果的 CSS 属性的名称。all 为全部属性

      transition-duration--规定完成过渡效果需要多少秒或毫秒。

      transition-timing-function--规定速度效果的速度曲线。

      transition-delay--定义过渡效果何时开始。

  CSS的动画属性  animation  必须使用@keyframes

      @keyframes--定义关键帧动画,名字随便取,调用的时候用这个名字即可

      animation-name--动画的名字,必须与@keyframes配合使用

      animation-duration--动画的时间,从0 - 100 的时间

      animation-timing-function--动画的方法:

steps(<integer>[, [ start | end ] ]?)
        step-start:等同于 steps(1, start)
        step-end:等同于 steps(1, end)
cubic-bezier(<number>, <number>, <number>, <number>)

      animation-delay--动画的延迟时间,默认值是0s

      animation-iteration-count--动画的循环次数,默认值是一次infinite:无限循环

      animation-direction--必须建立在循环的基础之上的

normal:正常方向
reverse:反方向运行
alternate:动画先正常运行再反方向运行,并持续交替运行
alternate-reverse:动画先反运行再正方向运行,并持续交替运行

  CSS转换属性  transform  3D转换中元素移动坐标轴也会移动

      CSS3 转换可以可以对元素进行移动、缩放、转动、拉长或拉伸。

    rotate旋转

      rotateX()  rotateY()  rotateZ()  rotate3d(x,y,z,deg)

        元素的旋转,旋转以后,元素的坐标轴也跟着发生了旋转,所以会导致先转和后转的结果会不一样

    scale伸缩

      scale()  scelex()  scaley()  scelez()  scale3d(x,y,z)

        当你图片伸缩的时候,是伸缩的空间坐标轴,并不是图片的大小,造成了一个视觉差的效果

    skew倾斜

      skewx()  skewy()

        倾斜是倾斜坐标轴,并且会将坐标轴进行拉伸

    translate移动

      translatex()  transelatey()  translatez()  translate3d(x,y,z)

        相对于元素本身发生的偏移

 

posted on 2019-07-25 17:07  HYhan  阅读(303)  评论(0编辑  收藏  举报

导航