我有一个面板,在使用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]-->
答案 0 :(得分:0)
您不需要第三个声明。如果您已经为IE和Firefox定义了特殊情况,则将在其余浏览器中执行以下代码。
但是你必须考虑到所有浏览器仍然执行以下代码。
答案 1 :(得分:0)
据我所知,Firefox没有正式的条件评论。
可以做的是使用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. */
}
虽然这不是最优化的方式,但您可以使用以下方法:
在您的网页中插入此插件:http://rafael.adm.br/css_browser_selector/。
在不同的div
元素中写下所有必要的HTML代码,每个元素都有一个特定的 ID 属性,默认情况下都隐藏(CSS中为display:none;
)。
使用JavaScript检查包装盒的颜色。根据颜色,显示正确的div
元素。您还可以删除隐藏的div
元素。
隐藏CSS插件框或将其从DOM中删除。
不要考虑它。这是一种不好的做法。您可以阅读原因here。
我会在脑海中添加更多可能性。这是一个wiki大家,随意添加你的2美分!