Elemento HTML

Un elemento HTML, in informatica, spesso chiamato anche tag HTML, indica una struttura in un documento HTML e un metodo per ordinare gerarchicamente i contenuti. Più specificamente è un elemento SGML che soddisfa i requisiti di uno o più DTD HTML.[1]
Descrizione
[modifica | modifica wikitesto]Gli elementi possono rappresentare intestazioni, paragrafi, collegamenti ipertestuali, elenchi, form, oggetti multimediali incorporati e diverse altre strutture.
Gli elementi vuoti vengono chiusi aggiungendo una "/", come nei tag di chiusura. Per questioni di retrocompatibilità è consigliato mettere uno spazio prima della barra.[2]
Alcuni elementi, sebbene non siano contenuti in nessun DTD ufficiale, sono supportati da alcuni web browser e utilizzati da pagine web. Tali elementi possono essere ignorati o visualizzati impropriamente da browser che non li supportano.
Tipologie
[modifica | modifica wikitesto]Gli elementi HTML consistono generalmente di quattro parti:
- un tag di apertura che definisce l'inizio di un elemento;
- uno o più attributi di tale elemento con i loro rispettivi valori;
- il contenuto informativo da visualizzare;
- un tag di chiusura: è opzionale per molti elementi, in pochissimi casi un "elemento vuoto" non ha contenuti o tag di chiusura. Gli elementi XHTML vanno sempre chiusi.
Annidamento
[modifica | modifica wikitesto]Molti elementi HTML possono essere "nidificati". La nidificazione è più facilmente comprensibile attraverso esempi[3]:
Yourock
ha un elemento dentro un elemento . La situazione può complicarsi, per esempio
Children that do not clean up their rooms
Si possono nidificare gli elementi fin quando si vuole ma i tag devono essere chiusi nell'ordine inverso nel quale sono stati aperti.
- Sbagliato
Lucy kissed Jimmy
- Corretto
Lucy kissed Jimmy
La possibilità di nidificare è regolamentata da alcune regole che definiscono se un elemento è un block-level o inline.
Elementi della struttura del documento
[modifica | modifica wikitesto]<html>...</html>- Delimita un documento HTML (invece di un documento XML o altro). Questi tag sono opzionali in HTML, ma alcuni browser e altre utility possono non riconoscere il documento senza di essi.
<head>...</head>- Delimita la sezione header (d'intestazione) del documento che contiene informazioni sulla pagina. Questi tag sono opzionali in HTML; se omessi l'esistenza dell'header può essere dedotto in altri modi.
<body>...</body>- Delimita il corpo del documento che contiene i contenuti visualizzati nella pagina. Come
<html>e<head>i tag non sono necessari se il documento è in HTML.
Elementi block-level ed elementi inline
[modifica | modifica wikitesto]
Un elemento block-level inizia di solito su una nuova riga mentre un elemento inline di solito no. Un elemento block-level può contenere altri elementi sia di tipo block-level sia di tipo inline mentre un elemento inline può contenere solo altri elementi di tipo inline. Esempi di elementi block-level sono paragrafi, elenchi, tabelle, intestazioni e il contenitore generale Tutti i tag body non sono elementi block-level e non possono essere contenuti all'interno di un elemento inline[1][6]. Molti elementi HTML sono realizzati per cambiare la struttura o il significato del testo. Alcuni sono block-level ma la maggior parte è inline e può essere inclusa nel normale flusso del testo. Per Per creare un elenco ordinato in HTML si usa un elemento La numerazione predefinita utilizza il sistema arabo, ma è possibile scegliere anche le lettere dell'alfabeto latino moderno o la numerazione romana, sia maiuscoli che minuscoli.
Per impostare il tipo di numerazione, è sufficiente assegnare all'attributo L'attributo Gli elenchi non ordinati (definiti anche puntati) vanno creati con un elemento L'attributo L'HTML può solo definire il formato del modulo, gli input degli utenti vengono processati da un linguaggio di scripting lato client oppure lato server[8]. Esempi: Css equivalenti per gli attributi del testo: I colori Web sono colori usati nella visualizzazione di pagine Web sul World Wide Web e nei metodi per descrivere e specificare tali colori. I colori possono essere specificati come una tripletta RGB o in formato esadecimale (una tripletta esadecimale) o in alcuni casi in base ai loro nomi comuni inglesi. Uno strumento di prelievo colore o un altro software di grafica viene spesso utilizzato per generare valori di colore. Un esempio: I frame, in italiano "cornici", permettono di strutturare il documento HTML in sotto-documenti che il browser gestisce come finestre separate. Ad esempio è possibile tenere sempre fisso e visibile un menu di navigazione in una prima cornice posizionata nel bordo sinistro della pagina, affiancata ad una seconda cornice che racchiude il contenuto principale scorrevole. Gli elementi RDFa (Resource Description Framework in Attributes ) è una raccomandazione del W3C che aggiunge una serie di estensioni a livello di attributo a HTML, XHTML e vari tipi di documenti basati su XML per incorporare metadati ricchi nei documenti Web. La mappatura del modello dati RDF consente il suo utilizzo per incorporare espressioni RDF soggetto-predicato-oggetto all'interno di documenti XHTML. Consente inoltre l'estrazione di triple del modello RDF da parte di programmi utente conformi. La comunità RDFa gestisce un sito web wiki per ospitare strumenti, esempi e tutorial[16]. L'essenza di RDFa è fornire un insieme di attributi che possono essere usati per trasportare i metadati in un linguaggio XML (da qui la "a" in RDFa). Questi attributi sono: Ci sono cinque "principi di metadati interoperabili" soddisfatti da RDFa[17]. Inoltre RDFa può trarre vantaggio dall'accessibilità web poiché maggiori informazioni sono disponibili per la tecnologia assistiva[18]. del form in maniera automatica resteranno accessibili alcuni oggetti anche in assenza di una connessione di rete. due account social o mail sullo stesso browser e ogni navigazione sul primo comporterà il logout del secondo e viceversa senza intaccare le performance della pagina web e server remoto sulla quale far transitare messaggi in entrambe le direzioni Haml ( HTML Abstraction Markup Language) è un sistema di modelli progettato per evitare di scrivere codice inline in un documento web e rendere l'HTML più pulito. Haml offre la flessibilità di avere alcuni contenuti dinamici in HTML. Simile ad altri linguaggi web come PHP, ASP, JSP e sistemi di modelli come eRuby , Haml incorpora anche del codice che viene eseguito durante il runtime e genera codice HTML per fornire alcuni contenuti dinamici. Per eseguire il codice Haml, i file devono avere un'estensione .haml. Questi file sono simili ai file .erb o eRuby che aiutano anche a incorporare il codice Ruby durante lo sviluppo di un'applicazione web[20]. Haml utilizza il rientro degli spazi (due spazi) per la nidificazione e l'ambito dei tag. Questo funge da sostituto per le coppie di tag open-end, rendendolo asciutto e più pulito. L'esempio seguente confronta le sintassi di Haml ed eRuby (Embedded Ruby), insieme all'output HTML.Elementi d'intestazione in HTML 4.01
[modifica | modifica wikitesto]<title>...</title><title>My <b>first</b> webpage</title> verrebbe visualizzato come "My <b>first</b> webpage", e non come "My first webpage".<meta>...</meta><meta http-equiv="foo"> è utilizzata per specificare comandi che devono essere spediti come header HTTP.<link><link /> (in XTML)<link rel="stylesheet" type="text/css" href="url "><base><base/> (in XTML)<script>...</script><style>...</style>/*url "; @import "url "; /*]]>*/Elementi body definiti in HTML
[modifica | modifica wikitesto]Intestazioni
[modifica | modifica wikitesto]<h1></h1> a <h6></h6><h1> per il livello massimo di intestazione (la sezione principale), <h2> per il successivo livello sottostante (sottosezione), <h3> per un livello al di sotto del precedente e così via. Il livello più basso d'intestazione è <h6>.<h1> come un testo grande con un font differente e <h6> come testo piccolo in grassetto ma questo comportamento può essere modificato con i fogli di stile CSS. Gli elementi d'intestazione non sono utilizzabili solamente per creare testo grande o in grassetto: descrivono anche la struttura del documento e l'organizzazione. Alcuni programmi li utilizzano per generare indici e outline.Testo strutturato
[modifica | modifica wikitesto]Block-level
[modifica | modifica wikitesto]<p>...</p><blockquote>...</blockquote>cite può fornire la fonte e deve essere una URL completa.<pre>...</pre>{white-space: pre}<address>...</address>Inline
[modifica | modifica wikitesto]<em>...</em><strong>...</strong><q>...</q>cite Può fornire la fonte deve essere una URL completa.<code>...</code>Esempio di codice.<del>...</del>Deleted text.<ins>...</ins><del>. Visualizzato sottolineato: Testo inserito.<cite>...</cite><dfn>...</dfn><samp>...</samp><kbd>...</kbd><var>...</var><code>, ma possono avere un significato più specifico.<sub>...</sub><sup>...</sup>{vertical-align: sub} or {vertical-align: super}Elenchi
[modifica | modifica wikitesto]<dl>...</dl><dt>...</dt><dd>...</dd><ol>...</ol><ul>...</ul>ul, l'attributo type può essere utilizzato per specificare il tipo di numerazione ma CSS dà più controllo: {list-style-type: foo}[Come?], che di default è quello arabo.
Per ul, CSS può essere utilizzato per definire il marcatore dell'elenco: {list-style-type: foo}. Il marcatore predefinito è un punto annerito<li>...</li><dir>...</dir> (deprecato)<ul>.<menu>...</menu> (deprecato)<ul>, ma non è ben supportato. In disuso in favore di <ul>.Esempi di elenchi
[modifica | modifica wikitesto]Elenchi ordinati
[modifica | modifica wikitesto]ol contenente un elemento li, per ognuna delle voci dell'elenco stesso. Ad esempio:
Codice HTML
type di ol il primo termine della numerazione. Ad esempio:
Codice con
type predefinito (1)Lettere minuscole (a)
Lettere maiuscole (A)
Numeri romani minuscoli (i)
Numeri romani maiuscoli (I)
start, invece, permette di specificare il punto di inizio della numerazione, utile, per esempio quando si desidera temporaneamente interrompere l'elenco. Infatti:
Codice HTML, con
start predefinito (1)Inizio a 8
Inizio a 26
Elenchi non ordinati
[modifica | modifica wikitesto]ul che conterrà, come per gli elenchi ordinati, un elemento li. L'elenco non ordinato definisce di default lo stile di un elenco puntato con cerchi pieni. Ad esempio:
Codice HTML
type di ul può far assumere tre stili diversi ai puntatori dei singoli elementi: con il valore disc verrà creata una lista puntata con cerchi pieni come quella predefinita, col valore circle i cerchi saranno di stessa dimensione ma vuoti, e infine con square verrà creato un elenco puntato a piccoli quadrati pieni. Non avendo nessun tipo di ordine di interpretazione, non è previsto l'attributo start.
Codice con type predefinito (disc)
Tabelle
[modifica | modifica wikitesto]<table>...</table><tr>...</tr><th>...</th><td>...</td><colgroup>...</colgroup><col> (<col /> in XHTML)<caption>...</caption><thead>...</thead><tbody>...</tbody><tfoot>...</tfoot><thead>, Questa sezione può essere ripetuta se la tabella è divisa in più pagine (nella stampa o in altre possibili tipi di stampa).Moduli
[modifica | modifica wikitesto]<form>...</form><select name="foo">...</select><option>...</option><input type="checkbox"><input type="radio"><input type="submit" value="NAME"><input type="image" border=0 name="NAME" src="name.gif"><input type="reset"><input type="text"><textarea>...</textarea>cols (colonne) erows (righe). Il testo tra i tag apparirà nell'area di testo al caricamento della pagina.Altri elementi
[modifica | modifica wikitesto]<span>...</span><div>...</div><center>...</center> (deprecato)<div> con l'allineamento centrato definito nei CSS.<hr><hr /> (in XHTML)<object>...</object>type. Può essere qualsiasi oggetto MIME che il browser riconosce, come una pagina incorporata (vedi <iframe>), un plug-in come Flash, o un file audio.<param>...<param/> (in XHTML)object e imposta i parametri per l'oggetto per esempio larghezza, altezza o URL del contenuto.<embed>...</embed> (non ufficiale)type. Utilizzato per includere file flash, file audio. non ufficiale, è preferibile <object>.<noembed>...</noembed> (non ufficiale)<applet>...</applet> (non ufficiale)<object>.Formattazione
[modifica | modifica wikitesto]<b>...</b> (deprecato){font-weight: bold}<i>...</i>{font-style: italic}<big>...</big>{font-size: larger}.<small>...</small>{font-size: smaller}<s>...</s> e <strike>...</strike> (deprecati)Cancellato. CSS equivalente: {text-decoration: line-through}<tt>...</tt>{font-family: monospace}<u>...</u> (deprecato){text-decoration: underline}<font [color=color,] [size=size,] [face=face]>...</font> (deprecato)color , il tipo con face e la grandezza assoluta o relativa con size<font color="green">text</font> crea testo verde.<font color="#1f4099">text</font> crea testo di colore esadecimale #1f4099.<font size="4">text</font> crea testo di grandezza 4. La grandezza va da 1 a 7. La grandezza standard è 2, a meno che non sia specificata in <<body> o in altri tag.<font size="+1">text</font> crea testo con grandezza aumentata di 1 rispetto a quella standard.. <font size="-1">text</font> è l'opposto.<face="Courier">text</font>visualizza il testo con il carattere Courier.<font size="N"> corrisponde a {font-size: Ypx} (le specifiche HTML non definisco la relazione tra grandezza "N" e grandezza pixel "Y").<font color="red"> corrisponde a {color: red}<font face="Courier"> corrisponde a {font-family: Courier}Colori
[modifica | modifica wikitesto]#0099CC (un tipo di azzurro che si può anche scrivere Pacific Blue)[10].Collegamenti e ancore
[modifica | modifica wikitesto]<a>...</a>href impostato ad una URL l'ancora diventa l'origine di un collegamento ipertestuale a un'altra risorsa (o ad un altro punto della stessa pagina);name (o id) l'ancora diventa la destinazione di un collegamento ipertestuale da un'altra risorsa, che come un segnalibro farà scorrere la pagina fino a quel punto. Una URL può indicare tale destinazione con un fragment identifier (l'aggiunta alla fine dell'URL di un simbolo '#' seguito dal nome dell'ancora) nell'URL[11].id così usare <a name="foo"> non è necessario.title può essere impostato per dare una breve informazione sul collegamento ipertestuale.Etichetta collegamentotitle, finché il cursore non si sposta.Galleria d'immagini
[modifica | modifica wikitesto]<img...><img... /> (in XHTML)src, alt fornisce testo alternativo nel caso l'immagine non possa essere visualizzata. Alt è inteso come testo alternativo, sebbene alcuni browser lo visualizzino come un suggerimento; l'attributo title è il suggerimento.Vari
[modifica | modifica wikitesto]<br><br/> (in XHTML)
<map>...</map><area><area/> (in XHTML)<blink>...</blink> (non standard, fortemente sconsigliato){text-decoration: blink}<marquee>...</marquee> (fortemente sconsigliato)behaviour: indica il tipo di movimento del testo, può assumere i valori:
scroll: il testo arrivato alla fine viene ripresentato dall'inizio in modo continuo;slide: il testo arrivato alla fine si ferma;alternate: il testo arrivato alla fine rimbalza e torna indietro.direction: indica la direzione del movimento, può essere:
left: verso sinistra;right: verso destra;up: verso l'alto;down: verso il basso.loop: indica il numero di volte per il quale il movimento deve ripetersi. Se non specificato equivale a infinito.scrollamount: indica la velocità del movimento. Il numero è espresso in pixel al secondo.onmouseover, onmouseout, onfocus e onblur richiamando i metodi this.stop() e this.start().<!--...--></html>. Tutto il contenuto inserito tra il tag di apertura <!-- e quello di chiusura --> non viene visualizzato.<hr><hr/> (in XHTML)width (per la lunghezza), height (per l'altezza) e color, deprecati a favore dell'impiego delle direttive di stile equivalenti.<hr width = "400" height = "10"> (deprecato) oppure<hr style="width: 400px; height: 10px;" /> (con direttiva di stile) generano:
<hr width = "50%" height = "2"> (deprecato) oppure<hr style="width: 50%; height: 2px;" /> (con direttiva di stile) generano:
<hr color = "red" width = "200" height = "2"> (deprecato) oppure<hr style="background-color: red; width: 200px; height: 2px;" /> (con direttiva di stile) generano:
Frame
[modifica | modifica wikitesto]frame devono essere inclusi dentro un elemento frameset che sostituisce il body e lo stesso documento HTML deve essere dichiarato come Frameset. In altre parole, un elemento html può contenere un head ed un body (nel caso di documenti Strict o Transitional) o, in alternativa, un head e un frameset.[13]
Le cornici sono parte dello standard HTML 4.0 Frameset, mentre in HTML5 sono state dichiarate obsolete[14][15].<frameset>...</frameset>rows e cols.<frame>...</frame>src appare all'interno.<noframes>...</noframes>body con i figli che appariranno nel browser web che non supporta i frame.<iframe>...</iframe>body. Ha molti attributi comuni all'elemento img, ma incorpora, invece di un'immagine, un altro documento HTML.RDFa
[modifica | modifica wikitesto]Essenza
[modifica | modifica wikitesto]Vantaggi
[modifica | modifica wikitesto]Esempio
[modifica | modifica wikitesto]<div xmlns: dc = "http://purl.org/dc/elements/1.1/"
about = "http://www.example.com/books/wikinomics" >
Nel suo ultimo libro
<span property = "dc: title" > Wikinomics span> ,
<span property = "dc: creator" > Don Tapscott span>
spiega i profondi cambiamenti nella tecnologia,
demografia e affari.
Il libro dovrebbe essere pubblicato in
<span property = "dc: date" content = "2006-10-01" > ottobre 2006 span> .
div>
HTML5
[modifica | modifica wikitesto]
TAG[19]
SCOPO
Nuovi elementi strutturali e semantici
Header

Footer
Section
Nav
Article (nel caso di articoli in homepage)
Aside (contenuti correlati al principale)
Hgroup
Raggruppa i tag Heading
Didascalie per contenuti
Embed
Inserisce contenuti interattivi o multimediali
Ruby
Specifica le annotazioni Ruby
Wbr
Il browser può inserire un a capo
Definiscono barre degli strumenti o menu di scelta rapida
Widget informativi per gli utenti
mark
Parte di un testo segnato o evidenziato all'utente
pubdate e datetime
Tempo su 24 ore o una data nel calendario Gregoriano
Meter
Misura scalare di un intervallo noto o un valore frazionario
Progress
Stato di completamento di un compito
Picture
Contenitore per immagini
Microdati
Per ogni tag HTML si possono specificare degli attributi semantici
Nuovi attributi e tipi di input per i form
autofocus, placeholder e form

Input type: tel
Input type: search
Input type: url
Input type: email
Input type: number
Input type: range
Input type: color
Datalist
Completamento automatico ad un elemento del form
Autocomplete
Permette o no al browser di riempire i campi
Min, max
Definiscono il valore minimo e massimo consentito
Multiple
Permette all’utente possa inserire più valori per lo stesso input
Pattern
Verifica che il valore inserito rispetti determinate regole
Required
Rende obbligatoria la compilazione di uno spazio del form
Step
Definisce la distanza che intercorre tra un valore e il successivo
keygen
Generatore di chiavi numeriche all’interno di un form
output
Restituisce il risultato di un calcolo
API per Web Applications
Applicazioni web offline (file ".manifest")
Dopo la prima sessione di navigazione online,
Indexed Database API
Creare e manipolare un database all’interno del browser
WebStorage API
Si possono ad esempio tenere aperti contemporaneamente
Web Workers API
Consentono l’esecuzione di pezzi di codice JavaScript
WebSocket API
Stabiliscono e mantengono una connessione dati tra browser
Drag and Drop
Trascinamento e rilascio di oggetti
Geolocation API
Geolocalizzazione
Multimedia
SVG e MathML
Immagini vettoriali e formule matematiche
Canvas/WebGL
API adatte a tracciare linee, cerchi, rettangoli, immagini e oggetti 3D
Video
Inserisce file video (prima fattibile solo con Adobe Flash)
Audio
Inserisce file audio
Elementi HTML4 deprecati

Haml
[modifica | modifica wikitesto]Esempio
[modifica | modifica wikitesto]
Haml
ERB
HTML
% div .category
% div .recipes
% h1 = ricetta . nome
% h3 = ricetta . categoria
% div
% h4 = ricetta . descrizione
< div class = "category" >
< div class = "ricette" >
< h1 > <% = ricetta . nome %> h1 >
< h3 > <% = ricetta . categoria %> h3 >
div >
< div >
< h4 > <% = ricetta . descrizione %> h4 >
<
div >
< div class = "category" >
< div class = "ricette" >
< h1 > Cookie h1 >
< h3 > Dessert h3 >
div >
< div >
< h4 > A base di pasta e zucchero. Di solito di forma circolare e ha circa 400 calorie. h4 >
div >
div >Note
[modifica | modifica wikitesto]Voci correlate
[modifica | modifica wikitesto]Collegamenti esterni
[modifica | modifica wikitesto]