2010-04-19 2 views
3

Quelle forme de détection mobile dois-je utiliser et pourquoi?détection mobile - tag Meta et max-device-largeur par rapport à l'agent d'utilisateur php?

<meta name="viewport" content="width=320,initial-scale=1,maximum-scale=1.0,user-scalable=no" /> 
<link media="only screen and (max-device-width: 480px) and (min-device-width: 320px)" href="css/mobile.css" type= "text/css" rel="stylesheet"> 
<link media="handheld, only screen and (max-device-width: 319px)" href="css/mobile_simple.css" type="text/css" rel="stylesheet" /> 

Ou

include('mobile_device_detect.php'); 
$mobile = mobile_device_detect(); 
+0

Ce premier exemple ne détecte pas mobile, il charge simplement différents fichiers CSS basés sur la taille de l'écran. Si vous n'avez qu'une seule version du site et que vous souhaitez le personnaliser différemment pour les petits écrans, cela fonctionnera très bien. Si vous souhaitez rediriger les utilisateurs mobiles vers une autre version de votre site, vous devez détecter les mobiles, comme dans votre deuxième exemple. –

Répondre

1

Vous cherchez vraiment à un couple de choses différentes ici ...

Les balises HTML dites au navigateur comment gérer certaines situations alors que le script PHP détecte un navigateur mobile pendant que le script s'exécute sur le serveur.

Chacun a ses propres usages ... en général, vous allez probablement finir par utiliser une combinaison des deux.

Je détecte habituellement les navigateurs mobiles en utilisant un script côté serveur, puis les balises HTML sortie (comme ceux que vous avez énumérés) si un navigateur mobile a été détecté.

En d'autres termes ... 1) utilisateur demande une page 2) PHP (ou autre) détecte un navigateur mobile ou navigateur standard 3) si mobile, envoyer les fichiers CSS appropriés, en-têtes, etc. Dans le cas contraire, envoyer un ensemble différent de fichiers CSS et d'en-têtes.

Questions connexes