惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

L
LangChain Blog
B
Blog RSS Feed
阮一峰的网络日志
阮一峰的网络日志
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
H
Help Net Security
MyScale Blog
MyScale Blog
WordPress大学
WordPress大学
Microsoft Azure Blog
Microsoft Azure Blog
GbyAI
GbyAI
小众软件
小众软件
大猫的无限游戏
大猫的无限游戏
Martin Fowler
Martin Fowler
Vercel News
Vercel News
S
SegmentFault 最新的问题
M
MIT News - Artificial intelligence
Microsoft Security Blog
Microsoft Security Blog
G
Google Developers Blog
Last Week in AI
Last Week in AI
Hugging Face - Blog
Hugging Face - Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 【当耐特】
Google DeepMind News
Google DeepMind News
Engineering at Meta
Engineering at Meta
云风的 BLOG
云风的 BLOG

张鑫旭-鑫空间-鑫生活

1分钟速度了解text-align match-parent声明 « 张鑫旭-鑫空间-鑫生活 光标的形状也能设置了,就是CSS caret-shape属性 « 张鑫旭-鑫空间-鑫生活 pretext与文字四面环绕效果的实现 « 张鑫旭-鑫空间-鑫生活 JSON.rawJSON方法的作用是什么? « 张鑫旭-鑫空间-鑫生活 如何使用CSS判断鼠标从哪个方向进入元素? « 张鑫旭-鑫空间-鑫生活 借助mediabunny纯JS实现视频水印、剪裁、合成等功能 « 张鑫旭-鑫空间-鑫生活 务必谨慎使用JS WeakRef弱引用 « 张鑫旭-鑫空间-鑫生活 CSS六边形头像的实现与蜂巢布局 « 张鑫旭-鑫空间-鑫生活 CSS corner-shape与背景底纹技术 « 张鑫旭-鑫空间-鑫生活 浅学WebTransport API:下一代Web双向通信技术 « 张鑫旭-鑫空间-鑫生活 HTML dialog元素新支持了closedBy属性 « 张鑫旭-鑫空间-鑫生活 HTML interestfor属性与悬停popover交互效果 « 张鑫旭-鑫空间-鑫生活 我对CSS vertical-align的一些理解与认识(一) « 张鑫旭-鑫空间-鑫生活 CSS3模拟window7炫酷界面效果展示 « 张鑫旭-鑫空间-鑫生活 图片旋转+剪裁js插件(兼容各浏览器) « 张鑫旭-鑫空间-鑫生活 纯js无图片无外链CSS图片幻灯片播放插件 « 张鑫旭-鑫空间-鑫生活 CSS border三角、圆角图形生成技术简介 « 张鑫旭-鑫空间-鑫生活 CSS “渐进增强”在web制作中常见应用举例 « 张鑫旭-鑫空间-鑫生活 让IE6/IE7/IE8浏览器支持CSS3属性 « 张鑫旭-鑫空间-鑫生活 jQuery – 高亮动态显示页面HTML代码插件 « 张鑫旭-鑫空间-鑫生活 翻译 – 逐渐消失的Flash网站 « 张鑫旭-鑫空间-鑫生活 CSS reset的重新审视 – 避免样式重置 « 张鑫旭-鑫空间-鑫生活 新浪微博插入话题后部分文字选中的js实现 « 张鑫旭-鑫空间-鑫生活 JavaScript实现http地址自动检测并添加URL链接 « 张鑫旭-鑫空间-鑫生活 CSS实现兼容性的渐变背景(gradient)效果 « 张鑫旭-鑫空间-鑫生活 CSS content内容生成技术以及应用 « 张鑫旭-鑫空间-鑫生活 CSS gradient渐变之webkit核心浏览器下的使用 « 张鑫旭-鑫空间-鑫生活 CSS渐变之CSS3 gradient在Firefox3.6下的使用 « 张鑫旭-鑫空间-鑫生活 区分IE8/IE7/IE6及其他浏览器-CSS “\9″hack « 张鑫旭-鑫空间-鑫生活 CSS实现跨浏览器兼容性的盒阴影效果 « 张鑫旭-鑫空间-鑫生活
CSS实现兼容性的渐变、高光等文字效果 « 张鑫旭-鑫空间-鑫生活
张鑫旭,zhangxinxu · 2010-03-12 · via 张鑫旭-鑫空间-鑫生活

by zhangxinxu from http://www.zhangxinxu.com
本文地址:http://www.zhangxinxu.com/wordpress/?p=642

CSS实现文字渐变效果 张鑫旭-鑫空间-鑫生活

一、说点东西诱惑你

对于很多网站的大标题都是有一定的文字效果的,比如渐变就是常用的效果,而这些效果往往都是由世界上最厉害的美容产品photoshop做出来的,一个效果就是一张图片,所以,要是要10个不同的文字标题,可能就要制作十张带有渐变效果的文字图片了。

而实际上,无需使用多张photoshop图片,只要一张小小的图片在配合CSS就能实现各个文字内容的渐变效果。//zxx:其实不止渐变效果哦^_^

本文就将展示如何使用CSS,配合一张小小的图片实现文字的各种上佳的效果,没有JavaScript,没有flash,纯粹的CSS,兼容各个浏览器,Firefox,chrome,Safari,甚至已经被微软做了葬礼的IE6也可以降服。//zxx: IE6在美国出身,在中国养老

二、原理简述

原理概括起来就两个词“覆盖”,用什么覆盖呢?就是一张渐变效果的png图片了,覆盖,平铺就可以了。见下面的原理图(张鑫旭绘制):
CSS实现渐变文字原理图 张鑫旭-鑫空间-鑫生活

上图标签准确来说,应该像下面这样:

<h1><span></span>上海世博会要开始了</h1>

CSS部分的代码与下面的类似:

h1 {
  position: relative;
}
h1 span {
  background: url(test.png) repeat-x;
  position: absolute;
  display: block;
  width: 100%;
  height: 31px;
}

其中h1的中的relative属性起到的更加重要的作用是圈住span绝对定位的100%宽度。

上面的就是代码原型了,您现在的就是发挥您的创造力,制造各类不同的png渐变类型的图片吧。

您可以狠狠地点击这里:CSS与文字特效demo

三、顾及下还在中国悠哉的IE6

想必都知道,含透明半透明的png32的图片在IE6下会有蓝蓝的背景,解决的方法很多,您有兴趣可以看看我之前写的“IE6下png背景不透明问题的综合拓展”,里面非常详细的讲述了各类解决IE6下png背景透明的问题,这里就直接讲讲在CSS中使用滤镜以兼顾下IE6.

代码如下:

* html h1 span{background:none; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='test.png', sizingMethod='scale');}

这里使用了 * html这个还是比较经典的IE6 hack,您所要所得就是把上面代码中的”test.png”想要透明的png图片路径就可以了。

于是可以得到IE6如下的效果:
IE6下的文字效果 张鑫旭-鑫空间-鑫生活

四、一些其他的说明

像这种可平铺的背景图片使用其实是非常自由的,其自由在于“位置”、“大小”及“显示方式”。

首先,关于位置,如果覆盖用的png图片高度足够,我们就能够很自由的改变background的定位,于是我们就能够灵活的控制想要的渐变强度,同时,我们可以根据这一特性实现hover效果。

其次,关于大小,这里大小涉及到两方面,一是图片的大小,还有一个就是现实图片的span标签的大小。前者要放到“显示方式”中讲,我们来说说后者,如果没有设置span高度的制药下面显示文字的一半,猜猜会有什么效果,就是水晶按钮式的水晶效果,很神奇吧,您可以看看下面的截图(来自demo页面):
CSS水晶文字效果 张鑫旭-鑫空间-鑫生活

再者,就是现实方式。在如今的CSS中,图片的存在方式主流的就是两种,一是直接的img标签链接,还有一个就是background-image背景图,本demo中,所有的图片都是在background中显示的,都是背景图,其实完全可以直接使用img标签链接这些图片,我们可以随意的控制这些图片的大小而不用担心会有什么表现上的问题,为什么呢?因为这些都是平铺式图片,一般而言,平铺效果的图片经过在img形式下通过width或height拉伸效果就是一样的。所以,这里,所有的png图片完全可以直接使用img链接,控制也相当方便。

但是也是有局限性的,局限在于,如果要实现类似上面的水晶效果的话,还有在img标签的外面额外添加一个标签,作用是隐藏img超出的部分。

我之前有篇文章(像素的世界及其在web开发制作中的应用)讲像素的世界的概念,意在传达一种就是,就是所有我们眼见的页面效果理论上都可以用CSS模拟出来,就像这里的渐变也是如此,具体不讲,在demo页面最后一例,我就是使用的CSS标签拼合出的一个效果。

五、效果赏析

下面就是使用CSS实现的一些文字效果。

1. 金属质感
金属质感文字效果 张鑫旭-鑫空间-鑫生活

2. 渐变效果
渐变文字效果 张鑫旭-鑫空间-鑫生活

3. 竖纹效果
竖纹文字效果 张鑫旭-鑫空间-鑫生活

4. 横纹效果
横纹文字效果 张鑫旭-鑫空间-鑫生活

5.虎纹效果
虎纹文字效果 张鑫旭-鑫空间-鑫生活

本文为原创文章,转载请注明来自张鑫旭-鑫空间-鑫生活[http://www.zhangxinxu.com]
本文地址:http://www.zhangxinxu.com/wordpress/?p=642

(本篇完)