SlideShare a Scribd company logo
1 of 147
Download to read offline
Les standards du Web




                        Patrick VINCENT
 
    Partie 2    
                    pvincent@erasme.org
Partie 1

     Les pages HTML
    ­bases théoriques et pratiques­




                   
Principes
    du langage HTML




           
Définition

       HTML : HyperText Markup L
        HTML : HyperText Markup Language
       Langage universel de conception de pages Web créé en 
        1998 par le W3C (World Wide Web Consortium)
       Hypertexte : permet de créer des liens hypertextes vers 
        Hypertexte : permet de créer des liens hypertextes vers 
        des ressources locales ou distantes.
       C’est un langage de marquage de document, il permet 
        C’est un langage de marquage de document, il permet 
        de décrire la structure d’un document électronique sous 
        forme lisible par un être humain et interprétable par une 
        machine.
       XHTML = réécriture de l'HTML visant à assurer une 
        transition vers l'XML
                                   
Pas de mise en forme définitive

       HTML est un langage qui décrit le contenu, la 
        HTML est un langage qui décrit le contenu, la 
        structure logique et la présentation globale d’un 
        structure logique et la présentation globale d’un 
        document mais pas son aspect final à l’écran, qui 
        document mais pas son aspect final à l’écran, qui 
        dépend de l'outil utilisé (écran, synthétiseur vocal, 
        imprimante).
       Différent d'un document PDF par exemple.
       Ex : l' utilisateur peut modifier au moment de 
        l'affichage plusieurs paramètres de présentation.
        l'affichage plusieurs paramètres de présentation.
               Dans Firefox : 
                    Affichage > Taille du texte
                    Affichage > Style de la page 


                                            
page1.html
                          Hello World

       Ouvrir un bloc­note, taper et enregistrer le fichier 
        page1.html suivant :
        page1.html suivant :

          <html>
             <head>
             </head>
             <body>
                Hello World !
             </body>
          </html>


       Ouvrir ce fichier avec votre navigateur Firefox
       Vérifier le code source de ce fichier
                                  
Structuration avec des balises

       Les fichiers HTML sont constitués de texte.
       Pour définir la structure du document, on utilise des 
        balises délimitées par les caractères < et > 
        balises délimitées par les caractères < et >
       Balise ouvrante : <balise>
        Balise ouvrante : <balise>
        Balise fermante : </balise>
        Balise fermante : </balise>
       Les balises définissent une propriété qu'elles 
        appliquent au contenu qu'elles encadrent.
       Une balise ouverte doit toujours être fermée.


                  <balise1>contenu</balise1>

                                 
Exemples


       Titre de niveau 1           <h1>titre</h1>




       Mise en intonation 
                                  <strong>important</strong>


       Paragraphe
                                     <p>
                                     texte texte texte
                                     texte texte texte
                                     </p>
                               
Les balises auto­fermantes

       Certains éléments appelés éléments vides ne 
        marquent pas du texte.
       Il n’ont pas de contenu, les balises de début et de fin 
        peuvent être combinées :

                <br></br>        =      <br />



       Il s'agit la plupart du temps de balises nécessitant des 
        attributs :
    <img src="http://www.spip.net/IMG/siteon0.jpg" alt="ecureuil" />


                                  
Ajout d'attributs

       Des attributs peuvent être ajoutés à un élément
       Ils précisent celui­ci (apparence, comportement...) 
        Ils précisent celui­ci (apparence, comportement...) 
        sans faire partie de son contenu
       Le nom de l’attribut apparaît après le nom d’élément 
        dans la balise ouvrante et est suivi du signe =
        dans la balise ouvrante et est suivi du signe = puis de 
        la valeur de l’attribut entre guillemets.
       Les attributs d’un élément forment un ensemble (nom 
        unique, pas d’ordre).

    <a href="http://www.spip.net" title="site SPIP">Cliquer ici</a>


                                  
Imbrication

       Les éléments peuvent être imbriqués les uns dans les 
        autres :
                      <p>
                         <strong>
                            texte texte texte
                         </strong>
                      </p>


       Il ne peut pas y avoir de chevauchement. Tout 
        élément doit être fermé avant ceux qui le contiennent.
       Un document ainsi structuré forme donc un arbre dont 
        les nœuds sont les éléments et les feuilles des 
        fragments du texte.
                                
page2.html
                                        TP
       Compléter votre page avec :
               une balise de titre 1 <h1> autour de Hello World
               deux paragraphes de votre choix <p>
               la mise en intonation <strong> d'une partie du texte à 
                l'intérieur d'un paragraphe
               l'image de l'écureuil SPIP à l'intérieur d'un paragraphe 
                <img />
       Vérifier le résultat localement dans le navigateur
       Envoyer la page en ligne à la racine de votre site en 
        FTP
               La consulter en ligne


                                         
Structure d'un document

    <html>
       <head>
          <title>Ma page</title>
          <meta name="author" content="Patrick VINCENT" />
       </head>
       <body>
          <h1>Hello World !</h1>
          <p>
             Nous avons trouvé la photo d'un animal.
             Il s'agit d'un<strong>ecureuil</strong>
             <img src="http://www.spip.net/IMG/siteon0.jpg" />
          </p>
          <p>Pour en savoir plus cliquer 
             <a href="http://www.spip.net">ici<a>
          </p>
       </body>
    </html>
                                
Trois éléments de base

       <html>...</html> : le document complet
        <html>...</html> : le document complet
       <head>...</head> : l’en­tête 
        <head>...</head> : l’en­tête 
              type de document
              type de caractères
              mots clés
              titre de la fenêtre
       <body>...</body> : le corps du document
        <body>...</body> : le corps du document
              blocs
              contenu : texte, tableaux, images, sons...
              inclusion d'applications : flash, javascript, java


                                         
Structure arborescente
       Un document HTML peut 
                                                                html
        être lu comme un arbre
       L’ordre des nœuds et leur 
        imbrication précisent la                       head               body
        structure du document
       Cette structure est                        title   meta        h1     p      p
        exploitable :
             Quels sont les titre et auteur du 
                                                                            strong
              document ?
             Combien y­a­t­il de paragraphes ?
             Quel est le titre de niveau 1 qui 
              précède le 1er paragraphe ?
                                                               Utilisé pour le 
                                                                     DOM
                                                            (Document Objet Model)
Interprétation

       Le document HTML peut être visualisé dans un 
        navigateur, la structure logique est interprétée pour 
        fournir une présentation
       Un document peut donc être considéré à trois niveaux : 
                    physique (syntaxe)
                    logique (structure d’arbre)
                    présentation : navigateur, téléphone, pda, lecteur audio...



        HTML
         <html>
          <head></head>
          <body>
            <p>
                                        Firefox
              Hello
              <strong>
                World
              </strong>
            </p>

                                                    « Hello World ! »
          </body>
         </html>
                                              

                                       VoiceXML
Règles d'édition
       Dans un nouveau fichier, commencer par copier 
        l'ossature du fichier HTML par défaut
       Les espaces, les tabulations et les retours à la ligne 
        ne sont pas interprétés par le navigateur
               Pour forcer les retours à la ligne : utiliser des 
                paragraphes <p> ou des césures <br />
               Pour forcer l'espacement : utiliser des espaces 
                insécables &nbsp;
       Utiliser les caractères spéciaux
               é = &eacute;
               è = &egrave;
               à = &agrave;
                                       
Pour une bonne lisibilité de la source

       Ajouter des commentaires :      <!­­ commentaire ­­>
        <!­­  ­­>

       Aérer le document : retour à    <body>
        la ligne + lignes vides         <p>
                                        <h1>texte</h1>
                                        </p>

                                        </body>
       Indenter les éléments

                                        <body>
                                            <p>
                                                <h1>texte</h1>
                                            </p>
                                        </body>
                                 
Pour une bonne lisibilité de la source

          <html><head><title>Ma page</title></head><body><h1>Hello World !
    NON   </h1><p>Nous avons trouvé la photo d'un animal.
          <img src="http://www.spip.net/fr/carte.jpg" /></p></body></html>




          <html>

              <head>
                  <title>Ma page</title>
              </head>

              <body>

    OUI           <!­­ Début du corps du document ­­>
                  <h1>Hello World !</h1>
                  <p>
                      Nous avons trouvé la photo d'un animal.
                      <img src="http://www.spip.net/IMG/siteon0.jpg" />
                  </p>
                  <!­­ Fin du corps du document ­­>
              </body>

          </html>
                                   
Editeurs de texte GPL et gratuits

        notepad++ (Windows)
         notepad++ (Windows)                  gedit (Ubuntu)
                                               gedit (Ubuntu)




           voir aussi : ultraedit, 
            context
                                              activer le greffon balises
                                        
                                              voir aussi : Anjuta, Screem
page3.html
                                           TP
       Si Windows installer notepad++
                  http://notepad­plus.sourceforge.net/fr/site.htm > Télécharger > 
                   Télécharger les binaires de Notepad++ > npp.4.0.2.Installer.exe
       Ouvrir votre fichier précédent
       Rendre la source lisible
                  ajouter des commentaires
                  l'indenter et ajouter des espaces
                  vérifier que cela n'a pas de conséquence sur l'affichage
       Ajouter
                  dans le paragraphe de votre choix, un retour à la ligne
                  puis la phrase «cet été je n'irai pas à la plage»
                  l'afficher dans Firefox en caractères cyriliques : Affichage > 
                   Encodage des caractères >UTF­8
       Mettre la page en ligne à jour et vérifier l'affichage
                                            
Le langage XHTML




            
Définition

       XHTML : Extensible HyperText Markup L
        XHTML : Extensible HyperText Markup Language
       Evolution actuelle de l'HTML visant à 
              standardiser et homogénéiser le langage
              éviter que les navigateurs utilisent leurs propres balises 
               ou interprètent librement les marqueurs
              assurer une transition vers un langage en arbre (XML)
       Depuis le XHTML 1.0 une page pourra évaluer son 
        niveau de conformité aux standards du web (et 
        indirectement aux services d'accessibilité) :
              normes du W3C (World Wide Web Consortium) : 
               http://www.w3.org/ 
              http://validator.w3.org/ 
                                      
Plusieurs principes de base du XHTML
       Toute balise ouvrante doit être fermée
       Les éléments doivent être correctement imbriqués
       Les balises et les attributs doivent être écrits en minuscules
       Les valeurs des attributs doivent apparaître entre apostrophes 
        ou guillemets
       Chaque attribut doit avoir une valeur
       L’attribut name ne doit plus être utilisé pour l'identification des 
        L’attribut name ne doit plus être utilisé pour l'identification des 
        balises. A la place on utilisera l’attribut id 
        balises. A la place on utilisera l’attribut id (qui servait déjà pour les CSS).


            <p>texte</p>       <p>texte <strong>important</strong></p>



            <p id="par1">texte</p>        <img src="/IMG/carte.jpg" alt="" />

                                           
Buts et pratiques
        Le XHTML vise à faire disparaître toute notion de 
         mise en forme de la page HTML et d'en laisser la 
         mise en forme de la page HTML et d'en laisser la 
         gestion aux feuilles de style.
        Les balises doivent orienter le sens sémantique donné 
         au texte, mais pas sa mise en forme : 
                  <emphatic> plutôt que <italic>
                  <emphatic> plutôt que <italic>
        Certaines balises et attributs sont déconseillés :
                       police : <font face="arial"></font>
                       gras et italique : <b></b> et <i></i>
                       centrer : <center></center>
                       <body background="white" bgcolor="black"></body>
        ­>Il est plus judicieux d'initier un projet de design Web aujourd'hui qu'il y a 3 ans!

                                                
Structure de document XHTML 1.0

       Un document XHTML 1.0 est un document HTML 
        4.01 précédé d'un élément : le doctype 
        4.01 précédé d'un élément : le doctype (type de document)
       Doctype XHTML 1.0 Transitional
          <!DOCTYPE html PUBLIC "­//W3C//DTD XHTML 1.0 Transitional//EN"
                 "http://www.w3.org/TR/xhtml1/DTD/xhtml1­transitional.dtd">



               respecte les cinq principes du XHTML
               autorise la présence des balises <font>,<center> et des 
                attributs border, align, bgcolor, target
               autorise l'emploi des <iframe>
               ­> permets un passage progressif des documents (et 
                des compétences) vers l'XHTML
                                       
Structure de document XHTML 1.0

       Doctype XHTML 1.0 Frameset

           <!DOCTYPE html PUBLIC "­//W3C//DTD XHTML 1.0 Frameset//EN"
                  "http://www.w3.org/TR/xhtml1/DTD/xhtml1­frameset.dtd">



              identique au doctype transitional
              remplace <body> par <frameset> + <frame>
              ­> permets l'utilisation de sous­sites dans un site
       Doctype XHTML 1.0 Strict
               <!DOCTYPE html PUBLIC "­//W3C//DTD XHTML 1.0 Strict//EN"
                      "http://www.w3.org/TR/xhtml1/DTD/xhtml1­strict.dtd">



              toutes les balises et les attributs déconseillées sont exclues
                                         
              ­> pour les sites validés W3C (rare!)
Structure de la page XHTML 1.0 type
    <!DOCTYPE html PUBLIC "­//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1­transitional.dtd">

    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">

    <head>
        <title>Ma page</title>

       <!­­ type de document et de caractères ­­>
       <meta http­equiv="content­type" content="text/html; charset=UTF­8" />

       <!­­ meta donnees pour les moteurs de recherche ­­>
       <meta name="description" content="Titre" />
       <meta name="author" content="P. VINCENT" />
       <meta name="keywords" lang="fr" content="mot1, mot2" />
       <meta name="robots" content="all" />

        <!­­ feuilles de style ­­>
        <link rel="stylesheet" type="text/css" media="screen" href="feuille.css" />
    </head>

    <body>
    ...
    </body>

    </html>
                                          
Structure de document XHTML 1.1

       Un document XHTML 1.1 intègre les éléments suivants:
           La version de XML et le codage des caractères

             <?xml version="1.0" encoding="UTF­8"?>



           Le Doctype XHTML 1.1 (strict strict strict)

             <!DOCTYPE html PUBLIC "­//W3C//DTD XHTML 1.1//EN"
             "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">



           La balise meta XHTML
             <meta http­equiv="content­type" content="xhtml+xml; charset=UTF­8" />


       A n'utiliser que dans quelques années...
                                           
Structure de la future page XHTML 1.1
    <?xml version="1.0" encoding="UTF­8"?>
    <!DOCTYPE html PUBLIC "­//W3C//DTD XHTML 1.1//EN" 
    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">

    <head>
        <title>Ma page</title>

       <!­­ type de document et de caractères ­­>
       <meta http­equiv="content­type" content="xhtml+xml; charset=UTF­8" />

       <!­­ meta donnees pour les moteurs de recherche ­­>
       <meta name="description" content="Titre" />
       <meta name="author" content="P. VINCENT" />
       <meta name="keywords" lang="fr" content="mot1, mot2" />
       <meta name="robots" content="all" />

        <!­­ feuilles de style ­­>
        <link rel="stylesheet" type="text/css" media="screen" href="feuille.css" />
    </head>

    <body>
    ...
    </body>

    </html>                               
L'en­tête
    <head></head>




          
Mentions obligatoires
       Le titre <title></title>
        Le titre <title></title>
               Il apparaît dans le haut de la fenêtre du navigateur.
               Il est utilisé pour l'indexation par les moteurs de recherche 
                et le stockage d'informations locales par le navigateur

                                       <title>Ma page</title>



       Les marqueurs de meta­données <meta />
        Les marqueurs de meta­données <meta />
               Mentions non affichées mais utiles (avec des réserves) 
                pour les moteurs de recherche et d'indexation
                        auteur, description, tags, date

             <meta name="description" content="pour les moteurs de recherche." />
             <meta name="author" content="P. VINCENT" />
             <meta name="keywords" lang="fr" content="mairie, informatique" />
             <meta name="date" content="2007­03­20">
             <meta name="robots" content="all" />
                                           
Meta données

       Type de document et jeu de caractère <meta />
        Type de document et jeu de caractère <meta />
              Indique au navigateur la version HTML ou XHTML
              Donne le jeu de caractères d'encodage (défault UTF­8)

          <meta http­equiv="content­type" content="text/html; charset=UTF­8" />




       Rechargement ou redirection de page <meta />
        Rechargement ou redirection de page <meta />
              Permets à la page d'être redirigée au bout d'un certain 
               temps

           <meta http­equiv="refresh" content="5; URL=http://www.spip.net/">




                                          
Inclusion des styles CSS
        Feuilles de style externes <link />
         Feuilles de style externes <link />
                  Indique l'adresse d'inclusion des feuilles de style .css 
                   liées à la page

        <link rel="stylesheet" type="text/css" media="screen" href="feuille.css" />



        Feuilles de style locales <style>
         Feuilles de style locales <style>
                  Permets de déclarer les styles dans la page HTML elle­
                   même

                       <style type="text/css">
                           /* Mon style */
                       </style>


                                            
Inclusion de scripts JavaScript
       Script Javascript externe <script />
        Script Javascript externe <script />
               Indique l'adresse d'inclusion du script .js lié à la page

                <script type="text/javascript" src="menu.js" />




       Script Javascript local <script>
        Script Javascript local <script>
               Permets de déclarer les styles dans la page HTML elle­
                même

                      <script type="text/javascript">
                          /* Mon script */
                      </script>



                                          
Divers

       Information de flux RSS <link />
        Information de flux RSS <link />
                Indique la présence et l'adresse du lien RSS de la page 
                 via le navigateur de l'internaute

    <link rel="alternate" type="application/rss+xml" href="spip.php?page=backend" 
    title="mon site" />




       Icône du site (favicon) <link />
        Icône du site (favicon) <link />
                Modifie l'icône affiché dans la barre d'adresse

        <link rel="shortcut icon" type="image/png" href="/dist/favicon.png" /


                                        
page_standard.html
                                            TP

    
        Ouvrir le fichier page_standard.html
        Ouvrir le fichier page_standard.html
       Modifier :
                  le titre
                  les meta­données : auteur, mots­clefs, descriptif
       Enregister la page sous : ma_page_standard.html
        Enregister la page sous : ma_page_standard.html
                  La passer en lecture seule.
                  Cette page est votre page HTML vierge par défaut pour toutes vos 
                   créations à venir.
                  Modifier le favicon 
                  Ajouter l'information du flux RSS de votre site
       Pour aller plus loin, en faire une copie et  : 
                  Faire une redirection au bout de 5 secondes vers votre site

                                             
Structure du corps
      <body></body>




             
Balises de type bloc
                              Balises de type bloc
       Ce sont des «boîtes» qui peut contenir
                      d'autres éléments de type bloc
                      des éléments de type en ligne
                      des balises auto­fermantes
                      du texte
       les blocs se positionnent les uns en dessous des autres 
        et occupent toute la largeur du parent

          titre 
                                                        <div>
          texte texte texte texte texte texte               <h1>titre</h1>
          texte texte texte texte texte texte               <p>texte texte texte</p>
          texte texte texte texte texte                     <p>texte2 texte2 texte2</p>
                                                        </div>

          texte2  texte2  texte2  texte2  texte2 
          texte2 
                                                  
Balises de type en­ligne
                          Balises de type en­ligne
        Ce sont des «boîtes» qui peut contenir
                         des éléments de type en­ligne
                         du texte
                         mais pas de balises de type bloc
        un élément en ligne se trouve donc aux derniers 
         maillons de l'arbre html 
        les éléments en ligne se placent à côté les uns des 
         autres et habillent l'élément parent


    texte texte texte       texte2  texte2   <div>
                                                 <span>texte texte texte</span>
    texte2 texte2 texte2 texte2 texte2           <span>texte2 <em>texte2</em> texte2 
                                                 texte2 texte2 texte2</span>
    texte2  texte2                                <img src="/IMG/spip.jpg" />
                                             </div>
                                               
Conteneurs génériques
       <div> 
        <div>        BLOC
                    élément neutre permettant de regrouper des éléments de tout 
                     type (bloc ou en­ligne) : <div>,<span>,<h1>,<img />...
                    ne pas abuser des <div> et préférer des éléments avec du 
                     «sens» sémantique

                     <div>
                          <h1>Question existentielle :</h1>
                          <blockquote>To be SPIP or not to be ?</blockquote>
                     </div>




       <span> 
        <span>         EN­LIGNE
                    élément neutre pour regrouper des éléments en­ligne : <img 
                     />,<strong>,<em>...

             <span><abbr>SPIP</abbr> est un outil de publication
                                     
             <strong>partagé</strong></span>
Attributs de nommage

       id et class sont utilisés pour nommer les éléments 
        id et class sont utilisés pour nommer les éléments 
        HTML afin de leur appliquer des styles CSS
               id désigne un élément unique dans la page
               class désigne un élément qui peut apparaître plusieurs 
                fois

          <div id="bloc1">

                <span class="texte">texte2 texte2 texte2 
                texte2 texte2 texte2</span>

                <a href="page.html" class="lien">cliquer ici</a>

          </div>
                                       
Le projet




        
La liste des conteneurs principaux
    page

      entete

      menu

      colonne_gauche             colonne_droite




      footer

                            
L'arbre de structure principale

                          body

                          page
      BLOC

STRUCTURE
      BLOC
                                                 bas_page
              entete
                           colonne_gauche

                                            colonne_droite
                   menu
                           ...       ...




                                  
L'arbre des éléments
                                colonne_gauche



   BLOC        edito          alaune     articles_brevesarticles_breves
STRUCTURE
                                           h6
   BLOC

                         alaune_1 alaune_2

                                       article_breve_1 article_breve_tous


                                       article_texte article_texte article_texte


   BLOC

CONTENU
   EN­LIGNE   h3 img p                   h5 img p              ...
projet1.html
                                       TP
                                                     projet1_bordures.html

       Faire une copie de votre page standard : projet1.html
        Faire une copie de votre page standard : projet1.html
       Créer à l'intérieur du corps de la page les six 
        conteneurs principaux à l'aide de balises <div>.
        conteneurs principaux à l'aide de balises <div>.
                les nommer avec l'attribut id
                rajouter une ligne de texte au début de chaque bloc
       A l'aide de l'arbre des éléments de la colonne gauche, 
        créer la structure de la page
        créer la structure de la page

        ●   Afin de                          <style type="text/css">
                                                 div
            visualiser les                       {
                                                 padding: 10px;
            blocs ajouter à                      margin: 10px;
                                                 border: black solid 1px;
            l'en­tête de                         }
                                             </style>
            votre 
projet2.html
                                              TP

       Depuis le fichier projet1­complet.html ajouter les 
        Depuis le fichier projet1­complet.html 
        éléments de contenu suivants :
        éléments de contenu suivants :
           Bloc Edito
                   L'image images/arton1.gif
                   Un titre <h3> : Carte d'identité de la commune
                   Un paragraphe <p> avec du contenu mise en forme : 
                    Description de la commune...
           Bloc article_breve_1
                   L'image images/rubon3­15c52.gif
                   Un titre <h5> Titre avec un lien <a>
                   La date en mise en forme emphatique <em>
                   Un paragraphe <p> avec du contenu mise en forme : Texte...
                   Un lien : lire la suite
                                               
Détail des balises 
         du corps
      <body></body>




              
Les balises de type bloc
                   Les balises de type bloc
              Balise                          Signification 
                            Balise bloc mère du corps de la page, c'est le 
    <body>
                            conteneur principal
    <div>                   Conteneur de blocs 
    <p>                     Paragraphe 
    <h1> ... <h6>           Titre de niveau 1 à 6
    <blockquote>            Marque une citation 

    <pre>                   Affiche exactement ce qu'on y mets (tabulations,sauts)
    <ul>,<ol>,<li>          Liste énumérative et liste numérotée
    <dl>,<dd>,<dt>          Liste de définition 
    <table>,<th>,<tr>,<td> Tableaux
    <tbody>, <thead>, 
                            Sous partie d'un tableau
    <tfoot>
    <fieldset>, <form>      Formulaire interactif 

    <noscript>              Texte alternatif aux scripts

    <map>                   image réactive (nécessite <area>)

    <hr />                  Séparation horizontale

                                           
         Note : Il s'agit essentiellement d'éléments de structure
Liste des balises de type en­ligne
           Liste des balises de type en­ligne
               Balise                      Signification 
                <span>                     Conteneur en­ligne

                 <a>                             Liens

               <img />                          Images

                <br />                       Saut de ligne

            <em>, <strong>            Mise en intonation du texte

          <abbr>, <acronym>, 
                                     Sigle, citation et définition
          <cite>, <q>, <dfn>

             <del>, <ins>             Suppression / ajout de texte

        <kbd>, <code>, <samp>, 
                                          Instruction et code
                <var>

             <sub>, <sup>                Indices et exposants

               <object>              Animation multimédia embarquée


       Note : Il s'agit essentiellement d'éléments de contenu / mise 
 
        en forme                       
Les balises de Titre                       page4.html



       <h1>...<h6> 
        <h1>...<h6>     BLOC

              permets de hiérarchiser les titres en 6 niveaux
              personnalisables via les CSS
              ne peuvent pas inclure de balises de type BLOC


                 <div>
                      <h1>Liste des Outils Internet</h1>

                       <h2>Navigateurs</h2>
                            <h3>IE</h3>
                            <h3>Firefox</h3>

                       <h2>CMS</h2>
                            <h3>SPIP</h3>
                             <h3>Joomla</h3>
                 </div>
                                     
page5.html
                Les balises de paragraphe
       Ne peuvent pas contenir d'autres balises de type Bloc
       <p> , <hr /> , <pre> , <blockquote> BLOC

             <div>
                 <p>To be SPIP or not to be ?</p>
                 <pre>
                     Nul ne le sait
                         mais
                         il convient d'y réfléchir
                     à l'aide de cette citation :
                 </pre>
                 <hr />
                 <blockquote lang="fr" cite="De l'âme, Aristote">
                     « C'est aussi pourquoi il n'y a pas 
                     à rechercher si l'âme et le corps sont une 
                     seule chose, pas plus qu'on ne le fait pour 
                     la cire et l'empreinte, ni d'une manière générale 
                     pour la matière d'une chose quelconque et
                     ce dont elle est la matière. » 
                 </blockquote>
                 <hr />
             </div>
                                        
Les liens             page6.html



       <a> 
        <a>      EN­LIGNE
                permets de naviguer au sein de la page ou vers une autre 
                 page
                attributs
                     href : destination (obligatoire)
                     title : infobulle
                     name : pour nommer une ancre



        <a href="http://www.spip.net" title="site SPIP">Cliquer ici</a>

        <br />

        <a href="#en_bas">Aller jusqu'à l'ancre en bas</a>
           <br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
           <br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
        <a href="#" name="en_bas">ici</a>
                                               
Les images                               page7.html



        <img /> 
         <img />          EN­LIGNE
                  intègre l'image dans la page HTML
                  attributs 
                       src : source (obligatoire)
                       alt : texte alternatif pour autres moteurs de rendu ou pb (obligatoire)
                       title : info­bulle
                       width et height : taille
           <img src="http://www.spip.net/IMG/siteon0.jpg" alt="écureuil" 
            title="est­ce un mammifère?" width="400px" height="400px" />



        <map>          BLOC

        <img src ="planets.gif" width="145" height="126" alt="Planets" 
        usemap ="#planetmap" />
        <map id ="planetmap" name="planetmap">
          <area shape="rect" coords="0,0,82,126" href="sun.htm" alt="Sun" />
          <area shape="circle" coords="90,58,3" href="mercur.htm" alt="Mercury" />
                                              
        </map>
Les tableaux                       page8.html



       <table>, <tr>, <th>, <td> 
        <table>, <tr>, <th>, <td>                BLOC

               permets d'intègrer un tableau de données dans la page
               attributs (disparaîtront à terme)
                    width et height : taille 
                    border : taille de la bordure


                     <table border="1" width="90%" height="300px">
                          <tr>
                               <th>Poisson</th>
                               <td>20 euros</td>
                               <td>500 grammes</td>
                          </tr>
                          <tr>
                               <th>Viande</th>
                               <td>15 euros</td>
                               <td>900 grammes</td>
                          </tr>
                     </table>
                                              
Les listes                          page9.html



        <ul>, <ol>, <li> 
         <ul>, <ol>, <li>    BLOC


        <p>Voici une liste non­ordonnée :</p>
        <ul>
             <li>Le XHTML est accessible</li>
             <li>Le XHTML est bien structuré</li>
             <li>Le XHTML est donne un sens à vos pages web</li>
        </ul>

        <p>Voici une liste ordonnée :</p>
        <ol>
             <li>Le XHTML est accessible</li>
             <li>Le XHTML est bien structurer</li>
             <li>Le XHTML est donne un sens à vos page web :</li>
          <ol>
                       <li>C'est bon pour les internautes</li>
                       <li>C'est bon pour les moteurs de recherche</li>
           </ol>
        </ol>

                                      
Les définitions                       page10.html



       <dl>, <dt>, <dd> 
        <dl>, <dt>, <dd>       BLOC

              Comme les listes ne peut pas contenir d'autres éléments 
               de type bloc que ceux notés ici

         <p>Voici une liste de termes et de définitions :</p>

         <dl>
              <dt>Développeur</dt>
              <dd>Un développeur est un informaticien qui 
                programme des logiciels.</dd>
              <dt>Web</dt>
              <dd>Réseau maillé de serveurs 
                d'informations formant une toile d'araignée.</dd>
         </dl>




                                       
page11.html
                Les balises de mise en forme
       <em>, <strong>, <br />, <del>, <ins>, <sub>, <sup>
               mise en forme
                                                                     EN­LIGNE
       <abbr>, <cite>, <q>, <dfn>, <code>
               abbréviations, définitions et citation de code

    <div>
        Une <em>information</em> <strong>importante</strong> doit être partagée.
        <br /> <br />
        Voici des <del>informations</del> <ins>propositions</ins> de réflexions
        <sub>basses</sub> et <sup>élevées</sup> :
        <br /> <br />
        <abbr title="Système de publication pour l'internet partagé" 
        lang="fr">SPIP</abbr>
        <br /> <br />
        <q>To be or not to be.</q>
        <cite>Shakespear</cite>
        <br /> <br />
        <dfn>Un kiwi</dfn> est un fruit exotique mais aussi un petit animal.
        <br /> <br />
        En PHP, la variable langage sera <code>$langage = "XHTML";</code>
    </div>
                                         
page12.html
                         Les objets embarqués

        <object>, <param />              EN­LIGNE

                  permets d'inclure des animations multimédia à l'intérieur 
                   de la page
                  Flash, Active X, Applet Java...


        <div>
            <object type="application/x­shockwave­flash" 
            data="http://www.erasme.org/libre/divers/animations/calculatrice.swf" 
            width="831" height="143">
                <param name="movie" 
                value="http://www.erasme.org/libre/divers/animations/calculatrice.swf" />
                <param name="quality" value="high" />"
            </object>
        </div>




                                               
Divers
       Les extensions htm, html, xhtml, php
        Les extensions htm, html, xhtml, php
                     peuvent contenir du code html
                     sont interprétées par les navigateurs
       Les tailles
                     peuvent être spécifiées en pixels ou pourcentage
                     seront préférentiellement placées dans les CSS
       Les caractères spéciaux
                     taper «caractères spéciaux» dans un moteur de recherche
       Pour en savoir plus :
               http://xhtml.le­developpeur­web.com/
               http://www.aliasdmc.fr/courshtml/ 
               http://www.fil.univ­lille1.fr/technoweb/docs/selfhtml/html/reference/elements.htm



                                                 
projet2.html
                                              TP
       Depuis le fichier projet1.html ajouter les éléments de 
        Depuis le fichier projet1.html 
        contenu suivants :
        contenu suivants :
           Bloc Edito
                   L'image images/arton1.gif
                   Un titre <h3> : Carte d'identité de la commune
                   Un paragraphe <p> avec du contenu mise en forme : Description 
                    de la commune...
           Bloc Article1
                   L'image images/rubon3­15c52.gif
                   Un titre <h5> Titre avec un lien <a>
                   La date en mise en forme emphatique <em>
                   Un paragraphe <p> avec du contenu mise en forme : Texte...
                   Un lien : lire la suite
           toute autre modification vous semblant intéressante
                                               
Partie 2

    Les feuilles de style
            ­CSS 2­




               
Présentation 
    des feuilles de style




              
Définition
       Cascading Style Sheets = Feuilles de Style en 
         ascading Style S
        Cascade
               Langage utilisé pour décrire la présentation d'un 
                document structuré en (X)HTML
               Le standrard est dicté par le World Wide Web 
                Consortium (www.w3c.org), les navigateurs essayent de 
                le respecter
               Versions : CSS 2 (>1998) et CSS3 (en cours)
       Séparation du fond de la forme
               Les pages XHTML décrivent la structure et le contenu
               Les CSS décrivent la présentation pour l'affichage sur un 
                média donné (screen, palm, imprimante...)

                                        
Par la pratique

       CSSZenGarden
           1 page HTML <­> n feuilles de styles
                http://www.csszengarden.com/tr/francais/
                http://www.mezzoblue.com/zengarden/alldesigns/official/
       Désactiver les styles via FireFox
           Affichage > Style de la page > Aucun style
                http://fr.wikipedia.org/wiki/Accueil 
                http://fr.yahoo.com/ 
       Chaque balise XHTML a un rendu par défaut dans 
        le navigateur
                le style CSS relatif à la balise vient surcharger ce rendu

                                          
Firebug
       Les extensions Firefox
           WebDevelopper, FireBug, IETab
           https://addons.mozilla.org/fr/firefox/browse/type:1/cat:4/sort:popular 




                                           
Pourquoi les CSS ?

       Les CSS assure la cohérence graphique d’un site.
       La modification de la charte graphique d’un site web 
        est facilitée par l’utilisation des CSS : seule la feuille 
        de style est modifiée.
       Le code XHTML de la page est allégé, il y a donc une 
        diminution du poids et par conséquent du temps de 
        chargement.
       La compatibilité est améliorée
               ...même si le navigateur le plus utilisé n'affiche que 60% 
                de compatibilité aux CSS2


                                       
Implémentation des styles
       Dans les balises
              à éviter car on perds l'aspect global du style
               <body>
                  <p style="/* Mes styles */">texte</p>
               </body>


       Dans la page
              pour des maquettes et des feuilles simples à tester

                   <head>
                      <style type="text/css">
                         /* Mes styles */
                      </style>
                   </head>
                                     
Implémentation des styles (2)
       Dans une feuille de style extérieure
               solution à retenir pour externaliser et mutualiser la feuille

    <head>
       <link rel="stylesheet" type="text/css" 
       href="style.css" />
    </head>


                                      OU

        <head>
           <style type="text/css">  
              @import url(style.css);
           </style>
        </head>

                                       
Implémentation des styles (3)
   possibilité de spécifier le média dédié au style
    possibilité de spécifier le média dédié au style
              all, screen, print, projection, braille, embossed, aural, speech...
              seuls pour l'instant les medias d'affichage fonctionnent correctement
   possibilité de spécifier des feuilles alternatives avec title
    possibilité de spécifier des feuilles alternatives avec title
              Firefox permets d'y accéder dans >Affichage>Styles


      <head>
         <style type="text/css" media="screen" title="style1">
             /* Mon style1 */
         </style>
         <style type="text/css" media="screen" title="style2">
             /* Mon style2 */
         </style>
         <style type="text/css" media="print">
             /* Style impression */
         </style>
      </head>                                           page13.html
                                           
Syntaxe




        
Déclaration des styles

                                       sélecteur   propriété      valeur
        balise
        {
          propriete: valeur;
          propriete: valeur;                p { font­family: Verdana; }
          propriete: valeur;
        }
                                                          déclaration

        balise : nom de la balise dont on modifie l’apparence
                <em>, <b>, <h1>
        propriété : catégories d’effet de style
                color, font­size, font­family
        valeur : valeur associée à la propriété
                red, 10px, Verdana
                                         
Syntaxe

       On peut ajouter des commentaires /*...*/ 
        On peut ajouter des commentaires /*...*/ 
       Une déclaration ouverte doit toujours être fermée {...} 
        Une déclaration ouverte doit toujours être fermée {...} 
       Une définition de valeur doit se terminer par ;
        Une définition de valeur doit se terminer par ;
        On peut enchaîner plusieurs définitions de valeurs au 
        sein d'une même déclaration.  
       Les espaces et les tabulations ne sont pas 
        interprétés. 

                     balise
                     {
                        /* Première déclaration */
                        propriete: valeur;
                     }
                                 
Premiers exemples

    body                                  div
    {                                     {
       font­family: Verdana;                    padding: 10px;
       font­size: 12px;                         margin: 10px;
       color: #484747;                          border: black solid 1px;
       background­color: #EEEEEE;         }
    }



    h1                                  a,a:link,a:visited 
    {                                   {
         font­size: 250%;                  color: #484747;
         color: gray;                      text­decoration: none;
         font­weight: bold;             }
    }
                                        a:hover 
                                        {
                                           color: red;
                                           text­decoration: underline;
                                        }
                                     
Feuilles en cascade
       Les styles sont appliquées successivement dans 
        l'ordre suivant (par ordre croissant d'importance) :
                    1. Styles extérieurs
                    2. Styles de la page
                    3. Style dans la balise elle­même
               En cas de surcharge, le dernier l'emporte


                Les propriétés de chaque balise 
                                                                                  html
        ●


                sont héritées des éléments parents                       head                 body


                dans l'arbre du document transmission 
                                                                 title     meta          h1     p       p
                                               des propriétés 
                                                                                               strong


                                            
Couleurs
       Une couleur peut être définie par 
               son nom (si il existe) : green
               son code hexadécimal long : #008080
               son code héxadécimal court : #FFF
               son code RGB : rgb(0,0,255) ou rgb(10%,10%,30%)
               transparent
       Les 16 couleurs de base du Web (compatibles W3C)




       http://www.webmaster­hub.com/outils/color.html 
        http://www.webmaster­hub.com/outils/color.html 
                                   
Unités de valeur

       La taille et la position des éléments doivent comporter 
        La taille et la position des éléments doivent comporter 
        une unité : 
               font­size : 12px; 
               width: 90%; 
               margin: 0;
       Rapports
               % (pourcentage) : la taille / position de l’élément est 
                calculée de façon relative par rapport à son parent
               em : 1em = 100%, 1.2em = 120%, etc.
       Mesures
               px : pixels, plus petite unité de l’écran
               pt : points, plus petite unité de l’imprimerie
                                         
projet4.html
                                        TP

       A partir de votre dernière version de projet2.html ou 
        A partir de votre dernière version de projet2.html ou 
        depuis projet3.html 
        depuis projet3.html 
               créer un espace pour votre style <style> dans la page avec 
                les attributs media et title
               ajouter les styles vus en exemple pour les éléments
                    body
                    a et a:hover
                    h1
                    div
               tester le résultat dans le navigateur à chaque étape
               faire quelques essais de couleur via le sélecteur de couleur 
                en ligne

                                         
Les sélecteurs
                           bal remplace n'importe quelle balise


    * {. }        sélecteur universel 
                 désigne tous les éléments
              




    bal { }
     .               sélecteur de balise 
                 désigne toutes les balises <bal> de la page 
              




      . 
    .nom_classe { }                   sélecteur de classe 
                 désigne les éléments ayant l'attribut class="nom_classe"
              




      . 
    bal.nom_classe { }                    sélecteur de classe 
                                          sélecteur de classe 
                 désigne toutes les balises bal ayant l'attribut 
                  class="nom_classe"
                                            
Les sélecteurs (2)
                       bal remplace n'importe quelle balise


     .
    #nom_id { }              sélecteur d'identification 
              désigne l'élément ayant reçu id="nom_id" 
           




     . 
    bal#nom_id { }                sélecteur d'identification 
              désigne la balise <bal> ayant reçu id="nom_id" 
           




     .
    bal1 bal2 bal3 { }                hiérarchie 
              désigne les éléments <bal3> contenus dans une balise 
               <bal2> lui­même contenu dans une balise <bal1>
           




      . 
    bal1, bal2, bal3 { }              sélecteur collectif 
                                      sélecteur collectif 
              s'appliques aux balises <bal1>, <bal2> et <bal3>
                                        
Les sélecteurs (3)
                     bal remplace n'importe quelle balise



  .
bal1 + bal2 { }         sélecteur adjacent
          désigne les <bal2> directement placés derrière un <bal1>
        
  .
bal1 > bal2 { }         sélecteur d'enfants
          désigne les <bal2> directement placés dans un <bal1> 




                                     
Pseudo classes et éléments
                           Note : les balises sont citées à titre d'exemple



     .
    p:first-letter|first-line|after { }               pseudo­élément
                  désigne un sous ensemble de l'élément <p>
                          first­letter : première lettre
                          first­line : première ligne
                          after : ajout après l'élément


     .
    img:active|hover|focus|visited { }                      pseudo­classes dyn.
                  désigne l'élément <img> dans un état en temps réel 
                          hover : l'élément est survolé
                          active : souris pressée et non relâchée
                          focus : l'élément est activé (un formulaire par exemple)
                          link : lien non visité (<a> uniquement)
                          visited : lien visité (<a> uniquement)

                                                   
Comment écrire les sélecteurs qui 
            s'appliquent au texte en vert ?
     <strong>c'est important</strong>



         <div id="principal">
             Mon texte
         </div>




        <a href="#" class="liens">
            cliquer ici
        </a>




    <div class="home">
        <strong>c'est important</strong>
    </div>
                                         
Comment écrire les sélecteurs qui 
            s'appliquent au texte en vert ?
     <strong>c'est important</strong>
                                            strong { ... }
         <div id="principal">
             Mon texte
         </div>
                                            #principal { ... }

                                            a, a:hover { ... }
        <a href="#" class="liens">          ou
            cliquer ici
        </a>                                a.liens { ... }
                                            a.liens:hover { ... }
    <div class="home">
        <strong>c'est important</strong>
    </div>
                                            div.home strong { ... }
                                            div.home
                                         
projet5.html
                                               TP

       A partir de votre dernière version de projet4.html
        A partir de votre dernière version de projet4.html
               ajouter les styles suivants au bloc edito
                    la couleur de fond de votre choix (ex : #cc3300) et la propriété :
                               ­moz­border­radius:10px;
                    titre de niveau 3 contenu dans l'edito, les propriétés suivantes :
                               font­size: 17px;
                               font­weight: bold;
                    images contenu dans l'edito, les propriétés suivantes :
                               float:right; /*alignement à droite*/
                    images contenu dans l'edito, lors du survol l'ajout d'une bordure
               augmenter la taille de la première lettre de tous les 
                paragraphes de la page
               tester le résultat dans le navigateur

                                                
Mise en forme




           
Typographie
       Polices
              Elles ne sont pas toutes 
               présentes sur tous les 
               ordinateurs
              Elles se déclarent dans 
               un ordre de préférence 
              On termine par les 
               polices standard : sans­
               serif, serif, monospace, 
               cursive.
       Les espacements
              Peuvent être fixés par 
               les attributs line­height 
               et letter­spacing

                                       
Typographie
          Action            Propriété                   Valeur                          Description
                                                                         applique les polices par ordre 
                                               "Trebuchet MS", arial, 
     Choix de la police    font­family :                               décroissant ; mettre les noms avec 
                                                    sans­serif;                  espace entre ""
                                                                                préférer em et % pour hériter des 
    Taille de la police     font­size :          10px; 1.2em; 90%;                valeurs des éléments parents
                                                  silver; #0033FF; 
          Couleur             color :
                                                    transparent;
     Orientation de la 
                            font­style :      normal; italic; oblique;
           police

         Epaisseur         font­weight :       bold; bolder; normal;

                                                 none; underline; 
        Soulignement      text­decoration :
                                              overline; line­through;
                                                 none; capitalize;                 capitalize: première lettre 
     Mise en majuscule    text­transform :                                                 uniquement.
                                               uppercase; lowercase;
                                               left; right; center; 
    Alignement du texte     text­align :
                                                     justify;
                                                normal; 1.2em; 90%; 
      Hauteur de ligne     line­height :
                                                       10px;
    Espacement entre les 
                          letter­spacing :          normal; ­2px;
          lettres
    Espacement entre les 
                          word­spacing :             normal; 3px;
            mots
                                              font­style, font­variant, font­
         Raccourci             font :                    
                                               weight, fontsize/line­height,    p { font: bold 12px/24px verdana }
                                                         font­family
Présentation des blocs
                                                 BORDER

                          MARGIN

                          PADDING
    texte texte texte texte texte texte texte texte texte 
    texte texte texte texte texte texte texte texte texte 
    texte texte texte texte texte texte texte texte texte 
    texte texte texte texte texte texte texte texte texte 
        HEIGHT



    texte texte texte texte texte texte texte texte texte 
    texte texte texte texte texte texte texte texte texte 
    texte texte texte texte texte texte texte texte texte 
    texte texte texte texte texte texte texte texte texte 
                            WIDTH
    texte texte texte texte texte texte texte texte texte 
    texte texte texte texte texte texte texte texte texte 
    texte texte texte texte texte texte texte texte texte 
    texte texte texte texte texte texte texte texte texte 
                          PADDING
                             
                          MARGIN
Compléments

       Plusieurs blocs : les margins s'ajoutent
                   MARGIN            MARGIN          MARGIN

                   PADDING           PADDING         PADDING




                   PADDING           PADDING         PADDING

                   MARGIN            MARGIN          MARGIN




       Quelles est la taille d'un bloc total (boîte) ?
            Selon le standard : boîte = margin+border+width
            Pour IE : boîte = width
            ­> Privilégier les padding aux margin...

                                  
Présentation des blocs

       Tout élément en bloc possède 4 attributs :
               taille propre : width et height
               bordure : border
               marge intérieure : padding
               marge extérieure : margin



         Action            Propriété              Valeur              Notes
                                                                    auto calcule 
                                                                 automatiquement la 
         Largeur             width :       30%; 250px; auto;
                                                               taille actuelle (image 
                                                                    par exemple)


         Hauteur            height :       30%; 250px; auto;


                                        
Marges et espacements

            Description                     Propriété           Exemple
           Marge supérieure                 margin­top :          5px;

            Marge de droite              margin­right :          0.5em;

           Marge inférieure             margin­bottom :           2pt;

            Marge de gauche                 margin­left :          0;
                                                             ­5px 0.5em 2pt 0; 
       Raccourci pour les marges              margin :       auto; (alignement 
                                                              centré du bloc)
    Espace intérieur entre l'élément 
                                            padding­top :         3px;
        et la bordure supérieure

    Espace intérieur entre l'élément 
                                        padding­right :          0.25em;
          et la bordure droite

    Espace intérieur entre l'élément 
                                        padding­bottom :           0;
        et la bordure inférieure

    Espace intérieur entre l'élément 
                                         padding­left :           2pt;
          et la bordure gauche

     Raccourci vers l'ensemble des 
                                             padding :      3px 0.25em 0 2pt;
     propriétés d'espace intérieur

                                         
Arrières plan
          Action                Propriété                  Valeur               Notes

    Couleur d'arrière­plan   background­color :           "#RRGGBB";

     Image d'arrière­plan    background­image :        url(http://url);

         Répétition de                                repeat; repeat­x; 
                             background­repeat :
        l'arrière­plan                               repeat­y; no­repeat;
      Spécifie si l'image 
      reste fixe avec les  background­attachment :      scroll; fixed;
    déplacements de l'écran
    Position de l'image par                                                   possibilité 
                                                     top; middle; bottom; 
        rapport au coin      background­position :                          d'indiquer des 
       supérieur gauche                              left; center; right; valeurs en pixels
                                                     #000000 url(test.jpg) 
    Raccourci global vers 
                                background :            no­repeat scroll 
    les propriétés des AP
                                                           center top;



                  body
                  {
                      background: transparent url(images/siteon0.jpg) 
                      no­repeat scroll center top;
                  }
                                                
Bordures
        Description                 Propriété                       Valeur

                              border[­top ­left ­bottom 
    Epaisseur de la bordure                                        10px; 2em;
                                   ­right]­width :

    Epaisseur de la bordure        border­width :          10px 15px 15px 10px; (HDBG)


                              border[­top ­left ­bottom 
     Couleur de la bordure                                          #RRGGBB;
                                   ­right]­color :

                                                          solid; (pleine) dashed; (en 
                              border[­top ­left ­bottom tirets) dotted; (en pointillés) 
      Style de la bordure
                                   ­right]­style :       double; (double) ridge; inset; 
                                                                outset; (en 3D)
                                                                  10px; 2em;           
    Effet arrondi (Mozzilla)  ­moz­border­radius :
                                                          10px 10px 10px 10px; (HDBG)

     Raccourci global les                                  border: 1px 0 0 2px dotted 
                                      border :
     propriétés de bordure                                           green;



                    body
                    {
                        border: 1px 0 0 2px dotted green;
                    }                   
projet6.html
                                           TP
       A partir de votre dernière version de projet5.html définir la 
        présentation des blocs suivants et le tester dans le nav :
            page
                 largeur : 1000 pixels
                 marge : automatique
                 couleur de fond : de votre choix (ex : #FFFFFF) ou logo de saint 
                  symphorien : images/logo_saint_sym.gif
            entete
                 image de fond : images/siteon0.jpg
            edito
                 bordures haute et gauche : #eee 2px solid
                 bordures basse et droite : 0px
                 bords arrondis : 10 px
            harmoniser les couleurs : polices, background body et page

                                            
Positionnement




           
Propriétés de position
       Description              Propriété                           Valeur
                                                      none; (n'affiche pas le bloc)           
                                                      block; (force la propriété bloc)      
         Propriétés              display :          inline; (force la propriété en­ligne)     
                                                    list­item; (force la propriété en­ligne) 
                                                       table; (force la propriété tableau)

                                                     visible; hidden; (cache l'élément mais 
          Affichage             visibility :
                                                     réserve un espace pour son affichage)

                                                    static; (default ­ dans le flux) relative; 
                                                   (décalage ­ dans le flux) absolute; (fixe ­ 
          Position               position :
                                                   hors du flux)   fixed; (fixe ­ hors du flux 
                                                                   – noscroll)

                              top : / right : / 
     Distance au parent                                ­10px; 30%; 2em; (pas pour static)
                              bottom : / left :


    Profondeur d'affichage 
                                 z­index :                        auto; 1000;
           (calque)

       Positionnement 
                                   float :                left; right; none; (default)
          flottant

     Efface le flottement          clear :             left; right; both; none; (default)
                                                
Hiérarchie des éléments

                                                                  A et B sont 
    <body>
                                                                   frères
        ancêtre                                                   A, B et C ont 
         parent 1                       parent 2                   le même 
           bloc A                            bloc C
                                                                   ancêtre
                                                                  Tous les 
           bloc B                                                  éléments sont 
                                                                   contenus 
                                                                   dans <body>



         De quelle nature sont bloc A et bloc B ? (bloc ou en ligne)
         Parent 1 et Parent 2 ?
                                          
position par defaut
               Le flux de document                           position : relative;


       Par défaut les éléments se placent en haut à gauche de 
        leur parent et suivent le flux de document :
              1. l'ordre dans lequel ils sont inscrits dans le code HTML
              2. leur nature (bloc ou en­ligne)
                   bloc : en dessous du précédent
                   en­ligne : à côté du précédent


                                                bloc A


                                                bloc B




                                             
                                                         parent 
Le flux de document (2)

       3. leurs marges internes (padding) et externes (margin)
        3. leurs marges internes (padding) et externes (margin)

                            margin top
                  margin 
                  left                   bloc A (marges)


                                     bloc B


                                                              parent 


                note : il s'agit bien des marges externes (margin) du bloc et 
                non des marges internes (padding) du parent


                                               
Le flux de document (3)

       4. les décalages (top, right, left, bottom) lorsque les 
        4. les décalages (top, right, left, bottom) lorsque les 
        blocs sont en position relative
                          top    bloc A 
                 left
                                   bloc A (relatif)


                                  bloc B



                                                           parent 


           ●   les éléments frères ne sont pas influencés par le décalage : 
               ils se positionnent comme si le bloc A était dans le flux
           ●   cet exemple n'a pas de marges en plus des décalages
 
           ●   le z­index est utile dans de tels cas
                                          
Positionnement en flux (exemple)

       marges + décalage

                            margin top
                  margin 
                  left            top bloc A (marges) 
                         left

                                         bloc A (marges + relatif)

                                     bloc B
                                                                     parent 

          ●   la taille du parent est influencée par celle des enfants si :
                ●   ils utilisents des marges
                ●   le parent possède une taille non fixe (%, em, pas de taille)
          ●   les décalages n'ont pas d'influence sur la taille du parent
                                               
position par defaut
                Positionnement flottant                      position : relative;


       Propriété float :
        Propriété float : float: right;   float: left;

       Un élément flottant sort du flux normal pour prendre 
        place à gauche ou à droite du bloc qui le contient.
        L'élément qui le suit s'écoulera dans l'espace laissé 
        libre en épousant sa forme.
       Notes
               L'avantage est de pouvoir placer des blocs côte à côte
               PIEGE: les flottants sortent du flux normal ce qui 
                impliquent qu'ils n'influencent plus la hauteur du 
                conteneur. Si l'on prend un paragraphe flottant plus gros 
                que les autres, il débordera du conteneur.

                                         
Positionnement flottant

         bloc A                                                   bloc A
    { width : 200px ; }                                       { width : 200px ; 
                                                                 float: left; }


                          bloc B
                     { width : 100% ; }                                            bloc B
                                                                              { width : 100% ; }


                                               parent                                                     parent 



         bloc A                bloc C                             bloc A                            bloc C
    { width : 200px ;     { width : 200px ;                  { width : 200px ;                 { width : 200px ; 
       float: left; }        float: left; }                     float: left; }                   float: right; }




                          bloc B                                                   bloc B
                     { width : 100% ; }                                       { width : 100% ; }


                                               parent                                                     parent 
                                                          
position par defaut
                  Positionnement flottant                                      position : relative;


       Propriété clear :
        Propriété clear : clear: both;
       Empêche un élément du flux de se trouver sur la même 
        ligne qu'une élément flottant.
       Typiquement utilisé pour les pieds de page.


            bloc A
             bloc A                                         bloc A                      bloc C
         { width : 200px ; 
        { width : 200px ;                                { width : 60% ;             { width : 40% ; 
            float: left; }
           float: left; }                                  float: left; }             float: right; }

                               bloc B
                            { width : 100% ;
                              clear: both; }

                                                                      bloc B
                                               parent             { width : 100% ;
                                                                    clear: both; }
                                                                                              parent 
position : absolute;
                Positionnement absolu

    
         position: absolute; top: 2em; left: 0;

               l'élément se place par rapport au dernier parent ayant une 
                position absolue. Par défaut : <body>
               l'élément sort du flux et n'affecte pas les autres blocs
               on utilise les attributs top, left, right, bottom pour le placer
       Pour des éléments indépendants de l'environnent

                                    top                             bloc B
                                                            { width : 100% ;}
                                          bloc A
                                  { position : absolute;            bloc C
                           left        left : 20px;
                                                            { width : 100% ;}
                                      top : 20 px; }




                                                                      parent 
  position : fixed;
                     Positionnement fixe
         position: fixed; top: 2em; left: 0;
    


               Identique à la position absolue
               Différence : l'élément ne bouge pas lorsque la page défile 
                avec l'ascenseur
       Pour des effets de style. Ne pas en abuser.



                                   top                             bloc B
                                                           { width : 100% ;}
                                         bloc A
                                 { position : absolute;            bloc C
                          left        left : 20px;
                                                           { width : 100% ;}
                                     top : 20 px; }




                                                                     parent 
projet7.html
                                     TP
    
        A partir de votre dernière version de projet6.html définir 
        A partir de votre dernière version de projet6.html définir 
        le positionement des blocs suivants et les tester :
               colonne_gauche
                    width: 650px;
                    float: left;
               colonne_droite
                    width: 250px;
                    float: right;
               footer
                    clear: both;




                                      
Compléments




          
Curseur

           Détermine l'apparence                   élément
            du curseur au survol                    {
                                                       cursor : apparence;
           Valeurs                                 }

           default : Curseur par défaut
           pointer : Main
           crosshair : Viseur
           help : Point d'interrogation
           wait : Attente
           text : Texte
           move : Objet déplaçable
           ...­resize : Changer la taille 
            en fonction de la direction

                                                 
Listes
               Action                  Propriété                      Valeur
                                                            decimal, upper­roman, lower­
          Type de puces et de 
                                     list­style­type :     latin, disc, circle, square ou 
             numérotation
                                                                        none

    Permet de personnaliser les 
                                    list­style­image :            url(image.png);
       puces avec une image

        Spécifie le retrait des 
                                   list­style­position :          inside; outside;
                 puces

     Raccourci global vers les 
                                       list­style :             type position url();
       propriétés des listes



         Des menus avec des listes
                    http://css.alsacreations.com/Galeries­de­menus­en­CSS 
                    http://www.alsacreations.com/livre/?/Exemples/exdouze
                    http://www.cssplay.co.uk/menus/visitedmenu.html
                                                  
projet8.html
                                                    TP
    <div id="menu">                                     #menu ul 
         <ul>                                           {
              <li><a href="#">Vie municipale</a></li>        padding­left:20px;
              <li><a href="#">Vie culturelle</a></li>        list­style­type:none;
              <li><a href="#">Economie</a></li>         }
              <li><a href="#">Actualités</a></li>
         </ul>                                          #menu li 
    </div>                                              {
                                                             float:left;
                                                             width:112px;
                                                             margin­left:5px;
                                                        }
           Créer votre menu                            #menu a, #menu a:visited 

            horizontal à l'aide des 
                                                        {
                                                             display:block;
                                                             font­size:11px;
            styles suivants :                                font­weight: bold ;
                                                             text­decoration:none; 
                                                             color: #fff; 
                                                             width:112px; 
                                                             height:30px;
                                                             background­image:url(images/corner.gif);
                                                             text­align:center;
                                                             line­height:29px;
                                                        }

                                                        #menu a:hover, #menu ul ul a:hover
                                                        {
                                                        color:#249526;
                                                        background­image:url(images/cornerb.gif);
                                                        }
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web
Formation - P2 - Standards du Web

More Related Content

What's hot

Intégration Web HTML 5 & CSS 3
Intégration Web HTML 5 & CSS 3Intégration Web HTML 5 & CSS 3
Intégration Web HTML 5 & CSS 3Stephane PERES
 
Html de base
Html de baseHtml de base
Html de basekrymo
 
DOTINFO TECHNOLOGY
DOTINFO TECHNOLOGYDOTINFO TECHNOLOGY
DOTINFO TECHNOLOGYibus2006
 
2014 09 12_atelier-humanites-numerique-hisoma-seance-1-oxygen
2014 09 12_atelier-humanites-numerique-hisoma-seance-1-oxygen2014 09 12_atelier-humanites-numerique-hisoma-seance-1-oxygen
2014 09 12_atelier-humanites-numerique-hisoma-seance-1-oxygenEmmanuelle Morlock
 
Le langage HTML
Le langage HTMLLe langage HTML
Le langage HTMLBruno Delb
 
Document Object Model ( DOM)
Document Object Model ( DOM)Document Object Model ( DOM)
Document Object Model ( DOM)Abdelouahed Abdou
 
Normes de base du Web GTI780 & MTI780 ETS A09
Normes de base du Web  GTI780 & MTI780  ETS   A09Normes de base du Web  GTI780 & MTI780  ETS   A09
Normes de base du Web GTI780 & MTI780 ETS A09Claude Coulombe
 
Présentation complète de l'HTML5
Présentation complète de l'HTML5Présentation complète de l'HTML5
Présentation complète de l'HTML5jverrecchia
 
Les fils RSS : l’information au bout des doigts
Les fils RSS : l’information au bout des doigtsLes fils RSS : l’information au bout des doigts
Les fils RSS : l’information au bout des doigtsAref Jdey
 
18 02-2015 atelier-pratique-xml-tei-stage-d-ecdotique-2015
18 02-2015 atelier-pratique-xml-tei-stage-d-ecdotique-201518 02-2015 atelier-pratique-xml-tei-stage-d-ecdotique-2015
18 02-2015 atelier-pratique-xml-tei-stage-d-ecdotique-2015Emmanuelle Morlock
 

What's hot (20)

Html
HtmlHtml
Html
 
Les base du Html5
Les base du Html5Les base du Html5
Les base du Html5
 
Intégration Web HTML 5 & CSS 3
Intégration Web HTML 5 & CSS 3Intégration Web HTML 5 & CSS 3
Intégration Web HTML 5 & CSS 3
 
Chapitre1
Chapitre1 Chapitre1
Chapitre1
 
Html de base
Html de baseHtml de base
Html de base
 
DOTINFO TECHNOLOGY
DOTINFO TECHNOLOGYDOTINFO TECHNOLOGY
DOTINFO TECHNOLOGY
 
2014 09 12_atelier-humanites-numerique-hisoma-seance-1-oxygen
2014 09 12_atelier-humanites-numerique-hisoma-seance-1-oxygen2014 09 12_atelier-humanites-numerique-hisoma-seance-1-oxygen
2014 09 12_atelier-humanites-numerique-hisoma-seance-1-oxygen
 
Le langage HTML
Le langage HTMLLe langage HTML
Le langage HTML
 
Document Object Model ( DOM)
Document Object Model ( DOM)Document Object Model ( DOM)
Document Object Model ( DOM)
 
Normes de base du Web GTI780 & MTI780 ETS A09
Normes de base du Web  GTI780 & MTI780  ETS   A09Normes de base du Web  GTI780 & MTI780  ETS   A09
Normes de base du Web GTI780 & MTI780 ETS A09
 
MMI Web Design P2
MMI Web Design P2MMI Web Design P2
MMI Web Design P2
 
Html css
Html cssHtml css
Html css
 
Css+html
Css+htmlCss+html
Css+html
 
Présentation complète de l'HTML5
Présentation complète de l'HTML5Présentation complète de l'HTML5
Présentation complète de l'HTML5
 
Initiation au html
Initiation au htmlInitiation au html
Initiation au html
 
Les fils RSS : l’information au bout des doigts
Les fils RSS : l’information au bout des doigtsLes fils RSS : l’information au bout des doigts
Les fils RSS : l’information au bout des doigts
 
18 02-2015 atelier-pratique-xml-tei-stage-d-ecdotique-2015
18 02-2015 atelier-pratique-xml-tei-stage-d-ecdotique-201518 02-2015 atelier-pratique-xml-tei-stage-d-ecdotique-2015
18 02-2015 atelier-pratique-xml-tei-stage-d-ecdotique-2015
 
Mmi Web Design P2
Mmi Web Design P2Mmi Web Design P2
Mmi Web Design P2
 
Formation HTML pour Bac Informatique
Formation HTML pour Bac InformatiqueFormation HTML pour Bac Informatique
Formation HTML pour Bac Informatique
 
Html et xhtml
Html et xhtmlHtml et xhtml
Html et xhtml
 

Similar to Formation - P2 - Standards du Web

presentation de html partie par partie et detaillee.pptx
presentation de html partie par partie et detaillee.pptxpresentation de html partie par partie et detaillee.pptx
presentation de html partie par partie et detaillee.pptxBrahimKarimi
 
Kits formation html-les_bases
Kits formation html-les_basesKits formation html-les_bases
Kits formation html-les_baseskitsformation
 
Chapitre 1_HTML_complet_version1.pdf
Chapitre 1_HTML_complet_version1.pdfChapitre 1_HTML_complet_version1.pdf
Chapitre 1_HTML_complet_version1.pdfYassineZARIOUH
 
HTML 5 - intro - en francais
HTML 5 - intro - en francaisHTML 5 - intro - en francais
HTML 5 - intro - en francaisVlad Posea
 
Formation developpement web KADODJOMON EMMANUEL COULIBALY.pptx
Formation developpement web KADODJOMON EMMANUEL COULIBALY.pptxFormation developpement web KADODJOMON EMMANUEL COULIBALY.pptx
Formation developpement web KADODJOMON EMMANUEL COULIBALY.pptxtanokouakouludovic
 
Cours Html.pdf
Cours Html.pdfCours Html.pdf
Cours Html.pdf4gnzggpfdw
 
Cours de développement web de HTML5 .pptx
Cours de développement web de HTML5 .pptxCours de développement web de HTML5 .pptx
Cours de développement web de HTML5 .pptxMounir Gouiouez
 
Outils de publication pour le CMS d'e-sidoc
Outils de publication pour le CMS d'e-sidocOutils de publication pour le CMS d'e-sidoc
Outils de publication pour le CMS d'e-sidoccdi-0450786k
 
Outils de publication pour le CMS d'e-sidoc
Outils de publication pour le CMS d'e-sidocOutils de publication pour le CMS d'e-sidoc
Outils de publication pour le CMS d'e-sidocpriscilla_mommessin
 
Netpathie apprendre-le-html-en-15-minutes
Netpathie apprendre-le-html-en-15-minutesNetpathie apprendre-le-html-en-15-minutes
Netpathie apprendre-le-html-en-15-minutesNetpathie
 
Outils de publication pour e-sidoc
Outils de publication pour e-sidocOutils de publication pour e-sidoc
Outils de publication pour e-sidocStéphanie Tricard
 
formation developpement web seance html.pptx
formation developpement web seance html.pptxformation developpement web seance html.pptx
formation developpement web seance html.pptxIdrissaDembl
 
Chapitre 1 - Introduction générale.pdf
Chapitre 1 - Introduction générale.pdfChapitre 1 - Introduction générale.pdf
Chapitre 1 - Introduction générale.pdfAnouAr42
 

Similar to Formation - P2 - Standards du Web (20)

presentation de html partie par partie et detaillee.pptx
presentation de html partie par partie et detaillee.pptxpresentation de html partie par partie et detaillee.pptx
presentation de html partie par partie et detaillee.pptx
 
Kits formation html-les_bases
Kits formation html-les_basesKits formation html-les_bases
Kits formation html-les_bases
 
Chapitre 1_HTML_complet_version1.pdf
Chapitre 1_HTML_complet_version1.pdfChapitre 1_HTML_complet_version1.pdf
Chapitre 1_HTML_complet_version1.pdf
 
HTML 5 - intro - en francais
HTML 5 - intro - en francaisHTML 5 - intro - en francais
HTML 5 - intro - en francais
 
Formation developpement web KADODJOMON EMMANUEL COULIBALY.pptx
Formation developpement web KADODJOMON EMMANUEL COULIBALY.pptxFormation developpement web KADODJOMON EMMANUEL COULIBALY.pptx
Formation developpement web KADODJOMON EMMANUEL COULIBALY.pptx
 
Cours Html.pdf
Cours Html.pdfCours Html.pdf
Cours Html.pdf
 
Cours de développement web de HTML5 .pptx
Cours de développement web de HTML5 .pptxCours de développement web de HTML5 .pptx
Cours de développement web de HTML5 .pptx
 
Outils de publication pour le CMS d'e-sidoc
Outils de publication pour le CMS d'e-sidocOutils de publication pour le CMS d'e-sidoc
Outils de publication pour le CMS d'e-sidoc
 
Outils de publication pour le CMS d'e-sidoc
Outils de publication pour le CMS d'e-sidocOutils de publication pour le CMS d'e-sidoc
Outils de publication pour le CMS d'e-sidoc
 
Netpathie apprendre-le-html-en-15-minutes
Netpathie apprendre-le-html-en-15-minutesNetpathie apprendre-le-html-en-15-minutes
Netpathie apprendre-le-html-en-15-minutes
 
Outils de publication pour e-sidoc
Outils de publication pour e-sidocOutils de publication pour e-sidoc
Outils de publication pour e-sidoc
 
Introduction à XML
Introduction à XMLIntroduction à XML
Introduction à XML
 
hassclic284.ppt
hassclic284.ppthassclic284.ppt
hassclic284.ppt
 
formation developpement web seance html.pptx
formation developpement web seance html.pptxformation developpement web seance html.pptx
formation developpement web seance html.pptx
 
Introduction html
Introduction htmlIntroduction html
Introduction html
 
Chapitre 1 - Introduction générale.pdf
Chapitre 1 - Introduction générale.pdfChapitre 1 - Introduction générale.pdf
Chapitre 1 - Introduction générale.pdf
 
Chapitre2 HTML5
Chapitre2 HTML5Chapitre2 HTML5
Chapitre2 HTML5
 
BDW-ProgWEB_P1.pdf
BDW-ProgWEB_P1.pdfBDW-ProgWEB_P1.pdf
BDW-ProgWEB_P1.pdf
 
Html
HtmlHtml
Html
 
Html css-xhtml
Html css-xhtmlHtml css-xhtml
Html css-xhtml
 

More from Patrick Vincent

Séminaire éco-citoyen Bio-inspiration
Séminaire éco-citoyen Bio-inspirationSéminaire éco-citoyen Bio-inspiration
Séminaire éco-citoyen Bio-inspirationPatrick Vincent
 
SCEWC 2018 Erasme P VINCENT
SCEWC 2018 Erasme P VINCENTSCEWC 2018 Erasme P VINCENT
SCEWC 2018 Erasme P VINCENTPatrick Vincent
 
Challenge Transport - Restitution
Challenge Transport - RestitutionChallenge Transport - Restitution
Challenge Transport - RestitutionPatrick Vincent
 
Innovation ouverte - Sprint créatif
Innovation ouverte - Sprint créatifInnovation ouverte - Sprint créatif
Innovation ouverte - Sprint créatifPatrick Vincent
 
Présentation HOST-Communication / Webnapperon 2
Présentation HOST-Communication / Webnapperon 2Présentation HOST-Communication / Webnapperon 2
Présentation HOST-Communication / Webnapperon 2Patrick Vincent
 
Ateliers de co-design seniors - HOST
Ateliers de co-design seniors - HOSTAteliers de co-design seniors - HOST
Ateliers de co-design seniors - HOSTPatrick Vincent
 
Lift12 workshop conductor
Lift12 workshop conductorLift12 workshop conductor
Lift12 workshop conductorPatrick Vincent
 
RFID au Muséolab - retours d'expérience
RFID au Muséolab - retours d'expérienceRFID au Muséolab - retours d'expérience
RFID au Muséolab - retours d'expériencePatrick Vincent
 
Formation - P3 - SPIP Squelettes
Formation - P3 - SPIP SquelettesFormation - P3 - SPIP Squelettes
Formation - P3 - SPIP SquelettesPatrick Vincent
 

More from Patrick Vincent (15)

Séminaire éco-citoyen Bio-inspiration
Séminaire éco-citoyen Bio-inspirationSéminaire éco-citoyen Bio-inspiration
Séminaire éco-citoyen Bio-inspiration
 
SCEWC 2018 Erasme P VINCENT
SCEWC 2018 Erasme P VINCENTSCEWC 2018 Erasme P VINCENT
SCEWC 2018 Erasme P VINCENT
 
Workshop IA publiques
Workshop IA publiquesWorkshop IA publiques
Workshop IA publiques
 
Challenge Transport - Restitution
Challenge Transport - RestitutionChallenge Transport - Restitution
Challenge Transport - Restitution
 
Innovation ouverte - Sprint créatif
Innovation ouverte - Sprint créatifInnovation ouverte - Sprint créatif
Innovation ouverte - Sprint créatif
 
Ludomuse
LudomuseLudomuse
Ludomuse
 
Présentation HOST-Communication / Webnapperon 2
Présentation HOST-Communication / Webnapperon 2Présentation HOST-Communication / Webnapperon 2
Présentation HOST-Communication / Webnapperon 2
 
Ateliers de co-design seniors - HOST
Ateliers de co-design seniors - HOSTAteliers de co-design seniors - HOST
Ateliers de co-design seniors - HOST
 
Lift12 workshop conductor
Lift12 workshop conductorLift12 workshop conductor
Lift12 workshop conductor
 
Webnapperon
WebnapperonWebnapperon
Webnapperon
 
RFID au Muséolab - retours d'expérience
RFID au Muséolab - retours d'expérienceRFID au Muséolab - retours d'expérience
RFID au Muséolab - retours d'expérience
 
Formation - P3 - SPIP Squelettes
Formation - P3 - SPIP SquelettesFormation - P3 - SPIP Squelettes
Formation - P3 - SPIP Squelettes
 
Memento Boucles SPIP
Memento Boucles SPIPMemento Boucles SPIP
Memento Boucles SPIP
 
Memento HTML CSS
Memento HTML CSSMemento HTML CSS
Memento HTML CSS
 
Formation - WiFi
Formation - WiFiFormation - WiFi
Formation - WiFi
 

Formation - P2 - Standards du Web

  • 1. Les standards du Web Patrick VINCENT   Partie 2   pvincent@erasme.org
  • 2. Partie 1 Les pages HTML ­bases théoriques et pratiques­    
  • 3. Principes du langage HTML    
  • 4. Définition  HTML : HyperText Markup L HTML : HyperText Markup Language  Langage universel de conception de pages Web créé en  1998 par le W3C (World Wide Web Consortium)  Hypertexte : permet de créer des liens hypertextes vers  Hypertexte : permet de créer des liens hypertextes vers  des ressources locales ou distantes.  C’est un langage de marquage de document, il permet  C’est un langage de marquage de document, il permet  de décrire la structure d’un document électronique sous  forme lisible par un être humain et interprétable par une  machine.  XHTML = réécriture de l'HTML visant à assurer une  transition vers l'XML    
  • 5. Pas de mise en forme définitive  HTML est un langage qui décrit le contenu, la  HTML est un langage qui décrit le contenu, la  structure logique et la présentation globale d’un  structure logique et la présentation globale d’un  document mais pas son aspect final à l’écran, qui  document mais pas son aspect final à l’écran, qui  dépend de l'outil utilisé (écran, synthétiseur vocal,  imprimante).  Différent d'un document PDF par exemple.  Ex : l' utilisateur peut modifier au moment de  l'affichage plusieurs paramètres de présentation. l'affichage plusieurs paramètres de présentation.  Dans Firefox :   Affichage > Taille du texte  Affichage > Style de la page     
  • 6. page1.html Hello World  Ouvrir un bloc­note, taper et enregistrer le fichier  page1.html suivant : page1.html suivant : <html> <head> </head> <body> Hello World ! </body> </html>  Ouvrir ce fichier avec votre navigateur Firefox  Vérifier le code source de ce fichier    
  • 7. Structuration avec des balises  Les fichiers HTML sont constitués de texte.  Pour définir la structure du document, on utilise des  balises délimitées par les caractères < et >  balises délimitées par les caractères < et >  Balise ouvrante : <balise> Balise ouvrante : <balise> Balise fermante : </balise> Balise fermante : </balise>  Les balises définissent une propriété qu'elles  appliquent au contenu qu'elles encadrent.  Une balise ouverte doit toujours être fermée. <balise1>contenu</balise1>    
  • 8. Exemples  Titre de niveau 1 <h1>titre</h1>  Mise en intonation  <strong>important</strong>  Paragraphe <p> texte texte texte texte texte texte </p>    
  • 9. Les balises auto­fermantes  Certains éléments appelés éléments vides ne  marquent pas du texte.  Il n’ont pas de contenu, les balises de début et de fin  peuvent être combinées : <br></br> = <br />  Il s'agit la plupart du temps de balises nécessitant des  attributs : <img src="http://www.spip.net/IMG/siteon0.jpg" alt="ecureuil" />    
  • 10. Ajout d'attributs  Des attributs peuvent être ajoutés à un élément  Ils précisent celui­ci (apparence, comportement...)  Ils précisent celui­ci (apparence, comportement...)  sans faire partie de son contenu  Le nom de l’attribut apparaît après le nom d’élément  dans la balise ouvrante et est suivi du signe = dans la balise ouvrante et est suivi du signe = puis de  la valeur de l’attribut entre guillemets.  Les attributs d’un élément forment un ensemble (nom  unique, pas d’ordre). <a href="http://www.spip.net" title="site SPIP">Cliquer ici</a>    
  • 11. Imbrication  Les éléments peuvent être imbriqués les uns dans les  autres : <p> <strong> texte texte texte </strong> </p>  Il ne peut pas y avoir de chevauchement. Tout  élément doit être fermé avant ceux qui le contiennent.  Un document ainsi structuré forme donc un arbre dont  les nœuds sont les éléments et les feuilles des  fragments du texte.    
  • 12. page2.html TP  Compléter votre page avec :  une balise de titre 1 <h1> autour de Hello World  deux paragraphes de votre choix <p>  la mise en intonation <strong> d'une partie du texte à  l'intérieur d'un paragraphe  l'image de l'écureuil SPIP à l'intérieur d'un paragraphe  <img />  Vérifier le résultat localement dans le navigateur  Envoyer la page en ligne à la racine de votre site en  FTP  La consulter en ligne    
  • 13. Structure d'un document <html> <head> <title>Ma page</title> <meta name="author" content="Patrick VINCENT" /> </head> <body> <h1>Hello World !</h1> <p> Nous avons trouvé la photo d'un animal. Il s'agit d'un<strong>ecureuil</strong> <img src="http://www.spip.net/IMG/siteon0.jpg" /> </p> <p>Pour en savoir plus cliquer  <a href="http://www.spip.net">ici<a> </p> </body> </html>    
  • 14. Trois éléments de base  <html>...</html> : le document complet <html>...</html> : le document complet  <head>...</head> : l’en­tête  <head>...</head> : l’en­tête   type de document  type de caractères  mots clés  titre de la fenêtre  <body>...</body> : le corps du document <body>...</body> : le corps du document  blocs  contenu : texte, tableaux, images, sons...  inclusion d'applications : flash, javascript, java    
  • 15. Structure arborescente  Un document HTML peut  html être lu comme un arbre  L’ordre des nœuds et leur  imbrication précisent la        head body structure du document  Cette structure est  title meta h1 p p exploitable :  Quels sont les titre et auteur du  strong document ?  Combien y­a­t­il de paragraphes ?  Quel est le titre de niveau 1 qui  précède le 1er paragraphe ? Utilisé pour le  DOM     (Document Objet Model)
  • 16. Interprétation  Le document HTML peut être visualisé dans un  navigateur, la structure logique est interprétée pour  fournir une présentation  Un document peut donc être considéré à trois niveaux :   physique (syntaxe)  logique (structure d’arbre)  présentation : navigateur, téléphone, pda, lecteur audio... HTML <html>  <head></head>  <body>    <p> Firefox      Hello      <strong>        World      </strong>    </p> « Hello World ! »  </body>   </html>   VoiceXML
  • 17. Règles d'édition  Dans un nouveau fichier, commencer par copier  l'ossature du fichier HTML par défaut  Les espaces, les tabulations et les retours à la ligne  ne sont pas interprétés par le navigateur  Pour forcer les retours à la ligne : utiliser des  paragraphes <p> ou des césures <br />  Pour forcer l'espacement : utiliser des espaces  insécables &nbsp;  Utiliser les caractères spéciaux  é = &eacute;  è = &egrave;  à = &agrave;    
  • 18. Pour une bonne lisibilité de la source  Ajouter des commentaires :  <!­­ commentaire ­­> <!­­  ­­>  Aérer le document : retour à  <body> la ligne + lignes vides <p> <h1>texte</h1> </p> </body>  Indenter les éléments <body> <p> <h1>texte</h1> </p> </body>    
  • 19. Pour une bonne lisibilité de la source <html><head><title>Ma page</title></head><body><h1>Hello World ! NON </h1><p>Nous avons trouvé la photo d'un animal. <img src="http://www.spip.net/fr/carte.jpg" /></p></body></html> <html> <head> <title>Ma page</title> </head> <body> OUI <!­­ Début du corps du document ­­> <h1>Hello World !</h1> <p> Nous avons trouvé la photo d'un animal. <img src="http://www.spip.net/IMG/siteon0.jpg" /> </p> <!­­ Fin du corps du document ­­> </body> </html>    
  • 20. Editeurs de texte GPL et gratuits   notepad++ (Windows) notepad++ (Windows)  gedit (Ubuntu) gedit (Ubuntu)  voir aussi : ultraedit,  context  activer le greffon balises      voir aussi : Anjuta, Screem
  • 21. page3.html TP  Si Windows installer notepad++  http://notepad­plus.sourceforge.net/fr/site.htm > Télécharger >  Télécharger les binaires de Notepad++ > npp.4.0.2.Installer.exe  Ouvrir votre fichier précédent  Rendre la source lisible  ajouter des commentaires  l'indenter et ajouter des espaces  vérifier que cela n'a pas de conséquence sur l'affichage  Ajouter  dans le paragraphe de votre choix, un retour à la ligne  puis la phrase «cet été je n'irai pas à la plage»  l'afficher dans Firefox en caractères cyriliques : Affichage >  Encodage des caractères >UTF­8  Mettre la page en ligne à jour et vérifier l'affichage    
  • 23. Définition  XHTML : Extensible HyperText Markup L XHTML : Extensible HyperText Markup Language  Evolution actuelle de l'HTML visant à   standardiser et homogénéiser le langage  éviter que les navigateurs utilisent leurs propres balises  ou interprètent librement les marqueurs  assurer une transition vers un langage en arbre (XML)  Depuis le XHTML 1.0 une page pourra évaluer son  niveau de conformité aux standards du web (et  indirectement aux services d'accessibilité) :  normes du W3C (World Wide Web Consortium) :  http://www.w3.org/   http://validator.w3.org/     
  • 24. Plusieurs principes de base du XHTML  Toute balise ouvrante doit être fermée  Les éléments doivent être correctement imbriqués  Les balises et les attributs doivent être écrits en minuscules  Les valeurs des attributs doivent apparaître entre apostrophes  ou guillemets  Chaque attribut doit avoir une valeur  L’attribut name ne doit plus être utilisé pour l'identification des  L’attribut name ne doit plus être utilisé pour l'identification des  balises. A la place on utilisera l’attribut id  balises. A la place on utilisera l’attribut id (qui servait déjà pour les CSS). <p>texte</p> <p>texte <strong>important</strong></p> <p id="par1">texte</p> <img src="/IMG/carte.jpg" alt="" />    
  • 25. Buts et pratiques  Le XHTML vise à faire disparaître toute notion de  mise en forme de la page HTML et d'en laisser la  mise en forme de la page HTML et d'en laisser la  gestion aux feuilles de style.  Les balises doivent orienter le sens sémantique donné  au texte, mais pas sa mise en forme :  <emphatic> plutôt que <italic> <emphatic> plutôt que <italic>  Certaines balises et attributs sont déconseillés :  police : <font face="arial"></font>  gras et italique : <b></b> et <i></i>  centrer : <center></center>  <body background="white" bgcolor="black"></body> ­>Il est plus judicieux d'initier un projet de design Web aujourd'hui qu'il y a 3 ans!    
  • 26. Structure de document XHTML 1.0  Un document XHTML 1.0 est un document HTML  4.01 précédé d'un élément : le doctype  4.01 précédé d'un élément : le doctype (type de document)  Doctype XHTML 1.0 Transitional <!DOCTYPE html PUBLIC "­//W3C//DTD XHTML 1.0 Transitional//EN"    "http://www.w3.org/TR/xhtml1/DTD/xhtml1­transitional.dtd">  respecte les cinq principes du XHTML  autorise la présence des balises <font>,<center> et des  attributs border, align, bgcolor, target  autorise l'emploi des <iframe>  ­> permets un passage progressif des documents (et  des compétences) vers l'XHTML    
  • 27. Structure de document XHTML 1.0  Doctype XHTML 1.0 Frameset <!DOCTYPE html PUBLIC "­//W3C//DTD XHTML 1.0 Frameset//EN"    "http://www.w3.org/TR/xhtml1/DTD/xhtml1­frameset.dtd">  identique au doctype transitional  remplace <body> par <frameset> + <frame>  ­> permets l'utilisation de sous­sites dans un site  Doctype XHTML 1.0 Strict <!DOCTYPE html PUBLIC "­//W3C//DTD XHTML 1.0 Strict//EN"    "http://www.w3.org/TR/xhtml1/DTD/xhtml1­strict.dtd">  toutes les balises et les attributs déconseillées sont exclues      ­> pour les sites validés W3C (rare!)
  • 28. Structure de la page XHTML 1.0 type <!DOCTYPE html PUBLIC "­//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1­transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <title>Ma page</title> <!­­ type de document et de caractères ­­> <meta http­equiv="content­type" content="text/html; charset=UTF­8" /> <!­­ meta donnees pour les moteurs de recherche ­­> <meta name="description" content="Titre" /> <meta name="author" content="P. VINCENT" /> <meta name="keywords" lang="fr" content="mot1, mot2" /> <meta name="robots" content="all" /> <!­­ feuilles de style ­­> <link rel="stylesheet" type="text/css" media="screen" href="feuille.css" /> </head> <body> ... </body> </html>    
  • 29. Structure de document XHTML 1.1  Un document XHTML 1.1 intègre les éléments suivants:  La version de XML et le codage des caractères <?xml version="1.0" encoding="UTF­8"?>  Le Doctype XHTML 1.1 (strict strict strict) <!DOCTYPE html PUBLIC "­//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">  La balise meta XHTML <meta http­equiv="content­type" content="xhtml+xml; charset=UTF­8" />  A n'utiliser que dans quelques années...    
  • 30. Structure de la future page XHTML 1.1 <?xml version="1.0" encoding="UTF­8"?> <!DOCTYPE html PUBLIC "­//W3C//DTD XHTML 1.1//EN"  "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <title>Ma page</title> <!­­ type de document et de caractères ­­> <meta http­equiv="content­type" content="xhtml+xml; charset=UTF­8" /> <!­­ meta donnees pour les moteurs de recherche ­­> <meta name="description" content="Titre" /> <meta name="author" content="P. VINCENT" /> <meta name="keywords" lang="fr" content="mot1, mot2" /> <meta name="robots" content="all" /> <!­­ feuilles de style ­­> <link rel="stylesheet" type="text/css" media="screen" href="feuille.css" /> </head> <body> ... </body>   </html>  
  • 31. L'en­tête <head></head>    
  • 32. Mentions obligatoires  Le titre <title></title> Le titre <title></title>  Il apparaît dans le haut de la fenêtre du navigateur.  Il est utilisé pour l'indexation par les moteurs de recherche  et le stockage d'informations locales par le navigateur <title>Ma page</title>  Les marqueurs de meta­données <meta /> Les marqueurs de meta­données <meta />  Mentions non affichées mais utiles (avec des réserves)  pour les moteurs de recherche et d'indexation  auteur, description, tags, date <meta name="description" content="pour les moteurs de recherche." /> <meta name="author" content="P. VINCENT" /> <meta name="keywords" lang="fr" content="mairie, informatique" /> <meta name="date" content="2007­03­20">   <meta name="robots" content="all" />  
  • 33. Meta données  Type de document et jeu de caractère <meta /> Type de document et jeu de caractère <meta />  Indique au navigateur la version HTML ou XHTML  Donne le jeu de caractères d'encodage (défault UTF­8) <meta http­equiv="content­type" content="text/html; charset=UTF­8" />  Rechargement ou redirection de page <meta /> Rechargement ou redirection de page <meta />  Permets à la page d'être redirigée au bout d'un certain  temps <meta http­equiv="refresh" content="5; URL=http://www.spip.net/">    
  • 34. Inclusion des styles CSS  Feuilles de style externes <link /> Feuilles de style externes <link />  Indique l'adresse d'inclusion des feuilles de style .css  liées à la page <link rel="stylesheet" type="text/css" media="screen" href="feuille.css" />  Feuilles de style locales <style> Feuilles de style locales <style>  Permets de déclarer les styles dans la page HTML elle­ même <style type="text/css"> /* Mon style */ </style>    
  • 35. Inclusion de scripts JavaScript  Script Javascript externe <script /> Script Javascript externe <script />  Indique l'adresse d'inclusion du script .js lié à la page <script type="text/javascript" src="menu.js" />  Script Javascript local <script> Script Javascript local <script>  Permets de déclarer les styles dans la page HTML elle­ même <script type="text/javascript"> /* Mon script */ </script>    
  • 36. Divers  Information de flux RSS <link /> Information de flux RSS <link />  Indique la présence et l'adresse du lien RSS de la page  via le navigateur de l'internaute <link rel="alternate" type="application/rss+xml" href="spip.php?page=backend"  title="mon site" />  Icône du site (favicon) <link /> Icône du site (favicon) <link />  Modifie l'icône affiché dans la barre d'adresse <link rel="shortcut icon" type="image/png" href="/dist/favicon.png" /    
  • 37. page_standard.html TP  Ouvrir le fichier page_standard.html Ouvrir le fichier page_standard.html  Modifier :  le titre  les meta­données : auteur, mots­clefs, descriptif  Enregister la page sous : ma_page_standard.html Enregister la page sous : ma_page_standard.html  La passer en lecture seule.  Cette page est votre page HTML vierge par défaut pour toutes vos  créations à venir.  Modifier le favicon   Ajouter l'information du flux RSS de votre site  Pour aller plus loin, en faire une copie et  :   Faire une redirection au bout de 5 secondes vers votre site    
  • 38. Structure du corps <body></body>    
  • 39. Balises de type bloc Balises de type bloc  Ce sont des «boîtes» qui peut contenir  d'autres éléments de type bloc  des éléments de type en ligne  des balises auto­fermantes  du texte  les blocs se positionnent les uns en dessous des autres  et occupent toute la largeur du parent titre  <div> texte texte texte texte texte texte  <h1>titre</h1> texte texte texte texte texte texte  <p>texte texte texte</p> texte texte texte texte texte <p>texte2 texte2 texte2</p> </div> texte2  texte2  texte2  texte2  texte2  texte2     
  • 40. Balises de type en­ligne Balises de type en­ligne  Ce sont des «boîtes» qui peut contenir  des éléments de type en­ligne  du texte  mais pas de balises de type bloc  un élément en ligne se trouve donc aux derniers  maillons de l'arbre html   les éléments en ligne se placent à côté les uns des  autres et habillent l'élément parent texte texte texte  texte2  texte2 <div> <span>texte texte texte</span> texte2 texte2 texte2 texte2 texte2 <span>texte2 <em>texte2</em> texte2  texte2 texte2 texte2</span> texte2  texte2  <img src="/IMG/spip.jpg" /> </div>    
  • 41. Conteneurs génériques  <div>  <div>  BLOC  élément neutre permettant de regrouper des éléments de tout  type (bloc ou en­ligne) : <div>,<span>,<h1>,<img />...  ne pas abuser des <div> et préférer des éléments avec du  «sens» sémantique <div>      <h1>Question existentielle :</h1>      <blockquote>To be SPIP or not to be ?</blockquote> </div>  <span>  <span>  EN­LIGNE  élément neutre pour regrouper des éléments en­ligne : <img  />,<strong>,<em>... <span><abbr>SPIP</abbr> est un outil de publication     <strong>partagé</strong></span>
  • 42. Attributs de nommage  id et class sont utilisés pour nommer les éléments  id et class sont utilisés pour nommer les éléments  HTML afin de leur appliquer des styles CSS  id désigne un élément unique dans la page  class désigne un élément qui peut apparaître plusieurs  fois <div id="bloc1"> <span class="texte">texte2 texte2 texte2  texte2 texte2 texte2</span> <a href="page.html" class="lien">cliquer ici</a> </div>    
  • 44. La liste des conteneurs principaux page entete menu colonne_gauche colonne_droite footer    
  • 45. L'arbre de structure principale body page BLOC STRUCTURE BLOC bas_page entete colonne_gauche colonne_droite menu ... ...    
  • 46. L'arbre des éléments colonne_gauche BLOC edito alaune articles_brevesarticles_breves STRUCTURE h6 BLOC alaune_1 alaune_2 article_breve_1 article_breve_tous article_texte article_texte article_texte BLOC CONTENU   EN­LIGNE h3 img p   h5 img p ...
  • 47. projet1.html TP projet1_bordures.html  Faire une copie de votre page standard : projet1.html Faire une copie de votre page standard : projet1.html  Créer à l'intérieur du corps de la page les six  conteneurs principaux à l'aide de balises <div>. conteneurs principaux à l'aide de balises <div>.  les nommer avec l'attribut id  rajouter une ligne de texte au début de chaque bloc  A l'aide de l'arbre des éléments de la colonne gauche,  créer la structure de la page créer la structure de la page ● Afin de  <style type="text/css"> div visualiser les  { padding: 10px; blocs ajouter à  margin: 10px; border: black solid 1px; l'en­tête de  }     </style> votre 
  • 48. projet2.html TP  Depuis le fichier projet1­complet.html ajouter les  Depuis le fichier projet1­complet.html  éléments de contenu suivants : éléments de contenu suivants :  Bloc Edito  L'image images/arton1.gif  Un titre <h3> : Carte d'identité de la commune  Un paragraphe <p> avec du contenu mise en forme :  Description de la commune...  Bloc article_breve_1  L'image images/rubon3­15c52.gif  Un titre <h5> Titre avec un lien <a>  La date en mise en forme emphatique <em>  Un paragraphe <p> avec du contenu mise en forme : Texte...  Un lien : lire la suite    
  • 49. Détail des balises  du corps <body></body>    
  • 50. Les balises de type bloc Les balises de type bloc Balise Signification  Balise bloc mère du corps de la page, c'est le  <body> conteneur principal <div> Conteneur de blocs  <p> Paragraphe  <h1> ... <h6> Titre de niveau 1 à 6 <blockquote> Marque une citation  <pre> Affiche exactement ce qu'on y mets (tabulations,sauts) <ul>,<ol>,<li> Liste énumérative et liste numérotée <dl>,<dd>,<dt> Liste de définition  <table>,<th>,<tr>,<td> Tableaux <tbody>, <thead>,  Sous partie d'un tableau <tfoot> <fieldset>, <form> Formulaire interactif  <noscript> Texte alternatif aux scripts <map> image réactive (nécessite <area>) <hr /> Séparation horizontale      Note : Il s'agit essentiellement d'éléments de structure
  • 51. Liste des balises de type en­ligne Liste des balises de type en­ligne Balise Signification  <span> Conteneur en­ligne <a> Liens <img /> Images <br /> Saut de ligne <em>, <strong> Mise en intonation du texte <abbr>, <acronym>,  Sigle, citation et définition <cite>, <q>, <dfn> <del>, <ins> Suppression / ajout de texte <kbd>, <code>, <samp>,  Instruction et code <var> <sub>, <sup> Indices et exposants <object> Animation multimédia embarquée  Note : Il s'agit essentiellement d'éléments de contenu / mise    en forme  
  • 52. Les balises de Titre page4.html  <h1>...<h6>  <h1>...<h6>  BLOC  permets de hiérarchiser les titres en 6 niveaux  personnalisables via les CSS  ne peuvent pas inclure de balises de type BLOC <div>      <h1>Liste des Outils Internet</h1>       <h2>Navigateurs</h2>            <h3>IE</h3>            <h3>Firefox</h3>       <h2>CMS</h2>            <h3>SPIP</h3>         <h3>Joomla</h3> </div>    
  • 53. page5.html Les balises de paragraphe  Ne peuvent pas contenir d'autres balises de type Bloc  <p> , <hr /> , <pre> , <blockquote> BLOC <div> <p>To be SPIP or not to be ?</p> <pre> Nul ne le sait mais       il convient d'y réfléchir   à l'aide de cette citation : </pre>     <hr /> <blockquote lang="fr" cite="De l'âme, Aristote"> « C'est aussi pourquoi il n'y a pas  à rechercher si l'âme et le corps sont une  seule chose, pas plus qu'on ne le fait pour  la cire et l'empreinte, ni d'une manière générale  pour la matière d'une chose quelconque et   ce dont elle est la matière. »  </blockquote>     <hr /> </div>    
  • 54. Les liens page6.html  <a>  <a>  EN­LIGNE  permets de naviguer au sein de la page ou vers une autre  page  attributs  href : destination (obligatoire)  title : infobulle  name : pour nommer une ancre <a href="http://www.spip.net" title="site SPIP">Cliquer ici</a> <br /> <a href="#en_bas">Aller jusqu'à l'ancre en bas</a> <br /><br /><br /><br /><br /><br /><br /><br /><br /><br /> <br /><br /><br /><br /><br /><br /><br /><br /><br /><br /> <a href="#" name="en_bas">ici</a>    
  • 55. Les images page7.html  <img />  <img />  EN­LIGNE  intègre l'image dans la page HTML  attributs   src : source (obligatoire)  alt : texte alternatif pour autres moteurs de rendu ou pb (obligatoire)  title : info­bulle  width et height : taille <img src="http://www.spip.net/IMG/siteon0.jpg" alt="écureuil"   title="est­ce un mammifère?" width="400px" height="400px" />  <map> BLOC <img src ="planets.gif" width="145" height="126" alt="Planets"  usemap ="#planetmap" /> <map id ="planetmap" name="planetmap">   <area shape="rect" coords="0,0,82,126" href="sun.htm" alt="Sun" />     <area shape="circle" coords="90,58,3" href="mercur.htm" alt="Mercury" />   </map>
  • 56. Les tableaux page8.html  <table>, <tr>, <th>, <td>  <table>, <tr>, <th>, <td>  BLOC  permets d'intègrer un tableau de données dans la page  attributs (disparaîtront à terme)  width et height : taille   border : taille de la bordure <table border="1" width="90%" height="300px">      <tr>           <th>Poisson</th>           <td>20 euros</td>           <td>500 grammes</td>      </tr>      <tr>           <th>Viande</th>           <td>15 euros</td>           <td>900 grammes</td>      </tr> </table>    
  • 57. Les listes page9.html  <ul>, <ol>, <li>  <ul>, <ol>, <li>  BLOC <p>Voici une liste non­ordonnée :</p> <ul>      <li>Le XHTML est accessible</li>      <li>Le XHTML est bien structuré</li>      <li>Le XHTML est donne un sens à vos pages web</li> </ul> <p>Voici une liste ordonnée :</p> <ol>      <li>Le XHTML est accessible</li>      <li>Le XHTML est bien structurer</li>      <li>Le XHTML est donne un sens à vos page web :</li>   <ol>                <li>C'est bon pour les internautes</li>                <li>C'est bon pour les moteurs de recherche</li> </ol> </ol>    
  • 58. Les définitions page10.html  <dl>, <dt>, <dd>  <dl>, <dt>, <dd>  BLOC  Comme les listes ne peut pas contenir d'autres éléments  de type bloc que ceux notés ici <p>Voici une liste de termes et de définitions :</p> <dl>      <dt>Développeur</dt>      <dd>Un développeur est un informaticien qui  programme des logiciels.</dd>      <dt>Web</dt>      <dd>Réseau maillé de serveurs  d'informations formant une toile d'araignée.</dd> </dl>    
  • 59. page11.html Les balises de mise en forme  <em>, <strong>, <br />, <del>, <ins>, <sub>, <sup>  mise en forme EN­LIGNE  <abbr>, <cite>, <q>, <dfn>, <code>  abbréviations, définitions et citation de code <div> Une <em>information</em> <strong>importante</strong> doit être partagée. <br /> <br /> Voici des <del>informations</del> <ins>propositions</ins> de réflexions <sub>basses</sub> et <sup>élevées</sup> : <br /> <br /> <abbr title="Système de publication pour l'internet partagé"  lang="fr">SPIP</abbr> <br /> <br /> <q>To be or not to be.</q>     <cite>Shakespear</cite> <br /> <br />     <dfn>Un kiwi</dfn> est un fruit exotique mais aussi un petit animal. <br /> <br /> En PHP, la variable langage sera <code>$langage = "XHTML";</code> </div>    
  • 60. page12.html Les objets embarqués  <object>, <param /> EN­LIGNE  permets d'inclure des animations multimédia à l'intérieur  de la page  Flash, Active X, Applet Java... <div> <object type="application/x­shockwave­flash"  data="http://www.erasme.org/libre/divers/animations/calculatrice.swf"  width="831" height="143">       <param name="movie"  value="http://www.erasme.org/libre/divers/animations/calculatrice.swf" />       <param name="quality" value="high" />" </object> </div>    
  • 61. Divers  Les extensions htm, html, xhtml, php Les extensions htm, html, xhtml, php  peuvent contenir du code html  sont interprétées par les navigateurs  Les tailles  peuvent être spécifiées en pixels ou pourcentage  seront préférentiellement placées dans les CSS  Les caractères spéciaux  taper «caractères spéciaux» dans un moteur de recherche  Pour en savoir plus :  http://xhtml.le­developpeur­web.com/  http://www.aliasdmc.fr/courshtml/   http://www.fil.univ­lille1.fr/technoweb/docs/selfhtml/html/reference/elements.htm    
  • 62. projet2.html TP  Depuis le fichier projet1.html ajouter les éléments de  Depuis le fichier projet1.html  contenu suivants : contenu suivants :  Bloc Edito  L'image images/arton1.gif  Un titre <h3> : Carte d'identité de la commune  Un paragraphe <p> avec du contenu mise en forme : Description  de la commune...  Bloc Article1  L'image images/rubon3­15c52.gif  Un titre <h5> Titre avec un lien <a>  La date en mise en forme emphatique <em>  Un paragraphe <p> avec du contenu mise en forme : Texte...  Un lien : lire la suite  toute autre modification vous semblant intéressante    
  • 63. Partie 2 Les feuilles de style ­CSS 2­    
  • 64. Présentation  des feuilles de style    
  • 65. Définition  Cascading Style Sheets = Feuilles de Style en  ascading Style S Cascade  Langage utilisé pour décrire la présentation d'un  document structuré en (X)HTML  Le standrard est dicté par le World Wide Web  Consortium (www.w3c.org), les navigateurs essayent de  le respecter  Versions : CSS 2 (>1998) et CSS3 (en cours)  Séparation du fond de la forme  Les pages XHTML décrivent la structure et le contenu  Les CSS décrivent la présentation pour l'affichage sur un  média donné (screen, palm, imprimante...)    
  • 66. Par la pratique  CSSZenGarden  1 page HTML <­> n feuilles de styles  http://www.csszengarden.com/tr/francais/  http://www.mezzoblue.com/zengarden/alldesigns/official/  Désactiver les styles via FireFox  Affichage > Style de la page > Aucun style  http://fr.wikipedia.org/wiki/Accueil   http://fr.yahoo.com/   Chaque balise XHTML a un rendu par défaut dans  le navigateur  le style CSS relatif à la balise vient surcharger ce rendu    
  • 67. Firebug  Les extensions Firefox  WebDevelopper, FireBug, IETab  https://addons.mozilla.org/fr/firefox/browse/type:1/cat:4/sort:popular     
  • 68. Pourquoi les CSS ?  Les CSS assure la cohérence graphique d’un site.  La modification de la charte graphique d’un site web  est facilitée par l’utilisation des CSS : seule la feuille  de style est modifiée.  Le code XHTML de la page est allégé, il y a donc une  diminution du poids et par conséquent du temps de  chargement.  La compatibilité est améliorée  ...même si le navigateur le plus utilisé n'affiche que 60%  de compatibilité aux CSS2    
  • 69. Implémentation des styles  Dans les balises  à éviter car on perds l'aspect global du style <body> <p style="/* Mes styles */">texte</p> </body>  Dans la page  pour des maquettes et des feuilles simples à tester <head> <style type="text/css"> /* Mes styles */ </style> </head>    
  • 70. Implémentation des styles (2)  Dans une feuille de style extérieure  solution à retenir pour externaliser et mutualiser la feuille <head> <link rel="stylesheet" type="text/css"  href="style.css" /> </head> OU <head> <style type="text/css">   @import url(style.css); </style> </head>    
  • 71. Implémentation des styles (3)  possibilité de spécifier le média dédié au style possibilité de spécifier le média dédié au style  all, screen, print, projection, braille, embossed, aural, speech...  seuls pour l'instant les medias d'affichage fonctionnent correctement  possibilité de spécifier des feuilles alternatives avec title possibilité de spécifier des feuilles alternatives avec title  Firefox permets d'y accéder dans >Affichage>Styles <head> <style type="text/css" media="screen" title="style1"> /* Mon style1 */ </style> <style type="text/css" media="screen" title="style2"> /* Mon style2 */ </style> <style type="text/css" media="print"> /* Style impression */ </style> </head> page13.html    
  • 73. Déclaration des styles sélecteur propriété valeur balise {   propriete: valeur;   propriete: valeur; p { font­family: Verdana; }   propriete: valeur; } déclaration  balise : nom de la balise dont on modifie l’apparence  <em>, <b>, <h1>  propriété : catégories d’effet de style  color, font­size, font­family  valeur : valeur associée à la propriété  red, 10px, Verdana    
  • 74. Syntaxe  On peut ajouter des commentaires /*...*/  On peut ajouter des commentaires /*...*/   Une déclaration ouverte doit toujours être fermée {...}  Une déclaration ouverte doit toujours être fermée {...}   Une définition de valeur doit se terminer par ; Une définition de valeur doit se terminer par ; On peut enchaîner plusieurs définitions de valeurs au  sein d'une même déclaration.    Les espaces et les tabulations ne sont pas  interprétés.  balise { /* Première déclaration */ propriete: valeur; }    
  • 75. Premiers exemples body div { { font­family: Verdana; padding: 10px; font­size: 12px; margin: 10px; color: #484747; border: black solid 1px; background­color: #EEEEEE; } } h1 a,a:link,a:visited  { { font­size: 250%; color: #484747; color: gray; text­decoration: none; font­weight: bold; } } a:hover  { color: red; text­decoration: underline; }    
  • 76. Feuilles en cascade  Les styles sont appliquées successivement dans  l'ordre suivant (par ordre croissant d'importance) :  1. Styles extérieurs  2. Styles de la page  3. Style dans la balise elle­même  En cas de surcharge, le dernier l'emporte Les propriétés de chaque balise  html ● sont héritées des éléments parents  head body dans l'arbre du document transmission  title meta h1 p p des propriétés  strong    
  • 77. Couleurs  Une couleur peut être définie par   son nom (si il existe) : green  son code hexadécimal long : #008080  son code héxadécimal court : #FFF  son code RGB : rgb(0,0,255) ou rgb(10%,10%,30%)  transparent  Les 16 couleurs de base du Web (compatibles W3C)  http://www.webmaster­hub.com/outils/color.html  http://www.webmaster­hub.com/outils/color.html     
  • 78. Unités de valeur  La taille et la position des éléments doivent comporter  La taille et la position des éléments doivent comporter  une unité :   font­size : 12px;   width: 90%;   margin: 0;  Rapports  % (pourcentage) : la taille / position de l’élément est  calculée de façon relative par rapport à son parent  em : 1em = 100%, 1.2em = 120%, etc.  Mesures  px : pixels, plus petite unité de l’écran  pt : points, plus petite unité de l’imprimerie    
  • 79. projet4.html TP  A partir de votre dernière version de projet2.html ou  A partir de votre dernière version de projet2.html ou  depuis projet3.html  depuis projet3.html   créer un espace pour votre style <style> dans la page avec  les attributs media et title  ajouter les styles vus en exemple pour les éléments  body  a et a:hover  h1  div  tester le résultat dans le navigateur à chaque étape  faire quelques essais de couleur via le sélecteur de couleur  en ligne    
  • 80. Les sélecteurs bal remplace n'importe quelle balise * {. } sélecteur universel   désigne tous les éléments  bal { } .  sélecteur de balise   désigne toutes les balises <bal> de la page   .  .nom_classe { } sélecteur de classe   désigne les éléments ayant l'attribut class="nom_classe"  .  bal.nom_classe { } sélecteur de classe  sélecteur de classe   désigne toutes les balises bal ayant l'attribut  class="nom_classe"    
  • 81. Les sélecteurs (2) bal remplace n'importe quelle balise . #nom_id { } sélecteur d'identification   désigne l'élément ayant reçu id="nom_id"   .  bal#nom_id { } sélecteur d'identification   désigne la balise <bal> ayant reçu id="nom_id"   . bal1 bal2 bal3 { } hiérarchie   désigne les éléments <bal3> contenus dans une balise  <bal2> lui­même contenu dans une balise <bal1>  .  bal1, bal2, bal3 { } sélecteur collectif  sélecteur collectif   s'appliques aux balises <bal1>, <bal2> et <bal3>    
  • 82. Les sélecteurs (3) bal remplace n'importe quelle balise . bal1 + bal2 { } sélecteur adjacent  désigne les <bal2> directement placés derrière un <bal1>   . bal1 > bal2 { } sélecteur d'enfants  désigne les <bal2> directement placés dans un <bal1>     
  • 83. Pseudo classes et éléments Note : les balises sont citées à titre d'exemple . p:first-letter|first-line|after { } pseudo­élément  désigne un sous ensemble de l'élément <p>  first­letter : première lettre  first­line : première ligne  after : ajout après l'élément . img:active|hover|focus|visited { } pseudo­classes dyn.  désigne l'élément <img> dans un état en temps réel   hover : l'élément est survolé  active : souris pressée et non relâchée  focus : l'élément est activé (un formulaire par exemple)  link : lien non visité (<a> uniquement)  visited : lien visité (<a> uniquement)    
  • 84. Comment écrire les sélecteurs qui  s'appliquent au texte en vert ? <strong>c'est important</strong> <div id="principal"> Mon texte </div> <a href="#" class="liens"> cliquer ici </a> <div class="home"> <strong>c'est important</strong> </div>    
  • 85. Comment écrire les sélecteurs qui  s'appliquent au texte en vert ? <strong>c'est important</strong> strong { ... } <div id="principal"> Mon texte </div> #principal { ... } a, a:hover { ... } <a href="#" class="liens"> ou cliquer ici </a> a.liens { ... } a.liens:hover { ... } <div class="home"> <strong>c'est important</strong> </div> div.home strong { ... } div.home    
  • 86. projet5.html TP  A partir de votre dernière version de projet4.html A partir de votre dernière version de projet4.html  ajouter les styles suivants au bloc edito  la couleur de fond de votre choix (ex : #cc3300) et la propriété : ­moz­border­radius:10px;  titre de niveau 3 contenu dans l'edito, les propriétés suivantes : font­size: 17px; font­weight: bold;  images contenu dans l'edito, les propriétés suivantes : float:right; /*alignement à droite*/  images contenu dans l'edito, lors du survol l'ajout d'une bordure  augmenter la taille de la première lettre de tous les  paragraphes de la page  tester le résultat dans le navigateur    
  • 88. Typographie  Polices  Elles ne sont pas toutes  présentes sur tous les  ordinateurs  Elles se déclarent dans  un ordre de préférence   On termine par les  polices standard : sans­ serif, serif, monospace,  cursive.  Les espacements  Peuvent être fixés par  les attributs line­height  et letter­spacing    
  • 89. Typographie Action Propriété Valeur Description applique les polices par ordre   "Trebuchet MS", arial,  Choix de la police font­family : décroissant ; mettre les noms avec  sans­serif; espace entre "" préférer em et % pour hériter des  Taille de la police font­size : 10px; 1.2em; 90%; valeurs des éléments parents silver; #0033FF;  Couleur color : transparent; Orientation de la  font­style : normal; italic; oblique; police Epaisseur font­weight : bold; bolder; normal; none; underline;  Soulignement text­decoration : overline; line­through; none; capitalize;  capitalize: première lettre  Mise en majuscule text­transform : uniquement. uppercase; lowercase; left; right; center;  Alignement du texte text­align : justify; normal; 1.2em; 90%;  Hauteur de ligne line­height : 10px; Espacement entre les  letter­spacing : normal; ­2px; lettres Espacement entre les  word­spacing : normal; 3px; mots font­style, font­variant, font­   Raccourci font :   weight, fontsize/line­height,  p { font: bold 12px/24px verdana } font­family
  • 90. Présentation des blocs BORDER MARGIN PADDING texte texte texte texte texte texte texte texte texte  texte texte texte texte texte texte texte texte texte  texte texte texte texte texte texte texte texte texte  texte texte texte texte texte texte texte texte texte  HEIGHT texte texte texte texte texte texte texte texte texte  texte texte texte texte texte texte texte texte texte  texte texte texte texte texte texte texte texte texte  texte texte texte texte texte texte texte texte texte  WIDTH texte texte texte texte texte texte texte texte texte  texte texte texte texte texte texte texte texte texte  texte texte texte texte texte texte texte texte texte  texte texte texte texte texte texte texte texte texte  PADDING     MARGIN
  • 91. Compléments  Plusieurs blocs : les margins s'ajoutent MARGIN MARGIN MARGIN PADDING PADDING PADDING PADDING PADDING PADDING MARGIN MARGIN MARGIN  Quelles est la taille d'un bloc total (boîte) ?  Selon le standard : boîte = margin+border+width  Pour IE : boîte = width  ­> Privilégier les padding aux margin...    
  • 92. Présentation des blocs  Tout élément en bloc possède 4 attributs :  taille propre : width et height  bordure : border  marge intérieure : padding  marge extérieure : margin Action Propriété Valeur Notes auto calcule  automatiquement la  Largeur width : 30%; 250px; auto; taille actuelle (image  par exemple) Hauteur height : 30%; 250px; auto;    
  • 93. Marges et espacements Description Propriété Exemple Marge supérieure margin­top : 5px; Marge de droite margin­right : 0.5em; Marge inférieure margin­bottom : 2pt; Marge de gauche margin­left : 0;  ­5px 0.5em 2pt 0;  Raccourci pour les marges margin : auto; (alignement  centré du bloc) Espace intérieur entre l'élément  padding­top : 3px; et la bordure supérieure Espace intérieur entre l'élément  padding­right : 0.25em; et la bordure droite Espace intérieur entre l'élément  padding­bottom : 0; et la bordure inférieure Espace intérieur entre l'élément  padding­left : 2pt; et la bordure gauche Raccourci vers l'ensemble des  padding : 3px 0.25em 0 2pt; propriétés d'espace intérieur    
  • 94. Arrières plan Action Propriété Valeur Notes Couleur d'arrière­plan background­color : "#RRGGBB"; Image d'arrière­plan background­image : url(http://url); Répétition de  repeat; repeat­x;  background­repeat : l'arrière­plan repeat­y; no­repeat; Spécifie si l'image  reste fixe avec les  background­attachment : scroll; fixed; déplacements de l'écran Position de l'image par  possibilité  top; middle; bottom;  rapport au coin  background­position : d'indiquer des  supérieur gauche left; center; right; valeurs en pixels #000000 url(test.jpg)  Raccourci global vers  background : no­repeat scroll  les propriétés des AP center top; body { background: transparent url(images/siteon0.jpg)  no­repeat scroll center top; }    
  • 95. Bordures Description Propriété Valeur border[­top ­left ­bottom  Epaisseur de la bordure 10px; 2em; ­right]­width : Epaisseur de la bordure border­width : 10px 15px 15px 10px; (HDBG) border[­top ­left ­bottom  Couleur de la bordure #RRGGBB; ­right]­color : solid; (pleine) dashed; (en  border[­top ­left ­bottom tirets) dotted; (en pointillés)  Style de la bordure ­right]­style : double; (double) ridge; inset;  outset; (en 3D)            10px; 2em;            Effet arrondi (Mozzilla)  ­moz­border­radius :    10px 10px 10px 10px; (HDBG) Raccourci global les  border: 1px 0 0 2px dotted  border : propriétés de bordure green; body { border: 1px 0 0 2px dotted green;   }  
  • 96. projet6.html TP  A partir de votre dernière version de projet5.html définir la  présentation des blocs suivants et le tester dans le nav :  page  largeur : 1000 pixels  marge : automatique  couleur de fond : de votre choix (ex : #FFFFFF) ou logo de saint  symphorien : images/logo_saint_sym.gif  entete  image de fond : images/siteon0.jpg  edito  bordures haute et gauche : #eee 2px solid  bordures basse et droite : 0px  bords arrondis : 10 px  harmoniser les couleurs : polices, background body et page    
  • 98. Propriétés de position Description Propriété Valeur   none; (n'affiche pas le bloc)            block; (force la propriété bloc)       Propriétés display : inline; (force la propriété en­ligne)      list­item; (force la propriété en­ligne)  table; (force la propriété tableau) visible; hidden; (cache l'élément mais  Affichage visibility : réserve un espace pour son affichage) static; (default ­ dans le flux) relative;  (décalage ­ dans le flux) absolute; (fixe ­  Position position : hors du flux)   fixed; (fixe ­ hors du flux  – noscroll) top : / right : /  Distance au parent  ­10px; 30%; 2em; (pas pour static) bottom : / left : Profondeur d'affichage  z­index : auto; 1000; (calque) Positionnement  float : left; right; none; (default) flottant Efface le flottement clear : left; right; both; none; (default)    
  • 99. Hiérarchie des éléments  A et B sont  <body> frères ancêtre  A, B et C ont  parent 1 parent 2 le même  bloc A bloc C ancêtre  Tous les  bloc B éléments sont  contenus  dans <body>  De quelle nature sont bloc A et bloc B ? (bloc ou en ligne)  Parent 1 et Parent 2 ?    
  • 100. position par defaut Le flux de document position : relative;  Par défaut les éléments se placent en haut à gauche de  leur parent et suivent le flux de document :  1. l'ordre dans lequel ils sont inscrits dans le code HTML  2. leur nature (bloc ou en­ligne)  bloc : en dessous du précédent  en­ligne : à côté du précédent bloc A bloc B     parent 
  • 101. Le flux de document (2)  3. leurs marges internes (padding) et externes (margin) 3. leurs marges internes (padding) et externes (margin) margin top margin  left bloc A (marges) bloc B parent        note : il s'agit bien des marges externes (margin) du bloc et  non des marges internes (padding) du parent    
  • 102. Le flux de document (3)  4. les décalages (top, right, left, bottom) lorsque les  4. les décalages (top, right, left, bottom) lorsque les  blocs sont en position relative top bloc A  left bloc A (relatif) bloc B parent  ● les éléments frères ne sont pas influencés par le décalage :  ils se positionnent comme si le bloc A était dans le flux ● cet exemple n'a pas de marges en plus des décalages   ● le z­index est utile dans de tels cas  
  • 103. Positionnement en flux (exemple)  marges + décalage margin top margin  left top bloc A (marges)  left bloc A (marges + relatif) bloc B parent  ● la taille du parent est influencée par celle des enfants si : ● ils utilisents des marges ● le parent possède une taille non fixe (%, em, pas de taille) ● les décalages n'ont pas d'influence sur la taille du parent    
  • 104. position par defaut Positionnement flottant position : relative;  Propriété float : Propriété float : float: right; float: left;  Un élément flottant sort du flux normal pour prendre  place à gauche ou à droite du bloc qui le contient.   L'élément qui le suit s'écoulera dans l'espace laissé  libre en épousant sa forme.  Notes  L'avantage est de pouvoir placer des blocs côte à côte  PIEGE: les flottants sortent du flux normal ce qui  impliquent qu'ils n'influencent plus la hauteur du  conteneur. Si l'on prend un paragraphe flottant plus gros  que les autres, il débordera du conteneur.    
  • 105. Positionnement flottant bloc A bloc A { width : 200px ; } { width : 200px ;  float: left; } bloc B { width : 100% ; } bloc B { width : 100% ; } parent  parent  bloc A bloc C bloc A bloc C { width : 200px ;  { width : 200px ;  { width : 200px ;  { width : 200px ;  float: left; } float: left; } float: left; } float: right; } bloc B bloc B { width : 100% ; } { width : 100% ; } parent  parent     
  • 106. position par defaut Positionnement flottant position : relative;  Propriété clear : Propriété clear : clear: both;  Empêche un élément du flux de se trouver sur la même  ligne qu'une élément flottant.  Typiquement utilisé pour les pieds de page. bloc A bloc A bloc A bloc C { width : 200px ;  { width : 200px ;  { width : 60% ;  { width : 40% ;  float: left; } float: left; } float: left; } float: right; } bloc B { width : 100% ; clear: both; } bloc B parent  { width : 100% ; clear: both; }     parent 
  • 107. position : absolute; Positionnement absolu  position: absolute; top: 2em; left: 0;  l'élément se place par rapport au dernier parent ayant une  position absolue. Par défaut : <body>  l'élément sort du flux et n'affecte pas les autres blocs  on utilise les attributs top, left, right, bottom pour le placer  Pour des éléments indépendants de l'environnent top bloc B { width : 100% ;} bloc A { position : absolute;  bloc C left left : 20px; { width : 100% ;} top : 20 px; }     parent 
  • 108.   position : fixed; Positionnement fixe position: fixed; top: 2em; left: 0;   Identique à la position absolue  Différence : l'élément ne bouge pas lorsque la page défile  avec l'ascenseur  Pour des effets de style. Ne pas en abuser. top bloc B { width : 100% ;} bloc A { position : absolute;  bloc C left left : 20px; { width : 100% ;} top : 20 px; }     parent 
  • 109. projet7.html TP  A partir de votre dernière version de projet6.html définir  A partir de votre dernière version de projet6.html définir  le positionement des blocs suivants et les tester :  colonne_gauche  width: 650px;  float: left;  colonne_droite  width: 250px;  float: right;  footer  clear: both;    
  • 111. Curseur  Détermine l'apparence  élément du curseur au survol { cursor : apparence;  Valeurs }  default : Curseur par défaut  pointer : Main  crosshair : Viseur  help : Point d'interrogation  wait : Attente  text : Texte  move : Objet déplaçable  ...­resize : Changer la taille  en fonction de la direction    
  • 112. Listes Action Propriété Valeur decimal, upper­roman, lower­ Type de puces et de  list­style­type : latin, disc, circle, square ou  numérotation none Permet de personnaliser les  list­style­image : url(image.png); puces avec une image Spécifie le retrait des  list­style­position : inside; outside; puces Raccourci global vers les  list­style : type position url(); propriétés des listes  Des menus avec des listes  http://css.alsacreations.com/Galeries­de­menus­en­CSS   http://www.alsacreations.com/livre/?/Exemples/exdouze  http://www.cssplay.co.uk/menus/visitedmenu.html    
  • 113. projet8.html TP <div id="menu"> #menu ul     <ul> { <li><a href="#">Vie municipale</a></li> padding­left:20px; <li><a href="#">Vie culturelle</a></li> list­style­type:none; <li><a href="#">Economie</a></li> } <li><a href="#">Actualités</a></li> </ul> #menu li  </div> { float:left; width:112px; margin­left:5px; }  Créer votre menu  #menu a, #menu a:visited  horizontal à l'aide des  { display:block; font­size:11px; styles suivants : font­weight: bold ; text­decoration:none;  color: #fff;  width:112px;  height:30px; background­image:url(images/corner.gif); text­align:center; line­height:29px; } #menu a:hover, #menu ul ul a:hover { color:#249526; background­image:url(images/cornerb.gif);     }