Progettazione di siti web
a.a. 2021/22

HTML per cominciare

Maria Simi
Febbraio, 2022

[Learning web design, Niederst, cap. 4-9]

Cosa vedremo

Strumenti per editare HTML

I tag HTML

<p>Paragrafo di testo</p>

HTML: attributi

<a href="esempio.html" id="es1">Esempio</a>
<p class="right">Paragrafo allineato a destra</p>

Quale versione di HTML

XHTML: regole per i tag

XHTML: regole per gli attributi

Documento (X)HTML valido o conforme

Struttura minima di un documento HTML

Editore di testo                                       Browser

<html> <head> <title>Il titolo del documento</title> </head> <body> Il corpo del documento: contiene tutto ciò che il browser visualizzerà </body> </html>


  1. Scrivere questo con un editore di testo
  2. Salvarlo con estensione html
  3. Visualizzarlo con il browser                            Esempio 1

Informazioni ignorate dai browser

Validazione

Tre varianti di XHTML 1.0

Dichiarazioni DOCTYPE

Documento HTML5 minimo validabile

<!DOCTYPE html>
  <html>
      <head>
	 <title>Il titolo del documento</title>
	 <meta charset="UTF-8" />
      </head>
      <body>
	   <p>Il corpo del documento: contiene tutto ciò
		   che il browser visualizzerà</p>
      </body>
  </html>
  

Esempio 1 (HTML5 validabile)

Tag buoni e meno buoni

Tag strutturali e semantici

Body

<body bgcolor=“white”>                             :-Q

<body font=“arial”>			                         :-Q

Intestazioni

<h1>Un titolo di primo livello</h1> <h2>Un titolo di secondo livello</h2> <h3>Un titolo di terzo livello</h3> <h2>Un altro titolo di secondo livello</h2>

Paragrafi

<p>Questo è un primo paragrafo di testo.</p> <p>Questo è un secondo paragrafo di testo un po’ più lungo del primo per mostrare come il testo si dispone naturalmente su più righe.</p>

Citazioni, riferimenti, indirizzi

<q>Il miglior modo di prevedere il futuro è quello di inventarlo</q> <blockquote> <p>Il miglior modo di prevedere il futuro è quello di inventarlo</p> </blockquote> <address>Alan Key, U.S.A.</address> <p><cite>La Divina Commedia</cite> di Dante Alighieri</p>

Testo preformattato

<pre> function messaggio (lingua) { if (lingua == "italiano") { alert("Ciao mondo!") } if (lingua == "english") { alert("Hello world!") } } </pre>

Esempio 2

Abbreviazioni, variabili …

<p> <abbr title="Hyper Text Transfer Protocol">HTTP</abbr> è un protocollo di comunicazione tra client e server. </p> <p>Il web è stato inventato da <abbr title="Tim">T.</abbr> <abbr title="Berners">B.</abbr> Lee.</p> <p>Sia <var>x</var> una variabile … </p> <p>Sia <em>x</em> una variabile … </p>

Enfasi ed evidenza

Esempio 3

Tag semantici :-) vs stilistici :-Q

Semantici
strongforte
emenfasi, cambio di tono
varvariabile
codecodice
deltesto cancellato
smalltesto piccolo
supapice
infpedice
Stilistici, obsoleti
bbold, grassetto :-Q
iitalic :-Q
iitalic :-Q
ttteletype :-Q
strikeriga sopra :-Q
bigtesto grande :-Q
usottolinea :-Q :-Q
blinklampeggia :-Q :-Q

Il tag font :-Q :-Q

Caratteri speciali

CarattereEntità carattereCaratteri Unicode
<&lt;&#060;
>&gt;&#062;
&&amp;&#038;
"&quot;...
'&apos;...

Altre entità carattere

à&agrave;&#224; ©&copy;&#169;
è&egrave;&#232; ®&reg;&#174;
é&eacute;&#233; "&quot;&#34;
ì&igrave;&#236; &rsquo;...
ò&ograve;&#242; º&ordm;&#186
ù&ugrave;&#249; ˜&tilde;...
ì&igrave;&#236; &rdquo;...
spazio&nbsp;&#160; &euro;...
§&sect;&#167; TABELLA

Liste non numerate e numerate

<ul> <li>il primo elemento della lista</li> <li>il secondo elemento</li> <li>il terzo elemento</li> </ul>
<ul> <li>il primo elemento della lista <ul> <li>sottoelemento-1</li> <li>sottoelemento-2</li> </ul> </li> <li>il secondo elemento</li> </ul>
<ol> <li>il primo elemento della lista</li> <li>il secondo elemento</li> <li>il terzo elemento</li> </ol>

Liste di definizioni

<dl> <dt>primo elemento</dt> <dd>definizione del primo elemento un po' rientrato rispetto alla voce che sto definendo</dd> <dt>secondo elemento</dt> <dd>definizione</dd> <dt>terzo elemento</dt> <dd>definizione</dd> </dl>

Interruzioni di linea e linee orizzontali

I collegamenti ipertestuali (link)

Esempio di collegamento

<p> <a href="http://infouma.di.unipi.it/"> Informatica Umanistica </a> </p> <p> <a href="index.html">Questa lezione</a> </p>

Collegamenti assoluti e relativi

Collegamenti all’interno delle pagine

<a href="#qui">Sezione 3</a>
...
<h3 id="qui">Sezione 3</h3>
<a href="http://sito/pag.html#li">
   Salta li</a>
...
...
<p id="li">Inizio testo</p>
...

Le immagini

<img src="images/micio.gif" width="278" height="278" alt="il mio gatto preferito" /> <a href="Esempi/file.html"> <img src="images/micio.gif" width="100" height="100" alt="il mio gatto preferito" /> </a>

Nota: width e height e sono ancora usati in HTML5. L'unità di misura è solo il pixel e non va specificata.

Tabelle per presentare i dati

<table> <tr><th>Anno</th> <th>Vendite</th></tr> <tr><td>2000</td> <td>18M</td></tr> <tr><td>2001</td> <td>25M</td></tr> <tr><td>2002</td> <td>36M</td></tr> </table>

Ampiezza di tabelle e colonne

<table border="1px"; width="80%"> <tr><th>Anno</th><th>Vendite</th></tr> <tr><td>2000</td><td>18M</td></tr> <tr><td>2001</td><td>25M</td></tr> <tr><td>2002</td><td>36M</td></tr> </table>

Esempio 4

Celle che si espandono

<table border="1px"> <tr><td colspan="3">Titolo</td></tr> <tr> <td>Uno</td> <td>Due</td> <td>Tre</td> </tr> </table>

Esempio 5

Tabelle per il layout :-Q

Nuovi elementi strutturali in HTML5

Una pagina tipica con HTML5

Conclusioni