Quelle est la meilleure façon d'afficher un message texte pour IE 6 et IE 7 uniquement?
Dois-je ajouter une balise html à mes pages Web et la cacher normalement avec css pour tous les navigateurs à l'exception de ceux mentionnés ci-dessus?
Et lorsque j'utilise IE6 IE7, dois-je masquer le site Web avec css et afficher uniquement cette balise html?
Merci
html
css
internet-explorer
anévrisme
la source
la source
Réponses:
Il est difficile de limiter l'accès à un site Web par navigateur, car il n'existe aucun moyen à 100% infaillible de le faire.
Votre premier problème est l'usurpation de l'agent utilisateur. Les navigateurs peuvent s'identifier avec n'importe quel agent utilisateur qu'ils souhaitent. Les navigateurs avec des extensions semblent tous en avoir un qui rend cela insignifiant. Si quelqu'un avec IE6 ou IE7 a changé son agent utilisateur pour être celui d'IE8 ou de Firefox, il accédera à un site Web.
Vous pouvez utiliser JavaScript pour résoudre ce problème en utilisant la détection des fonctionnalités . Fondamentalement, vous utilisez JavaScript pour effectuer un test simple: vous vérifiez si un élément de fonctionnalité qui n'existe pas dans IE6 ou IE7 existe. Si ce n'est pas le cas, vous savez que c'est eux. Le problème est que s'ils désactivent JavaScript, ils contournent facilement cela.
Une approche à plusieurs niveaux serait de flairer le navigateur côté serveur en utilisant leur agent utilisateur, idéalement dans Apache ou IIS, et de rediriger ces utilisateurs vers une page leur disant que vous ne supportez pas leur navigateur. BTW, c'est plus poli que de simplement cacher le site Web. J'augmenterais cela avec la méthode de détection des fonctionnalités JavaScript. Entre les deux, vous attraperez tous les utilisateurs, sauf les plus techniquement avertis et les chances sont qu'ils n'utilisent pas IE6 ou IE7 de toute façon.
la source
Commenter CSS conditionnel ou utiliser la détection du navigateur JQUERY:
Lien vers les commentaires conditionnels CSS
Lien vers la détection du navigateur Jquery
En les utilisant, vous pouvez définir des styles comme masquer les divs du contenu normal et afficher les divs du contenu alternatif. Ou nous JS pour modifier le contenu et la façon dont il est affiché.
Si vous cherchez à supprimer tout pour les utilisateurs d'IE6 et à leur montrer un message leur disant de mettre à jour, vous pouvez définir le CSS pour masquer tout à l'intérieur du corps et lancer une alerte de surcharge avec la détection jquery. C'est dur, mais devrait fonctionner la majorité du temps tant qu'ils n'essaient pas d'être sournois ou de contourner cela. Dans ce cas, ce ne sont probablement pas les personnes que vous visez.
la source
Utilisez des commentaires conditionnels que seuls les navigateurs IE prennent en charge.
la source
Ajoutez ce type de commentaire conditionnel HTML dans votre page source HTML
Tout ce qui précède sera ignoré comme un commentaire HTML normal par TOUS les navigateurs, sauf IE, qui les analysera et les corrigera en conséquence.
la source
Alors - quelle est la raison de vouloir "cacher le site web" de ie6 / 7? s'il s'agit d'une messagerie spécifique à l'agent utilisateur, je voterais pour des commentaires conditionnels.
la source
la raison pour laquelle vous afficheriez un contenu différent est-elle la raison pour laquelle vous utilisez HTML5, qui n'est pas compatible avec IE7 et ci-dessous?
la source