6
votes

Y a-t-il un ordre équivalent à c.-à-delà du commentaire conditionnel pour chrome et safari?

Je me demande s'il y a une chose qui fonctionne comme ça marche comme c'est-à-dire un commentaire conditionnel pour webkit.

Je veux changer de largeur. p>

Par exemple, P>

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


2 commentaires

Les commentaires conditionnels d'IE sont des commentaires HTML et non des commentaires CSS.


Vous avez parfaitement raison. Mis à jour.


4 Réponses :


8
votes

Non, il n'y en a pas.

Vous pouvez le pirater en effectuant la détection de navigateur dans JS et en fixant des scripts / styles de manière dynamique.

ou, si vous ne vous inquiétez qu'avec différents CSS pour différents navigateurs, vous pouvez utiliser des hacks CSS. Il y a probablement des hacks CSS qui fonctionnent avec les navigateurs dont vous avez besoin.

ou, si la seule chose que vous devez modifier est la "largeur" ​​(de une définition de la CSS?) Vous pouvez probablement le faire dans jQuery ou javascript

Détection du navigateur JQuery. voir: http://docs.jquerer.com/utilities/jquery.browser


3 commentaires

Oui. essayez $ .browser.msie == true. $ .Browser.mozilla == True, etc. Inspectez l'objet $ .Brower ou lire des documents


Après avoir lu votre réponse, j'ai trouvé cela et ça fonctionne bien. Merci. Blog / ...


Mais si j'utilise un modèle de messagerie et que je souhaite détecter l'iPhone? Je ne peux pas utiliser les scripts. Y a-t-il un moyen de masquer ou d'afficher du marquage HTML spécialement conçu pour iPhone?



2
votes

Je l'utilise sur chaque projet: http://rafael.adm.br/css_browser_selector/

Bien que, si vous devez faire beaucoup de ciblage dans Firefox ou WebKit - vous pouvez reconsidérer comment vous écrivez votre HTML / CSS.


0 commentaires

1
votes
<!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>
From Chrome conditional comments

0 commentaires

0
votes

Une solution basée sur CSS était la réponse ici . Et son support Accross Webkit Navesters est assez large.


0 commentaires