web-dev-qa-db-fra.com

Chrome commentaires conditionnels

Existe-t-il des commentaires conditionnels pour Chrome?

J'ai une page qui s'affiche différemment dans Chrome par rapport à Firefox.

Merci

26
Vince Panuccio

Vous pouvez cibler les navigateurs WebKit en utilisant ceci dans votre CSS

@media screen and (-webkit-min-device-pixel-ratio:0) { 

Body {}

}

Peut-être que cela vous aidera?

54
George Wiscombe
<!--[if IE 8]><div id="bodyContainer" class="IE8"><![endif]-->
<!--[if !IE]>--><div id="bodyContainer" class="W3C"><!--<![endif]-->
<script type="text/javascript"> 
    if (navigator.userAgent.toLowerCase().match('chrome') && document.getElementById('bodyContainer'))
        document.getElementById('bodyContainer').className = document.getElementById('bodyContainer').className + " chrome";
</script>

Ensuite, vous utilisez CSS pour modifier vos styles spécifiquement pour Chrome.

13
DmitryK

HTML commentaires conditionnels et Javascript directives de compilation conditionnelle ne sont pris en charge que par Internet Explorer 4-8 à ma connaissance.

5
dpq
<!--[if !IE]>-->

Ce n'est pas seulement un Chrome commentaire conditionnel - cela frappe tous les navigateurs qui ne sont pas IE ... firefox, safari, etc. Si vous utilisez PHP - essaye ça:

<!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>

Nous remercions John pour sa publication: http://www.killersites.com/forums/topic/2731/firefox-google-chrome-browser-detecion-using-conditional-comments-hack/

4
Lorenzo816

L'opération conditionnelle fonctionnera car d'autres navigateurs analyseront le bloc If IE8 en tant que commentaire HTML, mais pas le bloc! IE car l'intérieur est enveloppé dans -> et

Par conséquent, pour tous les navigateurs non IE, la classe de corps sera en effet égale à W3C.

Cependant, tout cela est dû au fait que le bloc de commentaires IE n'est pas nécessaire pour identifier le navigateur spécifiquement comme chrome - le bloc JS de sa propre volonté) faites cela, à condition que l'utilisateur ait JS activé bien sûr.

3
p.g.l.hall