• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Nieprawidłowe sklowanie strony poniżej 400px na telefonie

Object Storage Arubacloud
0 głosów
614 wizyt
pytanie zadane 18 sierpnia 2018 w HTML i CSS przez Asokus Początkujący (450 p.)
edycja 18 sierpnia 2018 przez Asokus

Witam, gdy wejdę na stronę w wersji mobilnej to poniżej 400px zachodzi dziwne skalowanie (dla mnie dziwne), najlepiej widać to jak swobodnie rusza się oknem i zmniejsza szerokość poniżej 400px. wgląda to tak jakby css nie traktował width: 100% czy width: 100vw jako rzeczywistą szerokość urządzenia. Szerokość zmniejsza się znacznie szybciej niż rzeczywista szerokość okna, ekranu. Gdy zjadę niżej i nav ustawi się na position: fixed, to wtedy ten element nie ma problemu z szerokością. Wiecie dlaczego tak się dzieje i jak to naprawić? Dziękuję za wszelką pomoc.

strona: https://blazbla274.github.io/Upenglish/

github: https://github.com/blazbla274/Upenglish

3 odpowiedzi

0 głosów
odpowiedź 18 sierpnia 2018 przez Kozaczenko Nowicjusz (160 p.)
Próbowałeś to rozwiązać poprzez min-width / max-width?

miałem podobny problem i u mnie to pomogło
komentarz 18 sierpnia 2018 przez Asokus Początkujący (450 p.)
Spróbowałem, ale niestety nie rozwiązuje to problemu :(
komentarz 18 sierpnia 2018 przez Asokus Początkujący (450 p.)
Rozwiązałem problem, wykorzystując mechanizm który działa w jakiś sposób w navie. Zmodyfikowałem tag body na  position: fixed i width: 100%. Wciąż jeżeli ktoś znałby przyczynę tego zachowania (wytłumaczenie techniczne) to będę wdzięczny za komentarz, pozdrawiam!
komentarz 18 sierpnia 2018 przez Asokus Początkujący (450 p.)
Hyy jednak nie :( teraz za to nie mogę scrolować, zbyt wcześnie świętowałem :P
0 głosów
odpowiedź 18 sierpnia 2018 przez rafal.budzis Szeryf (85,260 p.)
W nagłówku nie mieści ci się tekst "Szkoła języków obcych" i tekst automatycznie rozszerza stronę. Ukryj tekst, zmniejsz czcionkę lub zastosuj inną technikę aby tekst nie wychodził poza stronę.
komentarz 18 sierpnia 2018 przez Asokus Początkujący (450 p.)
Nawet jak dam nav, display: none tak żeby wgl nie przeszkadzał text, to dalej pozostaje ten sam problem :/
komentarz 18 sierpnia 2018 przez Asokus Początkujący (450 p.)

Teraz jestem pewien, jeżeli jest szerokość jest poniżej 400px to ustawiam body width: 400px i wszystko zaczyna działać, ale wciąż nie rozumiem do końca dlaczego to działa:
 

@media all and (max-width: 400px) {
    body {
        width: 400px;
    }
}

 

1
komentarz 18 sierpnia 2018 przez rafal.budzis Szeryf (85,260 p.)
Bo coś ci wychodzi poza stronę i się nie mieści. To co zaproponowałeś jest raczej obejściem a nie rozwiązaniem problemu. Jeśli problemu nie rozwiązał nagłówek być może coś jeszcze wystawało ;)
0 głosów
odpowiedź 18 sierpnia 2018 przez pablop76 VIP (123,180 p.)
edycja 18 sierpnia 2018 przez pablop76

Nie możesz dać

@media all and (max-width: 400px) {
    body {
        width: 400px;
    }
}

bo to ma się skalować. A Ty piszesz: jeżeli okno przeglądarki ma 400px lub mniej to niech body ma zawsze 400px. i okno ma np: 399px a body 400px i pojawia się sroll.

Ale to nie wszystko. Jeszcze nadaj dla

.about_us > section > .introduce > img {
    display: inline-block;
    vertical-align: top;
}

width: 100%; bo zdjęcia również rozpychają Ci body.

Linijka 328 main.css'

.price_list_box też ma szerokość na sztywno

.lectors > div również szerokość na sztywno

I jeszcze by coś znalazł.  Css powinien mieć raczej płaską strukturę, czyli unikaj długich selektorów

Używanie zbyt długich selektorów powoduje problemy ze specyficznością. Efekt jest podobny do !important – kod staje się trudniejszy w utrzymaniu i modyfikacji. A już napewno nie wiąż selektorów ze strukturą HTML

.about_us > section > .introduce > img, bo jak zmienisz coś w html ( w tej strukturze) to Ci się  posypie cala reguła.

komentarz 20 sierpnia 2018 przez Asokus Początkujący (450 p.)
Zgodzę się ze wszystkim poza początkiem, zauważyłem, że poniżej 400px skalowanie zachodzi jak bym nie miał <meta name="viewport" content="width=device-width, initial-scale=1"> i dlatego moje media ustawiające body na stałe 400px, poniżej 400px działa, wszystko się zmniejsza proporcjonalnie. ps: Niektóre kontenery mają stałą szerokość żeby wszystko wyśrodkować poniżej tej szerokości wykorzystuje % dopasowanie

Podobne pytania

0 głosów
4 odpowiedzi 360 wizyt
pytanie zadane 29 czerwca 2015 w HTML i CSS przez DrQ Nowicjusz (210 p.)
0 głosów
1 odpowiedź 137 wizyt

92,568 zapytań

141,420 odpowiedzi

319,624 komentarzy

61,956 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...