如何利用CSS3制作3D效果文字具体实现样式
程序员文章站
2023-11-15 12:12:52
下面这篇教程是教你如何用CSS3来制作3D效果的文字,且在鼠标滑过是让字体放大,且有淡入淡出的效果,这一切是用纯CSS实现的哦... 13-05-02...
下面这篇教程是教你如何用css3来制作3d效果的文字,文章翻译自3d css shadow text tutorial。
这个简单的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效果
开始创建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 */
}
效果如下:
好了,到这里你已经创建了基本的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 */
}
效果如下:
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’
这个简单的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效果
开始创建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 */
}
效果如下:
好了,到这里你已经创建了基本的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 */
}
效果如下:
然后利用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’