Come fare un sito web responsive in CSS

Per creare sito web responsive con il linguaggio CSS basta fissare delle regole di formattazione che considerino la larghezza dello schermo dell'utente.

Ecco un esempio pratico

Creo un semplice documento HTML con due tag div.

  1. <html>
  2. <body>
  3. </body>
  4. <div class=corpo></div>
  5. <div class=menu></div>
  6. </body>
  7. </html>

Associo al documento HTML un foglio di stile in CSS.

  1. .corpo {
  2. position:relative;
  3. width:74%;
  4. float:right;
  5. }
  6. .menu {
  7. position:relative;
  8. float:left;
  9. width:25%;
  10. }
  11. @media only screen and (max-width: 600px) {
  12. .corpo { width:100%; }
  13. .menu { width:100%; }
  14. }

Le classi corpo e menu fissano la larghezza di default di due elementi del sito rispettivamente a 74% e 25% tramite le proprietà width.

Il menu occupa dinamicamente il 25% dello schermo dell'utente mentre il corpo il 74%, indipendentemente dalla grandezza dello schermo.

il layout css

Le due classi si affiancano l'una all'altra tramite la proprietà float.

Con l'attributo @media fisso un'eccezione per gli schermi al di sotto dei 600px di larghezza.

In questo caso la proprietà delle classi viene imposta al 100% di larghezza.

In questo modo il corpo e il menu appaiono uno sopra l'altro.

il layout responsive

E' solo un semplice esempio per rendere l'idea. E' un punto di partenza.

Seguendo questa strada si può creare un layout responsive con il foglio di stile CSS.

    Come richiamare due fogli di stile a seconda delle schermo

    Se le differenze di stile sono molte è preferibile creare due fogli di stili separati e richiamarli dal documento HTML a seconda delle dimensioni dello schermo.

    1. <html>
    2. <head>
    3. <link rel="stylesheet" media="screen and (min-width: 900px)" href="stilesitoweb.css">
    4. <link rel="stylesheet" media="screen and (max-width: 600px)" href="stilesitomobile.css">
    5. </head>
    6. ...
    7. </html>

    In questo modo si raddoppia il codice css da sviluppare e manutere, ma è più semplice intervenire e capire la causa di eventuali problemi di formattazione.

    E così via.

     


     

    Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

    FacebookTwitterLinkedinLinkedin
    knowledge base
    1. Cos'è il CSS