HTML浏览器语句

时间:2013-12-30 13:33:43

标签: html

我有一个面板,在使用IE,Firefox或其他时,我希望在使用不同的浏览器时出现不同的内容。我宁愿不想为每个浏览器制作这个,但仅限于这个3声明。

问题是,以下代码是否可以完美地工作,或者是否有其他方法可以同时声明两个浏览器?

<!--[if IE]> This is IE <![endif]-->
<!--[if firefox]> This is Firefox <![endif]-->
<!--[if !IE & !Firefox]> This is not IE and not Firefox, but something else. <![endif]-->

2 个答案:

答案 0 :(得分:0)

您不需要第三个声明。如果您已经为IE和Firefox定义了特殊情况,则将在其余浏览器中执行以下代码。

但是你必须考虑到所有浏览器仍然执行以下代码。

答案 1 :(得分:0)

据我所知,Firefox没有正式的条件评论

可能性#1 - JavaScript

可以做的是使用JavaScript检查浏览器代理 警告:浏览器代理很容易被欺骗。

<强>的JavaScript

function getBrowser()
{
  var browser = navigator.userAgent;
  if (browser.toLowerCase().indexOf('msie') > -1) return 'ie';
  else if (browser.toLowerCase().indexOf('firefox') > -1) return 'firefox';
  else return 'mozilla';
}

var browser = getBrowser();

if(browser == "ie"){
  /* IE code */
}

if(browser == "firefox"){
  /* Firefox code */
}

if(browser == "mozilla"){
  /* Other browsers */
  /* Chrome, Safari, Opera, etc. */
}

可能性#2 - CSS / JavaScript(使用插件)

虽然这不是最优化的方式,但您可以使用以下方法:

  • 在您的网页中插入此插件:http://rafael.adm.br/css_browser_selector/

  • 在不同的div元素中写下所有必要的HTML代码,每个元素都有一个特定的 ID 属性,默认情况下都隐藏(CSS中为display:none;)。

  • 使用JavaScript检查包装盒的颜色。根据颜色,显示正确的div元素。您还可以删除隐藏的div元素。

  • 隐藏CSS插件框或将其从DOM中删除。


可能性#3 - PHP

不要考虑它。这是一种不好的做法。您可以阅读原因here


我会在脑海中添加更多可能性。这是一个wiki大家,随意添加你的2美分!