GH GambleHub

Design în condiții de siguranță mobilă

1) Principii mobile-safe

1. Thumb-first: zone de acțiune - în degetul mare (navigație de jos, TAB/primar din dreapta de mai jos).
2. Touch-friendly: obiective ≥ 40-48 px cu câmpuri; distanta ≥ 8-12 px.
3. Zona de siguranță prin proiectare: luăm în considerare decupajele/zonele de gesturi ('env (safe-area-inset-)').
4. Viteza este mai importantă decât „frumusețea”: LCP ≤ 2. 5s, INP ≤ 200ms, CLS ≤ 0. 1 (p75).
5. Reținere: modale minime, formulare minime, autocomplete maxime.
6. Rețele și baterii: trafic economic, modul offline, retribuții competente.


2) Grilă, puncte de întrerupere și zonă de siguranță

Puncte de întrerupere: ≤ 480 (mobil), 481-768 (comprimat vertical), 769-1024 (comprimat orizontal).
Containere cu lățime maximă, carduri flexibile 1-2 coloane.
Panouri inferioare ≥ 56 px, stoc pentru navigarea prin gesturi.

CSS:
css
:root { --inset-b: env(safe-area-inset-bottom); --inset-t: env(safe-area-inset-top); }
.app { padding-bottom: calc(16px + var(--inset-b)); padding-top: calc(8px + var(--inset-t)); }

3) Text, butoane și interacțiuni

Text: 16-18 px bază, linie-la-linie 1. 4–1. 6, lungime linie 40-70 caractere.
Butoane: înălțime 44-52 px, focalizare clară/activ/dezactivat; pictograma + text, nu numai pictograma.
Gesturile au întotdeauna o alternativă (buton/meniu/punct fierbinte).
Animațiile sunt pe „transformare/opacitate” și respect „preferă mișcarea redusă”.


4) Formulare, tastaturi și autocomplete

Minimizați câmpurile, utilizați inputmode/type și autocomplete:
html
<input type="email" inputmode="email" autocomplete="email">
<input type="tel" inputmode="tel" autocomplete="tel">
<input type="number" inputmode="numeric" pattern="[0-9]">
<input type="text" autocomplete="one-time-code" />

Măștile sunt moi (afișăm formatul, dar nu rupeți intrarea).

Autocap/autocorrect prin înțeles (' autocapitalize =" propozițiioff „”).
Sugestii/erori lângă câmp și sunt disponibile pentru screensaver ('aria-descripedby').

5) Navigare și arhitectura ecranului

Navigarea de jos (până la 5 puncte) + gestul „înapoi”.
Până la 3-5 robinete la acțiunea țintă.
Evitați „hamburgerul” pentru secțiunile critice; utilizare/file segmentate.
UI prevede: „încărcare/gol/eroare/succes” - explicit, cu acțiuni și explicații.


6) Performanță și economii

Widget-uri de cod și leneș; diagrame/carduri de încărcare „la cerere”.
Resurse critice - „preîncărcare”, restul - „amânare ”/„ leneș”.
Imagini AVIF/WebP +' srcset/mărimi', 'încărcare =” leneș”'.
Fonturi: 1 WOFF2 variabilă, 'font-display: swap', preîncărcare numai de bază.
Caching și offline prin intermediul Service Worker (PWA), „Stale-în timp ce-revalidate”.


7) Rețele, offline și retroactive

3G/high ușurință latență: cerere limită, butching, jittered backoff.
Ecran offline cu memorie cache de date critică și coadă de sincronizare.
Respectați economia de date: Sugestii client/Salvați-date → imagini ușoare, fără auto-video.

JS (Data/Network Detector):
js const saveData = navigator.connection?.saveData;
const slow = ['slow-2g','2g'].includes(navigator.connection?.effectiveType);
if (saveData          slow) enableLiteMode(); // менее тяжелые ресурсы

8) Disponibilitate (A11y) pe mobil

Control complet al tastaturii/comutatorului și focalizare lizibilă.
Contrast ≥ WCAG AA, text alternativ („alt”, „aria-label”).
Obiective mari și animații de pauză; gesturile sunt duplicate cu butoane.
Pentru diagrame - un scurt rezumat al textului și un tabel de date.


9) Temă întunecată, luminozitate și haptice

Tema întunecată nu este doar o inversiune; verificați contrastele și accentele de culoare.
Respectați tema sistemului („preferă schema de culori”).
Haptics - dozat (succes/eroare), capacitatea de a dezactiva.


10) Confidențialitate, permise și securitate

Permisiuni numai în momentul valorii (camera → scanare document).
Explicarea „de ce” și retragerea fără permisiune.
WebAuthn/biometrice în loc de parolă; managerii de parole sunt acceptate.
Ascundeți câmpurile sensibile la pliere; timpi de avertizare.


11) notificări push și sarcini de fundal

Scenarii de valoare clară, nu frecvente; ore liniştite.
Un singur robinet dezabonare și centru de preferințe.
Vânătăi de fundal - în porțiuni mici, cu restricții de baterie/rețea.


12) Imagini, medii și adaptabilitate

Înlocuitor specificat de dimensiuni → zero CLS.
Video în mod implicit fără autoplay, cu subtitrări și controale; bitrate adaptive.
Icoane - vector (SVG) sau sprite; Nu încărcați seturi de 1MB.


13) Fragmente și setări

meta viewport și accente:
html
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
<meta name="theme-color" content="#11131A">
Stabilizarea dispunerii și ascunderea în afara ecranului:
css
.card { content-visibility: auto; contain-intrinsic-size: 600px 400px; }
Mod de mișcare redus:
css
@media (prefers-reduced-motion: reduce) { { animation: none!important; transition: none!important; } }

14) Planul de încercare (minim)

Dispozitive: 1 iOS + 1 Android (ecran mic/mediu/mare), portret/peisaj.
Rețele: offline, 3G, 4G (accelerație); Activaţi Salvare-date.
Disponibilitate: scripturi VoiceOver/TalkBack, trecere tastatură, contrast.
Performanță: Web-Vitals (RUM), profiler; liste mari, tastare/derulare/gesturi.
Stabilitate: rotație, pliere/returnare, uciderea procesului → restabilirea stării.
Securitate: permisiuni, timp de sesiune, ascunderea datelor private, date biometrice.


15) Măsurători mobile sigure

LCP/INP/CLS (p75, numai pentru mobil).
Time-to-Action (înainte de clic țintă primară).
Atingeți Precizie (cota de robinete false ale elementelor de închidere).
Sesiuni fără crash/rata ANR (aplicații/webview).
Date pe sesiune și impactul bateriei.
Puful şi logodna opt-in/opt-out.


16) Anti-modele

Butoane 28-32 px, liste dense, „cărți” fără câmp - ratează.
Text 12-14 px pe un fundal gri deschis.
Modalități peste modale; închiderea numai prin gest.
Autoplay video/animații pe 3G/Save-Data.
Caracteristici numai gesturi, fără buton/meniu.
Neînregistrat pentru zona sigură → conținut suprapus cu „breton” sau un panou glisant.


17) Lista de verificare a ecranului

  • Obiective ≥ 48 px, liniuțe ≥ 8-12 px
  • Safe-area учтен ('viewport-fit = cover', 'env (safe-area-inset-)')
  • Text ≥ 16 px, contrast AA, focus/activ vizibil
  • Formulare: corecte „tip/inputmode/autocomplete”, lucrări autocomplete
  • LCP ≤ 2. 5s, INP ≤ 200ms, CLS ≤ 0. 1 (mobil)
  • Blocuri grele cu încărcare leneșă, liste de sub-eșantionare
  • Ecran offline, retray cu backoff, modul Salvare-date
  • Fluffs și permise - la cerere, cu explicație și refuz
  • Temă întunecată și redusă-mișcare susținută
  • Teste: iOS/Android, portret/peisaj, 3G/offline, SR pass

18) Planul de implementare (3 iterații)

Iterația 1 - Elementele de bază (1-2 săptămâni):
  • Grila și zona de siguranță, 48 obiective px, tipuri de tastatură/autocomplete, de bază Web-Vitals, imagini leneș, temă întunecată.
Iterația 2 - Performanță și robustețe (3-4 săptămâni):
  • Cod-split, conţinut-vizibilitate, offline + SW, Salvare-Data mod, Retray/cozi, stat de recuperare, A11y audit.
Iterația 3 - Optimizare și scală (continuă):
  • Plăci ROM, analiza traficului/bateriei, haptice, scripturi de permisiune, îmbunătățirea listei (virtualizare), zile regulate de joc ale rețelelor mobile.

19) Mini-Întrebări frecvente

Am nevoie de un „meniu mobil” separat?
Da, dar prioritatea este navigarea de jos cu 3-5 puncte; hamburger - pentru secundar.

Cum de a reduce ratările butoanelor?
Creșteți obiectivele la 48 px, adăugați câmpuri în jur, răspândiți vertical, utilizați haptic pentru „succes/eroare”.

Offline necesar?
Pentru scenarii critice, da: cache, coadă de acțiuni și solicitări oneste către utilizator.


Rezultat

Designul mobil este o combinație între ergonomia tactilă, contabilitatea zonei sigure, performanța, disponibilitatea și rezistența la grilă/baterie. Urmăriți listele de verificare, măsurați semnele vitale web cu utilizatori reali, respectați confidențialitatea și setările sistemului - iar interfața dvs. va fi convenabilă și fiabilă pe orice dispozitiv mobil.

Contact

Contactați-ne

Scrieți-ne pentru orice întrebare sau solicitare de suport.Suntem mereu gata să ajutăm!

Pornește integrarea

Email-ul este obligatoriu. Telegram sau WhatsApp sunt opționale.

Numele dumneavoastră opțional
Email opțional
Subiect opțional
Mesaj opțional
Telegram opțional
@
Dacă indicați Telegram — vă vom răspunde și acolo, pe lângă Email.
WhatsApp opțional
Format: cod de țară și număr (de exemplu, +40XXXXXXXXX).

Apăsând butonul, sunteți de acord cu prelucrarea datelor dumneavoastră.