我想知道是否有任何像webkit的条件评论那样有效。
我想改变宽度。
例如,
<!--[if IE]>
<link href="css/ie.css" rel="stylesheet" type="text/css" />
<![endif]-->
提前致谢。
答案 0 :(得分:8)
不,没有。
你可以通过在JS中进行浏览器检测并动态附加脚本/样式来破解它。
或者,如果您只关心针对不同浏览器使用不同的css,则可以使用css hacks。可能有css hacks适用于您需要的浏览器。
或者,如果您需要更改的唯一内容是'width'(一个css定义?),您可以在jquery或javascript中执行此操作
jquery浏览器检测。看到: http://docs.jquery.com/Utilities/jQuery.browser
答案 1 :(得分:2)
我在每个项目中使用它: http://rafael.adm.br/css_browser_selector/
虽然如果你不得不在Firefox或Webkit中进行大量的定位 - 你可能想重新考虑如何编写HTML / CSS。
答案 2 :(得分:1)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Browsser Detection</title>
<link rel="stylesheet" href="Main.css" type="text/css">
<?php
$msie = strpos($_SERVER["HTTP_USER_AGENT"], 'MSIE') ? true : false;
$firefox = strpos($_SERVER["HTTP_USER_AGENT"], 'Firefox') ? true : false;
$safari = strpos($_SERVER["HTTP_USER_AGENT"], 'Safari') ? true : false;
$chrome = strpos($_SERVER["HTTP_USER_AGENT"], 'Chrome') ? true : false;
if ($msie) {
echo '
<!--[if IE 7]>
<link rel="stylesheet" href="ie7.css" type="text/css">
<![endif]-->
<!--[if IE 8]>
<link rel="stylesheet" href="ie8.css" type="text/css">
<![endif]-->
';
}
if ($safari) {
echo '<link rel="stylesheet" href="safari.css" type="text/css">';
}
?>
</head>
<body>
<br>
<?php
if ($firefox) { //Firefox?
echo 'you are using Firefox!';
}
if ($safari || $chrome) { // Safari?
echo 'you are using a webkit powered browser';
}
if (!$msie) { // Not IE?
echo '<br>you are not using Internet Explorer<br>';
}
if ($msie) { // IE?
echo '<br>you are using Internet Explorer<br>';
}
?>
<br>
</body>
</html>
答案 3 :(得分:0)
基于CSS的解决方案是回答here。它对webkit浏览器的支持非常广泛。