Les titres HTML sont devenus un sujet brûlant récemment parce que l'algorithme de contour du document a été supprimé dans la norme en temps réel de WhatWG.
Premièrement, vous devez savoir que l'algorithme n'a jamais existé. Bien sûr, c'est dans la spécification. Bien sûr, la spécification prévient également de ne pas l'utiliser. Mais comme Bruce Lawson nous le rappelle, aucun navigateur ne l'a implémenté. Nous avons toujours vécu dans une structure de document plate.
C'est une très vieille nouvelle. Adrian Roselli écrit sur les erreurs de contours de documents depuis 2013. Mais son article de 2016 intitulé «Il n'y a pas d'algorithme de contour de document» en élabore dans son intégralité et est régulièrement mis à jour pour ajouter des informations générales supplémentaires sur le dialogue et les difficultés connexes. C'est en effet la meilleure chronologie pour cet événement. Amelia Bellamy-Royds a également exploré les causes profondes de ce problème en profondeur sur CSS-Tricks.
Ce que j'ai immédiatement pensé, c'était tout le travail effectué pour soutenir l'algorithme de contour des documents pour les partitions. C'est certainement la bonne chose à faire pour le retirer de la spécification, mais cela ne réduit pas l'énorme effort qu'il fait, même s'il est maintenant enterré dans une histoire de version. Je pense également à tous ceux qui écrivent gentiment des articles sur l'erreur de l'algorithme (y compris sur ce site!) Et ils s'attendent à ce qu'il arrive bientôt. En raison du manque d'action apparemment, nous avons accumulé près de sept ans de dette mentale et technique.
En mettant de côté la nouvelle que "l'algorithme n'existe pas", Bruce regrette qu'il n'y en a pas d'universel.<h></h>
Des éléments ou des éléments similaires peuvent être partitionnés pour générer le niveau de titre correct. Je suis d'accord. Faire un élément <title></title>
存在是具有约束性的,特别是由于页面很少围绕单个包含单个顶级标题的文章进行结构化。我经常发现自己每次制作某种卡片组件时都会感到痛苦,在这些组件中使用###
在技术上可能是正确的,但感觉顺序不对。这甚至在我们讨论样式考虑之前,其中较低的标题级别现在需要看起来像不同的较高标题级别。
谈到标题级别管理,Steve Faulkner(他编写了从规范中删除该算法的PR)对使用<hgroup></hgroup>
元素处理涉及子标题、副标题、替代标题和标语的标题模式进行了非常实用的概述。我相信您在实际中见过这样的标记:
<code><h1>令人失望的平均水平</h1> <h2>Geoff Graham的自传</h2> <h3>作者:Geoff Graham</h3></code>
这与由标题级别驱动的扁平文档大纲不符。每个标题都代表一个构成信息层次结构的部分:
<code>令人失望的平均水平└── Geoff Graham的自传└── 作者:Geoff Graham</code>
我们想要的是一个组标题。这时<hgroup></hgroup>
元素就派上用场了:
当嵌套在
<hgroup></hgroup>
元素中时,该元素的内容表示子标题、替代标题或标语,这些内容不包含在文档大纲中。
因此,我们得到以下结构:
<code><hgroup><h1>令人失望的平均水平</h1> <p>Geoff Graham的自传</p> <p>作者:Geoff Graham</p> </hgroup></code>
<hgroup></hgroup>
目前的角色是role=generic
,但Steve 指出,一个提案可以将其映射到role=group
。如果发生这种情况,辅助技术将允许辅助技术将更多语义含义赋予这些段落,作为它们所扮演的副标题和标语部分。听起来很简单,但Steve 指出了阻碍的挑战。他还演示了如何使用ARIA属性在今天实现这种模式。
在我们总结的同时,Matthias Ott发布了一些关于使用标题创建结构化大纲的技巧。查看结尾处关于检查标题大纲的优秀工具列表。
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!