griglia

Una semplice guida al responsive design.
Traduzione di Paolo Villani dall'originale di Adam Kaplan.

Intro
RWD

Perché dobbiamo occuparci di progettazione "responsive"?

Perché vogliamo che i nostri siti siano usabili su qualsiasi dispositivo interagendo con il comportamento dell'utente, con la dimensione e l'orientamento dello schermo.

Un Mondo Frammentato

Dal 2013 esistono migliaia di differenti dispositivi con schermi di diverse dimensioni e risoluzioni che consentono di navigare in internet, cosa che rende impossibile progettare layout appropriati per ognuno di essi. Dobbiamo invece avere un approccio più fluido.

1

Aggiungere il Viewport Meta Tag

Inseritelo nel <head> del vostro HTML. Ciò abilita l'utilizzo delle "media queries" per gestire layout "cross-device".


Box Model

CSS Box Model

È importante conoscere le nozioni fondamentali, come, ad esempio, il modo in cui gli elementi sono generati e si comportano nel browser, prima di tuffarsi nella progettazione "responsive". Il "CSS Box Model" consiste di 4 parti distinte.


content

Content

Il "content" (contenuto) del box, dove compaiono testo e immagini.

padding

Padding

Crea un area attorno al "content".

border

Border

Un bordo che sta attorno al "padding".

margin

Margin

Crea un area attorno al bordo.

2

Usare box-sizing: border-box

Inseritelo all'inizio del vostro file CSS. Il * lo farà estendere a tutti gli elementi della pagina.


A Vostra Scelta

Ciò che una volta era un bug è ora una proprietà largamente utilizzata. In pratica questo vuol dire che potete scegliere se includere o non includere bordi e padding nella larghezza del vostro contenuto.


Senza Box Model

Senza box-sizing: border-box

Margini, bordi e padding sono disegnati e calcolati all'esterno della dimensione della larghezza del vostro contenuto.

With Box Model

Con box-sizing: border-box

Bordi e padding sono disegnati e compresi nell'insieme della larghezza del vostro contenuto. I margini sono disegnati e calcolati all'esterno.

3

Creare un Container

Un contenitore contiene tutti gli elementi e controlla la larghezza massima di pagina. Usare un contenitore renderà più semplice progettare in modo "responsive"!


Container
4

Creare una Column

Una colonna è una classe utilizzata per incolonnare il contenuto orizzontalmente. Il primo margine viene rimosso usando la pseudo-class first-child.


.column
5

Creare Column Size

Aggiungere classi di dimensione alle colonne per creare un sistema di griglie riutilizzabili.


.column .full
.column .two-thirds
.column .half
.column .half
.column .one-fourth
.column .one-fourth
.column .one-fourth
.column .one-fourth
6

Creare Rows

Le colonne sono avvolte in righe per prevenire l'eventualità che altri elementi si aggiungano affianco ad esse, altrimenti nota come "questione del clearing". Le righe vengono "ripulite" sia con il clearfix (applicato al contenitore) che con overflow: hidden (applicato alle righe). Questo "clearfix" è stato creato da Nicolas Gallager:


.column .half
.column .half
7

Aggiungere un Mobile Breakpoint

Se le dimensioni dello schermo del browser rientrano all'interno di un range stabilito, una "media query" rimpiazzerà il codice CSS che viene utilizzato dal browser. Questo è l'"abc" della progettazione web "responsive".


.column .half
.column .half

La pratica rende perfetti

Seguendo questi semplici passi, sarete sulla strada giusta per padroneggiare la progettazione web "responsive". Continuate a fare pratica ed aiutate a rendere il web un posto migliore e più usabile.


Date un'occhiata e scaricate il codice di questo progetto.