这年头,啥都讲求个性化,你要是没个性,都不好意思跟人打招呼!favicon.ico就是个性化需求的产物之一吧,可是就这么一个小小的“玩意”,却有时候把我们这些搞WEB的人折腾的死去活来555~~下辈子一定不搞WEB了……
说说我的抓狂经历吧。
按客户的要求,要把他们公司logo做成可以在IE7地址栏、选项卡、收藏夹这三个地方显示的图标。原本以为这是很小很小的一件事,没想到却大大出乎我的意料。
首先,怎么制作这个ico格式的图标。主流的做图软件似乎都不支持这种格式,比如PhotoShop,Fireworks,于是箍狗之,找到一大陀图标制作软件,十有八九都是共享软件,没交钱不让另存,终于试出来一个可以用的。因为ICO是多帧的,一个文件里面包含一系列尺寸和颜色深度的图标单元,俺按照windows里面的ICO给它来个大餐,分48*48、32*32、24*24、16*16共4种尺寸和32位色、24位色、256色,总共是12个帧。
然后,在网页上加代码<link href="http://www.***.com/favicon.ico" rel="shortcut icon">,图标文件和网页都传上去了,刷新试试,很遗憾,IE还是给我一个“e”,关IE重新开,还是“e”,删缓存关IE再重开,还是“e”,我汗了。跑到firefox去试,可以显示图标呀,什么世道啊。于是再箍狗之,有人曰IE的favicon必须是256色或16色的16*16尺寸的ico,于是乎,又重新做了图标,删掉其它尺寸的帧后,ico文件由40多k变成2k了。
再上传,再刷新,……………………“e”…………我日啊!关IE重新开,还是“e”,删缓存关IE再重开,还是“e”,我汗了。
现在,到底是IE的问题,还是图标的问题,还是网页的问题?
网页在Firefox下能正常显示图标,我就很怀疑是不是IE设置的问题,俺看到收藏夹里面有几个收藏项是有图标的,可是也有好些有图标的网站它也不显示图标,摆渡熊掌能显示,新浪眼睛就不显示,搞什么飞机嘛。
俺把IE7的安全选项、加载项一条一条看过去,没有什么可疑的。后来想想,在高级选项里面看看吧,终于发现一个看似很相关的选项“使用个性化收藏夹”,记忆中,这个选项的功能是把不常用的收藏夹项目隐藏起来,不过也许跟图标问题有关,给它启用吧。这么折腾一下,然后删缓存重启IE,新浪眼睛也可以出来了,可是俺的网站还是“e”!
那再看看是不是我制作的图标的问题呢?
我把新浪的眼睛放到我的站点上,刷新,“e”!看来,不是图标的问题。
那就是说,网页很可疑了喔!
网页代码仔细看看,比较了网易和新浪的代码之后,我猜是不是因为那个神秘的DOCTYPE在作怪呢?
于是乎,改DOCTYPE,什么<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">,<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">,……,试了好几个还是不顶用。
再箍狗,没找到什么有建设性的发现。
再摆渡,也失望而归。
俺想,估计老外比较有路子,那就上英文雅虎和英文箍狗搜吧,搜IE7,favicon,密密麻麻的E文,经过一翻努力,最终也没有找到能解决问题的路子,老外们也在犯愁呢。
再瞪大眼睛仔细看代码,发现一个差异,那就是俺的LINK后面是>而不是 />,莫非是这个原因?加上再试,还是不显示啊,我日我日我日啊!!!
为什么无论改哪一种firefox都能显示,IE就不给face呢?
夜深了,睡觉,不管了。
早上醒了,太阳老高了,肚子有点儿饿,宿舍没东西吃,物质粮食没有,只能加强精神粮食啦,那还用说,开机上网呗。
打开IE,啥?!俺揉了揉眼睛,没错,那个那个梦寐以求的图标,赫然就在链接栏上显示着么!(为了便于打开,将它收藏在链接栏上了)……好晕啊!为什么昨天不显示??难道网页这么个改动还要重启我的电脑?
其实网上也有很多人提问说IE6里面显示的个性化收藏夹图标在升级到IE7后显示不了了。
虽然问题解决了,但是我还是很恼火!很窝火!
经过此次的教训,总结出favicon.ico的几个穴位:
①IE7高级选项“使用个性化收藏夹”要启用。
②图标要256色或16色的16*16尺寸ico文件。
③<link href="http://www.***.com/favicon.ico" rel="shortcut icon" />这个后面要斜杠关闭,无论你是否使用了不严格的DOCTYPE。
④IE要删缓存。
⑤刷新。加收藏。
⑥经过以上5步,运气好就成了,多数情况这个时候还是不显示图标,那就再来一步,重启IE。
⑦如果你很倒霉,以上6步都还不成,那就重启电脑吧。
这样7步之后,一般就可以显示那个图标了。
啥,如果还不显示,那……………………估计是很严重的RPWT!
本人这次经历了:汗、再汗、狂汗、阿富汗、成吉思汗等不同抓狂阶段,希望大家比我好运!