Maison >interface Web >tutoriel HTML >Aperçu des nouvelles fonctionnalités de production de pages XHTML 2.0_HTML/Xhtml_Web

Aperçu des nouvelles fonctionnalités de production de pages XHTML 2.0_HTML/Xhtml_Web

PHP中文网
PHP中文网original
2016-05-16 16:45:371100parcourir

Profitez de cette structure de contenu plus riche jusqu'à ce que les navigateurs puissent gérer la prochaine génération de XHTML La spécification XHTML 2 n'est pas encore complète, mais elle présente déjà de nombreux avantages par rapport à XHTML 1, notamment des fonctionnalités structurelles plus riches, qui font de XHTML 2 un format d'édition mieux à même de servir de modèle central pour un système de publication de ressources uniques que son prédécesseur. Effectuez des versions grandes ou petites
Profitez de cette structure de contenu plus riche avant que les navigateurs puissent gérer la prochaine génération de XHTML
La spécification XHTML 2 n'est pas encore complète, mais elle présente déjà de nombreux avantages par rapport à XHTML 1, notamment l'inclusion de fonctionnalités structurelles plus riches , XHTML 2 en tant que format d'édition sera meilleur que son prédécesseur en tant que modèle central pour les systèmes de publication à ressource unique. Les personnes exécutant des versions grandes ou petites peuvent commencer à utiliser les nouvelles fonctionnalités de XHTML 2 dès maintenant sans avoir à attendre que les navigateurs prennent en charge ses nouvelles fonctionnalités d'interface utilisateur.
Il y a environ un an, un groupe de normalisation de l'industrie m'a demandé de décrire comment XHTML2 pourrait être utile aux éditeurs. Je ne savais pas si cela serait pratique, mais ils m'ont proposé de couvrir les frais d'aller à New York, alors j'ai décidé d'étudier la question.
Les recherches que j’ai effectuées n’ont pas demandé beaucoup d’efforts. XHTML 2 ajoute une structure plus riche à XHTML, ce qui en fait un format qui peut être utilisé pour créer et stocker du contenu, et pas seulement pour le transmettre au navigateur. J'exagère un peu quand je dis que XHTML 2 est déjà utile ; de nombreux magasins ont des politiques très sensées pour cette norme inachevée, et XHTML 2 est encore au stade de la version préliminaire (plus d'informations sur , voir Ressources). Contrairement à presque toutes les normes liées au HTML, XHTML 2 est capable de fournir beaucoup de valeur avant que les navigateurs connus ne le prennent en charge, car il est plus susceptible de stocker le contenu dans une structure plus riche et plus complexe. Éléments et attributs HTML. L'état actuel du XHTML : où en sommes-nous maintenant
La norme W3C XHTML 1.0 crée une version XML du HTML. Même si les navigateurs ne se soucient pas vraiment de savoir si une page Web est bien formée en XML, les concepteurs de sites Web, fatigués d'utiliser une méthode pour Firefox et une autre pour Microsoft™ Internet Explorer, constatent davantage de changements dans les normes. De nombreuses collections CSS open source (telles que Open Web Design et Open Source Web Design, voir Ressources pour les liens vers les deux) ont leurs feuilles de style utilisant des exemples de fichiers XHTML 1 à des fins de démonstration, et j'en ai entendu parler de certaines qui sont à peine connues pour être bonnes. Les concepteurs Web formés sont fiers d'affirmer que leurs sites sont construits avec XHTML. À mesure qu'Internet Explorer et Firefox prennent en charge de plus en plus de fonctionnalités CSS, ces concepteurs Web ajoutent davantage de techniques de conception aux feuilles de style CSS, laissant le XHTML plus simple et plus direct (et plus facile à réutiliser) dans le document de base.
XHTML 1.1 (voir Ressources) n'ajoute pas de nouvelles fonctionnalités, mais il divise XHTML en modules. Sa valeur se reflète sous deux aspects. Premièrement, si nous constatons qu’il y a de la valeur dans certains modules mais pas dans d’autres, il peut être plus facile d’en adopter un sous-ensemble. Par exemple, le Wireless Application Forum (WAP) a toutes les raisons d'incorporer des structures XHTML de base dans ses normes de diffusion de contenu sur les téléphones mobiles, mais il ne souhaite pas permettre aux documents WAP d'incorporer des fonctionnalités d'interface utilisateur telles que celles utilisées sur les téléphones mobiles. Les fonctionnalités du module de mappage d’image ou d’édition ne sont pas très utiles sur le petit écran.
Un autre avantage d'une architecture modulaire pour les DTD ou les schémas est qu'il peut être plus facile de brancher de nouveaux modules propres à l'application d'un utilisateur. Combinée à la possibilité de sélectionner des modules existants, cette fonctionnalité apporte des avantages au secteur de l'édition : le groupe de normes PRISM dédié aux métadonnées du secteur de l'édition a sélectionné un sous-ensemble de XHTML 1.1, puis en a ajouté un nouveau module avec un vocabulaire spécifique au secteur pour le rendre plus facile. pour suivre le contenu via les workflows de publication. (Voir Ressources pour plus d'informations sur PRISM.)
Vous pouvez comparer le développement de XHTML 1.1 au nettoyage de votre sous-sol : vous n'aurez probablement pas à jeter autant de choses, et en l'organisant mieux, vous pourrez utilisez-le plus facilement. Les éléments existants peuvent même libérer de l'espace pour construire un établi sur lequel créer quelque chose de nouveau.
XHTML 1.1 est un standard (ou, dans le langage du W3C, une recommandation) depuis mai 2001. Le développement le plus récent concernant XHTML 2.0 a été la publication d'une nouvelle version de travail en juillet 2006. Même s'il faudra plusieurs étapes pour parvenir à sa forme finale, la disponibilité du schéma RELAX NG (voir Ressources pour un lien) nous permet de créer et d'utiliser des documents XHTML 2 dès maintenant afin de pouvoir rapidement passer à la spécification lorsqu'elle deviendra un recommandation. Une simple feuille de style XSLT convertira ces fichiers en XHTML 1 pour les afficher par le navigateur, ou vous pouvez utiliser une feuille de style CSS désormais incluse avec le brouillon de travail XHTML 2 (voir Ressources) pour les afficher dans un navigateur (pour l'instant, Firefox devrait mieux fonctionner) . XHTML 2 : Quoi de neuf ?
XHTML 2 conserve les fonctionnalités de XHTML 1 pour nettoyer la syntaxe existante afin de la rendre plus concise, tout en ajoutant de nouvelles fonctionnalités. Il ajoute la prise en charge de XForms, le successeur le plus complet des formulaires utilisés en HTML depuis plus d'une décennie. XHTML 2 inclut également des événements XML, qui nous permettent d'identifier les événements déclenchés par certaines opérations de l'interface utilisateur, réduisant ainsi le besoin d'écrire des scripts en JavaScript ou ASP. Ces fonctionnalités seront intéressantes, surtout une fois que les principaux navigateurs les prendront en charge, mais d'autres fonctionnalités seront plus intéressantes pour les éditeurs avant même que les navigateurs ne prennent en charge XHTML : ​ Une structure plus riche et plus réutilisable ​ ​ Meilleure indépendance des appareils, accès plus facile et meilleure sémantique ​ ​ Plus facile d'ajouter des métadonnées
                                                                                      #p# Structure plus riche
De nombreux éditeurs qui ont besoin de stocker du contenu au format XML savent qu'il est préférable d'utiliser un schéma standard existant (j'entends par là le schéma W3C, le schéma RELAX NG ou DTD) plutôt que d'en créer un à partir de zéro. Ils regardent DocBook et le trouvent trop complexe, ils regardent HTML ou XHTML 1 et le trouvent trop simple. Pour de nombreux éditeurs, XHTML 2 constitue un bon équilibre entre la richesse de DocBook et la simplicité de XHTML 1. Cet équilibre en fait un excellent format de stockage de contenu, que le contenu doive ou non être converti dans d'autres formats pour être diffusé dans une variété de formats. des médias.
Le listing 1 contient un exemple de fichier XHTML 1 et montre sa structure au format indenté.
Listing 1. Structure du fichier XHTML 1


Ma page Web


Ma page Web


Ici est ma page Web.


Section 1 de ma page Web


Voici la section 1 de ma page Web.


Section 1.1 de ma page Web


Voici une sous-section de ma page Web.


Section 2 de ma page Web

Voici la section 2 de ma page Web.




Nous pouvons voir à l'intérieur de l'élément body et Il n'y a pas beaucoup d'indentation, c'est parce qu'il n'y a pas beaucoup de structure dans l'élément. La représentation arborescente de ce document montrerait un élément body avec de nombreux éléments enfants et aucun élément petit-enfant, et le paragraphe « Voici une sous-section de ma page Web » serait affiché comme un élément frère du titre h1 principal « Ma page Web ». . Il n'y a qu'un seul endroit dans le balisage qui indique que ce paragraphe fait partie d'un sous-paragraphe : le titre le plus proche, h3, est un nombre plus grand que le titre précédent. L'élément conteneur ne combine aucun en-tête servant de titre avec son contenu, à moins que l'élément body n'encapsule l'en-tête h1 avec le reste du contenu affichable de la page Web. Nous pourrions utiliser un élément p pour encapsuler chaque combinaison en-tête/contenu, mais l'élément p, comme l'élément span, est un élément de regroupement assez général. Il peut être utilisé à de nombreuses fins, comme par exemple indiquer que certains paragraphes spécifiques forment un menu ou une barre latérale ou un autre élément de présentation visuelle dans une page Web, nous ne pouvons donc pas supposer qu'il représente une unité structurelle du contenu indiqué.
Les nouveaux éléments section et h dans XHTML 2 se combinent pour nous permettre de créer une structure plus riche qui rend le contenu plus facile à réutiliser. Le listing 2 montre l'élément body XHTML 2 équivalent à l'élément body du listing 1.
Liste 2. Élément de corps XHTML 2


Ma page Web

Section 1 de ma page Web .



< h>Section 1.1 de ma page Web

Voici une sous-section de ma page Web.




Section 2 de ma page Web

Voici la section 2 de ma page Web.





Dans cette version du code, le paragraphe « Voici une sous-section » est l'arrière-petit-enfant du premier élément de section, et le paragraphe « Mon L'élément h de la page Web au sein de cet élément de section affiche son titre principal, comme il se doit !
L'un des avantages de cette structure riche (et l'une des principales raisons pour lesquelles XHTML 2 est mieux adapté que XHTML 1 pour servir de format central aux systèmes de publication à source unique) est qu'elle est plus facile à diffuser. Si vous devez traiter une grande quantité d'entrées et que vous ne pouvez pas les charger en mémoire avant le traitement (par exemple, si vous préparez le contenu d'un CD-ROM), il sera plus facile pour le processeur de déterminer où se termine chaque élément de section dans le Document XHTML2. Par exemple, disons que nous souhaitons appeler tous les titres contenant le mot « Beagle ». Trouver ces titres est assez simple, mais décider où se termine une section en XHTML 1 n'est pas si difficile. Que le traitement de ce type de XHTML utilise une interface basée sur un flux, Xquery ou XSLT, définir clairement où se termine une section peut rendre l'extraction beaucoup plus simple.
Maintenant, imaginez que vous extrayez ces sections parce que vous allez les ajouter à une nouvelle version sur Beagle, et chaque section que vous extrayez a un élément h3 comme en-tête. Les en-têtes XHTML 1 numérotés, tels que h3, sont toujours légaux dans XHTML 2, mais que se passe-t-il si une nouvelle version utilise ces éléments comme section principale, ou sous-section, d'une section spéciale ? Vous devez revenir en arrière et remplacer l'élément h3 par un élément h2 ou un élément h4, ou tout autre élément reconnaissant son rôle dans le nouveau contexte. S'il s'agit d'éléments XHTML 2 h dans le document d'origine, leur niveau de rôle est indiqué par le numéro de chaque élément ancêtre de section (par exemple, l'élément section 1.1 h du Listing 2 a trois éléments ancêtres d'en-tête de section, et l'élément « Ma page Web " élément h), vous pouvez les insérer dans un nouveau document non modifié, avec leurs rôles indiqués par la disposition imbriquée des éléments de section du nouveau document. CSS, XSLT et d'autres outils et normes de traitement XML fournissent tous un moyen de gérer les éléments portant le même nom en fonction des niveaux d'imbrication, afin que nous ne manquions pas le numéro qui fait partie de l'en-tête XHTML 1. Lorsque l’on considère le nombre de documents (X)HTML qui contiennent des éléments h2 et h3 mais pas d’élément h1, ou des éléments h1 et h3 mais pas d’élément h2, il devient clair que trop de personnes ne les utilisent pas pour indiquer la hiérarchie appropriée.
Dans XHTML 2, il peut y avoir plus de structures dans l'élément p. J'aimerais introduire un exemple de code dans une instruction, comme celui-ci :
print "Hello? World?";
Si je veux continuer l'instruction après l'exemple de code, XHTML 1 m'oblige à diviser le L'instruction en deux parties est placée dans deux éléments p différents, mais sémantiquement, ils sont dans la même instruction. XHTML 2 nous permet de placer des exemples de code, des listes non ordonnées et numérotées, ainsi que de nombreux autres éléments de bloc à l'intérieur d'un élément p, permettant ainsi à notre balisage de refléter plus précisément la structure du document.
Pour faire un petit pas du balisage de présentation au balisage structurel, renommez l'élément hr en séparateur. Le groupe de travail HTML a constaté que son nom d'origine, qui signifiait règle horizontale, se situait souvent dans la zone grise entre le balisage structurel et le balisage de présentation. Ils ont reçu des demandes de règles verticales de la part d'utilisateurs de langues asiatiques et ont constaté que de nombreux séparateurs horizontaux n'étaient pas vraiment des règles (Steven Pemberton, président du groupe de travail HTML, a fait une déclaration dans laquelle il a souligné que dans Ulysses Multiple de James Joyce différentes variantes ; voir Ressources pour un lien vers cette déclaration). Cela leur a permis de renommer l'élément hr pour renvoyer plus précisément le nom pour lequel il était utilisé et a permis plus de flexibilité dans les déclarations.
                                                                                      #p# Une meilleure indépendance des appareils, un accès plus facile et une meilleure sémantique
Ces trois objectifs se chevauchent en fait. Les traducteurs de synthèse vocale qui lisent le contenu d'une page Web restent utiles pour les pages Web qui n'ont pas besoin d'être diffusées sur une plate-forme et qui sont facilement comprises par les utilisateurs malvoyants. Il est mentionné dans le document de travail XHTML 2 :
Divers nouveaux appareils apparaissent sur le réseau, tels que des téléphones, des PDA, des blocs-notes, des téléviseurs, etc., ce qui signifie qu'il doit y avoir une conception qui nous permette de créer une seule fois. le restituer différemment sur différents appareils, plutôt que de créer une nouvelle version du document pour chaque type d'appareil.
L'éditeur n'a pas besoin de considérer sa valeur dans le futur. L'indépendance du périphérique rendait bon nombre d'entre eux applicables à SGML avant l'invention de XML, car il permettait à ces périphériques de publier le même contenu sous forme imprimée, sur une page Web et sur un CD-ROM, à condition qu'il y ait suffisamment de contenu stocké dans le fichier édité. version du contenu, informations structurelles et sémantiques, permettant à des routines automatiques de le convertir dans le format respectif. Je me souviens des ricanements qui remplissaient le bureau de mon ancien patron il y a onze ans lorsque nos concurrents allaient stocker des versions éditées de contenu au format HTML en utilisant XHTML 2 n'était plus une idée si folle.
Si la sémantique existante des éléments XHTML 2 ne vous suffit pas, le nouvel attribut role (qui peut être ajouté à n'importe quel élément) peut vous en dire plus sur le but de l'élément. La spécification XHTML 2 spécifie neuf valeurs possibles pour cet attribut : bannière, note, contentinfo, recherche, définition, secondaire, principal, voir aussi et navigation. Les valeurs de rôle, telles que bannière et navigation, sont évidemment plus orientées vers la présentation, mais pour des valeurs telles que définition et note, la sémantique est plus pratique dans un environnement de publication où le contenu est préparé pour le multimédia. Vous pouvez même créer vos propres valeurs de rôle, à condition qu'elles se trouvent dans leur propre espace de noms. Plus facile d'ajouter des métadonnées
La norme W3C RDF nous permet d'attribuer des métadonnées à tout contenu pouvant être identifié à l'aide d'une URL. La syntaxe standard RDF/XML pour cette opération est apparue en 1999, et sa complexité et sa difficulté ont fait fuir de nombreuses personnes. En utilisant les attributs HTML existants et en en ajoutant de nouveaux, XHTML 2 nous permet d'ajouter des métadonnées sur le document et ses composants (qui peuvent être identifiés à l'aide d'un attribut about) en utilisant une nouvelle syntaxe RDFa plus simple. Dans certains exemples du Listing 3, l'élément span stocke les informations supplémentaires nécessaires pour intégrer un triplet sujet-verbe-objet (il pourrait être plus facile en tant que triplet ID d'objet-nom d'attribut-valeur d'attribut) de représenter les métadonnées RDF.
Listing 3. Encodage des métadonnées à l'aide d'éléments span


< ; span property="fb:workflowStage" content="3a"/>

Carrion, mon fils rebelle

Le rêve du Web sémantique est principalement de permettre aux données des pages Web d'être publiées sous forme de contenu que les gens peuvent lire et de données que les programmeurs peuvent lire, à partir de la base de données, comme l'exemple dc:title démontré dans le listing 3 . L'exemple fb:workflowStage démontre un autre avantage de RDFa : nous pouvons en fait ajouter des métadonnées arbitraires à un document XHTML 2 spécifiquement pour votre propre boutique, ce qui rend le document plus facile à suivre et à réutiliser. Commencez à utiliser XHTML 2 maintenant
Nous devons encore attendre un peu avant de pouvoir utiliser les nouvelles fonctionnalités de l'interface utilisateur de XHTML 2m, telles que les événements XML, mais nous pouvons maintenant expérimenter les nouvelles fonctionnalités structurelles de XHTML 2. En tant que spécification inachevée, XHTML 2 est encore un travail en cours, mais les progrès sont lents. Le schéma et la feuille de style CSS sont actuellement disponibles et nous pouvons les essayer et réfléchir aux avantages qu'ils pourraient apporter à nos opérations. En fait, j'ai écrit cet article en l'utilisant, Piloter l'édition XML contextuelle en mode RELAX NG de XHTML 2 à l'aide d'Emacs en mode nXML (voir Rubriques connexes). Avant de soumettre cet article, j'ai utilisé une simple feuille de style XSLT pour la convertir dans un format conforme à la DTD developerWorks. Au moment où XHTML 2 deviendra une recommandation standard, je prévois de le faire fonctionner à pleine vitesse.                                                                                                                                        

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn