透明的GIF帮助

时间:2009-10-06 21:16:37

标签: transparency opacity browser

我有一个网站,我需要制作一些彩色图像,不透明度为45%,这样你就可以看到背景。我的问题是,由于显而易见的原因,我不能使用.png。我用过gif。当我在网站上获得它时,不透明度已经读取了颜色,但你无法看透它。我该如何实现这一目标

修改

如果我不需要,我不想使用IE6黑客。据我所知,没有可扩展的黑客攻击。

7 个答案:

答案 0 :(得分:11)

GIF不支持Alpha透明度。为什么你不能使用PNG这么明显?

PNG适用于所有现代浏览器,而IE6本身不支持Alpha透明度。但是,对于好的'olbernets ..

,有很多可用的修复方法

如果你绝对必须支持“愚蠢的用户”,强迫他们使用Chrome Frame,“我在你的浏览器中使你的浏览器成为另一个更好的浏览器”浏览器。 Chrome Frame是IE的一个插件,可以使用Google的Chromium引擎呈现页面。

答案 1 :(得分:4)

gif只有1位不透明度,你不能有45%

答案 2 :(得分:3)

GIF透明度全部开启或全部关闭。它不支持部分透明度。但PNG确实有部分透明度支持。除非您有特殊要求不使用PNG图像,否则我认为没有理由不使用它们。

答案 3 :(得分:2)

使用透明PNG获取完整的Alpha通道,然后使用GIF的Internet Explorer 6的后备CSS,或者IE6中支持透明PNG的众多解决方法之一(使用{{3的“变通办法”除外) }})

答案 4 :(得分:1)

如上所述,GIF只有1位不透明度,即On或OFF,中间没有任何内容。这与8位PNG相同。

假设您无法使用.PNG的原因是因为您需要退回并使用旧版本的Internet Explorer。毫无疑问,没有好办法让它发挥作用。您可以使用hacks让PNG在IE6中正常工作,但如果您必须支持IE5,那么您就是SOL。

答案 5 :(得分:1)

如果您希望能够将.png与ie6一起使用,则必须阅读本文HERE

答案 6 :(得分:0)

使用不同的透明GIF后,有些不稳定会导致CSS故障。例如,如果你有一个<img>并且你使用最小的透明GIF,那么它可以正常工作,但是,如果你希望你的透明GIF有一个background-image,那么这是不可能的。出于某种原因,某些GIF(例如以下内容)会阻止CSS背景。

短但不稳定

data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

我建议使用稍长且更稳定的版本,如下所示:

稳定但更长

data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7