HTML-CSS, Format PDF

Transcription

HTML-CSS, Format PDF
PLAN
XHTML & CSS
Gobelins 2013 – 2014
1. Le Web et ses langages
2. Le langage HTML
3. Créer une page HTML
4. Créer un site en liant les pages HTML
5. Balises spécifiques à HTML 5
6. Le langage CSS
7. W3C et validation du code
8. Affichage d’une page web sur les différents navigateurs
Isabelle Biamonti
Ce COURS
Ce COURS
Comprendre, avancer en groupe
Aider chacun, selon le niveau
1 TP en groupe
à  Pour identifier les attentes, et voir les différentes réponses possibles
Intro
Devenir des Concepteurs Réalisateurs MULTIMEDIA (et non print)
Comprendre les contraintes
Anticiper les besoins
Préparer des maquettes prêtes à intégrer
Intro
2 TP personnels
à  Les rendus se font sur Claroline
à  -1 point par jour de retard
Note finale
à  TP intégration ……………………… /8
TP WordPress ……………………… /9
Note globale de participation ………. /3
à  0/3 si utilisation de facebook/gtalk…
1
1. LE WEB ET SES LANGAGES
1. LE WEB ET SES LANGAGES
Il existe des millions de sites, et de nombreux navigateurs qui permettent de les
visualiser. Cette technologie repose sur le langage HTML.
Pour créer des applications web
Intro
Les apports de HTML 5
Meilleure interaction avec javascript grâce aux WebApps 1.0 à développeurs
Pour créer des formulaires pratiques sans avoir besoin de javascript
Les sites sont créés (ou générés) en HTML à Le fond
Et mis en forme grâce au langage CSS à La forme.
Grâce aux WebForms 2.0
Pour ajouter un aspect sémantique aux balises
Elles n’auront plus seulement un aspect cosmétique
La base du HTML, c’est de pouvoir faire des liens entre les pages.
On peut faire un site uniquement en HTML.
Il existe d’autres langages utilisés sur internet. Par exemple le PHP, l’ASP, JSP pour générer dynamiquement
de l’HTML, le Javascript, l'Ajax pour l'interaction dans les pages web et les BDD, l'AS dans Flash, etc…
Pour mieux gérer les erreurs
La spécification indique comment les navigateurs se comportent avec un document mal formé
Pour mieux intégrer les contenus rich medias
Grâce à des balises spécifiques
En simplifiant tout en gardant l’existant
Syntaxe plus indulgente à chacun style son code à sa façon. On ne réinvente pas ce qui existe.
En ajoutant quelques balises utiles
2. LE LANGAGE HTML
2. LE LANGAGE HTML
Le HTML est un de «balisage» (de « structuration » ou de «marquage»).
Il formalise l'écriture d'un document avec des balises de formatage.
Balises en paires
Elles sont constituées de balises "ouvrantes" (<p>) et "fermantes"(</p>).
à Exemple : <h1>Ici mon titre principal</h1>
Ces balises doivent toujours être ouvertes et refermées.
Si plusieurs sont imbriquées, elles doivent être refermées dans l'ordre d’ouverture.
à Exemple : <p>Ici mon <b>titre principal</b></p>
à  La balise <b> signifie "gras" donc tout ce qui sera entre <b> et </b> sera en gras.
Fonctionnement
Les balises permettent d'indiquer le type des éléments (paragraphe, liste,…) et les liens
qu'il établit avec d'autres documents.
Pour faire simple, le HTML fonctionne avec :
des balises, qui indiquent au navigateur ce qu'il doit faire,
et des attributs, qui indiquent au navigateur comment le faire.
HTML vs XHTML
à  XHTML est une version plus "stricte" du HTML. Cette évolution permet de s'assurer du
rendu des pages quel que soit le navigateur employé par l'utilisateur.
Les balises
Balises auto-fermantes
Pour les balises non paires, le signe de fermeture (/) est dans la balise.
à Exemple : la balise de passage à la ligne s'écrit <br />
à Pour insérer une image on écrit <img src="image.jpg" />
2
2. LE LANGAGE HTML
3. CRÉER UNE PAGE HTML
Si on écrit <img src="image.jpg" />, src="…" est un attribut de la balise img.
Chaque balise peut être précisée à l'aide d’un ou plusieurs attributs.
La structure de base d’une page HTML :
Les attributs
Si on ouvre, une balise de formulaire d’image sur un éditeur,
il propose automatiquement tous les attributs disponibles sur cette balise :
Intro : le squelette
Le rendu :
<!doctype html>
à toute page html doit commencer par le doctype
<html> à ouverture du langage HTML
<head>
à header dans lequel on insère le titre de la page et autres
<title>Titre de la page</title>
</head>
à On peut alors écrire :
<img src="image.jpg" border="0" alt="description" height="2" width="4" />
à Affichera l'image "image.jpg" sans bordure, en 4x2 px, avec un texte alternatif.
à Usage : rédiger tout en minuscule, avec un = et des "" à attribut="…"
<body>
à body dans lequel on insère contenu + structure de page.
Ici le contenu de la page qui s'affichera dans le navigateur.
</body>
</html> à fermeture du langage HTML
3. CRÉER UNE PAGE HTML
3. CRÉER UNE PAGE HTML
Le doctype est un document qui informe le validateur :
- de la version de HTML utilisée dans le document,
- du lien vers un document W3C qui spécifie les règles d’écritures, les propriétés de
chaque élément (balises, attributs) de cette version.
Détails pour choisir correctement sa DTD :
Etape 1 : le doctype (ou Déclaration de Type de Document)
Il doit apparaître en toute première position de chaque page HTML.
à  Permet au validateur de comparer le document aux règles auxquelles il doit obéir, et
en déduire s’il est valide ou non. Sans DTD, pas de validation.
Pour le navigateur, la DTD n’est pas indispensable puisqu’il a son propre moteur et ses
propres règles. Néanmoins elle peut faire varier le rendu selon le doctype utilisé.
Sans doctype, le navigateur passera en mode « quirks » (codage « à l’ancienne »).
Etape 1 : choix du doctype
à http://www.alsacreations.com/article/lire/560-dtd-doctype-html-xhtml-comment-choisir.html
à http://openweb.eu.org/articles/differentes_dtd
Pour les versions <HTML5
6 DTD, 2 qui suffisent en général avec comme différences principales :
- syntaxe HTML
- stock de balises différent entre 3 catégories :
transitionnelle, stricte et frameset.
Exemple :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://
www.w3.org/TR/html4/loose.dtd">
Depuis HTML5 :
<!DOCTYPE html>
3
3. CRÉER UNE PAGE HTML
3. CRÉER UNE PAGE HTML
Il contient des données qui décrivent le document ou le lient avec des ressources.
Title : indique le titre de la page (affichée dans la barre de titre du navigateur)
Link : pour lier une feuille de style ou un script à la page
Meta : informations supplémentaires (auteur, instructions moteurs recherches, encodage page,…)
Script : pour insérer directement du contenu en script, ou appeler un script externe
Style : pour insérer directement des éléments CSS spécifiques à la page.
On va insérer du texte, et indiquer grâce aux balises XHTML de quoi il s'agit
(titre, paragraphe, liste, image, lien, etc…)
Etape 2 : le header
Exemple de header :
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<head>
<meta charset="UTF-8“>
<meta name="keywords" content="mots, clefs" />
<meta name="description" content="Description affichée dans les moteurs " />
<title>Le titre de ma page</title>
<link rel="stylesheet" type="text/css" href="css/mafeuilledestyle.css" />
</head>
3. CRÉER UNE PAGE HTML
Etape 3 : le body
Etape 3 : le body
Les balises peuvent être de type bloc ou en ligne :
• les éléments de rendu "bloc" servent à distinguer les parties entières de texte,
comme des titres <h1>, paragraphes <p>, listes <ul>, citations <blockquote>,…
à La suite du code HTML passera à la ligne dans le navigateur
• les éléments "en-ligne" sont prévus pour rester dans le texte, pour l'enrichir
comme des liens hypertexte <a>, emphase <em>, renforcement <strong>,…
à La suite du code HTML s’affichera à la suite
* Tableau des principales balises en annexe du cours PDF ou sur :
http://www.w3schools.com/tags/default.asp
4. LIER LES PAGES HTML
Lier les pages avec la balise <a>
C’est en liant les pages les unes aux autres que l’on va créer un site.
à A noter : la page d’accueil du site doit toujours se nommer « index.htm ».
Les liens se font via la balise <a>, avec la syntaxe :
<a href=«url» target=«fenetre d’ouverture» title=«titre du lien»>Mon lien</a>
L’URL peut être en relatif : <a href="mapage.htm">lien</a>
ou en absolu : <a href="http://www.google.com/mapage.htm">lien</a>
Il existe plusieurs valeurs pour la cible (fenêtre d’ouverture) :
target ="_blank"
à Affichage du lien dans une autre fenêtre du navigateur
target ="_top"
à Affichage dans la totalité de la fenêtre courante
target ="_parent" à Affichage dans le cadre qui enveloppe la structure courante
target ="_self"
à Affichage dans le cadre courant (par défaut)
target ="moncadre" à Affichage dans le cadre spécifié
4
4. LIER LES PAGES HTML
Lier les pages avec la balise <a>
Exemples de liens relatifs en prenant comme arborescence
l'exemple ci-contre :
Si on est sur index.htm
à on souhaite appeler une image : "images/image.jpg"
à on souhaite appeler une page : "pageshtml/page1.htm"
Si on est sur page1.htm
à on souhaite appeler une image : "../images/image.jpg"
à on souhaite appeler une page : "page1.htm"
à on souhaite remonter à l'index : "../index.htm"
5. BALISES SPECIFIQUES HTML5
Rich Medias / CANVAS
Permet de créer des images dynamiques.
Son contenu peut être modifié et redessiné à tout moment, selon les actions de
l’utilisateur.
Théoriquement, permet de faire la même chose qu’Illustrator de Adobe.
Syntaxe :
<canvas id=«mon-canvas» width=«350» height=«200»>
Le texte entre les balises sera lu uniquement par les navigateurs ne supportant pas canvas
</canvas>
Ensuite on « dessine » dans ce conteneur grâce à Javascript.
Exemples :
http://www.canvasdemos.com/
http://9elements.com/io/projects/html5/canvas/
http://w3c.html5.free.fr/news/canvas.php
http://html5doctor.com/video-canvas-magic/
5. BALISES SPECIFIQUES HTML5
5. BALISES SPECIFIQUES HTML5
Permet d’insérer un fichier audio dans un document HTML5.
Attention aux droits d’auteurs
Permet d’insérer un fichier vidéo dans un document HTML5.
Il fonctionne comme la balise audio. Attention aux droits d’auteurs.
Syntaxe :
Syntaxe :
<audio src=«musique.mp3» autoplay loop controls></audio>
ou
<audio controls >
<source src=«musique.mp3»>
<source src=«musique.ogg»>
</audio>
<video controls width=«300» height=«250» poster=«apercu.jpg»>
<source src=«film.mp4» >
<source src=«film.ogv»>
</audio>
Rich Medias / AUDIO
Rich Medias / VIDEO
MP4 (brevet), Theodora, etc…
http://diveintohtml5.org/video.html
MP3 (brevet) pour Safari, OGG pour Firefox, etc…
Exemples :
http://www.phpguru.org/html5-examples#html5.audio
http://www.w3schools.com/html5/tryit.asp?filename=tryhtml5_audio
Exemples :
http://sublimevideo.net/demo
http://www.w3schools.com/html5/tryit.asp?filename=tryhtml5_video_simple
http://dev.opera.com/articles/view/a-call-for-video-on-the-web-opera-vid/
http://double.co.nz/video_test/
5
5. BALISES SPECIFIQUES HTML5
5. BALISES SPECIFIQUES HTML5
Une série de balises et d’attributs pour rendre le formulaire interactif, sans utiliser
javascript. Un grand nombre ne sont pas -encore- stylables.
<input type=«search» id=«recherche» placeholder=«Saisissez votre recherche» />
- Le contenu du placeholder s’efface au clic et réapparaît si on laisse la zone vide.
<input type=«text» id=«recherche» placeholder=«Saisissez votre recherche» />
- Le contenu du placeholder s’efface au clic et réapparaît si on laisse la zone vide.
<input type=«email» id=«mail» />
<input type=«url» id=«adresse» />
<input type=«tel» id=«telephone» />
- Pas de modification visuelle mais la mise en avant d’informations sur le champ.
- Sur terminal à clavier virtuel (ex:iphone), le clavier sera différent en fonction du type de champ.
Web Forms
<input type=«text» id=«recherche» autofocus required autocomplete=«off» />
- Quand le document est chargé, on sélectionne automatiquement un champ précis de formulaire.
- Empêche la validation du formulaire si le champ n’est pas rempli. (pas encore fonctionnel)
- On peut désactiver le pré-remplissage des formulaires
<input type=«text» id=«proporecherche» list=«recherche»>
<datalist id=«recherche»><option value=«1»><option value=«2»></datalist>
- Hybride entre un input et un select à aide à la saisie
http://minimul.com/demo/datalist/index.html
http://www.quackit.com/html_5/tags/html_datalist_tag.cfm
Web Forms
<input type=«range» id=«slider» />
- Crée un slider, par défaut de 0 à 100
<input type=«number» id=«valeur» />
<input type=«date» id=«valeur» />
- Crée un champ de saisie pour nombres / pour dates, avec boutons pour diminuer ou augmenter.
<input type=«color» id=«palette» />
- Crée un champ avec widget intégré pour choisir une couleur. Pas encore implémenté.
5. BALISES SPECIFIQUES HTML5
5. BALISES SPECIFIQUES HTML5
<mark></mark>
- Pour montrer qu’un texte a un intérêt à un moment donné (cf résultats recherche).
<section></section>
- Pour regrouper du contenu apparenté (div ne renseigne pas sur son contenu).
<time datetime=«16:00»>16 h</time>
- Pour que le navigateur puisse comprendre la date et/ou l’heure.
<header></header>
<footer></footer>
<aside></aside>
<nav></nav>
<article></article>
- Pour le ou les en-têtes, footers,
textes apparentés, navigation, articles.
- C’est le contenu qui est important,
et pas la position (2 écoles ?)
- Cela apportera sans doute par la suite une
meilleure interprétation du site par les moteurs
Balises pour spécifier la nature d’un texte
<meter min=«0» max=«100»></meter>
- Pour baliser des mesures
<progress min=«0» max=«100»></ progress>
- Crée un champ de saisie pour nombres / pour dates, avec boutons pour diminuer ou augmenter.
…
Balises pour structurer le contenu
6
5. BALISES SPECIFIQUES HTML5
5. BALISES SPECIFIQUES HTML5
CSS est un langage uniquement utilisé sur le web, en complément du langage HTML.
HTML = le fond
CSS = la forme
Voici la manière de formuler :
un sélecteur, et un bloc de déclaration situé entre deux accolades.
Intro
CSS permet de mettre en page et donner de l’esthétisme aux pages web.
Depuis CSS3, on peut remplacer certaines images par du CSS à gagner en poids
Externaliser le style de la page dans une feuille CSS
à permet d'avoir du code HTML beaucoup plus léger.
à permet aux moteurs de recherche d’aller plus rapidement au contenu.
à et surtout permet de concentrer en un document tous les styles des pages d'un site.
Exemple : on vous demande de changer la couleur des titres de niveau 1,
vous le changez à un seul endroit, et pas page par page.
Syntaxe
h1 à le (ou les) sélecteur(s)
{
color : #0000FF;
margin : 0 0 0 0;
à les déclarations, toujours terminées par un point-virgule
}
L’ordre d’apparition décide.
Les derniers sélecteurs (et les dernières déclarations) annulent les précédent(e)s
6. LE LANGAGE CSS
6. LE LANGAGE CSS
un identifiant (ne peut être utilisé qu'une seule fois par page html)
à #moncadre { … }
Exemples :
Les sélecteurs
une classe (peut être utilisé plusieurs fois dans une même page)
à .montexte { … }
un objet global (correspondant à une balise)
à p { … }
une classe ou un identifiant qui est typé selon la balise
à p.textebleu { … } ou p#intro { … }
un élément d'un objet supérieur (on descend dans le DOM)
à p strong { … }
Les sélecteurs
#mondiv p { … }
s'appliquera à toutes les balises <p> contenues dans le div #mondiv
(pas les balises <p> situées ailleurs dans la page)
#mondiv p strong { … }
seules les balises <strong> contenues dans les balises <p> qui
elles mêmes sont contenues dans le div #mondiv seront concernées.
p, span.montexte, a.monlien { … }
s’appliquera sur 3 éléments : les paragraphes, les spans ayant pour style « montexte »,
et les liens ayant pour style « monlien »
plusieurs éléments en même temps (à séparer par une virgule)
à p, a, span.montexte { … }
7
6. LE LANGAGE CSS
6. LE LANGAGE CSS
[attr^="stringValue"] à p.example[title^="ess" ] { color:#0000FF; }
:root
à Sélectionne
à Elément qui est la racine d’un document
3 sélecteurs spécifiques CSS3
un élément DOM dont l'attribut "attr" commence exactement par la valeur
Les pseudo-classes (liste non exhaustive) spécifiques CSS3
"stringValue".
à S’appliquera uniquement aux p avec class exemple, ayant un title commençant par « ess »
à <p class="example" title="essai"> j'ai un attribut title commençant par "ess"</p>
:nth-child(expression)
[attr$="stringValue"] à p.example2[title$="sai"] { color:#FF0000; }
à Accepte les mêmes arguments que :nth-child() et correspond au dernier enfant d'un élément parent.
à C'est le même principe que le :nth-child() sauf que l'on part de la fin.
Sélectionne un élément DOM dont l'attribut "attr" finit exactement par la valeur "stringValue".
à S’appliquera uniquement aux p avec class exemple2, ayant un title terminant par « sai »
à <p class="example2" title="essai"> j'ai un attribut title finissant par "sai"</p>
à
[attr*="stringValue"] à p.example3[title*="val"] { color:#00FF00; }
Sélectionne un élément DOM dont l'attribut "attr" comporte au moins 1 fois la valeur "stringValue".
à S’appliquera uniquement aux p avec class exemple3, ayant un title contenant « val »
à <p class="example3" title="val"> j'ai un attribut title contenant au moins "val"</p>
à
à Cible les éléments, se basant sur leur position dans la liste enfants / parent.
à expression peut être un nombre, une expression numérique ou un mot clé tel que "odd" ou "even".
:nth-last-child(expression)
:last-child
à Correspond à :nth-last-child(1) .
:first-child
à Correspond à :nth-child(1) .
:nth-of-type(expression)
à Ce sélecteur représente un élément qui a expression frères du même type devant lui dans l'arbre DOM.
:checked
à Correspond aux éléments cochés d'un formulaire.
http://debray-jerome.developpez.com/demos/selecteurs.html#nth-child
6. LE LANGAGE CSS
Les pseudo-classes : exemples
tr:nth-child(odd) td { background-color: #FF0000; }
à Ce code appliquera un fond rouge à une ligne sur 2 du tableau
ul.gallery li:last-child { margin-right: 0px; }
à Dans le cas d’une galerie photo avec pour chaque photo une marge à droite,
le dernier élément de la ligne n’aura pas de marge (ce qui lui évitera de passer à la ligne.
ul.gallery li:nth-child(3n) { margin-right: 0px; }
à Si la liste est répétée, on s’adresse à chaque 3e élément.
form input[type="text"] { width: 400px; }
à On s’adresse uniquement aux inputs de type texte
http://www.veille-web.fr/post/Un-code-plus-propre-avec-les-selecteurs-CSS3
6. LE LANGAGE CSS
Les déclarations
La liste des déclarations est longue.
Elles permettent de définir les aspects visuels :
position par rapport à la page ou aux autres blocs,
affichage ou masquage,
couleur du texte, des fonds, …
style de texte : typo, italique, gras, soulignement, …
bordures,
etc…
Cf. annexes du cours pdf ou sur
http://www.w3schools.com/CSS/CSS_reference.asp
Quelques exemples ci-contre.
8
6. LE LANGAGE CSS
6. LE LANGAGE CSS
border-radius: 10px; ou border-radius: 5px 10px 0 5px; box-shadow: 8px 8px 0 #aaa; et text-shadow: 0px 0px 9px #777;
à Ce code créera un ou des angles arrondis
http://www.alsacreations.com/tuto/lire/891-coins-arrondis-css-sans-images.html
à Ce code appliquera une ombre portée, sur une boite / sur un texte
http://www.alsacreations.com/tuto/lire/910-creer-des-ombrages-ombres-css-box-shadow-text-shadow.html
http://www.css3.info/preview/text-shadow/
Les déclarations (liste non exhaustive)
background-color: rgba(0, 0, 255, 0.5);
Les déclarations (liste non exhaustive)
à Ce code prend en charge l’alpha
http://www.alsacreations.com/tuto/lire/909-CSS-transparence-couleur-rgba.html
@font-face { font-family: Calibri; src: local("Calibri"), url("fonts/calibri.ttf")
format("truetype"); font-weight: normal; font-style: normal; }
background-image: url("img1.jpg"), url("img2.jpg");
à Ce code permettra d’insérer des typos (Attention aux droits d’auteurs et à la taille du fichier)
http://css-tricks.com/snippets/css/using-font-face/
à On peut multiplier avoir plusieurs images de fond
http://www.alsacreations.com/tuto/lire/814-css3-background-image-multiple.html
background: -moz-radial-gradient(#FF0000, #0000FF); -moz-column-width: 13em; -webkit-column-width: 13em;
-moz-column-gap: 1em; -webkit-column-gap: 1em;
à Ce code scindera le texte en colonnes de 13em de large
http://www.css3.info/preview/multi-column-layout/
à Ce code créera un dégradé radial du rouge au bleu
http://www.alsacreations.com/tuto/lire/813-css3-background-radial-gradient.html
transition-property: color, width; transition-duration: 5s; à Ce code prépare une transistion
http://www.alsacreations.com/tuto/lire/873-transitions-css3-animations.html
…
5. LE LANGAGE CSS
Les préfixes
Ils permettent de commencer à utiliser CSS3 sur les navigateurs actuels.
Chaque navigateur reconnaît son propre préfixe et applique les règles correspondantes.
6. LE LANGAGE CSS
Précisions sur le positionnement
1e étape : se représenter la maquette sous forme de zones.
Ces zones seront intégrées en DIVs (calques superposables).
Ils peuvent être imbriqués les uns dans les autres dans le HTML.
2e étape : positionner et mettre en forme ces DIVs et leur
contenu grâce à CSS dont on vient d’observer la syntaxe.
Utilisation :
.monCadreBordsArrondis{
-webkit-border-radius:15px;
-moz-border-radius:15px;
border-radius:15px;
/* on termine toujours par la véritable propriété car ce sera celle qui sera prise en compte au final,
quand CSS3 sera implémenté dans tous les navigateurs */
}
On définit tout d'abord le modèle de positionnement du bloc :
Static
Absolute
Fixed
Relative
Inherit
Positionnement en fonction de son ordre d'arrivée. Valeur défaut.
Positionnement par rapport aux bords de page, défile avec la page.
Positionnement par rapport aux bords de page, sans défilement.
Positionnement par rapport à l'élément précédent.
Même valeur que celle de l'élément parent.
9
6. LE LANGAGE CSS
6. LE LANGAGE CSS
Puis on définit les marges
- marges à l’intérieur du bloc : padding
- marges autour du bloc : margin
Dans le header de la page web, deux façons de faire :
div#contenu {
position : absolute;
margin : 30px 0px 30px 0px;
padding : 0;
}
<style title="currentStyle" type="text/css">
@import "monstyle.css";
</style>
Précisions sur le positionnement
Appeler une feuille de style dans une page HTML
<link rel="stylesheet" type="text/css" href="style/monstyle.css" />
On peut spécifier dans le header des éléments propres à la page : <style> </style>
Lors de l’appel d’une feuille de style, on peut définir sur quel support elle sera active.
Ordre : haut/droite/bas/gauche.
Si un seul côté : padding-right / padding left, etc…
Si 4 fois la même valeur, on peut ne l’indiquer qu’une fois.
Exemple : <link rel="stylesheet" type="text/css" media="print" href="monstyle.css">
à Ce style ne sera appliqué que lors de l'impression.
Enfin on définit tous les détails : couleurs, tailles, typos, etc…
Exemple : < link rel="stylesheet" type="text/css" media="screen" href="style.css">
à Ce style ne sera appliqué que sur écran
7. W3C ET VALIDATION DU CODE
8. AFFICHAGE SUR LES DIFFÉRENTS NAVIGATEURS
W3C est un Organisme de normalisation.
Il émet des recommandations à valeur de standard industriel.
Option 1 : utiliser les commentaires conditionnels (mécanisme valide).
<!--[if IE]> Ici votre code HTML réservé à IE. <![endif]-->
Qu’est-ce que le W3C ? A quoi sert-il ?
Le W3C oeuvre pour mettre Internet, et les millions de données qu’il comporte,
à la portée de tous, quelque soit leur matériel, logiciel, réseau, langue ou handicap.
4 principes qui guident les efforts de conception :
* simplicité,
* modularité,
* compatibilité,
* l'extensibilité.
Pour vérifier la validité W3C d’une page.
Directement depuis le site du W3C, grâce au Markup validator : http://validator.w3.org/
Ou grâce à des modules à installer dans Firefox. (Détails dans cours pdf)
Que faire si le rendu du site diffère selon le navigateur ?
<!--[if gte IE 6]> pour IE 6.0 et version plus récentes <![endif]-->
<!--[if IE 5.0]> pour IE 5.0 <![endif]-->
<!--[if lt IE 7]> pour IE inférieur à IE 7 <![endif]-->
<!--[if (lt IE 6)|(IE 8)]> pour IE inférieur à IE 6.0 ou si IE 8 <![endif]-->
<!--[if (gt IE 5)&(lt IE 7)]> pour IE supérieur à IE 5.0 et inférieur à IE 7 <![endif]-->
<!--[if !IE]><!--> si ce n'est pas IE <!--<![endif]-->
On appelle une CSS pour les navigateurs anciens (ie 6) et une pour les navigateurs
modernes.
La CSS pour anciens navigateurs ne reprendra que les sélecteurs posant problème.
Autre option : utiliser la propriété !important (dans la CSS).
#container {
margin-left : 10px !important; à sera retenue par Firefox et navigateurs modernes
margin-left : 5px; à sera retenue par IE.
}
10
SITES UTILISANT LA TECHNO HTML5/CSS3
LIENS VERS DES SITES UTILES
HTML5 Demos
http://html5demos.com/
Alsacréations
« HTML 5 se dévoile »,« Ce que nous réserve CSS3 en 2010 » et « Osez
HTML5 et CSS3 »
Exemples d’utilisation
HTML5 Gallery
http://html5gallery.com/
BD utilisant des parallaxes
http://www.nevermindthebullets.com/strip.html#1-1
Zurb. Boutons entièrement CSS3, pas d’image
http://www.zurb.com/blog_uploads/0000/0617/buttons-03.html
Articles sur HTML5 et CSS3
http://www.alsacreations.com/article/lire/750-HTML5-nouveautes.html
http://www.alsacreations.com/actu/lire/919-ce-que-nous-reserve-css3-en-2010.html
http://www.alsacreations.com/article/lire/947-osez-creer-site-html5-css3.html
Liste des éléments et attributs HTML 5
http://simon.html5.org/html5-elements
Pompage « HTML5 et l’avenir du web »
http://www.pompage.net/pompe/html5-et-le-futur-du-web
BBX Design « Introduction au HTML 5 »
http://bbxdesign.com/2009/06/08/introduction-au-html-5/
CSS3.info « Everything you need to know about CSS3 »
http://www.css3.info/
LIENS VERS DES SITES UTILES
PDF sur HTML5 et CSS3
Letstudio.fr
PDF succinct sur les nouveautés du CSS3.
http://www.letstudio.fr/documentation/nouveautes-CSS3.pdf
Developpez.com
Cours sur les sélecteurs CSS3
ftp://ftp-developpez.com/debray-jerome/articles/les-selecteurs-en-css3/les-selecteursen-css3.pdf
Smashingmagazine.com
HTML5 Cheatsheet
http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/html5cheat-sheet/html5-cheat-sheet.pdf
11

Documents pareils