SlideShare a Scribd company logo
1 of 43
I linguaggi del Web – 2ª Ed. (1° Giorno)

 Diego La Monica – Web Solution Developer
 Email:       me@diegolamonica.info
 Web:         http://diegolamonica.info
 Twitter:     http://twitter.com/jast/
 Slide Share: http://slideshare.net/diego.la.monica/
 Skype:       diego.la.monica
 Mobile:      +39 333 7235382
Chi sono?
●   Web solution developer
●   Membro di IWA/HWG
●   Membro del Consiglio Direttivo di IWA Italy da Febbraio 2009




                                                                     2
●   Membro del Gruppo di Lavoro Protocols & Format istituito dal W3C per
conto di IWA/HWG
●   Autore del tool “Wi.Li.” http://wili.diegolamonica.info
●   Autore del framework JavaScript “JAST” http://jastegg.it
●   Autore del framework PHP “ALPHA”
http://github.com/diegolamonica/ALPHA/

                  I linguaggi del Web – Diego La Monica – http://diegolamonica.info
                  International Webmasters Association - http://www.iwa.it
Il programma della giornata

 Cos’è HTML
 I tag e la loro rappresentazione




                                                             3
 Differenze tra le grammatiche HTML e XHTML
 La suddivisione di una pagina
 Strutturare una pagina autodescrittiva
 HTML 5
          I linguaggi del Web – Diego La Monica – http://diegolamonica.info
          International Webmasters Association - http://www.iwa.it
Nota sulla slide


Nell'angolo inferiore destro di alcune slide è
presente un “pallino” come è visibile in


                                                            4
questa slide.
Esso indica che per la slide è prevista una
sessione pratica.

         I linguaggi del Web – Diego La Monica – http://diegolamonica.info
         International Webmasters Association - http://www.iwa.it
Modulo 1 - (X)HTML
                                                   5
I linguaggi del Web – Diego La Monica – http://diegolamonica.info
International Webmasters Association - http://www.iwa.it
Cos’è HTML
 HTML = HyperText Markup Language

 È un linguaggio di strutturazione dei contenuti




                                                               6
 È un documento di testo opportunamente strutturato e
  servito al browser tipicamente come text/html (tramite
  l’estensione .htm o .html)

 Non sono necessari editor specifici per la composizione di una
  pagina HTML anche se aiutano e rendono veloce lo sviluppo
            I linguaggi del Web – Diego La Monica – http://diegolamonica.info
            International Webmasters Association - http://www.iwa.it
La sintassi di HTML
 Non è rigorosa

 Ogni tag ha il suo scopo




                                                              7
 Esistono diverse versioni di HTML

 L’ultima ufficiale è HTML 4.01

 La nuova edizione (l’evoluzione) è HTML 5 ancora in
 stato di Working Draft
           I linguaggi del Web – Diego La Monica – http://diegolamonica.info
           International Webmasters Association - http://www.iwa.it
Commentare il markup




                                                            8
<!--
Questo testo non verrà mai renderizzato dal
browser, ma sarà presente nell'HTML della pagina
 -->




         I linguaggi del Web – Diego La Monica – http://diegolamonica.info
         International Webmasters Association - http://www.iwa.it
I tag e la loro rappresentazione
Un tag è un'informazione che struttura un
contenuto presente nella pagina.
 Un tag è identificato da una parola chiave




                                                                 9
                                                                 <li>
  racchiusa tra parentesi triangolari ( < e > )
 Un tag può essere vuoto o può                                 <img>
  contenere informazioni aggiuntive                         <p>Testo</p>

 Un tag può contenere altre informazioni, e             <p>Testo <em>in
  quindi eventuali altri tag al suo interno             corsivo</em></p>

 Un tag aperto non deve essere necessariamente chiuso

              I linguaggi del Web – Diego La Monica – http://diegolamonica.info
              International Webmasters Association - http://www.iwa.it
Elementi essenziali

<html> … </html>
  Contenitore principale che racchiude il contenuto della pagina




                                                    10
<head> … </head>
  Contenitore le informazioni da trasmettere al browser
<title> … </title>
  Indica al browser cosa scrivere sulla barra del titolo.
<body> … </body>
  Contiene il documento che verrà renderizzato dal browser

            I linguaggi del Web – Diego La Monica – http://diegolamonica.info
            International Webmasters Association - http://www.iwa.it
Le entità
In dipendenza della codifica della pagina potremmo
avere specifiche entità.
Tuttavia tutti i browser implementano quei i riservati al




                                                    11
markup ( <, >, ", ', & ).
In base alla codifica le entità disponibili nella pagina
possono variare:
http://www.w3schools.com/tags/ref_entities.asp e
http://www.w3schools.com/tags/ref_symbols.asp
            I linguaggi del Web – Diego La Monica – http://diegolamonica.info
            International Webmasters Association - http://www.iwa.it
HTML4.01
 Direttiva: indica che si specifica la definizione del tipo di documento

                       Specifica pubblica (distribuzione pubblica) altrimenti
                       potrebbe essere SYSTEM.




                                                          12
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
    "http://www.w3.org/TR/html4/strict.dtd">
                         Identificatore: quando la specifica è pubblica
                         questa informazione risulta obbligatoria e ne
                         descrive il nome pubblico della DTD


  La presenza di un URL indica che si tratta di una DTD esterna


              I linguaggi del Web – Diego La Monica – http://diegolamonica.info
              International Webmasters Association - http://www.iwa.it
Elementi dell'HTML
Gli elementi (o tag) dell'HTML
definiscono la struttura di una parte del
documento.
Gli elementi si suddividono in:
Block-level
Inline
                                                13
        I linguaggi del Web – Diego La Monica – http://diegolamonica.info
        International Webmasters Association - http://www.iwa.it
Elementi Block-level
Possono contenere testo o elementi di
tipo



                                               14
Block-level
Inline
Alcuni elementi di tipo block level:
   body, div, blockquote
       I linguaggi del Web – Diego La Monica – http://diegolamonica.info
       International Webmasters Association - http://www.iwa.it
Elementi inline


Possono contenere testo e solo elementi



                                               15
di tipo Inline.
Alcuni elementi di tipo inline level:
a, span, em, strong, q, img

       I linguaggi del Web – Diego La Monica – http://diegolamonica.info
       International Webmasters Association - http://www.iwa.it
Gli attributi

Ciascun tag ha una serie di
caratteristiche (attributi) che ne


                                              16
descrivono l'aspetto semantico,
rappresentativo e lo stato. Altri
consentono di gestire gli eventi
legati allo specifico elemento.
      I linguaggi del Web – Diego La Monica – http://diegolamonica.info
      International Webmasters Association - http://www.iwa.it
Attributi semantici

Attributi che aiutano l'uomo o la
tecnologia nella corretta comprensione e
identificazione dell'elemento:

alt, longdesc, title, for, lang …
                                                17
        I linguaggi del Web – Diego La Monica – http://diegolamonica.info
        International Webmasters Association - http://www.iwa.it
Attributi presentazionali
Attributi che alterano l'aspetto
estetico* dell'elemento:

border, backcolor, background,
forecolor, align …


*Solo nelle DTD di tipo Transitional
                                                18
        I linguaggi del Web – Diego La Monica – http://diegolamonica.info
        International Webmasters Association - http://www.iwa.it
Attributi di stato

Speciali attributi che descrivono
lo stato dell'elemento in un
preciso istante:

checked, selected, readonly, disabled
                                               19
       I linguaggi del Web – Diego La Monica – http://diegolamonica.info
       International Webmasters Association - http://www.iwa.it
Attributi per gli eventi

Attributi che consentono di programmare il
comportamento della pagina, dell'elemento
o di eseguire determinate azioni al verificarsi


                                                       20
di un preciso evento:
            onclick, onfocus, onblur …
Attenzione! Questi attributi violano i principi di accessibilità della pagina
(Dlgs 4/2004) se non si prevede un comportamento analogo in caso di
disattivazione del JavaScript.
               I linguaggi del Web – Diego La Monica – http://diegolamonica.info
               International Webmasters Association - http://www.iwa.it
Specifiche di HTML 4.01

Documentazione
Ufficiale:        http://www.w3.org/TR/html401/




                                                     21
Trad. italiana:   http://www.diodati.org/w3c/html401/cover.html

DTD
Ufficiale:        http://www.w3.org/TR/html401/sgml/dtd.html
Trad. italiana:   http://www.diodati.org/w3c/html401/sgml/dtd.html

             I linguaggi del Web – Diego La Monica – http://diegolamonica.info
             International Webmasters Association - http://www.iwa.it
Per pochi... solo per IE...
Per consentire a Internet Explorer di caricare dei
contenuti che gli altri browser non dovranno
interpretare è necessario utilizzare dei tag di




                                                 22
commento strutturati in modo particolare:
  <!--[if lte IE 6]>

  <p>Paragrafo visto da IE 6 e precedenti</p>

  <![endif]-->
         I linguaggi del Web – Diego La Monica – http://diegolamonica.info
         International Webmasters Association - http://www.iwa.it
… e per tutti gli altri?
Secondo Microsoft per servire delle parti di HTML
a tutti browser ad eccezione di IE è necessario




                                                  23
utilizzare la seguente sintassi:
  <![if !IE]> … <![endif]>

Ma il markup diventerà invalido... Soluzione?
  <!--[if !IE]>--> … <!--<![endif]-->


          I linguaggi del Web – Diego La Monica – http://diegolamonica.info
          International Webmasters Association - http://www.iwa.it
Codici condizionali di IE
Operatore Descrizione
IE              Identifica Internet Explorer o se seguito da un numero è
                un vettore di versionamento
lt              “Less Than” = Minore Di




                                                      24
lte             “Less Than Equal” = Minore o uguale a
gt              “Greater Than” = Maggiore di
gte             “Greater Than Equal” = Maggiore o uguale a
!               Negazione (NOT)
&,|             Operatori And e Or
()              Raggruppamento di sottoespressioni
True, False     Costanti booleane Vero Falso

              I linguaggi del Web – Diego La Monica – http://diegolamonica.info
              International Webmasters Association - http://www.iwa.it
Introdurre l'XML

<?xml version="1.0" encoding="utf-8"?>
 Tutti i browser interpretano correttamente XML




                                                  25
 (servito come application/xml)
 A Internet Explorer (fino alla versione 8) bisogna
 servire il contenuto come text/html.
 Internet Explorer dalla versione 9 supporta XML con
 il corretto mime-type.

          I linguaggi del Web – Diego La Monica – http://diegolamonica.info
          International Webmasters Association - http://www.iwa.it
La sintassi XML
 XML = eXtensible Markup Language
 XML è più rigoroso: ogni tag aperto deve essere
 necessariamente chiuso



                                                  26
 Esiste una differenza tra documenti XML ben
 strutturati e documenti XML validi
 XML è una grammatica di base, ciascuna
 implementazione è un particolare dialetto che
 aderisce a precise regole
          I linguaggi del Web – Diego La Monica – http://diegolamonica.info
          International Webmasters Association - http://www.iwa.it
Il dialetto XHTML
 XHTML = eXtensible HyperText Markup Language
 È una grammatica XML per descrivere documenti HTML
 Esistono diverse versioni di questo dialetto, tra cui:




                                                    27
 XHTML 1.0 Transitional pensato per consentire una
  graduale migrazione dei contenuti prodotti in HTML 4.01 verso
  la nuova grammatica.
 XHTML 1.0 Strict per chi produce un contenuto HTML
  seguendo la “strutturazione formale” di XML
            I linguaggi del Web – Diego La Monica – http://diegolamonica.info
            International Webmasters Association - http://www.iwa.it
Alcune grammatiche di XHTML
                                                                   Frameset , frame
XHTML 1.0 Frameset
<!DOCTYPE html PUBLIC                                              noframes, ecc...
     "-//W3C//DTD XHTML 1.0 Frameset//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">


                                                                        elementi inline




                                                                  28
XHTML 1.0 Transitional                                                  nel body, alcuni
<!DOCTYPE html PUBLIC                                               attributi(es. name,
     "-//W3C//DTD XHTML 1.0 Transitional//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">   bgcolor,align, target)


XHTML 1.0 Strict                                             Focalizzato sullo scopo di
<!DOCTYPE html PUBLIC                                       ciascun elemento e non su
     "-//W3C//DTD XHTML 1.0 Strict//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">            come esso appare!




                 I linguaggi del Web – Diego La Monica – http://diegolamonica.info
                 International Webmasters Association - http://www.iwa.it
XHTML come una matrioska
<?xml version="1.0" encodin="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>Ciao mondo!</title>
    </head>




                                                       29
    <body>
        <div>
             <h1>Questo è il titolo di primo livello</h1>
             <p>
                  Paragrafo 1
             </p>
             <div>
                  Sottocontenuto della prima sezione
             </div>
        </div>
        …
    <body>
</html>


               I linguaggi del Web – Diego La Monica – http://diegolamonica.info
               International Webmasters Association - http://www.iwa.it
La struttura di un documento
Le informazioni contenute in un documento
HTML/XHTML sono (o possono essere) rivolte a tre
diversi fruitori (target della pagina):

 Utente

 Browser

 Motore di ricerca
                                                    30
            I linguaggi del Web – Diego La Monica – http://diegolamonica.info
            International Webmasters Association - http://www.iwa.it
Strutturare l'header
Elementi che aiutano a strutturare un buon header:
 La codifica della pagina ( UTF-8, UTF-16 …)
 Indicare un titolo (es. <title>Titolo della pagina</title>)




                                                      31
 Una FavIcon
 È buona prassi inserire l'autore della pagina
 Indicazioni sulla lingua del documento
 Indicazioni sui contenuti della pagina
 Indicare la durata, parole chiave e descrizione del documento

              I linguaggi del Web – Diego La Monica – http://diegolamonica.info
              International Webmasters Association - http://www.iwa.it
Strutturare il documento
Significa progettare un documento di testo con i corretti
accorgimenti.
Ciascun capitolo di un libro viene identificato da un numero di




                                                     32
capitolo formattato secondo un preciso stile (un intestazione di
secondo livello) mentre il titolo di un libro corrisponde ad
un'intestazione di primo livello.
Una casa con le finestre al posto delle porte non sarebbe una buona
casa.
Un sito non strutturato rispettando il valore semantico di ciascun
elemento, non è un buon sito.
             I linguaggi del Web – Diego La Monica – http://diegolamonica.info
             International Webmasters Association - http://www.iwa.it
Suddividere una pagina

   Intestazione
                                       Esistono diverse
                                         varianti di una



                                           33
      Corpo                           rappresentazione
                                             comunque
                                          sintetizzata in
   Piè di pagina                        questo schema

   I linguaggi del Web – Diego La Monica – http://diegolamonica.info
   International Webmasters Association - http://www.iwa.it
Suddividere una pagina
Una pagina web è tipicamente progettata con le seguenti sezioni:
 Intestazione
 Logo e altre informazioni primarie




                                                     34
 Corpo
 Contenuti generali (con struttura che tipicamente va da 1 a 4
  colonne)
 Piè di pagina
 Recapiti aziendali copyright e Partita IVA

             I linguaggi del Web – Diego La Monica – http://diegolamonica.info
             International Webmasters Association - http://www.iwa.it
Back to the future: HTML 5
Il “W3C HTML Working Group” dal 2004 (prima si era
costituito il WHATWG non facente parte del W3C) sta
lavorando alle nuove specifiche denominate HTML 5.




                                                   35
Pro: molto più orientato al “Web 2.0” e alle applicazioni
basate su Web

Contro: finquando i vari browser non adotteranno la
specifica avremo da occuparci della retrocompatibilità
           I linguaggi del Web – Diego La Monica – http://diegolamonica.info
           International Webmasters Association - http://www.iwa.it
Alcuni particolari di HTML 5
●   Il namespace: <!DOCTYPE HTML>

●   Nuovi   elementi      più     semantici:        nav,      header,
    footer, figure




                                                    36
●   Nuove caratteristiche per gli elementi di un form:
    required, placeholder

●   contemplati nuovi type: email, tel, number,
    date, url
            I linguaggi del Web – Diego La Monica – http://diegolamonica.info
            International Webmasters Association - http://www.iwa.it
Elemento HEADER

L'elemento       header               rappresenta una



                                                37
sezione di introduzione o di supporto alla

navigazione.

        I linguaggi del Web – Diego La Monica – http://diegolamonica.info
        International Webmasters Association - http://www.iwa.it
Elemento FOOTER
L'elemento footer rappresenta la parte inferiore della

sezione in cui è situato. footer, solitamente, contiene




                                                     38
informazioni inerenti la sua sezione come, per esempio, chi ha

scritto un articolo, collegamenti a documenti correlati, dati di

copyright e simili.
             I linguaggi del Web – Diego La Monica – http://diegolamonica.info
             International Webmasters Association - http://www.iwa.it
Elemento ASIDE

L'elemento    aside       rappresenta la parte della pagina,

contenente del testo ed affiancata ai contenuti principali



                                                     39
del sito, separato dai contenuti stessi. Tale sezione è da

considerarsi come una barra laterale nella pagina web.

             I linguaggi del Web – Diego La Monica – http://diegolamonica.info
             International Webmasters Association - http://www.iwa.it
Elemento NAV
L'elemento nav rappresenta la sezione di una pagina dalla quale è possibile
accedere ad altre pagine oppure a link àncora all'interno dello stesso
documento: una sezione con link di navigazione (per esempio l'indice di una




                                                       40
pagina di un Wiki).

Non tutti i link del documento dovranno essere necessariamente inclusi in un
elemento nav ma bisogna ricordare che la semantica di questo elemento
descrive proprio un contenitore di link per la navigazione primaria.

               I linguaggi del Web – Diego La Monica – http://diegolamonica.info
               International Webmasters Association - http://www.iwa.it
HTML5 per tutti
L'attuale problema di HTML5 è di non essere supportato da tutti i
browser. Tuttavia esistono diverse soluzioni che ci consentono di
implementare le nostre pagine in HTML5 e garantirci una




                                                         41
rappresentazione quasi equivalente riproducendo buona parte delle
regole definite per il nuovo markup.
Per Internet Explorer:
http://remysharp.com/downloads/html5.js
Per Firefox 2:
http://blog.whatwg.org/supporting-new-elements-in-firefox-2

                 I linguaggi del Web – Diego La Monica – http://diegolamonica.info
                 International Webmasters Association - http://www.iwa.it
XHTML 2.0… sogno di una notte di mezza estate

Nella calda estate del 2009 il W3C ha decretato la chiusura del gruppo
di lavoro che si era dedicato alla definizione delle specifiche di
XHTML 2. Tra gli italiani del gruppo c'era Alessio Cartocci.




                                                      42
Lo scopo ufficiale è stato di veicolare tutte le risorse verso HTML5.

XHTML è una serializzazione XML della sintassi HTML pertanto
deve seguire e implementare le specifiche HTML con le regole
imposte da XML.

       Il futuro è in HTML5 o, nella versione XML, XHTML 5!

              I linguaggi del Web – Diego La Monica – http://diegolamonica.info
              International Webmasters Association - http://www.iwa.it
I linguaggi del Web – 2ª Ed. (1° Giorno)

 Diego La Monica – Web Solution Developer
 Email:       me@diegolamonica.info
 Web:         http://diegolamonica.info
 Twitter:     http://twitter.com/jast/
 Slide Share: http://slideshare.net/diego.la.monica/
 Skype:       diego.la.monica
 Mobile:      +39 333 7235382

More Related Content

Viewers also liked

Programmazione web - Lezione 2 - Anatomia dei siti... alla griglia
Programmazione web - Lezione 2 - Anatomia dei siti... alla grigliaProgrammazione web - Lezione 2 - Anatomia dei siti... alla griglia
Programmazione web - Lezione 2 - Anatomia dei siti... alla griglianois3lab
 
Ancora anatomia, le pagine HTML(5)
Ancora anatomia, le pagine HTML(5)Ancora anatomia, le pagine HTML(5)
Ancora anatomia, le pagine HTML(5)nois3lab
 
MODULO OD1: Gli Open data, cosa sono e a cosa servono
MODULO OD1: Gli Open data, cosa sono e a cosa servonoMODULO OD1: Gli Open data, cosa sono e a cosa servono
MODULO OD1: Gli Open data, cosa sono e a cosa servonoFrancesco Ciclosi
 
MODULO OD2: Breve storia degli Open Data da Tim Barners Lee a Monti passando ...
MODULO OD2: Breve storia degli Open Data da Tim Barners Lee a Monti passando ...MODULO OD2: Breve storia degli Open Data da Tim Barners Lee a Monti passando ...
MODULO OD2: Breve storia degli Open Data da Tim Barners Lee a Monti passando ...Francesco Ciclosi
 
MODULO 00 - Presentazione del corso
MODULO 00 - Presentazione del corsoMODULO 00 - Presentazione del corso
MODULO 00 - Presentazione del corsoFrancesco Ciclosi
 
CSS corso base (classi seconde, mod 1)
CSS corso base (classi seconde, mod 1)CSS corso base (classi seconde, mod 1)
CSS corso base (classi seconde, mod 1)Matteo Ziviani
 
Epub - Corso CIERRE Edizioni
Epub - Corso CIERRE EdizioniEpub - Corso CIERRE Edizioni
Epub - Corso CIERRE EdizioniMatteo Ziviani
 
Laboratorio eventi e turismo 2012 presentazione
Laboratorio eventi e turismo 2012  presentazioneLaboratorio eventi e turismo 2012  presentazione
Laboratorio eventi e turismo 2012 presentazioneAnnaPedroncelli
 
Esperienze ed utilizzo degli Open Data
Esperienze ed utilizzo degli Open DataEsperienze ed utilizzo degli Open Data
Esperienze ed utilizzo degli Open DataVincenzo Patruno
 
MODULO OD4: Un esempio di utilizzo degli Open Data
MODULO OD4: Un esempio di utilizzo degli Open DataMODULO OD4: Un esempio di utilizzo degli Open Data
MODULO OD4: Un esempio di utilizzo degli Open DataFrancesco Ciclosi
 
Educazione digitale forum pa challenge a #sce2014 1 (1)
Educazione digitale forum pa challenge a #sce2014 1 (1)Educazione digitale forum pa challenge a #sce2014 1 (1)
Educazione digitale forum pa challenge a #sce2014 1 (1)FPA
 
Presentazione Rete Net Garage
Presentazione Rete Net GaragePresentazione Rete Net Garage
Presentazione Rete Net GarageE-R
 
Linee guida per i siti web delle pubbliche amministrazioni
Linee guida per i siti web delle pubbliche amministrazioniLinee guida per i siti web delle pubbliche amministrazioni
Linee guida per i siti web delle pubbliche amministrazioniNethics
 
MODULO 01 - Elementi di base
MODULO 01 - Elementi di baseMODULO 01 - Elementi di base
MODULO 01 - Elementi di baseFrancesco Ciclosi
 
La sicurezza informatica nello studio legale
La sicurezza informatica nello studio legaleLa sicurezza informatica nello studio legale
La sicurezza informatica nello studio legalejekil
 
Buone abitudini di sicurezza informatica
Buone abitudini di sicurezza informaticaBuone abitudini di sicurezza informatica
Buone abitudini di sicurezza informaticaQabiria
 
Electronics LAB [with Arduino] | DAY 2
Electronics LAB [with Arduino] | DAY 2Electronics LAB [with Arduino] | DAY 2
Electronics LAB [with Arduino] | DAY 2Daniele Costarella
 

Viewers also liked (20)

Programmazione web - Lezione 2 - Anatomia dei siti... alla griglia
Programmazione web - Lezione 2 - Anatomia dei siti... alla grigliaProgrammazione web - Lezione 2 - Anatomia dei siti... alla griglia
Programmazione web - Lezione 2 - Anatomia dei siti... alla griglia
 
Ancora anatomia, le pagine HTML(5)
Ancora anatomia, le pagine HTML(5)Ancora anatomia, le pagine HTML(5)
Ancora anatomia, le pagine HTML(5)
 
MODULO OD1: Gli Open data, cosa sono e a cosa servono
MODULO OD1: Gli Open data, cosa sono e a cosa servonoMODULO OD1: Gli Open data, cosa sono e a cosa servono
MODULO OD1: Gli Open data, cosa sono e a cosa servono
 
MODULO OD2: Breve storia degli Open Data da Tim Barners Lee a Monti passando ...
MODULO OD2: Breve storia degli Open Data da Tim Barners Lee a Monti passando ...MODULO OD2: Breve storia degli Open Data da Tim Barners Lee a Monti passando ...
MODULO OD2: Breve storia degli Open Data da Tim Barners Lee a Monti passando ...
 
We, the Web 2.0
We, the Web 2.0We, the Web 2.0
We, the Web 2.0
 
MODULO 00 - Presentazione del corso
MODULO 00 - Presentazione del corsoMODULO 00 - Presentazione del corso
MODULO 00 - Presentazione del corso
 
CSS corso base (classi seconde, mod 1)
CSS corso base (classi seconde, mod 1)CSS corso base (classi seconde, mod 1)
CSS corso base (classi seconde, mod 1)
 
Epub - Corso CIERRE Edizioni
Epub - Corso CIERRE EdizioniEpub - Corso CIERRE Edizioni
Epub - Corso CIERRE Edizioni
 
Laboratorio eventi e turismo 2012 presentazione
Laboratorio eventi e turismo 2012  presentazioneLaboratorio eventi e turismo 2012  presentazione
Laboratorio eventi e turismo 2012 presentazione
 
Esperienze ed utilizzo degli Open Data
Esperienze ed utilizzo degli Open DataEsperienze ed utilizzo degli Open Data
Esperienze ed utilizzo degli Open Data
 
MODULO OD4: Un esempio di utilizzo degli Open Data
MODULO OD4: Un esempio di utilizzo degli Open DataMODULO OD4: Un esempio di utilizzo degli Open Data
MODULO OD4: Un esempio di utilizzo degli Open Data
 
Educazione digitale forum pa challenge a #sce2014 1 (1)
Educazione digitale forum pa challenge a #sce2014 1 (1)Educazione digitale forum pa challenge a #sce2014 1 (1)
Educazione digitale forum pa challenge a #sce2014 1 (1)
 
Alfabetizzazione
AlfabetizzazioneAlfabetizzazione
Alfabetizzazione
 
Presentazione Rete Net Garage
Presentazione Rete Net GaragePresentazione Rete Net Garage
Presentazione Rete Net Garage
 
Linee guida per i siti web delle pubbliche amministrazioni
Linee guida per i siti web delle pubbliche amministrazioniLinee guida per i siti web delle pubbliche amministrazioni
Linee guida per i siti web delle pubbliche amministrazioni
 
MODULO 01 - Elementi di base
MODULO 01 - Elementi di baseMODULO 01 - Elementi di base
MODULO 01 - Elementi di base
 
La sicurezza informatica nello studio legale
La sicurezza informatica nello studio legaleLa sicurezza informatica nello studio legale
La sicurezza informatica nello studio legale
 
Sicurezza informatica nelle Scuole
Sicurezza informatica nelle ScuoleSicurezza informatica nelle Scuole
Sicurezza informatica nelle Scuole
 
Buone abitudini di sicurezza informatica
Buone abitudini di sicurezza informaticaBuone abitudini di sicurezza informatica
Buone abitudini di sicurezza informatica
 
Electronics LAB [with Arduino] | DAY 2
Electronics LAB [with Arduino] | DAY 2Electronics LAB [with Arduino] | DAY 2
Electronics LAB [with Arduino] | DAY 2
 

Similar to I linguaggi del web - seconda edizione (1° giornata)

Html e Css - 1 | WebMaster & WebDesigner
Html e Css - 1 | WebMaster & WebDesigner Html e Css - 1 | WebMaster & WebDesigner
Html e Css - 1 | WebMaster & WebDesigner Matteo Magni
 
Guida introduttiva al codice HTML
Guida introduttiva al codice HTMLGuida introduttiva al codice HTML
Guida introduttiva al codice HTMLEnrico Mainero
 
Html e Css - 1 | WebMaster & WebDesigner
Html e Css - 1 | WebMaster & WebDesignerHtml e Css - 1 | WebMaster & WebDesigner
Html e Css - 1 | WebMaster & WebDesignerMatteo Magni
 
I linguaggi del web - seconda edizione (3° giornata)
I linguaggi del web - seconda edizione (3° giornata)I linguaggi del web - seconda edizione (3° giornata)
I linguaggi del web - seconda edizione (3° giornata)Diego La Monica
 
Le novità di Ionic 4- Il framework basato su Angular per sviluppare applicazi...
Le novità di Ionic 4- Il framework basato su Angular per sviluppare applicazi...Le novità di Ionic 4- Il framework basato su Angular per sviluppare applicazi...
Le novità di Ionic 4- Il framework basato su Angular per sviluppare applicazi...Antonio Gallo
 
HTML5 e Css3 - 1 | WebMaster & WebDesigner
HTML5 e Css3 - 1 | WebMaster & WebDesignerHTML5 e Css3 - 1 | WebMaster & WebDesigner
HTML5 e Css3 - 1 | WebMaster & WebDesignerMatteo Magni
 
Html e Css - 2 | WebMaster & WebDesigner
 Html e Css - 2 | WebMaster & WebDesigner Html e Css - 2 | WebMaster & WebDesigner
Html e Css - 2 | WebMaster & WebDesignerMatteo Magni
 
Html e Css - 2 | WebMaster & WebDesigner
Html e Css - 2 | WebMaster & WebDesignerHtml e Css - 2 | WebMaster & WebDesigner
Html e Css - 2 | WebMaster & WebDesignerMatteo Magni
 
05 - Introduzione al Web II
05 - Introduzione al Web II05 - Introduzione al Web II
05 - Introduzione al Web IIGiuseppe Vizzari
 
Cms, Content Management System. Sistema di gestione dei contenuti
Cms, Content Management System. Sistema di gestione dei contenutiCms, Content Management System. Sistema di gestione dei contenuti
Cms, Content Management System. Sistema di gestione dei contenutiGiulia S
 
•Blog: quali tecnologie per il futuro?
•Blog: quali tecnologie per il futuro?•Blog: quali tecnologie per il futuro?
•Blog: quali tecnologie per il futuro?IWA
 
Wordpress - Primi passi | Mafaldida
Wordpress  - Primi passi | MafaldidaWordpress  - Primi passi | Mafaldida
Wordpress - Primi passi | MafaldidaGiulia Costa
 
Degree Dissertation
Degree DissertationDegree Dissertation
Degree Dissertationbbg5ne
 

Similar to I linguaggi del web - seconda edizione (1° giornata) (20)

Html e Css - 1 | WebMaster & WebDesigner
Html e Css - 1 | WebMaster & WebDesigner Html e Css - 1 | WebMaster & WebDesigner
Html e Css - 1 | WebMaster & WebDesigner
 
Guida introduttiva al codice HTML
Guida introduttiva al codice HTMLGuida introduttiva al codice HTML
Guida introduttiva al codice HTML
 
Html e Css - 1 | WebMaster & WebDesigner
Html e Css - 1 | WebMaster & WebDesignerHtml e Css - 1 | WebMaster & WebDesigner
Html e Css - 1 | WebMaster & WebDesigner
 
I linguaggi del web - seconda edizione (3° giornata)
I linguaggi del web - seconda edizione (3° giornata)I linguaggi del web - seconda edizione (3° giornata)
I linguaggi del web - seconda edizione (3° giornata)
 
8. Architetture web
8. Architetture web8. Architetture web
8. Architetture web
 
Le novità di Ionic 4- Il framework basato su Angular per sviluppare applicazi...
Le novità di Ionic 4- Il framework basato su Angular per sviluppare applicazi...Le novità di Ionic 4- Il framework basato su Angular per sviluppare applicazi...
Le novità di Ionic 4- Il framework basato su Angular per sviluppare applicazi...
 
HTML5 e Css3 - 1 | WebMaster & WebDesigner
HTML5 e Css3 - 1 | WebMaster & WebDesignerHTML5 e Css3 - 1 | WebMaster & WebDesigner
HTML5 e Css3 - 1 | WebMaster & WebDesigner
 
Html e Css - 2 | WebMaster & WebDesigner
 Html e Css - 2 | WebMaster & WebDesigner Html e Css - 2 | WebMaster & WebDesigner
Html e Css - 2 | WebMaster & WebDesigner
 
Html e Css - 2 | WebMaster & WebDesigner
Html e Css - 2 | WebMaster & WebDesignerHtml e Css - 2 | WebMaster & WebDesigner
Html e Css - 2 | WebMaster & WebDesigner
 
05 - Introduzione al Web II
05 - Introduzione al Web II05 - Introduzione al Web II
05 - Introduzione al Web II
 
Cms, Content Management System. Sistema di gestione dei contenuti
Cms, Content Management System. Sistema di gestione dei contenutiCms, Content Management System. Sistema di gestione dei contenuti
Cms, Content Management System. Sistema di gestione dei contenuti
 
LIT_0.pdf
LIT_0.pdfLIT_0.pdf
LIT_0.pdf
 
•Blog: quali tecnologie per il futuro?
•Blog: quali tecnologie per il futuro?•Blog: quali tecnologie per il futuro?
•Blog: quali tecnologie per il futuro?
 
6. Introduzione al web
6. Introduzione al web6. Introduzione al web
6. Introduzione al web
 
jQuery
jQueryjQuery
jQuery
 
Java&Solidarieta
Java&SolidarietaJava&Solidarieta
Java&Solidarieta
 
Wordpress - Primi passi | Mafaldida
Wordpress  - Primi passi | MafaldidaWordpress  - Primi passi | Mafaldida
Wordpress - Primi passi | Mafaldida
 
Dal Click Al Web Server
Dal Click Al Web ServerDal Click Al Web Server
Dal Click Al Web Server
 
7. Il browser
7. Il browser7. Il browser
7. Il browser
 
Degree Dissertation
Degree DissertationDegree Dissertation
Degree Dissertation
 

More from Diego La Monica

E se non avessi davvero bisogno di un app?
E se non avessi davvero bisogno di un app?E se non avessi davvero bisogno di un app?
E se non avessi davvero bisogno di un app?Diego La Monica
 
Analisi comportamentale nelle app: pensare agli introiti contrasta con l'util...
Analisi comportamentale nelle app: pensare agli introiti contrasta con l'util...Analisi comportamentale nelle app: pensare agli introiti contrasta con l'util...
Analisi comportamentale nelle app: pensare agli introiti contrasta con l'util...Diego La Monica
 
Ideare un app e farla fruttare: quanti modi? Quale scegliere?
Ideare un app e farla fruttare: quanti modi? Quale scegliere?Ideare un app e farla fruttare: quanti modi? Quale scegliere?
Ideare un app e farla fruttare: quanti modi? Quale scegliere?Diego La Monica
 
Cordova: un viaggio di sola andata
Cordova: un viaggio di sola andataCordova: un viaggio di sola andata
Cordova: un viaggio di sola andataDiego La Monica
 
App di successo - quali strumenti? e le performance?
App di successo - quali strumenti? e le performance?App di successo - quali strumenti? e le performance?
App di successo - quali strumenti? e le performance?Diego La Monica
 
Applicazioni mobili: strumenti, costi soluzioni e peformance
Applicazioni mobili: strumenti, costi soluzioni e peformanceApplicazioni mobili: strumenti, costi soluzioni e peformance
Applicazioni mobili: strumenti, costi soluzioni e peformanceDiego La Monica
 
App di successo quali strumenti? e le performance?
App di successo quali strumenti? e le performance?App di successo quali strumenti? e le performance?
App di successo quali strumenti? e le performance?Diego La Monica
 
Presentarsi sul mercato globale con app di successo
Presentarsi sul mercato globale con app di successoPresentarsi sul mercato globale con app di successo
Presentarsi sul mercato globale con app di successoDiego La Monica
 
Presentarsi sul mercato globale con app di successo
Presentarsi sul mercato globale con app di successoPresentarsi sul mercato globale con app di successo
Presentarsi sul mercato globale con app di successoDiego La Monica
 
Strategie per applicazioni web prima o meglio dell'app nativa
Strategie per applicazioni web prima o meglio dell'app nativaStrategie per applicazioni web prima o meglio dell'app nativa
Strategie per applicazioni web prima o meglio dell'app nativaDiego La Monica
 
Applicazioni mobili: dall'ideazione alla pubblicazione
Applicazioni mobili: dall'ideazione alla pubblicazioneApplicazioni mobili: dall'ideazione alla pubblicazione
Applicazioni mobili: dall'ideazione alla pubblicazioneDiego La Monica
 
Competenze per lo sviluppo software nellera del web
Competenze per lo sviluppo software nellera del webCompetenze per lo sviluppo software nellera del web
Competenze per lo sviluppo software nellera del webDiego La Monica
 
Siti web, Portali, Rich Internet Application: tendenze e controtendenze
Siti web, Portali, Rich Internet Application: tendenze e controtendenzeSiti web, Portali, Rich Internet Application: tendenze e controtendenze
Siti web, Portali, Rich Internet Application: tendenze e controtendenzeDiego La Monica
 
ALPHA Architectural Overview
ALPHA Architectural OverviewALPHA Architectural Overview
ALPHA Architectural OverviewDiego La Monica
 
Giochi on line: soluzione per il marketing virale!
Giochi on line: soluzione per il marketing virale!Giochi on line: soluzione per il marketing virale!
Giochi on line: soluzione per il marketing virale!Diego La Monica
 

More from Diego La Monica (20)

E se non avessi davvero bisogno di un app?
E se non avessi davvero bisogno di un app?E se non avessi davvero bisogno di un app?
E se non avessi davvero bisogno di un app?
 
Analisi comportamentale nelle app: pensare agli introiti contrasta con l'util...
Analisi comportamentale nelle app: pensare agli introiti contrasta con l'util...Analisi comportamentale nelle app: pensare agli introiti contrasta con l'util...
Analisi comportamentale nelle app: pensare agli introiti contrasta con l'util...
 
Ideare un app e farla fruttare: quanti modi? Quale scegliere?
Ideare un app e farla fruttare: quanti modi? Quale scegliere?Ideare un app e farla fruttare: quanti modi? Quale scegliere?
Ideare un app e farla fruttare: quanti modi? Quale scegliere?
 
Cordova: un viaggio di sola andata
Cordova: un viaggio di sola andataCordova: un viaggio di sola andata
Cordova: un viaggio di sola andata
 
Css stuffs #3
Css   stuffs #3Css   stuffs #3
Css stuffs #3
 
App di successo - quali strumenti? e le performance?
App di successo - quali strumenti? e le performance?App di successo - quali strumenti? e le performance?
App di successo - quali strumenti? e le performance?
 
Css stuffs #2
Css   stuffs #2Css   stuffs #2
Css stuffs #2
 
Css stuffs #1
Css   stuffs #1Css   stuffs #1
Css stuffs #1
 
Applicazioni mobili: strumenti, costi soluzioni e peformance
Applicazioni mobili: strumenti, costi soluzioni e peformanceApplicazioni mobili: strumenti, costi soluzioni e peformance
Applicazioni mobili: strumenti, costi soluzioni e peformance
 
App di successo quali strumenti? e le performance?
App di successo quali strumenti? e le performance?App di successo quali strumenti? e le performance?
App di successo quali strumenti? e le performance?
 
Presentarsi sul mercato globale con app di successo
Presentarsi sul mercato globale con app di successoPresentarsi sul mercato globale con app di successo
Presentarsi sul mercato globale con app di successo
 
Presentarsi sul mercato globale con app di successo
Presentarsi sul mercato globale con app di successoPresentarsi sul mercato globale con app di successo
Presentarsi sul mercato globale con app di successo
 
Strategie per applicazioni web prima o meglio dell'app nativa
Strategie per applicazioni web prima o meglio dell'app nativaStrategie per applicazioni web prima o meglio dell'app nativa
Strategie per applicazioni web prima o meglio dell'app nativa
 
Applicazioni mobili: dall'ideazione alla pubblicazione
Applicazioni mobili: dall'ideazione alla pubblicazioneApplicazioni mobili: dall'ideazione alla pubblicazione
Applicazioni mobili: dall'ideazione alla pubblicazione
 
Competenze per lo sviluppo software nellera del web
Competenze per lo sviluppo software nellera del webCompetenze per lo sviluppo software nellera del web
Competenze per lo sviluppo software nellera del web
 
SVN/TRAC
SVN/TRACSVN/TRAC
SVN/TRAC
 
Siti web, Portali, Rich Internet Application: tendenze e controtendenze
Siti web, Portali, Rich Internet Application: tendenze e controtendenzeSiti web, Portali, Rich Internet Application: tendenze e controtendenze
Siti web, Portali, Rich Internet Application: tendenze e controtendenze
 
ALPHA Architectural Overview
ALPHA Architectural OverviewALPHA Architectural Overview
ALPHA Architectural Overview
 
Giochi on line: soluzione per il marketing virale!
Giochi on line: soluzione per il marketing virale!Giochi on line: soluzione per il marketing virale!
Giochi on line: soluzione per il marketing virale!
 
Pikno
PiknoPikno
Pikno
 

I linguaggi del web - seconda edizione (1° giornata)

  • 1. I linguaggi del Web – 2ª Ed. (1° Giorno) Diego La Monica – Web Solution Developer Email: me@diegolamonica.info Web: http://diegolamonica.info Twitter: http://twitter.com/jast/ Slide Share: http://slideshare.net/diego.la.monica/ Skype: diego.la.monica Mobile: +39 333 7235382
  • 2. Chi sono? ● Web solution developer ● Membro di IWA/HWG ● Membro del Consiglio Direttivo di IWA Italy da Febbraio 2009 2 ● Membro del Gruppo di Lavoro Protocols & Format istituito dal W3C per conto di IWA/HWG ● Autore del tool “Wi.Li.” http://wili.diegolamonica.info ● Autore del framework JavaScript “JAST” http://jastegg.it ● Autore del framework PHP “ALPHA” http://github.com/diegolamonica/ALPHA/ I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 3. Il programma della giornata  Cos’è HTML  I tag e la loro rappresentazione 3  Differenze tra le grammatiche HTML e XHTML  La suddivisione di una pagina  Strutturare una pagina autodescrittiva  HTML 5 I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 4. Nota sulla slide Nell'angolo inferiore destro di alcune slide è presente un “pallino” come è visibile in 4 questa slide. Esso indica che per la slide è prevista una sessione pratica. I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 5. Modulo 1 - (X)HTML 5 I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 6. Cos’è HTML  HTML = HyperText Markup Language  È un linguaggio di strutturazione dei contenuti 6  È un documento di testo opportunamente strutturato e servito al browser tipicamente come text/html (tramite l’estensione .htm o .html)  Non sono necessari editor specifici per la composizione di una pagina HTML anche se aiutano e rendono veloce lo sviluppo I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 7. La sintassi di HTML  Non è rigorosa  Ogni tag ha il suo scopo 7  Esistono diverse versioni di HTML  L’ultima ufficiale è HTML 4.01  La nuova edizione (l’evoluzione) è HTML 5 ancora in stato di Working Draft I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 8. Commentare il markup 8 <!-- Questo testo non verrà mai renderizzato dal browser, ma sarà presente nell'HTML della pagina --> I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 9. I tag e la loro rappresentazione Un tag è un'informazione che struttura un contenuto presente nella pagina.  Un tag è identificato da una parola chiave 9 <li> racchiusa tra parentesi triangolari ( < e > )  Un tag può essere vuoto o può <img> contenere informazioni aggiuntive <p>Testo</p>  Un tag può contenere altre informazioni, e <p>Testo <em>in quindi eventuali altri tag al suo interno corsivo</em></p>  Un tag aperto non deve essere necessariamente chiuso I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 10. Elementi essenziali <html> … </html> Contenitore principale che racchiude il contenuto della pagina 10 <head> … </head> Contenitore le informazioni da trasmettere al browser <title> … </title> Indica al browser cosa scrivere sulla barra del titolo. <body> … </body> Contiene il documento che verrà renderizzato dal browser I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 11. Le entità In dipendenza della codifica della pagina potremmo avere specifiche entità. Tuttavia tutti i browser implementano quei i riservati al 11 markup ( <, >, ", ', & ). In base alla codifica le entità disponibili nella pagina possono variare: http://www.w3schools.com/tags/ref_entities.asp e http://www.w3schools.com/tags/ref_symbols.asp I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 12. HTML4.01 Direttiva: indica che si specifica la definizione del tipo di documento Specifica pubblica (distribuzione pubblica) altrimenti potrebbe essere SYSTEM. 12 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> Identificatore: quando la specifica è pubblica questa informazione risulta obbligatoria e ne descrive il nome pubblico della DTD La presenza di un URL indica che si tratta di una DTD esterna I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 13. Elementi dell'HTML Gli elementi (o tag) dell'HTML definiscono la struttura di una parte del documento. Gli elementi si suddividono in: Block-level Inline 13 I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 14. Elementi Block-level Possono contenere testo o elementi di tipo 14 Block-level Inline Alcuni elementi di tipo block level: body, div, blockquote I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 15. Elementi inline Possono contenere testo e solo elementi 15 di tipo Inline. Alcuni elementi di tipo inline level: a, span, em, strong, q, img I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 16. Gli attributi Ciascun tag ha una serie di caratteristiche (attributi) che ne 16 descrivono l'aspetto semantico, rappresentativo e lo stato. Altri consentono di gestire gli eventi legati allo specifico elemento. I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 17. Attributi semantici Attributi che aiutano l'uomo o la tecnologia nella corretta comprensione e identificazione dell'elemento: alt, longdesc, title, for, lang … 17 I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 18. Attributi presentazionali Attributi che alterano l'aspetto estetico* dell'elemento: border, backcolor, background, forecolor, align … *Solo nelle DTD di tipo Transitional 18 I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 19. Attributi di stato Speciali attributi che descrivono lo stato dell'elemento in un preciso istante: checked, selected, readonly, disabled 19 I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 20. Attributi per gli eventi Attributi che consentono di programmare il comportamento della pagina, dell'elemento o di eseguire determinate azioni al verificarsi 20 di un preciso evento: onclick, onfocus, onblur … Attenzione! Questi attributi violano i principi di accessibilità della pagina (Dlgs 4/2004) se non si prevede un comportamento analogo in caso di disattivazione del JavaScript. I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 21. Specifiche di HTML 4.01 Documentazione Ufficiale: http://www.w3.org/TR/html401/ 21 Trad. italiana: http://www.diodati.org/w3c/html401/cover.html DTD Ufficiale: http://www.w3.org/TR/html401/sgml/dtd.html Trad. italiana: http://www.diodati.org/w3c/html401/sgml/dtd.html I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 22. Per pochi... solo per IE... Per consentire a Internet Explorer di caricare dei contenuti che gli altri browser non dovranno interpretare è necessario utilizzare dei tag di 22 commento strutturati in modo particolare: <!--[if lte IE 6]> <p>Paragrafo visto da IE 6 e precedenti</p> <![endif]--> I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 23. … e per tutti gli altri? Secondo Microsoft per servire delle parti di HTML a tutti browser ad eccezione di IE è necessario 23 utilizzare la seguente sintassi: <![if !IE]> … <![endif]> Ma il markup diventerà invalido... Soluzione? <!--[if !IE]>--> … <!--<![endif]--> I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 24. Codici condizionali di IE Operatore Descrizione IE Identifica Internet Explorer o se seguito da un numero è un vettore di versionamento lt “Less Than” = Minore Di 24 lte “Less Than Equal” = Minore o uguale a gt “Greater Than” = Maggiore di gte “Greater Than Equal” = Maggiore o uguale a ! Negazione (NOT) &,| Operatori And e Or () Raggruppamento di sottoespressioni True, False Costanti booleane Vero Falso I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 25. Introdurre l'XML <?xml version="1.0" encoding="utf-8"?>  Tutti i browser interpretano correttamente XML 25 (servito come application/xml)  A Internet Explorer (fino alla versione 8) bisogna servire il contenuto come text/html.  Internet Explorer dalla versione 9 supporta XML con il corretto mime-type. I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 26. La sintassi XML  XML = eXtensible Markup Language  XML è più rigoroso: ogni tag aperto deve essere necessariamente chiuso 26  Esiste una differenza tra documenti XML ben strutturati e documenti XML validi  XML è una grammatica di base, ciascuna implementazione è un particolare dialetto che aderisce a precise regole I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 27. Il dialetto XHTML  XHTML = eXtensible HyperText Markup Language  È una grammatica XML per descrivere documenti HTML  Esistono diverse versioni di questo dialetto, tra cui: 27  XHTML 1.0 Transitional pensato per consentire una graduale migrazione dei contenuti prodotti in HTML 4.01 verso la nuova grammatica.  XHTML 1.0 Strict per chi produce un contenuto HTML seguendo la “strutturazione formale” di XML I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 28. Alcune grammatiche di XHTML Frameset , frame XHTML 1.0 Frameset <!DOCTYPE html PUBLIC noframes, ecc... "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> elementi inline 28 XHTML 1.0 Transitional nel body, alcuni <!DOCTYPE html PUBLIC attributi(es. name, "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> bgcolor,align, target) XHTML 1.0 Strict Focalizzato sullo scopo di <!DOCTYPE html PUBLIC ciascun elemento e non su "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> come esso appare! I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 29. XHTML come una matrioska <?xml version="1.0" encodin="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Ciao mondo!</title> </head> 29 <body> <div> <h1>Questo è il titolo di primo livello</h1> <p> Paragrafo 1 </p> <div> Sottocontenuto della prima sezione </div> </div> … <body> </html> I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 30. La struttura di un documento Le informazioni contenute in un documento HTML/XHTML sono (o possono essere) rivolte a tre diversi fruitori (target della pagina):  Utente  Browser  Motore di ricerca 30 I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 31. Strutturare l'header Elementi che aiutano a strutturare un buon header:  La codifica della pagina ( UTF-8, UTF-16 …)  Indicare un titolo (es. <title>Titolo della pagina</title>) 31  Una FavIcon  È buona prassi inserire l'autore della pagina  Indicazioni sulla lingua del documento  Indicazioni sui contenuti della pagina  Indicare la durata, parole chiave e descrizione del documento I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 32. Strutturare il documento Significa progettare un documento di testo con i corretti accorgimenti. Ciascun capitolo di un libro viene identificato da un numero di 32 capitolo formattato secondo un preciso stile (un intestazione di secondo livello) mentre il titolo di un libro corrisponde ad un'intestazione di primo livello. Una casa con le finestre al posto delle porte non sarebbe una buona casa. Un sito non strutturato rispettando il valore semantico di ciascun elemento, non è un buon sito. I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 33. Suddividere una pagina Intestazione Esistono diverse varianti di una 33 Corpo rappresentazione comunque sintetizzata in Piè di pagina questo schema I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 34. Suddividere una pagina Una pagina web è tipicamente progettata con le seguenti sezioni:  Intestazione  Logo e altre informazioni primarie 34  Corpo  Contenuti generali (con struttura che tipicamente va da 1 a 4 colonne)  Piè di pagina  Recapiti aziendali copyright e Partita IVA I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 35. Back to the future: HTML 5 Il “W3C HTML Working Group” dal 2004 (prima si era costituito il WHATWG non facente parte del W3C) sta lavorando alle nuove specifiche denominate HTML 5. 35 Pro: molto più orientato al “Web 2.0” e alle applicazioni basate su Web Contro: finquando i vari browser non adotteranno la specifica avremo da occuparci della retrocompatibilità I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 36. Alcuni particolari di HTML 5 ● Il namespace: <!DOCTYPE HTML> ● Nuovi elementi più semantici: nav, header, footer, figure 36 ● Nuove caratteristiche per gli elementi di un form: required, placeholder ● contemplati nuovi type: email, tel, number, date, url I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 37. Elemento HEADER L'elemento header rappresenta una 37 sezione di introduzione o di supporto alla navigazione. I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 38. Elemento FOOTER L'elemento footer rappresenta la parte inferiore della sezione in cui è situato. footer, solitamente, contiene 38 informazioni inerenti la sua sezione come, per esempio, chi ha scritto un articolo, collegamenti a documenti correlati, dati di copyright e simili. I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 39. Elemento ASIDE L'elemento aside rappresenta la parte della pagina, contenente del testo ed affiancata ai contenuti principali 39 del sito, separato dai contenuti stessi. Tale sezione è da considerarsi come una barra laterale nella pagina web. I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 40. Elemento NAV L'elemento nav rappresenta la sezione di una pagina dalla quale è possibile accedere ad altre pagine oppure a link àncora all'interno dello stesso documento: una sezione con link di navigazione (per esempio l'indice di una 40 pagina di un Wiki). Non tutti i link del documento dovranno essere necessariamente inclusi in un elemento nav ma bisogna ricordare che la semantica di questo elemento descrive proprio un contenitore di link per la navigazione primaria. I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 41. HTML5 per tutti L'attuale problema di HTML5 è di non essere supportato da tutti i browser. Tuttavia esistono diverse soluzioni che ci consentono di implementare le nostre pagine in HTML5 e garantirci una 41 rappresentazione quasi equivalente riproducendo buona parte delle regole definite per il nuovo markup. Per Internet Explorer: http://remysharp.com/downloads/html5.js Per Firefox 2: http://blog.whatwg.org/supporting-new-elements-in-firefox-2 I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 42. XHTML 2.0… sogno di una notte di mezza estate Nella calda estate del 2009 il W3C ha decretato la chiusura del gruppo di lavoro che si era dedicato alla definizione delle specifiche di XHTML 2. Tra gli italiani del gruppo c'era Alessio Cartocci. 42 Lo scopo ufficiale è stato di veicolare tutte le risorse verso HTML5. XHTML è una serializzazione XML della sintassi HTML pertanto deve seguire e implementare le specifiche HTML con le regole imposte da XML. Il futuro è in HTML5 o, nella versione XML, XHTML 5! I linguaggi del Web – Diego La Monica – http://diegolamonica.info International Webmasters Association - http://www.iwa.it
  • 43. I linguaggi del Web – 2ª Ed. (1° Giorno) Diego La Monica – Web Solution Developer Email: me@diegolamonica.info Web: http://diegolamonica.info Twitter: http://twitter.com/jast/ Slide Share: http://slideshare.net/diego.la.monica/ Skype: diego.la.monica Mobile: +39 333 7235382