如何利用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背景图片透明叠加属性cross-fade简介及用法实例
Jan 08 HTML / CSS
css3动画事件—webkitAnimationEnd与计时器time事件
Jan 31 HTML / CSS
纯CSS实现聊天框小尖角、气泡效果
Apr 04 HTML / CSS
基于HTML5超酷摄像头(HTML5 webcam)拍照功能实现代码
Dec 13 HTML / CSS
html5指南-2.如何操作document metadata
Jan 07 HTML / CSS
html5 更新图片颜色示例代码
Jul 29 HTML / CSS
HTML5中meta属性的使用方法
Feb 29 HTML / CSS
浅谈HTML5新增和废弃的标签
Apr 28 HTML / CSS
如何给HTML标签中的文本设置修饰线
Nov 18 HTML / CSS
如何使用amaze ui的分页样式封装一个通用的JS分页控件
Aug 21 HTML / CSS
HTML+CSS制作心跳特效的实现
May 26 HTML / CSS
HTML页面点击按钮关闭页面的多种方式
Dec 24 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截取汉字乱码问题解决方法mb_substr函数的应用
2008/03/30 PHP
php读取mssql的ntext字段返回值为空的解决方法
2014/12/30 PHP
javascript让setInteval里的函数参数中的this指向特定的对象
2010/01/31 Javascript
jQuery hover 延时器实现代码
2011/03/12 Javascript
如何在一个页面显示多个百度地图
2013/04/07 Javascript
JS和JQ的event对象区别分析
2014/11/24 Javascript
jQuery定义插件的方法
2015/12/18 Javascript
js Canvas实现圆形时钟教程
2016/09/19 Javascript
javascript动画之磁性吸附效果篇
2016/12/09 Javascript
详解能在多种前端框架下使用的表格控件
2017/01/11 Javascript
详解vue-cli快速构建项目以及引入bootstrap、jq
2017/05/26 Javascript
layui 给数据表格加序号的方法
2018/08/20 Javascript
ES6知识点整理之函数数组参数的默认值及其解构应用示例
2019/04/17 Javascript
JS如何把字符串转换成json
2020/02/21 Javascript
[59:08]DOTA2上海特级锦标赛C组小组赛#2 LGD VS Newbee第一局
2016/02/27 DOTA
[01:50]《我与DAC》之玩家:iG夺冠时的那面红旗
2018/03/29 DOTA
Python 异常处理实例详解
2014/03/12 Python
Python中的并发编程实例
2014/07/07 Python
python3图片文件批量重命名处理
2019/10/31 Python
基于Python绘制美观动态圆环图、饼图
2020/06/03 Python
django haystack实现全文检索的示例代码
2020/06/24 Python
keras在构建LSTM模型时对变长序列的处理操作
2020/06/29 Python
Python中pass的作用与使用教程
2020/11/13 Python
python中子类与父类的关系基础知识点
2021/02/02 Python
Python基于爬虫实现全网搜索并下载音乐
2021/02/14 Python
HTML5 画布canvas使用方法
2016/03/18 HTML / CSS
如何在Canvas中添加事件的方法示例
2019/05/21 HTML / CSS
NFL加拿大官方网上商店:NHLShop.ca
2019/03/12 全球购物
实习心得体会
2014/01/02 职场文书
幼儿园儿童节主持词
2014/03/21 职场文书
《假如》教学反思
2014/04/17 职场文书
业务员岗位职责
2015/02/03 职场文书
餐厅服务员岗位职责
2015/02/09 职场文书
本地通过nginx配置反向代理的全过程记录
2021/03/31 Servers
MySQL 慢查询日志深入理解
2021/04/22 MySQL
世界十大儿童漫画书排名,法国国宝漫画排第五,第二是轰动日本连环
2022/03/18 欧美动漫