【CSS3初探之变形与动画】令人惊叹的CSS3

简介:
前言

这个标题比较狗血了,我一直知道CSS3可以做很多事情,但是我昨天看到一个人用CSS3华丽的画了一个太极八卦!

若是这个还可以接受,那么我今天就看见一个人用CSS3画了一个叮当猫!!!我突然就在想,你们究竟要闹哪样,实在太BT了!

我在想我最近几天是不是应该试试呢?虽然我CSS比较水了。。。

CSS3中的变形

在CSS3中,可以利用transform功能来实现文字或者图像的旋转、缩放、倾斜、移动这四种变形处理。

transform基础知识

在CSS3中,通过transform属性来达到功能需求,我们这里来看一个例子:

复制代码
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <style type="text/css">
    div { width: 300px; margin: 150px auto; background-color: Yellow; text-align: center; -webkit-transform: rotate(45deg); 
-moz-transform: rotate(45deg); -o-transform: rotate(45deg); }
    </style>
</head>
<body>
<div>示例文字</div>
</body>
</html>
复制代码


我就喜欢这种怪怪的东西!!!

现在我们再来简单看看transform的其它功能:

transform缩放

使用scale方法来实现文字或者图像的缩放功能,在参数中定义倍率:

复制代码
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <style type="text/css">
    .y { background: url("yexiaochai.jpg"); width: 343px; height: 468px; margin: 50px auto; background-color: Yellow; text-align: center; 
-webkit-transform: scale(0.5); -moz-transform: scale(0.5); -o-transform: scale(0.5); }
    div { background: url("yexiaochai.jpg"); width: 343px; height: 468px; margin: 10px auto 0; background-color: Yellow; text-align: center; float: left;}
    
    </style>
</head>
<body>
<div>示例文字</div>
<div class="y">示例文字</div>
</body>
</html>
复制代码


我们看到了缩放的威力了

倾斜

这个方法用来实现文字或者图片的倾斜,在参数中分别指定水平方向上的倾斜角度,垂直方向上的倾斜角度:

复制代码
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <style type="text/css">
    .y { background: url("yexiaochai.jpg"); width: 343px; height: 468px; margin: 50px auto; background-color: Yellow; text-align: center; 
         -webkit-transform: skew(30deg, 30deg); -moz-transform: skew(30deg, 30deg); -o-transform: skew(30deg, 30deg); }
    div { background: url("yexiaochai.jpg"); width: 343px; height: 468px; margin: 10px auto 0; background-color: Yellow; text-align: center; float: left;}
    
    </style>
</head>
<body>
<div>示例文字</div>
<div class="y">示例文字</div>
</body>
</html>
复制代码


移动

我们现在可以使用transform方法来使图片或者文字移动,在参数上分别指定水平、垂直的距离即可:

复制代码
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <style type="text/css">
    .y { background: url("yexiaochai.jpg"); width: 343px; height: 468px; margin: 50px auto; background-color: Yellow; text-align: center; 
         -webkit-transform: transform(50px, 50px); -moz-transform: transform(50px, 50px); -o-transform: transform(50px, 50px); }
    div { background: url("yexiaochai.jpg"); width: 343px; height: 468px; margin: 10px auto 0; background-color: Yellow; text-align: center; float: left;}
    
    </style>
</head>
<body>
<div>示例文字</div>
<div class="y">示例文字</div>
</body>
</html>
复制代码
这个功能我就感觉意义不大了。。。

总结

CSS3的这个功能提出来还是比较有意义的,比如我们的相册要实现旋转操作便简单多了,然后我们想实现模拟生活中放大镜等功能也会带来其他乐趣。

CSS3中的动画

在CSS3中,如果使用动画功能,可以使页面上的文字或者图像具有动画效果,可以使背景色从一种颜色平滑过渡到另一种颜色!!!非常不错的特性

CSS3中动画功能分为Transitions功能与Animation功能,他们都可以改变CSS中的属性来产生动画效果。

Transitisions支持元素由一种属性平滑过渡到另一个属性,Animations功能支持通过关键帧来指定在页面上产生更复杂的动画效果。

Transitions

transition属性使用方法如下:

transition: property duration timing-function
参数一表示要对哪个属性进行平滑过渡
参数二表示多长时间完成
参数三表示通过什么方法来平滑过渡
复制代码
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <style type="text/css">
    .y {  background-image: url(1.jpg); width: 1340px; height: 900px; text-align: center; 
         -webkit-transition: background-image 3s linear; -moz-transition: background-image 3s ulinear; -o-transition: background-image 3s linear; }
    .y:hover { background-image: url(2.jpg);}
    </style>
</head>
<body>
<div class="y">示例文字</div>
</body>
</html>
复制代码


效果着实不差,但是很多浏览器不支持哟!

多个属性变形
transition缺点:
transition功能实现的动画只能指定属性的开始值以及结束值,不能实现更加复杂的效果,但Animations就可以!

Animations

该功能与transition基本一致,只不过其控制力度更细而已.

复制代码
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <style type="text/css">
    .y {  background-image: url(1.jpg); width: 1340px; height: 900px; text-align: center; }
    @-webkit-keyframes myImg 
    {
        40% { background-image: url(yexiaochai.jpg); }   
        100% { background-image: url(2.jpg); }   
    }
    .y:hover { -webkit-animation: myImg 3s linear; }
    </style>
</head>
<body>
<div class="y">示例文字</div>
</body>
</html>
复制代码


我想说,他闪瞎了我的合金狗眼!!!

最后,让我们用以上功能实现一个我一直想要的功能:

实现网页淡入淡出

复制代码
核心代码
     @-webkit-keyframes fadein 
        {
            0% { opacity: 0; }   
            100% { opacity: 1; }   
        }
        body {  -webkit-animation: fadein 3s linear 2; }
复制代码
完整例子


结语

这两章的知识点非常实用,特别是后面的动画效果,将会带来很好的用户体验!

当然用得好就是酷,用的不好就是花花绿绿很难看了,另外不知道性能问题怎么样了?





本文转自叶小钗博客园博客,原文链接http://www.cnblogs.com/yexiaochai/archive/2013/04/27/3046687.html如需转载请自行联系原作者

相关文章
|
1月前
纯css3实现的百分比渐变进度条加载动画源码
纯css3实现的百分比渐变进度条加载动画特效源码
58 31
|
20天前
|
Web App开发 移动开发 JavaScript
纯CSS3+SVG实现的节日庆祝五彩纸屑动画效果源码
这是一款基于纯CSS3+SVG实现的节日庆祝五彩纸屑动画效果源码。画面中左下角是一个圆锥形礼炮卡通效果,呈现出节日庆祝时礼花爆破、五彩纸屑纷飞的动画特效。整体动画效果采用纯css3+svg实现,没有引入任何外部图形或js脚本元素。建议使用支持HTML5与css3效果较好的火狐(Firefox)或谷歌(Chrome)等浏览器预览本源码。
38 6
|
1月前
|
前端开发 JavaScript UED
CSS滚动效果和视差滚动的原理、应用及其对用户体验的影响。从平滑滚动到元素跟随,再到滚动触发动画
本文探讨了CSS滚动效果和视差滚动的原理、应用及其对用户体验的影响。从平滑滚动到元素跟随,再到滚动触发动画,这些效果增强了页面的吸引力和互动性。视差滚动通过不同层次元素的差异化移动,增加了页面的深度感和沉浸感。文章还讨论了实现方法、性能优化及案例分析,旨在为设计师和开发者提供实用指导。
60 7
|
1月前
CSS3制作的聚光灯下倒影文字选装动画特效源码
CSS3聚光灯下倒影文字特效是一段基于CSS3实现的聚光灯下带倒影的文字旋转动画效果代码,具有真实的视觉感,同时文字还会在旋转过程中显示出灯光的反射效果,很有意思,欢迎对此段代码感兴趣的朋友前来下载使用。
32 6
|
1月前
纯css3加载loading发光变色动画代码
纯css3加载loading发光变色动画特效代码是一款基于css3 keyframes属性实现的发光变色圆点串联旋转loading加载动画
25 2
|
1天前
一个好看的小时钟html+js+css源码
一个好看的小时钟html+js+css源码
64 24
|
4月前
|
前端开发
2s 利用 HTML+css动画实现企业官网效果
2s 利用 HTML+css动画实现企业官网效果
|
1月前
|
前端开发 测试技术 定位技术
如何利用HTML和CSS构建企业级网站的全过程。从项目概述到页面结构设计,再到HTML结构搭建与CSS样式设计,最后实现具体页面并进行优化提升,全面覆盖了网站开发的关键步骤
本文深入介绍了如何利用HTML和CSS构建企业级网站的全过程。从项目概述到页面结构设计,再到HTML结构搭建与CSS样式设计,最后实现具体页面并进行优化提升,全面覆盖了网站开发的关键步骤。通过实例展示了主页、关于我们、产品展示、新闻动态及联系我们等页面的设计与实现,强调了合理布局、美观设计及用户体验的重要性。旨在为企业打造一个既专业又具吸引力的线上平台。
59 7
|
1月前
|
前端开发 JavaScript 搜索推荐
HTML与CSS在Web组件化中的核心作用及前端技术趋势
本文探讨了HTML与CSS在Web组件化中的核心作用及前端技术趋势。从结构定义、语义化到样式封装与布局控制,两者不仅提升了代码复用率和可维护性,还通过响应式设计、动态样式等技术增强了用户体验。面对兼容性、代码复杂度等挑战,文章提出了相应的解决策略,强调了持续创新的重要性,旨在构建高效、灵活的Web应用。
37 6

热门文章

最新文章