将IE 7(及以下版本)发送到站点的旧目录/子目录<;!--[如果IE 7]><";链接到旧站点”/


Send IE 7 (and below) to old/sub directory of site. <!-- [if IE 7]><"LINK TO OLD SITE"/><![endif]-->

我刚刚启动了一个网站(使用Joomla和自定义模板),它在IE7中显示得不太好(我想下面也是)。我环顾四周,发现你可以从我的index.php链接到不同的样式表,然而,我希望它链接到仍然有效的旧网站(在www.mydomain.com/old下),而不是链接到不同样式表。

这有可能吗?

正如标题中所说,我环顾四周,发现你可以使用这样的if语句-

<!-- [if lte IE 7]><"LINK TO OLD SITE"/><![endif]-->

我所尝试的是可能的吗?到目前为止,我还没有任何进展,正在尝试href="http://www.mydomain.com/old" 的常见html标签

任何帮助都会很好。我现在只是被卡住了!

条件注释用于页面的客户端部分,因此对PHP没有用处。您可以使用带有如下JavaScript的条件注释:

<!— [if lte IE 7]>
    <script type="text/javascript">
        top.location.href = "http://www.mydomain.com/old";
    </script>
<![endif]-->

这样做的缺点是,您在客户端机器上执行此任务,这比您在服务器上执行重定向并将其发送给用户到其他页面的速度慢。您可以使用PHP通过检查浏览器版本并使用header:重定向来实现这一点

$browser = get_browser();
if($browser->browser == 'IE' && $browser->majorver <= 7) {
    header('Location: http://www.mydomain.com/old');
}

请记住,要使其工作,必须在将任何数据发送到客户端之前调用header

好吧,在IE7用户开始呈现页面之前抓住他们是非常合理的。因此,它可以用服务器端脚本完成,也可以用一些mod_rewrite。会更容易更快。

我用谷歌找到了这个。

此技术的目的是在客户端启用重定向,而不会混淆用户。

在HTML和XHTML中,可以使用http equiv属性值设置为"的元元素;刷新";并且内容属性的值被设置为"0";0";(表示0秒),然后是浏览器应该请求的URI。

<html xmlns="http://www.w3.org/1999/xhtml">    
  <head>      
    <title>The Tudors</title>      
    <meta http-equiv="refresh" content="0;URL='http://thetudors.example.com/'" />    
  </head>    
  <body> 
    <p>This page has moved to a <a href="http://thetudors.example.com/">
      theTudors.example.com</a>.</p> 
  </body>  
</html>