如何利用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 11 HTML / CSS
CSS3悬停效果案例应用
Nov 21 HTML / CSS
使用CSS3来制作消息提醒框
Jul 12 HTML / CSS
HTML5 Plus 实现手机APP拍照或相册选择图片上传功能
Jul 13 HTML / CSS
使用HTML5的File实现base64和图片的互转
Aug 01 HTML / CSS
HTML5移动端开发中的Viewport标签及相关CSS用法解析
Apr 15 HTML / CSS
微信html5页面调用第三方位置导航的示例
Mar 14 HTML / CSS
canvas线条的属性详解
Mar 27 HTML / CSS
canvas拼图功能实现代码示例
Nov 21 HTML / CSS
canvas绘制树形结构可视图形的实现
Apr 03 HTML / CSS
HTML5 通过Vedio标签实现视频循环播放的示例代码
Aug 05 HTML / CSS
html5实现点击弹出图片功能
Jul 16 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
php chr() ord()中文截取乱码问题解决方法
2008/09/08 PHP
配置php网页显示各种语法错误
2013/09/23 PHP
PHP+MYSQL会员系统的开发实例教程
2014/08/23 PHP
php制作的简单验证码识别代码
2016/01/26 PHP
PHP中读取文件的几个方法总结(推荐)
2016/06/03 PHP
PHP中include()与require()的区别说明
2017/02/14 PHP
laravel如何开启跨域功能示例详解
2017/08/31 PHP
php实现的三个常用加密解密功能函数示例
2017/11/06 PHP
PHP实现数组根据某个单元字段排序操作示例
2018/08/01 PHP
收藏Javascript中常用的55个经典技巧
2007/08/12 Javascript
JQuery 1.4 中的Ajax问题
2010/01/23 Javascript
javascript多种数据类型表格排序代码分析
2010/09/11 Javascript
JS比较2个日期间隔的示例代码
2014/04/15 Javascript
jquery使用正则表达式验证email地址的方法
2015/01/22 Javascript
javascript截取字符串小结
2015/04/28 Javascript
vue :src 文件路径错误问题的解决方法
2018/05/15 Javascript
解决vant框架做H5时踩过的坑(下拉刷新、上拉加载等)
2020/11/11 Javascript
vue3.0实现插件封装
2020/12/14 Vue.js
[15:23]教你分分钟做大人:虚空假面
2014/10/30 DOTA
[06:14]《辉夜杯》外卡赛附加赛 4支战队巡礼
2015/10/23 DOTA
Python写的一个简单监控系统
2015/06/19 Python
Python实现快速排序和插入排序算法及自定义排序的示例
2016/02/16 Python
python append、extend与insert的区别
2016/10/13 Python
django定期执行任务(实例讲解)
2017/11/03 Python
shell命令行,一键创建 python 模板文件脚本方法
2018/03/20 Python
Sanic框架配置操作分析
2018/07/17 Python
解决Python3 抓取微信账单信息问题
2019/07/19 Python
Django 实现前端图片压缩功能的方法
2019/08/07 Python
Django中使用MySQL5.5的教程
2019/12/18 Python
Python模块相关知识点小结
2020/03/09 Python
极简鞋类,赤脚的感觉:Lems Shoes
2019/08/06 全球购物
中学生爱国演讲稿
2013/12/31 职场文书
中国梦我的梦演讲稿
2014/04/23 职场文书
副校长竞聘演讲稿
2014/09/01 职场文书
外出考察学习心得体会
2016/01/18 职场文书
python 办公自动化——基于pyqt5和openpyxl统计符合要求的名单
2021/05/25 Python