J'ai une application web mobile avec une liste non ordonnée contenant plusieurs listitems avec un hyperlien à l'intérieur de chaque li:
... Ma question est de savoir comment formater les hyperliens pour qu'ils ne changent PAS de taille lorsqu'ils sont affichés sur un iPhone, et que l'accéléromètre passe de portrait -> paysage? À l'heure actuelle, la taille de la police du lien hypertexte est spécifiée à 14 pixels, mais lorsque je passe en mode paysage, elle monte jusqu'à 20 pixels. Je veux que la taille de la police reste la même. Voici le code:
ul li a
{
font-size:14px;
text-decoration: none;
color: #cc9999;
}
<ul>
<li id="home" class="active">
<a href="home.html">HOME</a>
</li>
<li id="home" class="active">
<a href="test.html">TEST</a>
</li>
</ul>
<meta content="viewport"
balise META (voir ci-dessous)none
, utilisez100%
plutôt, c'est le comportement que vous voulez: blog.55minutes.com/2012/04/iphone-text-resizingRemarque: si vous utilisez
alors cela désactivera le comportement du zoom dans les navigateurs par défaut. Une meilleure solution est:
Cela corrige le comportement de l'iPhone / iPad, sans changer le comportement du bureau.
la source
Utilisation de -webkit-text-size-adjust: aucun; directement sur html rompt la possibilité de zoomer du texte dans tous les navigateurs webkit. Vous devez combiner cela avec certaines requêtes multimédias spécifiques à iOS. Par exemple:
la source
Comme il a été mentionné précédemment, la règle CSS
ne fonctionne plus dans les appareils modernes.
Heureusement, une nouvelle solution vient pour iOS5 et iOS6 (todo: qu'en est-il d'iOS7?) :
Vous pouvez également ajouter
, user-scalable=0
pour désactiver le zoom par pincement, afin que votre site Web se comporte comme une application native. Si votre conception freine lorsque l'utilisateur effectue un zoom, utilisez plutôt cette balise META:la source
<meta name="viewport" content="width=device-width, initial-scale=1.0">
que cela prenne effet.Vous pouvez ajouter une méta dans l'en-tête HTML:
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
la source
Vous pouvez également opter pour une réinitialisation CSS, telle que normalize.css , qui inclut la même règle que crazygringo recommande:
Comme vous le voyez, il comprend également une règle spécifique au fournisseur pour le téléphone IE.
Pour des informations actuelles sur l'implémentation dans différents navigateurs, reportez-vous à la page de référence MDN .
la source
Le code ci-dessous fonctionne pour moi.
Essayez de vider le cache de votre navigateur s'il ne fonctionne pas.
la source
Depuis mars 2019, l' ajustement de la taille du texte bénéficie d' un support raisonnable parmi les navigateurs mobiles .
L'utilisation de la
viewport
balise META n'a aucun effet sur le réglage de la taille du texte et le paramètreuser-scalable: no
ne fonctionne même pas dans IOS Safari .la source
Dans mon cas, ce problème est dû au fait que j'ai utilisé l'attribut CSS
width: 100%
pour la balise HTMLinput type="text"
.J'ai changé la valeur de
width
60% et j'ajoutepadding-right:38%
.la source