我知道有条件的评论:
<!--[if IE 9]>
<link rel="stylesheet" type="text/css" href="css/ie9-only.css" />
<![endif]-->
检测Internet Explorer 9,但Firefox 4呢?如何仅为Firefox 4加载样式?
答案 0 :(得分:1)
你不能以同样的方式“检测”firefox。条件评论是IE唯一的“功能”。您必须通过后端的用户代理字符串检测它。或者使用javascript。
答案 1 :(得分:1)
FireFox中没有条件注释来执行此操作,如果您确实需要使用jQuery(或类似)来加载相关的样式表。
$(document).ready(function() {
if ($.browser.mozilla && $.browser.version == '2.0') {
$('head').append($("<link>").attr({type: 'text/css', rel: 'stylesheet', href: 'css/firefox4-only.css'}));
}
});
我个人不建议使用浏览器检测,如果需要,您应该使用Web标准和功能检测:)
答案 2 :(得分:1)
如果必须检测FF4的浏览器和版本,最好的答案是使用jQuery's browser() method。
但是,我同意@Gareth McCaughan的评论:如果你发现自己不得不进行浏览器检测(除了IE6 / 7和IE8之外的其他任何东西),那么你很可能做错了什么。你在问题中使用IE9这一事实表明你可能已经错了。
所有现代浏览器,包括IE9和FF4都具有出色的标准支持,并且编写良好的页面应该在所有浏览器中呈现几乎完全相同的。
如果你在IE9或Firefox 4中有一些与其他现代浏览器不同的东西,请指明它是什么,因为可能有一个比浏览器检测更好的解决方案来解决它。
我在FF4中只知道一件可能需要你使用的东西,那就是text-overflow:ellipsis
,除了Firefox之外的所有现代浏览器都支持它。请在此处查看我之前关于此主题的问题:text-overflow:ellipsis in Firefox 4? (and FF5)