2017-09-09 2 views
1

TETEMon site apparaît zoomé lorsqu'il est ouvert sur le téléphone

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0,"/> 

CSS

@media (max-width: 600px){ 
body{position: absolute; top: 0px; left: 0px; width: 420px;} 

Mon site apparaît zoomé lorsqu'il est ouvert sur le téléphone
Screenshots is here
Comment puis-je résoudre ce problème?

+0

Veuillez partager votre site lien, si possible. – Aman

+0

http://helalpropolis.com/sayfa/hersey.php?w=salpin&s=kutuphane –

+0

@ MuhammetSönmezalp tout va bien quand je le vois. Êtes-vous sûr de ne pas avoir tapé deux fois sur l'écran mobile (dans l'émulateur Chrome)? – Taurus

Répondre

0

Vous définissez la largeur de la » body être plus large que l'écran du téléphone (depuis votre balise de fenêtre provoque « px » unités de ne pas être 1: 1 pour 1 pixel sur le téléphone doesn ne correspond pas à une unité de 1 px). Vous devez utiliser soit des valeurs relatives à votre body de style

@media (max-width: 600px){ 
    body{ 
     position: absolute; 
     top: 0; 
     left: 0; 
     width: 100vw; 
     max-width: 420px; 
    } 
} 

ou créer une requête @media supplémentaire pour les périphériques plus étroits que 420px comme ceci:

@media (min-width: 420px) and (max-width: 600px){ 
    body{ 
     position: absolute; 
     top: 0; 
     left: 0; 
     width: 420px; 
    } 
} 

@media (max-width: 420px){ 
    body{ 
     position: absolute; 
     top: 0; 
     left: 0; 
     right: 0; 
    } 
} 

Edit:

Voici une autre approche avec une dynamique tag viewport:

<meta id="viewport" name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> 
<script> 
window.onload = function() { 
    if(screen.width < 420){ 
     var viewport = document.getElementById('viewport'); 
     viewport.setAttribute('content', 'width=420, initial-scale=1'); 
    } 
} 
</script> 
+0

Ce sera très difficile Tout mon contenu est pour 420px –

+0

Ensuite, vous pouvez changer votre tag de viewport à '' Je suppose. Vous devriez essayer de faire fonctionner votre contenu sur n'importe quelle largeur dans le futur si vous voulez que votre site soit beau sur tous les écrans. – Patrick

+0

J'ai ajouté une approche avec un tag viewport dynamique à ma réponse. – Patrick

0

initial-scale=1.0 indique au navigateur de régler le niveau de zoom sur normal (c'est-à-dire sans zoom avant ou arrière). Vous avez seulement besoin width=1000:

<meta name="viewport" content="width=1000"> 
+1

Ce n'est pas ce que demande l'OP. – Taurus

+0

http://prntscr.com/giy63m Cela arrive de cette façon –

+0

Cela provoque une expérience mobile sub-par et également incohérente, car le texte peut apparaître trop petit pour lire en fonction de la taille de l'écran. 'width = device-width' vise à rendre le texte lisible sur n'importe quel écran. – Patrick