如何利用CSS3制作3D效果文字具体实现样式


Posted in HTML / CSS onMay 02, 2013

下面这篇教程是教你如何用CSS3来制作3D效果的文字,文章翻译自3D CSS Shadow Text Tutorial。

如何利用CSS3制作3D效果文字具体实现样式


这个简单的CSS文本阴影教程将一步步教你如何通过堆叠多层阴影来创建3D文字,然后进一步利用CSS3的transform和transition属性来实现鼠标移过字体放大的效果。请注意,这个3D文字效果是用纯CSS的,没有用Javascript,并且需要用支持CSS3的浏览器才能看出效果,如firefox、chrome、safari和opera。
CSS文字阴影是如何实现的
为了实现3D的文字效果,我们将会利用CSS3的text-shadow属性,text-shadow的工作原理如下:
复制代码
代码如下:

.example-class
{
text-shadow: [X offset] [Y offset] [Blur size] [Colour];
}

译者注:X表示x轴上的位移,可为负值;Y表示y轴上的位移,可为负值;Blur表示投影的宽度,不能为负值;Color为投影的颜色。
堆叠多层CSS投影
虽然我们没有必要堆叠多层投影,但通过堆叠多层投影会有更好的3D效果

如何利用CSS3制作3D效果文字具体实现样式

开始创建3D文字
你可能会选择比文字更深的颜色来作为投影的颜色,所以这个例子中我就用白色的文字,用深一点的灰色作为投影颜色,这个例子中我将H2的文字渲染3D效果,css代码如下:
复制代码
代码如下:

h2
{
text-shadow:
1px 1px 0 #CCC,
2px 2px 0 #CCC, /* end of 2 level deep grey shadow */
3px 3px 0 #444,
4px 4px 0 #444,
5px 5px 0 #444,
6px 6px 0 #444; /* end of 4 level deep dark shadow */
}

效果如下:

如何利用CSS3制作3D效果文字具体实现样式


好了,到这里你已经创建了基本的3D文字,然而,让我们进一步来实现鼠标滑过的文字放大效果,并用css的transision属性实现圆滑的淡入淡出效果。
首先用transform属性实现滑过字体放大
复制代码
代码如下:

h2:hover
{
/* CSS3 Transform Effect */
-webkit-transform: scale(1.2); /* Safari & Chrome */
-moz-transform: scale(1.2); /* Firefox */
-o-transform: scale(1.2); /* Opera */
}

效果如下:

如何利用CSS3制作3D效果文字具体实现样式

然后利用transition属性实现淡入淡出效果

复制代码
代码如下:

h2
{
/* CSS3 Transition Effect */
-webkit-transition: all 0.12s ease-out; /* Safari & Chrome */
-moz-transition: all 0.12s ease-out; /* Firefox */
-o-transition: all 0.12s ease-out; /* Opera */
}

到此,我们就用CSS3实现了3D效果的文字,并且在鼠标滑过是让字体放大,且有淡入淡出的效果,这一切是用纯CSS实现的哦。
下面是这个例子的DEMO,一起看看
D CSS TEXT
WITH ‘ZOOM’
HTML / CSS 相关文章推荐
CSS3 三维变形实现立体方块特效源码
Dec 15 HTML / CSS
基于css3实现漂亮便签样式
Mar 18 HTML / CSS
CSS图片翻转动画技术详解(IE也实现了)
Apr 03 HTML / CSS
支持IE8的纯css3开发的响应式设计动画菜单教程
Nov 05 HTML / CSS
浅析CSS3中鲜为人知的属性:-webkit-tap-highlight-color
Jan 12 HTML / CSS
CSS3 transition 实现通知消息轮播条
Oct 14 HTML / CSS
HTML5 和小程序实现拍照图片旋转、压缩和上传功能
Oct 08 HTML / CSS
HTML5 Canvas 破碎重组的视频特效的示例代码
Sep 24 HTML / CSS
用HTML5实现手机摇一摇的功能的教程
Oct 30 HTML / CSS
使用HTML5里的classList操作CSS类
Jun 28 HTML / CSS
html如何对span设置宽度
Oct 30 HTML / CSS
浅谈CSS不规则边框的生成方案
May 25 HTML / CSS
使用JS+CSS3技术:让你的名字动起来
Apr 27 #HTML / CSS
CSS3 绘制BMW logo实的现代码
Apr 25 #HTML / CSS
纯HTML+CSS3制作导航菜单(附源码)
Apr 24 #HTML / CSS
Css3+Js制作漂亮时钟(附源码)
Apr 24 #HTML / CSS
CSS3盒子模型详解
Apr 24 #HTML / CSS
CSS3盒子模型详解
Apr 24 #HTML / CSS
css3闪亮进度条效果实现思路及代码
Apr 17 #HTML / CSS
You might like
一条久听不愿放下的DIY森海MX500,三言两语话神奇
2021/03/02 无线电
Discuz 5.0 中读取纯真IP数据库函数分析
2007/03/16 PHP
测试PHP连接MYSQL成功与否的代码
2013/08/16 PHP
Javascript中的常见排序算法
2007/03/27 Javascript
类之Prototype.js学习
2007/06/13 Javascript
JavaScript 设计模式之组合模式解析
2010/04/09 Javascript
动态创建样式表在各浏览器中的差异测试代码
2011/09/13 Javascript
JQuery Highcharts 动态生成图表的方法
2013/11/15 Javascript
JavaScript类型系统之布尔Boolean类型详解
2016/06/26 Javascript
webpack配置的最佳实践分享
2017/04/21 Javascript
vue移动端路由切换实例分析
2018/05/14 Javascript
学习RxJS之JavaScript框架Cycle.js
2019/06/17 Javascript
JS实现的排列组合算法示例
2019/07/16 Javascript
vue使用代理解决请求跨域问题详解
2019/07/24 Javascript
浅谈layui数据表格判断问题(加入表单元素),设置单元格样式
2019/10/26 Javascript
vue element table中自定义一些input的验证操作
2020/07/18 Javascript
vue+iview框架实现左侧动态菜单功能的示例代码
2020/07/23 Javascript
js编写简易的计算器
2020/07/29 Javascript
[52:29]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#3Secret VS OG第三局
2016/03/03 DOTA
详解字典树Trie结构及其Python代码实现
2016/06/03 Python
Python实现按特定格式对文件进行读写的方法示例
2017/11/30 Python
同时安装Python2 & Python3 cmd下版本自由选择的方法
2017/12/09 Python
Windows环境下python环境安装使用图文教程
2018/03/13 Python
python 并发编程 阻塞IO模型原理解析
2019/08/20 Python
django商品分类及商品数据建模实例详解
2020/01/03 Python
踩坑:pytorch中eval模式下结果远差于train模式介绍
2020/06/23 Python
css3.0 图形构成实例练习二
2013/03/19 HTML / CSS
HTML5 File接口在web页面上使用文件下载
2017/02/27 HTML / CSS
房地产员工找工作的自我评价
2013/11/15 职场文书
电信专业毕业生推荐信
2013/11/18 职场文书
劳动竞赛活动总结
2014/05/05 职场文书
体育教育毕业生自荐信
2014/06/29 职场文书
500字作文之周记
2019/12/13 职场文书
Html5大屏数据可视化开发的实现
2021/06/11 HTML / CSS
openstack云计算keystone组件工作介绍
2022/04/20 Servers
Mysql表数据比较大情况下修改添加字段的方法实例
2022/06/28 MySQL