兼容模式下ie9和ie10显示样式在不兼容模式下为啥不加载css样式?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了兼容模式下ie9和ie10显示样式在不兼容模式下为啥不加载css样式?相关的知识,希望对你有一定的参考价值。
参考技术A 这是因为IE自从IE9开始,会对网页的MIME类型进行验证,如果MIME类型不正确的话,就不会加载相应的样式表或者JS文件,这也是出于安全的考虑。\\x0d\\x0a造成IE9以上浏览器无法加载CSS样式表的,有几个可能的原因,一个可能是你的CSS样式引用的书写方式不正确,导致在IE9和IE10下面无法通过MIME的检查,如果是这个原因,在代码里面修改一下css样式引用的方法就行了。\\x0d\\x0a另外一个可能的原因,可能是你在电脑里面安装了代理软件或者其他什么与代理相关的软件,如wallproxy之类的,这一类软件可能会在打开本地html文件时修改mime类型,把type替换为stain之类,这个没有什么特别好的解决方法,要么卸载这些软件,要么重新安装一下试试。\\x0d\\x0a如果你是自己配置服务器后出现了这个问题,那么就可能是第三个原因了,在服务器端没有配置css的mime类型,这个对应的在IIS或者apache里面添加一下css的type就行了。字体真棒在 ie9 和 ie11 兼容模式下不起作用
【中文标题】字体真棒在 ie9 和 ie11 兼容模式下不起作用【英文标题】:font awesome not working in ie9 & ie11 compatibility mode 【发布时间】:2017-02-12 16:27:30 【问题描述】:Font Awesome 在标准模式下在 Chrome、Firefox、Safari、Opera 和 Internet Explorer 11 中完美呈现。当兼容模式在 IE9 或 IE11 上打开时,没有图标呈现。
这是我在 IE9 上的 HTML 结构(兼容模式已打开):
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=UTF-16" http-equiv="Content-Type" />
<meta content="IE=9; IE=8; IE=7; IE=EDGE" http-equiv="X-UA-Compatible" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="stylesheet" type="text/css" href="css/style.css" media="screen" />
<link rel="stylesheet" type="text/css" href="css/print.css" media="print" />
<link rel="stylesheet" type="text/css" href="css/font-awesome.min.css" media="screen" />
<link rel="SHORTCUT ICON" href="images/favicon.ico" />
<script src="js/jquery/jquery-1.7.2.min.js" type="text/javascript"></script>
</head>
<body>
<body>
</html>
那么,如何在具有兼容模式的 Internet Explorer 9 和 11 中呈现 Font Awesome 图标?
【问题讨论】:
使 X-UA 元标记成为头中的第一个。 UTF-16?真的吗? 是 UTF-16。实际上页面是从 XSL @ Pointy 生成的 检查这个:***.com/a/45321517/800031 【参考方案1】:找到了解决办法。
<meta http-equiv="X-UA-Compatible" content="IE=edge">
需要放在<head>
中作为FIRST标签
为了让它工作。
【讨论】:
检查一下@sandy 对于 IE9,它是如何渲染到 Edge 的?【参考方案2】:我找到了解决方案。我删除了版本参数,例如。 ?v4.7.0 在 CSS 字体的每个 src 中,它现在在我的 IE 中工作。
【讨论】:
以上是关于兼容模式下ie9和ie10显示样式在不兼容模式下为啥不加载css样式?的主要内容,如果未能解决你的问题,请参考以下文章