Есть ли аналог IE условного комментария для chrome и safari? - PullRequest
6 голосов
/ 12 января 2010

Мне интересно, есть ли что-нибудь, что работает, например, условный комментарий для webkit.

Я хочу изменить ширину.

Например,

<!--[if IE]>
<link href="css/ie.css" rel="stylesheet" type="text/css" />
<![endif]-->

Спасибо заранее.

Ответы [ 4 ]

8 голосов
/ 12 января 2010

Нет, нет.

Вы можете взломать его, обнаружив браузер в JS и динамически добавив сценарии / стили.

Или, если вас интересует только наличие разных CSS для разных браузеров, вы можете использовать CSS-хаки. Вероятно, существуют CSS-хаки, которые работают с нужными вам браузерами.

Или, если вам нужно изменить только «ширину» (одного определения CSS), вы, вероятно, можете сделать это в jquery или javascript

Обнаружение браузера jquery. увидеть: http://docs.jquery.com/Utilities/jQuery.browser

2 голосов
/ 06 марта 2011

Я использую это в каждом проекте: http://rafael.adm.br/css_browser_selector/

Хотя, если вам приходится много ориентироваться в Firefox или Webkit - возможно, вы захотите пересмотреть то, как вы пишете HTML / CSS.

1 голос
/ 01 ноября 2011
<!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>

С Chrome условные комментарии

0 голосов
/ 02 октября 2013

Решение на основе CSS было ответом здесь . И его поддержка в браузерах WebKit довольно широка.

...