2011-01-24 16 views
14

Ten konkretny problem z Mobile Safari (na pozór niemożliwy, a jednak nieudokumentowany) utrzymywał mnie długo i już miałem o tym zadać pytanie, kiedy to rozgryzłem.iOS/mobilne safari wciąż powiększa się, podczas gdy okno jest ustawione na skalowalność użytkownika = nie? Sprawdź ustawienia dostępności!

Problem: chociaż ustawiłem <meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; minimum-scale=1.0; user-scalable=no;"/>, moja internetowa aplikacja na iPada nadal pozwala na ręczne powiększanie (szczypanie w przeglądarce). - Ale tylko na moim iPadzie, nie na moim iPhonie.

Również chciałbym obrócić urządzenie między portret trybów krajobrazowych sprawdzić konkretne kody orientacja-mode CSS, co dało dziwne wyniki:

  • Obrotowy z poziomego na pionowy nie było problemu, rozmiary i umieszczenie wszystkiego, co ma sens.
  • Po tym, obracając się z Portretu z powrotem do Krajobrazu i ... widok pozostał tak szeroki, jak był w trybie Portret, tj. został on powiększony (skalowany). Musiałem ręcznie pomniejszyć, aby powrócić do pełnego obrazu/widoku. Co powinno być niemożliwe.
+0

Istnieją dwa ustawienia uniemożliwiające użytkownikowi powiększanie, ale jakie są korzyści? Widzę tylko wady. –

Odpowiedz

14

Potem znalazłem świetną wersję demonstracyjną iPad CSS Layout with Landscape/Portrait Modes. Wyglądało to obiecująco, ale dał mi identyczny problem. Jednak podczas testowania tego na drugim iPadzie działało idealnie: brak problemu z powiększaniem. Pomyśleliśmy, że ma to związek z moim konkretnym iPadem.

Potem uderzyło mnie: Kilka tygodni temu bawiłem się ustawieniami dostępności. Powiększanie całego interfejsu, tak jak można to zrobić w OSX (ctrl + scroll) itd. Może w jakiś sposób było to połączone z Mobile Safari? Okazuje się, że tak.

Dziś dowiedziałem się: Gdy opcja Dostępność> Zoom jest włączona, powoduje to unieważnienie ustawień meta okna roboczego.

Wypróbuj sam? Znajdziesz go tutaj: Settings > General > Accessibility > Zoom

+1

Dzięki za to! Świetna pomoc :) – william44isme

+0

To jest niesamowite! Wreszcie sposób na radzenie sobie z tymi paskudnymi stronami internetowymi, zmuszając mnie do czytania ich drobnego tekstu. –

4

Trochę aktualizacji dla ciebie: to było fixed przez Apple. Od wersji beta 1 systemu iOS 5 ustawienie dostępności Zoom nie będzie już powodować ignorowania metatagu viewport.

+0

To wspaniała wiadomość Matt, dzięki za udostępnienie. – eelkedev

+4

A teraz nie mogę już używać żadnej strony mobilnej, która blokuje powiększanie z powodu tej "poprawki". Nie wyłączaj powiększania witryn mobilnych! – GordonM

8

Jako osoba z problemami ze wzrokiem jestem silnie uzależniona od możliwości powiększania witryn mobilnych. Teraz, wraz z aktualizacją do iOS 5, nie ma możliwości, aby iOS zignorował ustawienia skalowalne przez użytkownika i nagle odkryłem, że nie mogę regularnie używać połowy witryn, z których korzystam, ponieważ nie mogę ich powiększyć.

Tak więc, w imieniu osób z problemami ze wzrokiem, proszę, nie należy używać metatagów widoku w celu ograniczenia możliwości powiększania strony przez ludzi!

+1

Jestem również niedowidzący i uważam to za denerwujące (szczególnie w wyszukiwaniach Google), ale nadal możesz korzystać ze zwykłego zoomu iOS (podwójne kliknięcie trzema palcami), nie jest to tak łatwe, jak tylko możliwość obcięcia, ale wykonuje pracę bez irytujących programistów i, w wielu przypadkach, psujących UX. – Ben

+0

@Ben Twierdzę, że UX jest zrujnowany dla osób o słabym wzroku, ponieważ nie można go powiększyć. Przesuwanie dookoła podczas używania trybu powiększenia iOS jest o wiele trudniejsze niż przesuwanie po powiększonej stronie internetowej. A co do Androida, to nawet nie zapewnia zbliżenia na poziomie OS, więc utknąłeś. A jeśli chodzi o irytujących programistów, to ich zadaniem jest sprawić, by UX był odpowiedni dla wszystkich, nie tylko dla osób z wizją 20/20. W niektórych miejscach niedopasowanie osób niedowidzących jest nielegalne, ponieważ narusza prawodawstwo antydyskryminacyjne. – GordonM

+0

Całkowicie się zgadzam, ale android miał większe problemy niż przeglądarka internetowa, jeśli chodzi o dostępność, chciałem mieć telefon z Androidem od kiedy po raz pierwszy wyszedł, ale po prostu nie mogę czytać wiadomości tekstowych itp! firmy takie jak Google naprawdę powinny wiedzieć lepiej. A powiedzenie, że to messes up UX jest tylko wymówką, i nie powinno tak być, ale wiele mobilnych aplikacji internetowych jest zaprojektowanych dla konkretnego rozmiaru ekranu, i często może być lepiej UX do insulowania funkcji, aby tylko skalować tekst raczej niż zepsucie kadrowania (np. aplikacja GMail, która naprawdę zepsuła, gdy można było powiększyć, CSS nie miał pojęcia, co się dzieje!). – Ben

0

Uwaga: użyj przecinków jako separatorów, a nie średników. W czysty sposób są przecinki jako separatory. Zobacz stronę dokumentacji http://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html, również używają przecinków. Przynajmniej Chrome pokazuje błędy w konsoli, jeśli używasz średników. Wiem, że to nie dotyczy iPada ani safari, ale jeśli możesz to zrobić w porządku, dlaczego nie? :)