Mam mobilną aplikację internetową z nieuporządkowaną listą zawierającą wiele listitemów z hiperłączem wewnątrz każdego li:
... Moje pytanie brzmi: jak sformatować hiperłącza, aby NIE zmieniały rozmiaru podczas oglądania na iPhonie, a akcelerometr przełączał się z pionowego -> poziomego? W tej chwili mam rozmiar czcionki hiperłącza określony na 14px, ale po przejściu do poziomej zmienia się na około 20px. Chcę, aby rozmiar czcionki pozostał taki sam. Oto kod:
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"
metatagu (patrz poniżej)none
, używaj100%
zamiast tego, takie zachowanie jest pożądane: blog.55minutes.com/2012/04/iphone-text-resizingUwaga: jeśli używasz
spowoduje to wyłączenie funkcji powiększania w domyślnych przeglądarkach. Lepszym rozwiązaniem jest:
To koryguje zachowanie iPhone'a / iPada bez zmiany zachowania pulpitu.
źródło
Użycie -webkit-text-size-adjust: brak; bezpośrednio na html przerywa możliwość powiększania tekstu we wszystkich przeglądarkach webkit. Powinieneś połączyć to z niektórymi zapytaniami o media specyficznymi dla iOS. Na przykład:
źródło
Jak wspomniano wcześniej, reguła CSS
nie działa już w nowoczesnych urządzeniach.
Na szczęście pojawiło się nowe rozwiązanie dla iOS5 i iOS6 (todo: co z iOS7?) :
Możesz także dodać,
, user-scalable=0
aby wyłączyć powiększanie szczypcami, aby Twoja witryna zachowywała się jak natywna aplikacja. Jeśli Twój projekt zawiesza się podczas powiększania przez użytkownika, użyj tego metatagu:źródło
<meta name="viewport" content="width=device-width, initial-scale=1.0">
, żeby zadziałało.Możesz dodać meta w nagłówku HTML:
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
źródło
Możesz także wybrać reset CSS, taki jak normalize.css , który zawiera tę samą regułę, którą zaleca crazygringo:
Jak widać, zawiera także regułę specyficzną dla dostawcy dla telefonu IE.
Aktualne informacje o implementacji w różnych przeglądarkach znajdują się na stronie referencyjnej MDN .
źródło
Poniższy kod działa dla mnie.
Spróbuj wyczyścić pamięć podręczną przeglądarki, jeśli nie działa.
źródło
Od marca 2019 r. Dostosowanie rozmiaru tekstu ma uzasadnione wsparcie wśród przeglądarek mobilnych .
Użycie
viewport
metatagu nie ma wpływu na dopasowanie rozmiaru tekstu, a ustawienieuser-scalable: no
nawet nie działa w IOS Safari .źródło
W moim przypadku problem polegał na tym, że użyłem atrybutu CSS
width: 100%
dla tagu HTMLinput type="text"
.Zmieniłem wartość
width
na 60% i dodałempadding-right:38%
.źródło