FAQ [French Translation]
Quels sont les standards du Web, et pourquoi dois-je les utiliser ?
2 Quels standards ?
2.1 Les standards du W3C
2.1.1 Qu’est-ce que le W3C ?
2.1.2 Que fait le W3C ?
2.1.3 Quels sont les standards du W3C ?
2.1.3.1 HTML 4.01
2.1.3.2 XML 1.0
2.1.3.3 XHTML 1.0, 1.1, modularisation XHTML
2.1.3.4 Feuilles de style CSS (Cascading Stylesheets)
2.1.3.5 DOM
2.2 Standards de l’ECMA
2.2.1 Qu’est-ce que l’ECMA ?
2.2.2 Que fait l’ECMA ?
2.2.3 Quels sont les standards de l’ECMA ?
2.2.3.1 ECMAScript
3 Quels sont les avantages à utiliser les standards du Web ?
3.1 Accessibilité
3.1.1 Pour les logiciels et les machines
3.1.2 Pour les personnes
3.2 Pérennité
1. Introduction
Tim Berners Lee avait un rêve pour son invention, le World Wide Web : en faire un espace commun où les utilisateurs pourraient partager de l’information pour travailler, jouer, et communiquer entre eux (voir The World Wide Web, A very short personal history). En tant que développeurs Web, en créant des sites d’entreprise, pour l’éducation et les loisirs, nous faisons de ce rêve une réalité.
Mais pourl’instant, le Web a besoin d’un guide pour atteindre son plein potentiel. Les standards du Web sont ce guide. Ces standards permettent de s’assurer que tout le monde a accès aux informations fournies, tout en rendant le développement de sites Web plus rapide et plus plaisant.
La conformité aux standards simplifie l’utilisation du Web par les personnes ayant des besoins particuliers : les aveugles peuvent utiliser leur ordinateur pour se faire lire des pages Web à haute voix; les personnes ayant des problèmes de vue peuvent agrandir ces pages et les présenter différemment pour une lecture plus facile; et les utilisateurs de navigateurs de petite taille (téléphones mobiles et agendas électroniques connectés) peuvent accéder au même contenu que ceux qui utilisent des ordinateurs haut de gamme.
Comme vous le verrez, il y a de nombreuses raisons concrètes pour que les développeurs se sentent concernés par les standards du Web. Les moteurs de recherche peuvent être plus efficaces lorsqu’il s’agit d’indexer les sites, par exemple. De même, utiliser du code spécifique à un navigateur implique souvent le doublement ou le triplement du temps dédié à la création de pages Web, et le résultat laisse à désirer dès que de nouveaux moyens d’accès sont créés. Sans les standards du Web, cette situation ne fera qu’empirer.
Certains pensent que les standards sont autant de limites. Au contraire, ils suppriment l’essentiel du travail pénible du développement de pages web, et offrent aux développeurs Web plus de temps et de flexibilité pour être véritablement créatifs. Ils sont aussi bien ouverts aux améliorations futures que respectueux des technologies passées.
Bien des usages du Web, y compris ceux qui ne sont encore qu’à l’état de rêve, ne seront possibles, qu’à la condition d’une large conformité aux standards du Web. Pour l’instant, l’omniprésence de certains matériels et logiciels en font des standards de facto. Mais qui sait ce que demain nous réserve ? Lier notre sort à celui d’un seul fournisseur signifie lier étroitement notre futur au destin de celui-ci. A l’inverse, maintenir des standards universels permettra au Web de survivre tout en encourageant l’innovation à continuer au rythme actuel.
Les standards ont tant à apporter que nous, au Web Standards Project (WSP), considérons qu’il est nécessaire de vous aider à mieux comprendre de quoi il s’agit. Ce document n’est qu’un point de départ. Il vous expliquera concrètement ce que sont les standards, pourquoi ils existent, et pourquoi ils sont si importants.
A chaque fois que nous créons un morceau du Web, nous apportons notre contribution à cet espace d’informations qu’est le Web. Nous pouvons l’aider à grandir ou, au contraire, le laisser s’alourdir, ce qui le mènera à inévitablement à la destruction. Si le choix est nôtre, les conséquences, bonnes ou mauvaises, seront partagées par tous.
2 Quels standards ?
2.1 Les Standards du W3C
2.1.1 Qu’est-ce que le W3C?
Le World Wide Web Consortium (W3C) est un consortium informatique international dont la vocation est de “mener le Web à son plein potentiel”. Il est dirigé par Tim Berners-Lee, l’inventeur du Web. Fondé en 1994, le W3C comprend plus de 330 organisations membres – y compris Microsoft, America Online (qui possède Netscape Communications), Apple Computer, Adobe, Macromedia, Sun Microsystems, et tout un assortiment d’éditeurs de logiciels et de constructeurs informatiques, fournisseurs de contenu, universités et entreprises de télécommunications. Le consortium est hébergé par trois organismes : le MIT aux USA, l’INRIA en France, et Keio University au Japon.
2.1.2 Que fait le W3C ?
Le W3C développe des spécifications ouvertes pour améliorer l’interopérabilité des produits liés au Web. Les recommandations du W3C sont développées par des groupes de travail constitués par les membres du consortium et des experts invités. Les groupes de travail obtiennent ensuite un consensus général des entreprises et des autres organisations impliquées dans la création d’applications pour le Web, puis créent des “Working Drafts” (brouillons de travail) et des “Proposed Recommendations”. Elles sont finalement soumises aux membres du W3C et à son Directeur, pour une approbation formelle en tant que recommandations du W3C. Pour plus d’informations sur ce processus, consultez le site Web du W3C.
2.1.3 Quels sont les standards du W3C ?
2.1.3.1 HTML 4.01 – HyperText Markup Language
L’HyperText Markup Language (HTML) est largement utilisé sur le
Web pour ajouter de la structure aux documents texte. Les navigateurs interprètent
ces documents en présentant sa structure à l’utilisateur en
fonction du média. Par exemple, les navigateurs
visuels affichent le plus souvent l’élément strong (<strong> … </strong>)
sous forme de texte gras, alors que les synthétiseurs vocaux
hausseront la voix lorsqu’ils prononcent cette partie du texte.
Avec l’aide des Feuilles de style (CSS – Cascading Style Sheets), l’auteur peut définir comment les éléments structurels doivent être représentés, aux dépens des réglages par défaut du navigateur.
2.1.3.2 XML 1.0 – Extensible Markup Language
| Exemple d’une partie d’un document XML |
|---|
<addressbook>
<entry>
<name>Bill Gates</name>
<email>bgates@microsoft.com</email>
</entry>
<entry>
<name>Marc Andreesen</name>
<email>marca@netscape.com</email>
</entry>
<entry>
<name>Jon S. von Tetzchner</name>
<email>jon@opera.com</email>
</entry>
</addressbook> |
XML (Extensible Markup Language) est un langage de balises comme HTML, mais au lieu de disposer d’un jeu unique et limité d’éléments, il vous permet de définir les vôtres – ou d’utiliser un ensemble d’éléments défini par quelqu’un d’autre. Il permet même d’avoir plusieurs jeux d’éléments dans un seul document, par le biais des XML namespaces.
Certaines applications d’XML telles que XHTML et MathML, sont déjà devenues des Recommandations du W3C. D’autres ne sont encore qu’à l’état de “Working Drafts”.
Les standards de feuilles de style, tels que CSS et (dans le futur) XSL, peuvent être utilisés pour spécifier comment des éléments XML doivent être restitué. Le support conforme aux standards pour l’affichage en direct d’XML est pour l’instant limité dans les navigateurs. Aussi, pour présenter l’information aux utilisateurs, HTML (ou XHTML) avec mise en forme par CSS est la meilleure façon de procéder. XML est surtout utilisé aujourd’hui pour la communication entre applications.
XML est plus flexible que HTML, surtout parce qu’il permet d’ajouter de nouveaux éléments et de créer ses propres systèmes de structure. Cela en fait un format idéal pour organiser des grandes quantités de données. Il est déjà utilisé dans de nombreuses bases de données et dans les moteurs de recherche.
2.1.3.3 XHTML 1.0, 1.1 et la Modularisation
XHTML1.0 est une reformulation d’HTML en tant qu’application XML. XHTML 1.0 reprend les principes d’HTML 4.01, tout en étant techniquement plus strict à cause de l’influence d’XML. XHTML s’affichera dans votre navigateur de façon identique à son équivalent HTML. Vous pourriez être intéressé par l’utilisation d’XHTML si vous avez l’intention de retravailler par programme votre contenu, par exemple pour l’envoyer vers un ordinateur de poche ; les règles de syntaxe plus strictes d’XML simplifient le traitement informatique et le rendent moins coûteux que du HTML ordinaire.
Idéologiquement, XHTML 1.0 hérite des concepts généraux d’HTML 4.01 :
- La présentation et la structure du document doivent être séparés grâce aux feuilles de style ;
- Les documents doivent être accessibles ;
- Les documents doivent être internationalisés.
XHTML 1.0 reprend le modèle des trois DTD : Strict, Transitional, et Frameset. Ce modèle est apparu avec HTML 4.0 et a été repris avec HTML 4.01.
Quelques pratiques techniques importantes sont héritées d’XML, parmi lesquelles:
- Tous les types de document commencent par une déclaration correcte de DOCTYPE ;
- La structure d’un document conforme contient la déclaration DOCTYPE, un élément html avec le namespace XHTML déclaré, un élément <head> comprenant un élément <title>, ainsi qu’un élément <body> ;
- Tous les éléments et noms d’attributs sont écris en minuscule, et toutes les valeurs d’attributs figurent entre guillemets;
- Tous les éléments non vides (par exemple li) se terminent par une balise de fin ;
- Tous les éléments vides (par exemple br, hr, img) se terminent par une barre de division (<br />) ;
- Le document est valide conformément à la DTD qu’il déclare.
Pour les patrons (templates), se reporter à Learn > Templates.
XHTML 1.1 est constitué de trois parties principales :
- La DTD XHTML 1.0 Strict (avec des modifications mineures) ;
- La modularisation XHTML ;
- L’annotation Ruby.
Il est possible de rédiger des documents en XHTML 1.1 de plusieurs façons. La première consiste à utiliser la DTD XHTML 1.1. Avec cette méthode, votre travail sera extrêmement structuré parce qu’il n’existe quasiment aucun attribut de présentation en XHTML 1.1. La séparation entre structure et présentation sera donc complète, et tout votre travail de présentation sera stocké dans une feuille de style.
Un autre moyen pour produire des documents XHTML 1.1 consiste à utiliser la Modularisation XHTML. Il s’agit du découpage des composants habituels d’HTML et d’XHTML, tels que texte, tables, frames, formulaires etc. en modules distincts. Il est alors possible de créer sa propre DTD et d’y inclure uniquement les composants requis. C’est cette possibilité de modularisation qui offre au concepteur Web l’opportunité de personnaliser ses balises.
L’annotation Ruby est un moyen particulier de gérer certaines annotations de caractères asiatiques. Ruby fait partie du travail d’Internationalisation.
2.1.3.4 CSS – Feuilles de styles (Cascading Style Sheets)
Les feuilles de styles (CSS – Cascading Style Sheets) sont un mécanisme permettant de changer l’apparence des éléments HTML et XML, en assignant des styles à des types d’éléments, des classes auto-définies ou des instances individuelles.
Les feuilles de styles peuvent être utilisées pour définir de façon cohérente l’apparence d’un site dans sa totalité. Suite à l’introduction des CSS, le W3C a recommandé l’élimination progressive des possibilités de mise en forme intégrées au HTML et leur remplacement par les feuilles de style, ce qui permettra l’avènement d’un Web plus simple et plus structuré.
2.1.3.5 DOM 1 – Document Object Model Level 1
Le DOM offre toute la puissance et l’interactivité d’un langage de script (tel qu’ECMAScript, la version standardisée de JavaScript) en l’appliquant à une page Web. (En termes informatiques, le DOM Level 1 est une interface programmatique (ou API) pour l’interaction avec les pages Web). Il permet au langage de script d’accéder facilement à la structure, au contenu, et à la présentation d’un document écrit dans des langages tels que HTML et CSS.
Le DOM est compatible avec les améliorations technologiques à venir, et permettra à tous les langages de script d’interagir avec tous les langages utilisés dans le document. Ce standard ne permet pas seulement de programmer facilement du HTML dynamique, mais il facilitera l’adaptation aux futures technologies d’Internet.
2.2 Standards de l’ECMA
2.2.1 Qu’est-ce que l’ECMA?
L’ECMA (European Computer Manufacturers Association) est une organisation fondée officiellement en 1961 pour standardiser des formats informatiques, y compris les langages de programmation et les codes d’entrées/sorties.
L’ECMA se trouve à Genève, en Suisse, près des sièges sociaux de l’ISO (International Organization for Standardization) et de l’IEC (International Electrotechnical Commission). En 1994, le nom de l’organisation a été changé en “ECMA – European Association for Standardizing Information and Communication Systems”, reflétant ainsi l’ensemble de ses activités.
2.2.2 Que fait l’ECMA?
Le rôle principal de l’ECMA est de développer des standards et des rapports techniques dans les domaines des technologies de l’information et de la communication. Comme l’ECMA est une association d’entreprises et non pas une institution officielle de standardisation, elle collabore fréquemment avec des institutions nationales ou internationales officielles.
Les Standards de l’ECMA ont été à la source de standards internationaux et Européens. A ce jour, 270 Standards ECMA et 70 rapports techniques ont déjà été publiés.
De ses Standards, 85 ont été acceptés au niveau international par l’ISO (International Organization for Standardization). De plus 25 ont été accepté en tant que standards européens par l’ETSI (European Telecommunications Standards Institute).
2.2.3 Quels sont les standards de l’ECMA?
2.2.3.1 ECMAScript (JavaScript standardisé)
ECMAScript est un langage de script standardisé, reposant largement sur le JavaScript de Netscape et sur le JScript de Microsoft. Le standard ECMAScript est défini par le TC-39 (Technical Committee 39) de l’ECMA.
L’utilisation principale d’ECMAScript, qui est un langage orienté objet, est de manipuler, dans les pages Web, des objets tels que définis par le Document Object Model (DOM). Ces objets, en fait les éléments qui constituent les pages Web, peuvent être ajoutés, supprimés, déplacés ou voir leurs propriétés modifiées. Ceci permet aux développeurs Web d’implémenter des effets tels que du texte animé, des changements graphiques lors du passage de la souris, et des pages qui changent lors d’interactions avec l’utilisateur, sans pour autant avoir besoin de les recharger.
La spécification courante d’ECMAScript est ECMA-262, ECMAScript Language Specification, 2nd edition.
3 Quels sont les avantages à utiliser les standards du Web ?
3.1 Accessibilité
3.1.1 Pour les logiciels et les machines
Se conformer aux standards du Web peut donner aux pages Web une meilleure visibilité dans les moteurs de recherche. L’information structurelle présente dans les documents conformes simplifie l’accès aux informations par les moteurs de recherche et leur analyse par ceux-ci, et permet ainsi une meilleure indexation.
Parce que l’utilisation des standards Web facilite la compréhension de la structure de votre document par des applications aussi bien du coté client que du coté serveur, ajouter un moteur de recherche à votre propre site est plus facile et donne de meilleurs résultats.
Les Standards sont écrits pour que les anciens navigateurs comprennent la structure de base de vos documents. Même s’ils ne comprennent pas les toutes dernières jolies fontionnalités des standards, ils seront capables d’afficher le contenu de votre site. Il en est bien sûr de même pour les robots, ces systèmes qui collectent l’information sur votre site pour les moteurs de recherche.
Vous avez aussi la possibilité de valider votre page auprès de services de validation. Ceux-ci traitent vos documents et vous affichent une liste d’erreurs, simplifiant ainsi la correction de votre code et vous permettant d’économiser du temps et de l’énergie.
Les documents conformes peuvent être facilement convertis en d’autres formats, tels que des bases de données ou le format Word. Cela permet une utilisation plus large de l’information contenue dans les documents Web, simplifiant la migration vers de nouveaux systèmes -matériels et logiciels- y compris des télévisions ou des assistants numériques personnels.
3.1.2 Pour les personnes
L’Accessibilité est une idée fondamentale dans la création de bien des standards Web, en particulier HTML.
Non seulement cela permet l’utilisation du Web par les personnes handicapées, mais cela permet aussi la consultation de pages Web avec des navigateurs autres que ceux qu’on rencontre habituellement, y compris les navigateurs vocaux lisant les pages à haute voix pour les mal-voyants, les plages Braille pour transformer le texte dans ce langage, les navigateurs de poche avec des écrans minuscules, l’affichage en mode texte et d’autres dispositifs d’affichage inhabituels.
Alors que la variété des moyens d’accès au Web est en constante augmentation, ajuster ou dupliquer les sites web pour satisfaire tous les besoins est de plus en plus difficile (certains disent même que c’est d’ores et déjà impossible…). Suivre les Standards est un grand pas en avant vers la résolution de ce problème. Rendre vos sites conformes aux Standards va permettre aux navigateurs traditionnels, anciens et modernes, d’afficher vos sites correctement, mais aussi permettra leur lecture avec des navigateurs et moyens d’accès plus exotiques.
Ignorer les standards a des conséquences évidente, la plus simple de toutes, c’est que vous restreignez l’accès à votre site. Quel raisonnement commercial vous pousse à limiter votre audience à une fraction de ce qu’elle pourrait être ? Pour un site commercial, empêcher l’accès à une partie de l’audience cible, même petite, peut avoir un impact majeur sur la marge nette. Pour un site éducatif, il semble évident d’offrir l’accès non seulement aux étudiants en pleine possession de leurs moyens physiques avec des navigateurs graphiques, mais aussi aux enfants des pays en voie de développement ou aux étudiants handicapés utilisant des navigateurs spécialisés.
Les même principes s’appliquent à tous les types de sites Web. Même si s’éloigner des standards et tirer profit de fonctionnalités spécifiques à un navigateur peut être diablement tentant, l’augmentation de l’accessibilité offerte par les standards sera bien plus profitable sur le long terme.
3.2 Pérennité
La plupart des standards du Web sont conçus avec les notions de compatibilité ascendante et descendante. Ainsi, les données utilisant d’anciennes versions des standards continueront à s’afficher dans les nouveaux navigateurs, et les données utilisant une version récente des standards seront “joliment dégradées” pour produire un résultat acceptable dans les anciens navigateurs.
Parce qu’un site Web peut être retravaillé par plusieurs équipes tout au long de sa vie, il est important que ces gens puissent appréhender le code et le modifier facilement. Les standards du Web offrent un ensemble de règles que chaque développeur peut suivre, comprendre et s’approprier. Quand un développeur crée un site conforme aux standards, un autre pourra reprendre le travail là où le précédent l’avait laissé.
4. Conclusion
En tant que développeurs Web, nous nous battons constamment contre les incohérences de rendu entre les différentes versions et marques des navigateurs Web. Ceci nécessite soit de coder plusieurs fois la même fonctionnalité, ce qui demande beaucoup de temps, soit de programmer pour un navigateur spécifique, rendant ainsi difficile, voire impossible, l’accès au site à une partie du public. Cette situation va empirer avec l’apparition de nouveaux dispositifs de poche pour naviguer sur Internet.
Les standards du Web ne sont pas des lois mystérieuses décrétées par des organisations enfermées dans leurs tours d’ivoire. Comme nous l’avons décrit, les standards sont pour la plupart décidés par les représentants des gens qui les utilisent, éditeurs de navigateurs, développeurs Web, fournisseurs de contenus et d’autres organisations.
Ecrire des pages web en accord avec les standards raccourcit le temps de développement d’un site et simplifie sa maintenance. Déboguer et réparer ces pages devient plus facile, parce que le code suit un standard. Il n’est plus nécessaire de s’ennuyer à coder et maintenir plusieurs versions de code censées accomplir les même présentations. Vous maintenez une version de votre site, et une seule.
L’adoption universelle des standards du Web est d’une importance primordiale. La mission du Web Standards Project est d’améliorer le Web à la fois pour les développeurs et les utilisateurs, en encourageant les créateurs de navigateurs et d’éditeurs de pages à suivre les standards dans leurs applications. Cet effort prendra tout son sens quand les développeurs utiliseront les standards, tout en insistant pour que les générateurs de code, ainsi que les moteurs de rendu, soient conformes à ces mêmes standards.
Les raisons que nous avons données devraient vous inciter, vous qui êtes développeur Web, à utiliser les standards, mais aussi vous donner quantité d’informations nécessaire pour convaincre, sur votre lieu de travail, vos collègues développeurs à utiliser, eux aussi, les standards.
Aidez-nous à réaliser ce rêve!
Web Standards Project, comité de formation des développeurs :
Stephan Nedregaard (coordinateur), Kynn Bartlett, Gail T. Cohen, Jens Edlund, Nick Finck, Tomas
Fjetland, Peter Fleck, Markus Gut, Holger Maier, Julian Missig, Laura Mollett,
Randy Piatt, Lewis A. Shadoff, Juergen Steinwender, Bart Szyszka, Matthew
Thomas, Dane Weber
Mise à jour le 27 février 2002 par Molly E. Holzschlag et Shirley E. Kaiser du WaSP LEARN Committee
Traduction : Tristan Nitot. http://standblog.org/
The Web Standards Project is a grassroots coalition fighting for standards which ensure simple, affordable access to web technologies for all.
Translations:
- FAQ [Belarusian Translation]
- FAQ [Dutch Translation]
- FAQ [Farsi Translation]
- FAQ [French Translation]
- FAQ [Italian Translation]
- FAQ [Japanese Translation]
- FAQ [Korean Translation]
- FAQ [Polish Translation]
- FAQ [Russian Translation]
- FAQ [Simplified Chinese Translation]
- FAQ [Spanish Translation]
- FAQ [Traditional Chinese Translation]