查看文章 |
MIME类型导致css在Firefox下无效
2010-01-29 19:43
这是因为/etc/mime.types文件中没有css的定义(httpd.conf文件中要引用该文件) 可以在/etc/mime.types 或者httpd/conf/httpd.conf中加上 AddType text/css .css 然后重启httpd服务,别忘了把浏览器的高速缓存也清空。 下面是转载文章 MIME类型导致css在Firefox下无效 关键字: mime,css失效 最近十分郁闷,原因是Firefox出问题了,无法正确的载入CSS,CSS完全失效,让我无法测试很多东西。 查看CSS路径,完全是正确的,也是用的标准的<link rel="stylesheet" type="text/css" href="XXX" />的写法。但是在我公司的服务器上老是有问题,页面看起来像是CSS完全失效了,而IE、Safari之类的则是完全正常,静态页面在本地是好的,就是改为动态页面放在服务器后,在ff下就有问题啦。 在网上google了一把,发现有位叫虾米 朋友也碰到这个问题,他想到:“Apache也有MIME设置,CSS后缀的请求用PHP解析响应了:AddType application/x-httpd- php .css。把这个去掉就可以了”。以下是对MIME类型的解释和相应的解决办法: MIME类型 : MIME是多用途的网际邮件扩充协议的缩写。对于诸如网络服务器或者浏览器程序来说,按照MIME类型将页面内容分类是一种标准方法,并且这些程序都含有一个MIME类型列表以便于在跨做操作系统的环境下用相同的方法传输同类型文本内容。 当某一服务器中的一个页面需要读取远程CSS文件的时候,根据MIME类型的定义(通常情况下是”text/css”),这个样式表文件带有.css的文件扩展名。然而服务器有时却会错误的将.css文件的MIME类型判断为”text/plain”或者是”text/html”。因此当一个标准编译下的页面(也就是采用完整文档声明的页面)调用这个CSS文件的时候就会被判别为不相符的MIME类型,此时基于Gecko的浏览器就会忽略远程样式表,与我们事先想象中那样美丽的网页相反,它们会将页面展现为无任何样式定义的样子。 解决办法 : 解决这个问题的一种方法是联系服务器管理员将.css的MIME类型设置为正确的”text/css”。对于Apache服务器来说,另一种可行的方法是在你的站点根目录下的.htaccess文件中写进这样一行: AddType text/css .css 这样一来.css文件就会被当作”text/css”类型来编译。如果你的服务器管理员限制了你修改.htaccess文件,那么你就需要联系他 (她)以取得权限修改这一MIME类型。 |
最近读者:

