CSS3都有哪些新特性呢?

html-css011

CSS3都有哪些新特性呢?,第1张

第 1 选择器

第 2 RGBA和透明度

第 3 多栏布局

第 4 多背景图

第 5 Word Wrap

第 6 文字阴影

第 7 @font-face属性

第 8 圆角(边框半径)

第 9 边框图片

第 10 盒阴影

第 11 盒子大小

第 12 媒体查询

第 13 语音

扩展资料:

工作原理

CSS3原理同CSS,是在网页中自定义样式表的选择符,然后在网页中大量引用这些选择符[29]。

新增特性中transform的原理较为特殊,虽然使用位移函数translate()、缩放函数scale()、旋转函数rotate()和倾斜函数skew()可以简单地实现变形,但是变形中的矩阵函数都可以使用matrix()函数来代替。

新增特性

CSS3的新特征有很多,例如圆角效果、图形化边界、块阴影与文字阴影、使用RGBA实现透明效果、渐变效果、使用@Font-Face实现定制字体、多背景图、文字或图像的变形处理(旋转、缩放、倾斜、移动)、多栏布局、媒体查询等。

参考资料:百度百科-css3

在 CSS3 出现之前,动画都是通过 JavaScript 动态的改变元素的样式属性来完成了,这种方式虽然能够实现动画,但是在性能上存在一些问题。CSS3 的出现,让动画变得更加容易,性能也更加好。

CSS3 中有三个关于动画的样式属性 transform 、 transition 和 animation ;

transform 可以用来设置元素的形状改变,主要有以下几种变形: rotate (旋转)、 scale (缩放)、 skew (扭曲)、 translate (移动)和 matrix (矩阵变形),语法如下:

none 表示不做变换; <transform-function>表示一个或多个变化函数,变化函数由函数名和参数组成,参数包含在 () 里面,用 空格 分开,例如:

所有的变形都是基于基点,基点默认为元素的中心点。用法: transform-origin: (x, y) ,其中 x 和 y 的值可以是百分比、rem 或者是 px 等等,也可以用表示位置的单词来表示例如:x 可以用 left 、 center 、 right ;y 可以用 top 、 center 、 bottom 。

用法: rotate(<angle>) ;表示通过指定的角度对元素进行旋转变形,如果是正数则顺时针旋转,如果是负数则逆时针旋转,例如:

它有三种用法: scale(<number>[, <number>]) 、 scaleX(<number>) 和 scaleY(<number>) ;分别代表水平和垂直方向同时缩放、水平方向的缩放以及垂直方向的缩放,入参代表水平或者垂直方向的缩放比例。缩放比例如果大于1则放大,反之则缩小,如果等于1代表原始大小。

移动也分三种情况: translate(<translation-value>[, <translation-value>]) 、 translateX(<translation-value>) 和 translateY(<translation-value>) ;分别代表水平和垂直的移动、水平方向的移动以及垂直方向同时移动,移动单位是 CSS 中的长度单位: px 、 rem 等

扭曲同样也有三种情况, skew(<angle>[, <angle>]) 、 skewX(<angle>) 和 skewY(<angle>) ;同样也是水平和垂直方向同时扭曲、水平方向的扭曲以及垂直方向的扭曲,单位为角度。

矩阵变形相对来说非常复杂,涉及到数学中的矩阵计算,有兴趣的同学可以研究一下: CSS3 Transform Matrix

transition 是用来设置样式的属性值是如何从从一种状态变平滑过渡到另外一种状态,它有四个属性:

它是用来设置哪些属性的改变会有这种平滑过渡的效果,主要有以下值:

它是用来设置转换过程的持续时间,单位是 s 或者 ms ,默认值为0;

它是来设置过渡效果的速率,它有6种形式的速率:

它是来设置过渡动画开始执行的时间,单位是 s 或者 ms ,默认值为0;

它是 transition-property 、 transition-duration 、 transition-timing-function 、 transition-delay 的简写:

animation 比较类似于 flash 中的 逐帧动画 ,逐帧动画就像电影的播放一样,表现非常细腻并且有非常大的灵活性。然而 transition 只是指定了开始和结束态,整个动画的过程也是由特定的函数控制。学习过 flash 的同学知道,这种逐帧动画是由 关键帧 组成,很多个关键帧连续的播放就组成了动画,在 CSS3 中是由属性 keyframes 来完成逐帧动画的。

它是用来设置动画的名称,可以同时赋值多个动画名称,用 , 隔开:

它是用来设置动画的持续时间,单位为 s ,默认值为 0 :

和 transition-timing-function 类似:

它是来设置动画的开始时间,单位是 s 或者 ms ,默认值为0:

它是来设置动画循环的次数,默认为 1 , infinite 为无限次数的循环:

它是来设置动画播放的方向,默认值为 normal 表示向前播放, alternate 代表动画播放在第偶数次向前播放,第奇数次向反方向播放:

它主要是来控制动画的播放状态: running 代表播放,而 paused 代表停止播放, running 为默认值:

它是 animation-name 、 animation-duration 、 animation-timing-function 、 animation-delay 、 animation-iteration-count 、 animation-direction 的简写:

关于 CSS3 的动画的三个属性 transform 、 transition 、 animation 我们都介绍完了,让我们回顾一下。 transform 我们可以理解为元素的几何变形,它是有规律可寻的,这种变形并不会产生动画效果仅仅是原有形状的改变; transition 和 animation 它们很像 flash 中的 补间动画 逐帧动画 ; transition 是从一个状态变化到另外一种状态,当变化有了平滑的效果后就产生了动画,它是一个公式化的变化,在比较规则的动画效果中我们可以使用,例如:旋转的风车、行驶的汽车、颜色的渐变等等; animation 的动画效果更加灵活,可以实现像影片一样的复杂无规则的动画。

HTML5是目前非常主流的web前端开发技术,使用html5我们可以非常快速的完成一个pc端或移动端web应用的开发。《web开发技术》通过基础知识、中小实例、综合案例的方式,介绍了用HTML5+CSS3设计构建网站的必备知识,是从事网页制作、网站建设、web前端开发和移动端网站开发,甚至web app开发的人们必备的专业技能。 通过本课程的学习,学生首先要掌握html5的新增常用标记及其属性、如html5机构化标记、画图标记、多媒体标记、表单标记等。其次,需要进一步了解css3新增的知识点,包括Css3选择器、控制文本、边框、背景、动画、过渡、转换即用户界面设计等。最后,在html5和css3新增内容的基础上,进一步利用html5架构及css3样式的综合应用完成移动端实战项目案例开发,在开发过程中注重案例结构分析及移动端开发特点的经验总结。 课程内容共十二章。第一章主要介绍html5的发展、新标准及新特性,使大家对html5有个初步的了解。第二章至第五章主要介绍html5新增元素及其应用实例,包括html5新增文档结构标签、新增视音频标签、新增表单元素及属性、canvas画图等,这些新增的标签是html5的核心内容,也是本课程的重点知识内容。通过新增元素我们可以掌握如果利用新标准来构建网页结构以及如何结合js相关的api来实现一些web应用的简单控制,如控制视频、音频的播放或暂停,绘制动画等。第六章将简单介绍css3,css3是样式表的最新版本,在这一章我们重点介绍css3的一些新特性。第七章是css3选择器的介绍,css3的一个突出特点就是选择器的扩展,可以实现更简单但是更强大的功能。CSS3是CSS技术的升级版本,CSS3语言开发是朝着模块化发展的,这些模块包括:背景和边框、文字特效、多栏布局、用户界面、过渡特性、动画、转换等,在第八章至第十一章,将对这些模块进行逐步讲解,这部分所有的内容都是css3的重点内容,虽然难度有所增加但你会发现这部分内容是非常有趣的,几行样式代码就能实现一个网页动画,这部分内容还不值得你期待吗?在最后一张,我们进入项目实战阶段,这里我们介绍两个经典的项目案例,第一个项目是利用html5和css3重构携程网手机端界面,第二个案例是马蜂窝手机端界面。在项目当中,贯穿介绍移动端的一些技术开发特点,如响应式自适应布局、网站规划等,希望可以通过项目实战的分析,提高我们的web开发综合应用能力。