Internet Windows Android

Crearea unui tabel receptiv.

Afișarea datelor voluminoase pe un ecran mic este întotdeauna un puzzle. Ce moduri puteți rezolva problema și cum ar trebui să arate o masă convenabilă pe un telefon mobil?

Este de remarcat faptul că tabelele se extind adesea dincolo de ecran, nu doar pe dispozitivele mobile: se întâmplă să conțină mai multe coloane sau rânduri decât încap pe un monitor imens sau chiar mai multe. Cu toate acestea, cu cât ecranul este mai mic, cu atât este mai probabil să apară probleme de utilizare.

Elementele cheie dintr-o vizualizare de tabel sunt coerența conținutului și atributele semnificative. Ambele sunt deosebit de importante pentru mesele mobile. Mai întâi ar trebui să creați un tabel convenabil pentru monitoare mari și apoi să creați o versiune pentru ecrane mici. O astfel de nevoie poate fi un motiv excelent pentru a rafina conținutul tabelului și a-l face mai convenabil pentru toți utilizatorii.

Numărul de coloane din tabel care urmează să fie afișate pe un ecran mobil depinde de lățimea acestora, iar conținutul lor trebuie să fie clar, fără a fi nevoie să utilizați zoom-ul.

Pentru textele complexe sau lungi, de exemplu în tabelele de comparație, doar 2 coloane vor încadra pe un ecran mobil îngust. Și dacă tabelul este umplut în mare parte cu numere, coloanele pot fi făcute mai înguste și, prin urmare, se pot potrivi mai mult.

Statisticile National Rugby League constau din numere, astfel încât 11 coloane se potrivesc confortabil pe un ecran mobil, fără a fi nevoie de derulare orizontală. Vă rugăm să rețineți că acest rezultat este obținut prin utilizarea doar a siglei echipei adverse în prima coloană și a abrevierilor, care este posibil să nu fie clare pentru cei neinițiați. Cu toate acestea, doar fanii rugby-ului sunt interesați de statistici atât de detaliate despre jucători.

Rotirea telefonului este o ultimă soluție

Dacă rotiți telefonul pe orizontală, mai multe coloane vor încăpea pe ecran. Totuși, în același timp, numărul de linii este redus, iar utilizatorilor le poate părea enervant să fie nevoiți să rotească smartphone-ul (mai ales dacă are un blocaj de rotație). Gândiți-vă cu atenție dacă lățimea mare a mesei justifică aceste dezavantaje.

Pentru a compara cardurile de credit pe site-ul web Citi, utilizatorii trebuie să urmeze instrucțiunile: „Întoarceți-vă telefonul pe orizontală pentru a continua să comparați cardurile de credit”. În același timp, la rotire, cea mai mare parte a ecranului este ocupată de imagini uriașe ale cărților de credit, care sunt fixate în loc la derulare, lăsând foarte puțin spațiu pentru conținutul tabelului în sine. Aceasta este o greșeală a multor site-uri mobile: dacă pe un desktop imaginile pot fi un bun titlu pentru o coloană, atunci pe un mobil sunt necesare.

În orice tabel care se întinde pe mai mult de un ecran vertical, titlurile coloanelor lipicioase ajută utilizatorul să evite confuzia cu privire la context.

În tabelul de comparație cu Best.Buy din stânga, nu sunt înregistrate nici coloanele și nici titlurile acestora, iar datele sunt greu de citit. În dreapta este cum arată acest tabel când este derulat, fără nicio explicație vizibilă.

Deși este în general nedorit atât pe dispozitive mobile, cât și pe desktop, este relativ acceptabil pentru mese mari de pe dispozitive mobile. Când datele nu se potrivesc pe ecran, este posibil ca vizitatorii să fie nevoiți să le folosească. Cu toate acestea, în acest caz, este necesar: ar trebui să fie evident că acestea nu sunt toate datele disponibile. Ca și în cazul glisoarelor, săgețile și elementele decupate transmit aceste informații cel mai clar. Punctele sunt uneori folosite, dar de obicei sunt mai greu de observat și de înțeles.

Pe site-ul eBag, ultima coloană de produse este tăiată, astfel încât utilizatorii să înțeleagă că derularea orizontală este disponibilă.

Site-ul web al Subaru folosește puncte și săgeți deasupra tabelului pentru a arăta utilizatorilor că există mai multe ecrane de conținut disponibile. Punctele creează o oarecare confuzie, deoarece două dintre ele sunt evidențiate pentru a afișa „locația curentă” (adică cele două coloane vizibile în prezent). În plus, este mai bine să plasați săgețile nu deasupra mesei, ci chiar în ea.

Dacă utilizatorii trebuie să recurgă la derulare orizontală, coloana din stânga, care conține de obicei titluri de rând, ar trebui să fie înghețată, astfel încât utilizatorii să vadă întotdeauna titlurile rândurilor.

Fidelity a remediat numele atașamentelor și titlurile coloanelor. Ultima coloană din dreapta este decupată pentru a ajuta utilizatorii să înțeleagă că derularea orizontală este disponibilă.

Officeworks.com.au a remediat prima coloană de produs, astfel încât utilizatorii să poată compara toate celelalte opțiuni cu aceasta. Produsul din prima coloană servește ca punct de referință pentru comparație, iar utilizatorii îl pot înlocui cu altceva. Săgețile plasate direct în tabel arată clar că datele pot fi derulate la stânga și la dreapta.

Dacă datele nu se potrivesc pe ecran, utilizatorii probabil nu vor avea timp sau înclinație să le exploreze complet. Deci întrebarea este cum să le furnizeze doar informațiile de care au nevoie. Răspunsul la această întrebare depinde de sarcină și de tipul de date. Iată două strategii pentru a limita cantitatea de date în diferite situații:

  • Utilizatorul selectează datele de care este interesat înainte de a le vedea.
  • Utilizatorul selectează datele de care este interesat în timp ce le vizualizează.

Prima abordare funcționează atunci când utilizatorul trebuie să vadă datele, dar nu să le compare și selectează doar ceea ce are nevoie înainte ca datele să fie încărcate. De exemplu, el poate fi interesat doar de caracteristicile unei anumite mașini, de proprietățile nutriționale ale unui anumit fel de mâncare sau de statisticile pentru un anumit jucător, iar utilizatorul nu le compară cu alte opțiuni.

Pentru a vedea informațiile nutriționale pentru Jamba Juice, vizitatorii trebuie să selecteze băutura de care sunt interesați pentru a vedea informații despre aceasta. Comutatorul Mic/Mediu/Mare vă permite să selectați opțiunea dorită, dar nu vă permite să le comparați. Pentru a înțelege, de exemplu, diferența de calorii dintre un pahar mic și un pahar mediu, utilizatorul trebuie mai întâi să-și amintească numărul de calorii pentru paharul mic, apoi să treacă la cel mediu, să caute numărul de calorii pentru acesta și să scadă unul. de la celălalt înșiși – multă muncă mentală pe care majoritatea oamenilor sunt prea leneși să o facă.

A doua strategie este de a oferi utilizatorului controlul asupra recenziei în timp ce navighează prin date. De exemplu, un utilizator dorește să vadă asemănările sau diferențele dintre două opțiuni, în timp ce altul dorește să cunoască caracteristicile specifice ale produselor, cum ar fi capacitatea portbagajului sau caracteristicile de siguranță, dar nu este interesat de diferența de niveluri de zgomot dintre două mașini. Abilitatea de a selecta rânduri și coloane de afișat permite utilizatorilor să se concentreze asupra caracteristicilor care contează pentru ei.

Pe site-ul web Dell, utilizatorii selectează specificațiile produsului care îi interesează din meniul din partea de sus a paginii. Stânga: În mod implicit, sunt afișate toate caracteristicile. În centru: utilizatorul le selectează pe cele de care are nevoie. Dreapta: este afișat doar ceea ce a selectat.

Dacă tabelul include date care pot fi grupate pe categorii, faceți acest lucru și permiteți utilizatorilor de telefonie mobilă să:

  • obțineți o înțelegere generală a tipurilor de date disponibile în tabel;
  • obține acces direct la informațiile de interes.

Pe Samsung.com, diagramele de comparație pot afișa toate specificațiile sau doar asemănările dintre produse sau doar diferențele sau criteriile selectabile de utilizator. Site-ul grupează date cu atribute similare, permițându-vă să selectați seturi de date de interes. În același timp, grupurile de date oferă o imagine de ansamblu asupra conținutului paginii, spunând utilizatorilor ce informații despre produs sunt disponibile.

În Aspro: În continuare, începând cu versiunea 1.1.7, puteți adapta tabelele pentru versiunea mobilă. Este necesar să faceți modificări codului sursă al paginii - adăugați o clasă care este responsabilă pentru adaptabilitatea tabelelor.

Un tabel simplu în versiunea mobilă trece dincolo de pagină.

Pentru a face tabelul receptiv, accesați pagina în care a fost adăugat tabelul. Apoi accesați modul de editare a codului sursă.

Înainte de eticheta de deschidere

adăugați o etichetă cu o clasă
.

După eticheta de închidere

introduceți eticheta
.


...

Salvați modificările.

Acum masa se derulează și nu depășește cadrul.

Când derulați pe orizontală, tabelul nu depășește cadrul, dar când derulați spre dreapta în versiunea mobilă, se deschide un meniu lateral. Pentru a vă asigura că meniul nu interferează cu lucrul cu tabelul, trebuie să faceți modificări codului paginii.

Trebuie să adăugați clasa „swipeignore” la etichetă

, pe care l-am adăugat mai devreme. Ca urmare, înainte de etichetă trebuie specificată o etichetă cu clase
.

...

Salvați modificările.

Acum, când derulați tabelul la dreapta, meniul lateral nu se deschide, ceea ce a interferat cu lucrul cu tabelul.

Puteți ascunde meniul lateral când derulați spre dreapta și pe alte pagini. Trebuie să adăugați clasa „swipeignore” la etichetă

bloc pentru care doriți să eliminați afișarea meniului lateral. Dacă eticheta nu a avut o clasă specificată, va lua forma
. Dacă eticheta
clasele au fost deja adăugate, apoi scrieți „swipeignore” separat de un spațiu, de exemplu
.

Dacă utilizați tabele pe site-ul dvs. web, acestea trebuie, de asemenea, adaptate pentru dispozitivele mobile. Folosesc două opțiuni de adaptare - compresie și împachetare cuvinte + aranjarea tabelelor într-o singură coloană.

Prima opțiune este potrivită pentru toate tabelele cu mai multe coloane; eu folosesc a doua opțiune pe unele site-uri din frontend. Există o astfel de slăbiciune în afișarea meniurilor sub formă de tabel, dar atunci când rezoluția este redusă, acestea sunt comprimate atât de mult încât provoacă indignare în rândul utilizatorului. Convertirea într-o coloană la o rezoluție mică este o soluție bună, dar, din nou, nu merită să o folosiți pentru toate tabelele.

Opțiune de bază

Deci, pentru majoritatea tabelelor de pe site folosesc următorul cod css:

@media ecran și (max-width:1000px)(td(word-break:break-all;)

Specifică că cuvintele care nu se încadrează în bloc ar trebui să înceapă pe o linie nouă dacă rezoluția este mai mică de 1000 px. Rezoluția 1000 este un exemplu, uitați-vă la site-urile dvs., pentru unii este logic să setați rezoluția mai mică.

Puteți obține o afișare bună a tabelului folosind codul dublu în CSS. Folosesc in paralel:

@media ecran și (max-width:700px)(img(max-width:96% !important;height:auto !important;) iframe, textarea, input, button, submit, video, object, embed(max-width: 99% !important;) table, span, div, ins(max-width:100% !important;)

Se precizează că cu o rezoluție mai mică de 700 px, tabelul este afișat în dimensiune 100%, adică este comprimat, dar ocupă întreg blocul în lățime. Proprietatea!important indică faptul că se va aplica tuturor rezoluțiilor mai mici de 700px.

Adaptare într-o singură coloană

Este mai dificil să adaptați tabelul astfel încât să fie afișat într-o coloană la o rezoluție scăzută. Nu este potrivit pentru toate mesele, dar este adesea necesar. Mai întâi, specificați clasa inițială pentru tabel, de exemplu,

Apoi codul este scris în stilurile:

Ecran numai @media și (max-width: 320px),(min-device-width: 320px) și (max-device-width: 600px) /* Forțați tabelul să nu mai fie ca tabelele */ table.mceItemTable, table. mceItemTable thead, table.mceItemTable tbody, table.mceItemTable th, table.mceItemTable td, table.mceItemTable tr ( afisare: bloc; }

În acest caz afișați: bloc; indică faptul că tbody, th, td, tr sunt blocate în tabelele mceItemTable. Ca urmare, cu o rezoluție mai mică de 600 px, tabelul este construit într-o coloană și, de fapt, nu este un tabel.

Utilizarea tabelelor este o altă plăcintă în coșul comodității utilizatorului, dar acestea trebuie afișate corect pe dispozitivele mobile, altfel rezultatul va fi opusul celui așteptat - vizitatorii vor fugi de curbele Tabelului și vor înrăutăți PF. Nimeni nu interzice afișarea tabelelor într-o singură coloană pentru toate Tabelele și invers, dar unul mixt este mai bine, în funcție de caracteristicile designului mesei.

Dacă tabelele s-ar putea adapta bine la diferite rezoluții ale ecranului, atunci omenirea ar face în continuare machete de tabel până în prezent. Am găsit încă acel timp și știu despre ce vorbesc.

Cu toate acestea, trăim într-o altă epocă, aspectul tabelului a căzut în uitare, dar nevoia de a folosi tabele clasice pe site-uri web încă rămâne. Prin urmare, nu vom nega existența tabelelor, ci mai degrabă vom afla despre cea mai simplă metodă, cum să faci un tabel receptiv.

Demo de masă responsive .

Marcaj HTML



























































Nume Nume de familie Puncte Puncte Puncte Puncte Puncte Puncte Puncte Puncte Puncte Puncte
Julia Smirnova 50 50 50 50 50 50 50 50 50 50
Evelyn Yakovleva 94 94 94 94 94 94 94 94 94 94
Andrei Petrov 67 67 67 67 67 67 67 67 67 67

Am creat un simplu HTML masa, atata timp cat incape pe ecran, totul este OK. Când lățimea ecranului este redusă, tabelul va fi tăiat și nu îi vom vedea datele, sau va deveni foarte mic și din nou nu vom vedea nimic.

Probabil ați observat că am plasat masa în interiorul etichetei divși evident pentru un motiv. Eticheta în sine div nu dă nimic până nu îi atribuim stiluri.

Stiluri CSS

Prin stabilirea unei singure proprietăți, masa se adaptează, o bară de defilare orizontală va apărea automat când conținutul se află în interiorul etichetei div nu se va mai încadra în lățimea curentă a ecranului de-a lungul axei X.

Div (
overflow-x: auto;
)

Să stilăm restul etichetelor de tabel:

Masa (
border-colaps: colaps; /* Afișează numai linii simple */
distanță-limită: 0; /* Distanța dintre celule */
latime: 100%;
chenar: 1px solid #afb42b;
culoare: #212121;
}

Th, td (
text-align: stânga;
umplutură: 8px;
}

Stilul etichetelor tr(rândul) merită un comentariu separat. A devenit deja norma ca rândurile de mese să aibă un aspect în dungi (zebră). Pentru aceasta este folosită o pseudo-clasă : al-lea-copil cu semnificația între paranteze chiar. Sens chiar, atribuie proprietăți tuturor elementelor pare, în cazul nostru aceasta este culoarea de fundal. Astfel, masa va fi dungi.

Tabelele de date nu gestionează foarte bine designul responsive. Din păcate, acest moment există. Designul responsive se referă la personalizarea designului pentru a se adapta la diferite dimensiuni de ecran. Deci, ce se întâmplă când ecranul este mai îngust decât lățimea minimă a tabelului de date? Puteți să micșorați și să vedeți întregul tabel, dar dimensiunea textului va fi prea mică pentru a fi citită. Sau puteți mări punctul de citire, dar va trebui să derulați vertical pe orizontală și (din păcate) să vizualizați tabelul. Tabelele de date pot fi destul de largi și cu siguranță sunt. Tabelele pot fi flexibile ca lățime (greutate=100%), dar conținutul celulelor poate deveni atât de îngust încât pur și simplu nu poate fi văzut.

Pentru a evita acest moment neplacut se folosesc tabele adaptative. Un astfel de tabel va afișa o bară de defilare orizontală dacă ecranul este prea mic pentru a afișa întregul conținut.

Cum să faci un tabel receptiv folosind CSS

Pentru a crea un tabel receptiv, adăugați un element container overflow-x:autoîn jurul

:

...

Notă. În OS X Lion (pe Mac), barele de defilare sunt ascunse în mod implicit și apar numai atunci când sunt utilizate (chiar dacă sunt setate la „overflow:scroll” sau automat).