我刚刚发现通过Photoshop将PNG32转换为PNG8将修复IE < = 6中的PNG透明度错误。Passthrough <filname> .png到<filename> 8.png如果IE <= 6和<filename> 8.png存在
所以我有这个想法,而不是为所有浏览器提供PNG32,为什么不提供PNG8,如果客户端使用IE < = 6。
对于htaccess/httpd指令,我不是专家,所以我在这里寻求帮助。
标题是psuedocode本身。在你的.htaccess
我刚刚发现通过Photoshop将PNG32转换为PNG8将修复IE < = 6中的PNG透明度错误。Passthrough <filname> .png到<filename> 8.png如果IE <= 6和<filename> 8.png存在
所以我有这个想法,而不是为所有浏览器提供PNG32,为什么不提供PNG8,如果客户端使用IE < = 6。
对于htaccess/httpd指令,我不是专家,所以我在这里寻求帮助。
标题是psuedocode本身。在你的.htaccess
我还没有真正尝试过这一点,但我认为它应该工作:
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/4.0\ \(compatible;\ MSIE\ [1-6]\.
RewriteCond %{REQUEST_FILENAME} ^(.+)(\.png)$
RewriteCond %18%2 -f
RewriteRule ^(.+)\.png$ $18.png [L,QSA]
第一行开启了mod_rewrite上(如果你已经这样做了,可以省略)。 第二个是IE < = 6过滤器。 第三个主要是分割第四行的文件名,它检查是否存在< filename> 8.png。第五行实际上是重定向。
把这个
RewriteEngine on
RewriteRule ^/(.*)\.png$ /$18.png [L,QSA]
应该工作。
这不检查浏览器版本IE <= 6,是吗? – schnaader 2008-11-11 21:22:10
我知道该指令将some.png转发给some8.png,但它也处理IE浏览器检测。哦,我也忘了检查文件是否存在。 – ken 2008-11-11 21:22:19