小议关于png图片显示及小字体的问题
Published by 桃大, at 22:45 Jul.1.2008, under Daily, Front, views 3028位png相对同样颜色数的gif来说所占的字节数要少些,而且各主流browser对png8图片的显示也无异常,所以平时做sprites的时候喜欢切片后存为8位的png格式。
最近做个性定制产品的时候确认了在做猪八戒主站过程中碰到的png图片在IE和Firefox中的显示问题。撇开带alpha通道透明的png不谈,其他的png8和png24图片的色彩在IE上的显示比在FF上的显示出的暗。所以在做含有过渡色顶部背景平铺的时候可以对ie单独定义背景颜色,不然就把背景处理成jpg格式,若处理为gif格式很难避免出现色带的情况。
一个关于字体定义的问题困惑了很久。
一般情况下11px及以下的英文字体看起来比较秀气好看,在IE中这样设置没有什么问题同时也不影响中文字体的显示,不过在FF下小于12px的汉字显示出来就比较难看了。
以前只是习惯使用Maxthon,因为网站大部分用户都是IE6,所以平时写css的时候基本是ie6环境,若有问题再对ie7、ff、opera、safari做单独处理。Firefox3发布后开始强迫自己摒弃Maxthon,好在淘了几天ff扩展之后总算把以前的使用习惯延续下来。每天大部分时间在用ff,打开自己的blog看着12px的英文字母终归是不舒服。
暂有两个办法可以平衡一下心里的不爽:
其一,12px的英文字体“Lucida Sans Unicode”混在网页中与汉字一起显示的效果较Arial、Tahoma、Verdana等字体要秀气、精小些,基本能让我80%满意,几大浏览器的显示效果差不多,只是觉得使用了truetype后的效果要稍逊一些;
其二,使用明体,比如font:11px Verdana,Arial,PMingLiu ,要把PMingLiu写在最后。这样的话,英文会以11px显示,在Firefox中汉字会显示为11px的PMingLiu字体,IE中的汉字仍以默认的12px宋体显示。不过对字体设置11px后还要使用“Lucida Sans Unicode”的话,在IE中汉字会显示为13px,原因未知。
权衡一下,貌似第一种办法要讨我喜欢些,因为本人比较喜欢Lucida Sans Unicode。唯一的麻烦是网站访客的电脑中可能并未安装这个字体,我也是从safari里面揪出来的,若一定要我设置什么字体,访客就显示出什么字体,那就得花一点时间使用 EOT网页字体嵌入技术 了。
by: 桃大(老W)