Si je comprends bien la spécification XML, la signification de l'ordre des éléments enfants n'est pas garantie. Les analyseurs XML ont tendance à garder des éléments d'enfant dans le même ordre que dans le document XML, mais ils ne sont pas obligés de le faire. P>
Si c'est le cas, alors les navigateurs sont libres de rendre le Je me rends compte que tous les grands navigateurs respecteront l'ordre de mon code> ou un
code> Un ordre différent de celui qu'ils se produisent dans XHTML? Ou est-il spécifié dans la spécification XHTML quelque part que la commande doit être préservée? P>
3 Réponses :
Même si elles sont sous "aucune obligation" de le faire, ne vous inquiétez pas. Sauf si des circonstances exceptionnelles (dont je ne sais pas même un), l'analyseur HTML5 / SGML / XML pour HTML / XHTML mettra des éléments dans le DOM car ils apparaissent dans le document. P>
non liée: Si vous utilisez XHTML, n'oubliez pas de l'envoyer en tant qu'application / XHTML + XML (sauf c.-à-SE; Vérifiez l'en-tête d'acceptation) - une chose aussi simple que la plupart des développeurs ne savent pas. P>
Je ne suis pas inquiet que ma liste puisse montrer de l'ordre dans le navigateur de quelqu'un. Je suis intéressé d'un point de vue technique s'il serait légal d'inverser la commande lors de la rendu, par exemple.
Dans le contexte des navigateurs et de la rendu HTML, ils ne devraient pas pour des raisons évidentes (même si vous dites que les règles de analyse DOM l'autorisent en général). Je ne sais pas le statut de cette question dans ce contexte dans les spécifications.
Il y a certainement des circonstances exceptionnelles lorsque les processus Text / HTML analyse HTML non valide. Le plus connu est dans les tables. par exemple.
| ... td> tr> TABLE> entraînera éjecté le DIV de la table dans le DOM.
4
votes Selon le XHTML 1.1 Schéma pour les entités de la liste Le contenu de
1 commentaires
Ah, alors que le commandement de l'élément XML est indéfini, il existe une contrainte introduite dans le schéma XHTML qui oblige à être significatif?
5
votes Je pense que vous avez totalement mal interprété la spécification XML là-bas! L'ordre du contenu d'un élément ne doit pas être modifié dans le modèle construit de celui-ci. (NB: l'ordre de présentation pourrait être une question différente, s'il y avait des instructions em> spécifiques em> pour réorganiser visuellement. Mais ce serait bizarre et je ne sais pas si la CSS actuelle peut le faire.) Le seul une partie de XML qui est véritablement non ordonnée est des attributs; Ils sont une vraie carte sans ordonnée. P> FWIW, le contenu d'un
2 commentaires
Pour autant que possible de le dire, les Spec Spec XML 1.0 L'ordre d'attribut n'est pas significatif, mais cela ne spécifie rien à propos de l'ordre des éléments - ibm.com/developerworks/xml/library/x-eleord.html#n1009e
La spécification DOM est claire que les nœuds enfants de tout nœud (qui excluent les attributs) sont commandés; C'est-à-dire que le |
Êtes-vous sûr de ne pas dire
code> s?
code> s représente des listes ordonnées, alors je serais surpris si elles étaient rendues hors de l'ordre. Cependant,
code> s représente des listes non ordonnées, ledit comportement serait donc plus raisonnable.
Ma question était spécifiquement sur
s, mais je serais également intéressé par la même question pour
s.
Pourquoi pensez-vous que la séquence n'est pas significative dans XML - c'est certainement!
La spécification XML 1.0 indique spécifiquement que les attributs sont non ordonnés, mais cela ne dit rien sur les éléments. Cela impliquerait que c'est jusqu'à l'analyseur.
Non, ordre des éléments importateurs, de manière critique.