是否允许浏览器以任何顺序呈现<li>?

ctf*_*ord 6 xml xhtml

据我了解XML规范,不保证子元素顺序的重要性.XML解析器倾向于保持子元素的顺序与XML文档中的顺序相同,但它们没有义务这样做.

如果是这样,那么浏览器是否可以自由地呈现<li>s <ol>或者<ul>不同于XHTML中的顺序?或者是否在XHTML规范中指定必须保留订单?

我意识到所有主流浏览器都会尊重我<li>的顺序.我只是对他们在技术上是否有义务的学术问题感兴趣.

Don*_*ows 5

我认为你完全误读了那里的XML规范!不得在由其构造的模型中更改元素内容的顺序.(注意:如果有特定的指令可以在视觉上重新排序,那么表示的顺序可能是另一回事.但这很奇怪,我不知道当前的CSS是否可以做到这一点.)XML的唯一部分是真正无序的是属性; 他们是一张真正无序的地图.

FWIW,a的内容<ul>被定义为元素的序列(即,有序!)<li>,因此浏览器在构建文档树时不能重新排序.也就是说,重新排序将是完全错误的,没有人(甚至IE开发团队)都不够愚蠢.


JUS*_*ION 4

根据列表实体的 XHTML 1.1 架构, <ul> 和 <ol> 的内容是 <li> 项的 <xs:sequence>。检查XML 模式规范, <xs:sequence> 的操作似乎是“...元素信息项按顺序与粒子匹配...”。对我来说,这往往意味着此类序列的顺序是有意义的并且应该保留。