Le langage du Word Wide Web est, sans aucune polémique possible, le
langage HTML dont nous parlerons longuement dans les pages suivantes. Nous
détaillerons aussi les améliorations que peuvent lui apporter
les feuilles de styles sans en
changer l'esprit. Commençons par quelques mots
sur les langages de programmation qui s'appliquent
aux pages décrites par le HTML. Parmi les langages interactifs avec les
pages Web, il faut dissocier
deux catégories totalement différentes mais éventuellement
complémentaires : les langages
pour internet Côté Serveur et les langages pour internet Côté Client.
Comme leur nom l'indique (?), les uns sont exécutés sur l'ordinateur
de l'utilisateur après réception de la page Web alors que les
autres,
invisibles côté client, sont exécutés sur le serveur
avant le transfert de la page Web adaptée à la demande de l'utilisateur.
Les
Langages Côté Serveur
Ils permettent (sous réserve de droits d'accès)
d'utiliser des ressources basées sur le serveur (en général
des bases de données). L'utilisateur ne voit pas les programmes mais
seulement leur résultat HTML. Chaque
nouvelle demande provoque, sur le serveur, la construction et l'envoi d'une nouvelle
page.
Très grossièrement, on peut associer ASP et serveur Windows,
Perl et serveur Unix, PHP et serveur Linux. Il existe, bien entendu,
une solution C compilée mais la rapidité d'exécution
dépend essentiellement des performances du réseau et
de la capacité du SGBD à gérer des transactions
simultanées. Les Langages Côté Client
Ils
ne sollicitent pas le serveur. L'utilisateur peut voir et réutiliser
les programmes contenus dans les pages Web. Les programmes doivent s'adapter
à l'environnement dans lequel ils sont exécutés (type et
version du navigateur, affichage, ...).
Bien entendu un programme
en Langage Serveur
peut produire une page HTML contenant un programme en Langage Client.
En 1992, s'impose le Word Wide Web conçu par Tim Berners-Lee du CERN.
Il est construit sur HTTP, URL et HTML.
En 1993 Marc Andreessen (futur
créateur de Netscape) développe Mosaic (premier navigateur Web
graphique) pour l'Université de l'Illinois.
HTTP (HyperText Transfer Protocol)
est un protocole de communication pour le WWW.
URL (Uniform Resource Locator)
est un adressage (sous la forme arborescente Protocole://Serveur/Dossier/Document)
de toutes les ressources du WWW.
HTML (HyperText Markup Langage) est un langage de description de pages qui permet de
définir les polices, les paragraphes, le contenu multimédia
et les liens hypertextes d'un document du WWW. Markup désigne les annotations manuscrites
qui étaient ajoutées à un document à destination de l'imprimeur. Avec
la photocomposition ces marques sont intégrées
au texte et, en 1986, naît le Standard Generalized Markup Langage (SGML
- ISO 8879) qui applique aux données d'un document les règles
définies par une DTD (Document Type Definition). HTML, qui intègre la
notion d'Hypertexte développée par Ted Nelson, est un dérivé
du SGML. Les DTD des versions
successives du HTML sont définies par le Word Wide Web Consortium (W3C)
en relation avec les commerciaux (IBM,
Microsoft, Netscape Communications Corporation, Novell, SoftQuad, Spyglass,
Sun Microsystems).
HTML est la langue commune (lingua franca) des document hypertextes
sur le World Wide
Web. C'est un format non-propriétaire basé sur le SGML. Un simple
éditeur de texte est suffisant pour l'utiliser mais il existe des éditeurs
Wysiwyg trés sophistiqués. Pour décrire les documents, le HTML
utilise des balises (Tags) délimitées
par les signes "<" et ">".
Structure d'un document HTML | |||
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd" "http://www.w3.org/TR/REC-html40/HTMLlat1.ent"> |
Déclaration de la version du HTML, de la DTD (strict, transitional ou frameset) et du jeu de caractères utilisés dans le document | ||
<HTML> | Balise d'ouverture du document | ||
<HEAD> | Balise d'ouverture de l'en-tête du document | ||
( 1 ) |
<TITLE>Essai</TITLE> <META> etc. |
Contenu de l'en-tête du document | |
</HEAD> | Balise de fermeture de l'en-tête du document | ||
<BODY> | Balise d'ouverture du corps du document | ||
( 2 ) |
<P>Coucou</P> <TABLE></TABLE> etc. |
Contenu du corps du document | |
</BODY> | Balise de fermeture du corps du document | ||
</HTML> | Balise de fermeture du document |
L'en-tête du document ( 1 ) contient des informations sur le document
courant : le titre, les mots clés destinés
aux moteurs de recherches, le nom de l'auteur, la langue, ...
Le corps du document (
2 ) contient les textes, images, couleurs, et autres éléments
qui constituent le document.
Dynamic HTML est
un terme utilisé par les commerciaux pour décrire l'association
de HTML, CSS, DOM et Scripts qui permet d'animer les documents. Il ne correspond
à aucune spécification du W3C et n'introduit
aucune nouveauté.
HTML 4.0, langage standard de publication sur le WWW, est une
application SGML conforme à l'ISO 8879.
SGML est un langage
riche et stable, particulièrement
adapté à la gestion et la publication de documents électroniques. Sa
stabilité est due à sa flexibilité mais le prix de cette flexibilité est une complexité qui rend
difficile son utilisation.
HTML, conçu pour
l'échange de documents techniques entre scientifiques, contourne le problème de la complexité du SGML en n'introduisant
qu'un petit nombre de balises structurelles et sémantiques adaptées
à l'écriture de documents relativement simples. En un temps remarquablement court, HTML,
devenu très populaire, a dépassé son but
originel. Pour répondre à de nouvelles demandes très spécialisées
il s'est doté de nouveaux éléments qui, s'ils permettent
la création de documents plus riches, ne sont pas lisibles par toutes
les plates-formes existantes.
XHTML (Extensible Hypertext Markup Language),
successeur désigné du HTML, reformule celui-ci en XML. Conçu pour s'adapter
à de nouveaux outils, il facilite la création de documents multi
plates-formes.
XHTML 1.0 est conforme aux normes du XML 1.0 et du HTML 4.
Il concrétise la volonté du W3C de définir un standard d'écriture
de pages Web pour un nombre croissant de plates-formes (téléphones
cellulaires, voitures, ...).
Pour transformer un document HTML en XHTML conforme lire les
modifications du code
(<br />, <img ... />, ... éléments "périmés",
...) ou utiliser l'outil Open Source HTML
Tidy.
Comme avec HTML, on peut préciser au début du document
la DTD de la variante utilisée.XHTML 1.0 Strict - Pour
un document où fontes, couleurs et mise en page sont pris en charge par
des feuilles de style.
XHTML 1.0 Transitional - Pour
mélanger feuilles de style et attributs "périmés"
(dans <body> par exemple) afin de ne pas perturber les navigateurs anciens.
XHTML 1.0 Frameset - Pour
travailler avec des cadres.
XHTML Basic est la deuxième recommandation pour le XHTML.
Elle définit le jeu minimum de modules requis pour
être un document XHTML, avec en plus des images, des formulaires, des
tableaux de base, et un support objet. Elle est destinée aux clients Web qui
ne supportent pas la totalité des possibilités du XHTML et peut
être étendue à l'aide de modules additionnels.
Modularisation du XHTML est la
troisième recommandation pour le XHTML. Elle définit les possibilités
de modularisation qui permettent d'étendre la portée du langage
(graphismes vectoriels, multimédia, mathématiques, commerce électronique,
etc ... ). La conception modulaire prend en compte l'impossibilé
d'une approche unique de navigateurs aux capacités très
différentes (Cellphone et ordinateur multimédia haut de game par
exemple).
XHTML 1.1 définit un nouveau Type
de Documents à partir des modules définis dans la modularisation du XHTML. Son
but est de fournir aux futurs Types de Documents
XHTML un Type de Documents cohérent, tourné vers l'avenir
et clairement séparé des éléments périmés
hérités du HTML 4 qui existent dans le HTML 1.0.
Il est essentiellement une reformulation du XHTML 1.0 Strict à partir
des modules XHTML. De nombreuses possibilités disponibles dans d'autres Types
de Documents XHTML (Frames par exemple) ne sont plus valables dans celui-ci
(voir Modularisation du XHTML pour
la création de nouveaux Types de Documents comme XHTML 1.1 plus
MathML 2.0 ).
CSS (Cascading Style Sheets) est
un mécanisme simple qui permet d'ajouter des styles (polices, couleurs,
... ) aux documents Web.
Pour
l'utiliser, il suffit d'avoir quelques notions de HTML et de connaître
les bases du vocabulaire et
la syntaxe du langage (Exemples). Ainsi la
règle simple h1 {color
: blue;} attribue la couleur bleue à tous les éléments <h1>.
Associée à d'autres, elle deviendra une feuille
de style qui déterminera la présentation d'un document.
Chaque navigateur Web possède une feuille de style par défaut
qui s'applique quand aucune règle n'est définie.