Pouvons-nous ajouter une balise <span> à l'intérieur de H1?

96

Est-ce une bonne méthode pour utiliser la balise span dans la balise H1?

<h1>
    <span class="boardit">Portfolio</span>
</h1>

Je sais que nous pouvons l'écrire de cette manière ... et je suis également la syntaxe ci-dessous dans mon propre site Web.

<h1 class="boardit">
  <span>Portfolio</span>
</h1>

Cependant, je voulais juste connaître la forme plus propre du HTML.

Codeobsession
la source
3
@fireeyed Je pense qu'il veut suivre ce qui est juste, la sémantique du tag je veux dire.
dpp
2
N'oubliez pas de marquer la réponse comme acceptée si vous avez les informations que vous voulez
Pranay Rana
Mettre des travées dans les en-têtes pose des problèmes avec le retour à la ligne. Quelqu'un d'autre a-t-il observé cela?
Rafael
1
Avez-vous déjà essayé d'encapsuler un texte dans un intervalle? Et que diriez-vous d'habiller du texte dans n'importe quel élément de bloc? @Rafael
Daniel Springer

Réponses:

180

Oui, vous pouvez.

HTML4 a ceci à dire :

<!ENTITY % heading "H1|H2|H3|H4|H5|H6">
<!--
  There are six levels of headings from H1 (the most important)
  to H6 (the least important).
-->

<!ELEMENT (%heading;)  - - (%inline;)* -- heading -->

Et %inline;c'est:

<!ENTITY % inline "#PCDATA | %fontstyle; | %phrase; | %special; | %formctrl;">

Et %special;comprend <span>.

Le HTML actuel a ceci à dire :

Contenu du contenu
Phrasage du contenu

Et le contenu de phrasé comprend <span>.

mu est trop court
la source
1
Le lien de "HTML5 a ceci à dire" est rompu :(
mehulkar
@mehulkar Merci de m'avoir fait savoir, devrait être corrigé maintenant.
mu est trop court
30

Oui, vous pouvez. Il peut être utilisé pour formater une partie d'un bloc h1:

<h1>Page <span class="highlight">Title</span></h1>

Si le style s'applique à l'ensemble du bloc h1, je fais ceci:

<h1 class="highlight">Page Title</h1>
mnsr
la source
1
@dpp pourquoi éviter d'utiliser des noms de présentation?
nu everest
gentil, merci
Joimee Cajandab
3

Oui, il est généralement bien d'utiliser l' spanintérieur d'un fichier h1. spanest un élément en ligne, il est donc généralement acceptable de l'utiliser à l'intérieur de n'importe quoi (qui autorise les éléments à l'intérieur!)

Et il n'y a pas vraiment de moyen plus propre de le faire parfois, par exemple si vous ne voulez coiffer qu'une partie du h1.

Par contre ... ne le faites pas si ce n'est pas nécessaire, car c'est un peu moche :)

Dave
la source
2

Oui c'est bien, mais pourquoi pas

   <h1 class="boardit">
      Portfolio
   </h1>

Si c'est tout ce que vous faites?

Simon Sarris
la source
1
Ce n'est pas tout. La demande est de ne styliser qu'une partie du titre.
Daniel Springer
1

Oui, vous pouvez. La travée s'affiche en ligne, elle ne devrait donc pas affecter le style du H1.

geetfun
la source
0

Oui, nous pouvons utiliser une balise span avec des balises d'en-tête et il n'y a rien de mal à cela. En effet, cela est largement utilisé pour styliser les balises d'en-tête, spécialement pour colorer un mot ou une lettre en particulier.

Touhid Rahman
la source
0

Oui, nous pouvons utiliser une balise span avec des balises d'en-tête et il n'y a rien de mal à cela. En effet, cela est largement utilisé pour styliser les balises d'en-tête, spécialement pour colorer un mot ou une lettre en particulier.

Touhid Rahman
la source
-2
<h1 style="display:inline;">Bold text goes here</h1> 
<span style="display:inline;">normal text goes here</span>

Pensez aux lignes ci-dessus - a fonctionné pour moi - utilisez l'affichage: accessoire en ligne

takrishna
la source
Qu'est-ce que cela a à voir avec la question?
Quentin
3
@Quentin Je crois qu'il voulait dire suggérer de forcer le titre à être un élément en ligne. Une bonne idée, si c'est faisable.
Daniel Springer
2
Cette réponse ne devrait pas être rejetée car elle résout le problème même si ce n'est pas ce qui est directement demandé. +1 pour la solution.
Achala Dissanayake