【发布时间】:2014-06-24 00:40:16
【问题描述】:
我正在为我公司的产品创建一个网站(我对此很陌生),我刚刚意识到我所做的很多格式似乎都被 IE 8 及以下版本完全忽略了。
我有没有办法让网站将这些浏览器的用户引导到我的网站的完全不同且极其简化的版本?
任何建议将不胜感激!
【问题讨论】:
标签: css internet-explorer internet-explorer-8 cross-browser
我正在为我公司的产品创建一个网站(我对此很陌生),我刚刚意识到我所做的很多格式似乎都被 IE 8 及以下版本完全忽略了。
我有没有办法让网站将这些浏览器的用户引导到我的网站的完全不同且极其简化的版本?
任何建议将不胜感激!
【问题讨论】:
标签: css internet-explorer internet-explorer-8 cross-browser
更好的方法是通过为 IE8 及更低版本使用不同的样式表来解决问题。 这可以使用条件语句来完成。
<!--[if lte IE 8]>
// Your IE8 and below HTML code here or
// Perhaps importing a specific style sheet as
<link rel="stylesheet" type="text/css" href="ie8_and_below.css" />
<![endif]-->
如果您希望获得 IE8 及以下版本的简化版本,请将此脚本添加到您希望获得最小化版本的页面上。
<!--[if lte IE 8]>
<script type="text/javascript">
window.location = "http://www.example.com/ie8";
</script>
<![endif]-->
然后在 ie8 HTML 页面上添加您的 HTML 标记,该页面仅适用于 IE8 及以下版本。
【讨论】:
您可以使用条件语句定位 IE 版本,以包含仅由这些浏览器加载的 CSS 文件。例如,要仅在 IE8 及以下版本中加载样式表,请使用:
<!--[if lte IE 8]>
<link rel="stylesheet" type="text/css" href="ie.css" />
<![endif]-->
您可以阅读有关 IE here 的条件语句的更多信息。
或者,您可以嗅探浏览器用户代理,并相应地重定向,但这是一个不太理想的解决方案,并且会涉及页面重复。
【讨论】:
可以通过 DOM 对象获取浏览器的版本。然后你可以把它放在 if-else 中并检查版本是否更大,然后根据将你的页面重定向到其他地方。您还可以检查用户是否使用 IE 或其他浏览器。
var ver=navigator.appVersion;
var brw=navigator.userAgent;
if(brw.equals("msie"))
{
if(ver<8)
//redirect
else
//stay or something else
}
希望这会有所帮助。
【讨论】: