6
votes

Comment est-ce que je comprends visuellement (ou sémantiquement) d'inclure un
    à l'intérieur d'un

    ?

Selon le Spécifications HTML et réponses à Cette question , un ol < / code> ne peut pas être contenu dans un p . Mais pourquoi pas?

J'écris un papier dans style APA dans lequel je ' J'aime utiliser une liste ordonnée dans le formulaire de paragraphe. (Voir OWL et Écrire par écrit pour la mise en œuvre du format APA commandé et sans ordonnée.)

Parfois, il est logique de disposer d'une liste affichée sur le formulaire de paragraphe et pourquoi la liste ne peut-elle pas être sémantiquement partie du paragraphe? Par exemple, dans mon papier, j'ai:

... Un jeu de problèmes impliquant (a) convertir entre les nombres entre 0 et 1 sous la notation scientifique et la forme décimale standard, (b) Comptage des valeurs de placement de nombres supérieures à 0, (c) comparer des nombres positifs et négatifs avec une ampleur inférieure à 1, et (d) ajouter et soustraire des nombres dans la notation scientifique. Voir la ci-jointe ...

Si vous ne croyez pas que cette liste fait sémantiquement une partie du paragraphe, veuillez indiquer pourquoi vous le pensez, car je suis intéressé par votre opinion.

J'aimerais vraiment savoir comment je peux écrire cette liste à l'aide des balises HTML

    et
  1. , mais faites-les afficher < / em> comme s'il faisait partie du paragraphe. La raison en est que sémantiquement, ces éléments font partie d'une liste ordonnée et pour les inclure dans le bon élément, c'est bon pour le référencement, mais je suis curieux de savoir comment conserver la liste écrite dans le formulaire de paragraphe.

2 commentaires

Je viens de rencontrer cette édition du HTML Edition pour les auteurs Web qui aborde ce sujet spécifique; Yay! On doit s'interroger, cependant, quelle est la différence entre un "concept logique" et un "concept structurel"?


Je pense que vous avez raison, cela devrait être autorisé, ou du moins avoir une étiquette pour faire des listes dans un paragraphe. Par exemple, si vous voulez dire: je suis allé faire du shopping aujourd'hui, j'ai acheté l'article1, item2, item3 et vous souhaitez une liste comme la mise en forme, cela n'a aucun sens d'avoir 2 paragraphes pour une phrase et que vous souhaitez toujours le formatage de la liste car c'est Comment tu sens ça. Les spécifications HTML manquent quelque chose ...


4 Réponses :


9
votes

Pour en ce moment, cassez la liste dans un bloc si la sémantique de la liste est aussi importante pour vous, ou laissez-la comme une chaîne de texte comme votre exemple et continuez votre vie.

Si vous ne croyez pas que cette liste est sémantiquement une partie du paragraphe, veuillez indiquer pourquoi vous le pensez,

C'est. Mais ce n'est pas le problème.

[...] une OL ne peut pas être contenu dans un p. Mais pourquoi pas?

Parce que la spécification le dit. C'est à peu près la fin de la discussion.
Il existe de nombreuses structures sémantiques qui n'existent tout simplement pas en HTML en raison de la surveillance, ce qui en fait partie. Il y a aussi, par exemple, aucun moyen de marquer des notes de bas de page, ce qui est étrange envisage de HTML a été initialement créé pour partager des choses comme la recherche académique. (Il y a des Cheats documentés ; pas la même chose.) Compte tenu de vos liens, je suppose que vous avez lu les raisons techniques concernant les éléments de blocs et ce que je saute cela ici.

J'aimerais vraiment savoir comment je peux écrire cette liste à l'aide des balises HTML

    et
  1. Eh bien, vous pourriez commencer par Création d'une DTD personnalisée (même si vous ne devrait vraiment pas dans la grande majorité des cas) qui permettent aux éléments d'être imbriqués et ensuite Déterminez comment effectuer le flux de liste dans le paragraphe (par exemple, affichage: Inline, etc.) de manière à ne pas faire de navigateurs vomir. Ou peut-être spécifier un élément entièrement nouveau pour les listes en ligne. Ou vous pouvez simplement passer à des choses plus importantes.

    Ces éléments font partie d'une liste ordonnée et les inclure dans l'élément correct est bon pour le référencement

    Parfois, lorsque les gens évoquent le référencement comme une raison de faire des choses, la réponse devrait être «vous essayez trop et avez probablement de meilleures choses à faire». C'est l'un d'eux. Toute chose célibataire comme celle-ci faite "pour le référencement" rend rarement n'importe où près de différence que votre infraction de ne pas pouvoir faire cela le rend dans votre esprit. La vraie réponse à votre question implique modifier la spécification HTML . Si c'est le genre de travail que vous aimez faire, puis rejoignez le Liste de diffusion Whawg pertinente , faire Votre proposition, défendre pour probablement des mois à la fin, et si vous avez de la chance, cela deviendra officiel.


2 commentaires

Merci pour le commentaire. Certainement utile en ce sens qu'il fournit plus d'informations. Cela n'a pas résolu le problème cependant, mais je ne m'attendrais pas à ce que je pense que j'ai un peu pensé, il n'y avait pas une solution. Je ne sais pas si c'était censé être sarcastique / condescendant, mais cela sonnait (ou, je suppose, "regardé") de cette façon.


Non, je suis juste dessiné de cette façon. Vraiment, la réponse à votre question aurait pu être un appartement "ne peut pas le faire", mais donné le reste de vos commentaires, je pensais que vous pourriez vouloir savoir un peu plus de la raison, ce qui pourrait être fait pour changer cela ( au moins théoriquement), et à quel point l'ennuyeux et probablement ne valent pas la peine que ce soit. Je me suis retrouvé dans la situation plusieurs fois.



4
votes

la raison pour laquelle ol et ul ne peut actuellement pas être contenu à l'intérieur d'un p est que des éléments de paragraphe ne peuvent contenir que des éléments en ligne, et les listes sont des éléments de niveau de bloc.

Les listes ne doivent pas être automatiquement considérées comme des éléments de niveau de bloc, mais ce n'est pas le cas pour le moment.

Vos options doivent donc simplement diviser cet extrait en 2 paragraphes, avec une liste entre eux, par exemple

... un ensemble de problèmes impliquant:

  1. Conversion entre les nombres entre 0 et 1 sur la notation scientifique et la forme décimale standard,
  2. compter des valeurs de nombres supérieures à 0,
  3. comparer des nombres positifs et négatifs avec une magnitude inférieure à 1, et
  4. Ajout et soustraire des nombres en notation scientifique.

    Voir le ...

    ou vient de créer un La liste en ligne , qui peut ne pas valider, mais sémantiquement correcte et Rendez-vous simplement bien dans la plupart des navigateurs.


2 commentaires

Merci de commenter. Je savais déjà tout ce que vous avez dit avant votre dernier paragraphe, comme indiqué dans les liens que j'ai fournis dans ma question. J'étais plus intéressé par le pourquoi aspect de la pourquoi un OL ne peut pas être dans un p . Je ne suis pas un pour obéir à l'autorité sans question. J'aime vraiment votre dernière idée: y compris un ol entouré de deux p s tous contenus dans un élément de bloc. Cependant, je suggérerais d'utiliser la section au lieu de div , puisque la section contient du matériel associé. Pas vraiment sûr des spécifications HTML5 impliquent div pour être utilisée pour plus, à part un bloc divers.


Gratter cette dernière partie sur l'utilisation de la section . Vous avez raison d'utiliser div car il est utilisé uniquement à des fins stylistiques. L'utilisation d'une section impliquerait d'ajouter un autre nœud à la structure de document, qui n'est pas sémantiquement correcte.



3
votes

Je pense Excellente réponse de Su cloué les choses importantes. Je ne sais pas si CSS est une option pour votre projet particulier, mais aussi loin visuellement , y compris une liste à l'intérieur d'un paragraphe, vous pouvez le faire avec CSS et certains Tags (et il validera).

Demo: http://jsfiddle.net/wg9zd/ xxx xxx


3 commentaires

C'est horrible (je veux dire super)! Je n'avais même pas dérangé de penser à la façon de le forcer. Bien que ce soit seulement visuel et ne porte pas la valeur sémantique de étant une liste, qui est la pensée, est probablement la plus grande objection pour l'administrateur.


@Su ': quel commentaire boiteux (je veux dire merci!) :) Oui, c'est "moins sémantique" qu'une liste mais conserve toujours la sémantique de faire partie d'un paragraphe (quoi que ce soit de la valeur, probablement peu à rien). Je n'utiliserais jamais cela, mais comme un puzzle visuel, il est définitivement soluble.


@Madmartigan: Vous l'avez à l'envers. Je veux une liste sémantique, marquée avec les étiquettes correctes et tout, affichée comme si une partie d'un paragraphe. Pas l'inverse. J'apprécie votre contribution.



1
votes

Je pense que j'ai compris la meilleure façon de le faire. Basé sur la réponse @ Lèse Majestà ©, j'ai utilisé une liste intégrée: xxx

avec les règles de style: xxx

ceci apparaît comme:

... un jeu de problèmes impliquant: (a) convertir entre les nombres entre 0 et 1 sous la notation scientifique et une forme décimale standard; (b) compter les valeurs de placement des nombres supérieurs à 0; (c) comparer des nombres positifs et négatifs avec une ampleur inférieure à 1; et (d) ajouter et soustraire des nombres dans la notation scientifique. Voir le ...


0 commentaires