Résumé : HTML5 n’est peut-être pas une norme entièrement finalisée, mais cela ne changera pas grand-chose – et l’acceptation augmente. Justin James met en avant les concepts clés de cette nouvelle spécification.
Il y a un an ou deux, HTML5 semblait être un concept vague dont seuls quelques nerds d'Internet s'intéresseraient. Mais maintenant, on a l’impression que HTML5 est partout. Grâce à la sortie rapide de Mozilla et de Chrome et au déploiement d'IE9 de Microsoft (IE10 est également désormais en statut « Aperçu technique »), un nombre limité (ou mieux que limité) de navigateurs prenant en charge HTML 5 sont disponibles presque universellement. . Les développeurs ont commencé à profiter de fonctionnalités largement mises en œuvre. HTML 5 sera entièrement pris en charge dans moins d’un an et la spécification atteint rapidement un état stable. C’est le bon moment pour apprendre certaines choses que vous devez savoir sur HTML 5.
XHTML est le choix pour les personnes qui aiment la précision, notamment en termes d'analyse. L'apparence du HTML a toujours été similaire à celle du XML à de nombreux endroits, mais il ne sera jamais exactement identique à celui du XML. Par conséquent, toute tentative de l'analyser en XML échouera. Ainsi, il n’y a pas si longtemps, XHTML a été formulé pour remplacer le langage HTML et le classer sous le terme XML. Lorsque les travaux sur HTML 5 ont commencé, il y avait également des travaux sur XHTML 2, mais ils ont finalement été abandonnés. Au contraire, la spécification HTML 5 a été développée pour vous permettre d'écrire des documents HTML 5 fonctionnels qui suivent une syntaxe XML stricte. Si vous l'envoyez avec le type XML MIME, le client l'analysera également comme un document XML. Cela offre aux développeurs le meilleur des deux mondes.
Concernant HTML 5, un des malentendus largement circulés est que "il ne sera pas achevé avant 2022". Une preuve typique à l'appui est une interview que j'ai menée il y a plusieurs années avec Ian Hickson, éditeur de la spécification HTML 5. Ironiquement, même dans cette interview, il a été clair sur la date de 2022. Mais certaines personnes sont enthousiasmées par cette idée et leurs articles en colère attirent bien plus l’attention que les faits réels.
Le fait est que 2022 est le jour où Hickson s'attend à ce que la spécification HTML5 devienne une recommandation complète du W3C, et d'ici là, il y aura deux implémentations 100 % complètes et vérifiables. C'est à la fois assez inutile et en même temps un énorme pas en avant. Pour vous donner une idée de pourquoi, sachez qu'aucune autre version de la spécification HTML n'a jamais atteint ce statut, principalement parce que cela est nécessaire pour toute implémentation. pour être vérifiable, c'est trop vague. La spécification HTML 5 est sur le point d'être solidifiée maintenant, en 2011.
Bien que HTML 5 apporte plusieurs améliorations dans la façon dont il est utilisé pour baliser les documents, les plus importantes restent l'accent sur les applications. Le nombre de fonctionnalités introduites par HTML 5 pour prendre en charge le développement d'applications est stupéfiant. Cela ne veut pas dire que Flash et Silverlight vont disparaître de si tôt. Mais Microsoft a annoncé recentrer Silverlight sur les expériences en dehors du navigateur. Flash et Silverlight ont encore certaines fonctionnalités que HTML 5 n'a pas, mais pour de nombreux objectifs communs, la fracture est désormais comblée grâce aux nouvelles fonctionnalités de HTML 5. Cela ne vaut peut-être pas la peine de réécrire une application existante, mais vous devriez voir si HTML 5 a du sens pour une nouvelle application.
4 : C'est la pierre angulaire de nombreux nouveaux outils
Alors que HTML 5 devient un framework d'application pleinement mature, les fabricants d'outils, en particulier ceux conçus pour résoudre les problèmes de développement multiplateforme, l'utilisent désormais comme technologie fondamentale pour leurs produits. Si vous souhaitez écrire des applications qui s'exécutent sur plusieurs plates-formes et qui respectent les capacités de HTML 5, vous devriez envisager ces outils. Ceci est particulièrement important dans l’espace mobile, car sinon vous auriez besoin d’apprendre un tout nouveau langage, une nouvelle API et un nouveau framework pour chaque plate-forme mobile que vous envisagez de cibler.
Mon choix personnel pour « les meilleures nouvelles fonctionnalités de HTML 5 » sont les balises. Avant (et avec les balises), vous deviez recourir vous-même à Flash ou Silverlight pour fournir un lecteur multimédia à votre site Web. Avec ces nouvelles étiquettes, en théorie, cette époque est révolue. Pourquoi juste « théoriquement » ? Malheureusement, en raison des brevets, les différents fabricants de navigateurs ne savent pas exactement quels formats ils doivent prendre en charge. Et une fois la poussière retombée, Flash et Silverlight perdront leur cas d'utilisation n°1.
S'il semble que le navigateur Chrome ait un excellent démarrage sur HTML 5, alors il y a une bonne raison ici. Le développement de la spécification HTML 5 a mis l'accent sur l'écriture et le déploiement de code. Je ne veux pas dire par là qu’ils approuvent ce que fait n’importe quel fournisseur de navigateur. Mais il est plus difficile de convaincre ceux impliqués dans l'écriture de la spécification d'accepter les fonctionnalités qui n'ont pas encore été implémentées ; les fonctionnalités implémentées sont plus susceptibles d'être incluses comme base pour de nouveaux projets dans la spécification. Étant donné que Chrome semble publier une nouvelle version toutes les quelques semaines, il y a de fortes chances que les nouvelles fonctionnalités ajoutées par Google soient également incluses dans la spécification HTML5.
Chaque fois que quelqu'un prétend qu'un navigateur est ou non "conforme aux normes", je dois rire. Avant HTML 5, la conformité aux normes était tout simplement impossible à prouver. Dans de nombreux cas, la spécification actuelle est trop vague ou simplement muette sur des questions importantes (comme la gestion des erreurs d'analyse), avec pour résultat que différents navigateurs peuvent faire un large éventail de choses différentes tout en restant soit conformes aux normes, soit classés comme "Incompatibilité invérifiable". Même le test ACID le plus célèbre ne prouve pas grand-chose car il ne teste qu'un sous-ensemble du HTML. Le seuil du HTML 5 a été considérablement relevé, et il est enfin possible de prouver qu'un agent utilisateur est conforme aux standards. En effet, l’une des raisons derrière la date de 2022 pour atteindre le statut « recommandé » est la nécessité d’écrire des packages entièrement tests.
La compatibilité des standards dans les navigateurs Web ne se comporte pas comme les gens le pensent habituellement, et HTML 5 ne change rien à ce fait. L'une des grandes confusions à propos du HTML est que de nombreux concepteurs et développeurs Web pensent que la spécification HTML contrôle l'apparence des éléments à l'écran, ce qui n'est pas le cas. Par exemple, s'il le souhaite, un navigateur Web peut faire en sorte que les balises utilisent une police de couleur plus grande ou différente au lieu du gras tout en conservant la compatibilité. Souvent, lorsque les concepteurs déclarent qu'un navigateur n'est pas conforme à une norme, ce qu'ils rencontrent en réalité, c'est de donner aux agents utilisateurs une flexibilité dans la manière d'afficher les balises. HTML5 ne change rien à ce fait. Si vous devez faire apparaître une étiquette de manière précise, ne vous fiez pas au comportement par défaut du navigateur et précisez vos besoins en CSS.
La spécification HTML5 introduit enfin des règles d'analyse précises et définit ce que les agents utilisateurs doivent faire lorsqu'ils rencontrent des erreurs d'analyse. Par conséquent, vous pouvez vous attendre à ce que certaines choses qui étaient auparavant considérées comme du HTML acceptable, voire « légal », ne le soient plus. Vous souhaiterez vous familiariser avec les règles d'analyse HTML5 et vous assurer que votre code est conforme à leurs exigences.
Dans les versions précédentes de HTML, il y avait une hypothèse inhérente selon laquelle les navigateurs Web traditionnels étaient l'agent utilisateur de choix. Bien que d’autres agents utilisateurs et types de contenu soient pris en charge, l’idée implicite est qu’ils ne sont pas aussi importants. Cependant, HTML5 a apporté de nombreuses modifications pour traiter plus équitablement les agents utilisateurs qui ne sont pas des navigateurs et qui ne sont pas de la taille d'un ordinateur de bureau, avec les navigateurs. De nombreux progrès ont été réalisés sur des points tels que son fonctionnement avec les lecteurs d'écran et les téléphones mobiles. Ainsi, HTML5 bien écrit est un cadre « écrire une fois, voir n'importe où » pour les développeurs qui en ont besoin, et pour les utilisateurs qui autrement ont des difficultés avec le Web (en particulier ceux qui ont diverses barrières).
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!