En HTML, il n'y a pas de caractère pour un onglet, mais je ne comprends pas pourquoi je peux copier et coller un ici:. (Vous ne pouvez pas voir toute la largeur de celui-ci, mais si vous cliquez pour modifier ma question, vous verrez le caractère.) Si je peux copier et coller un caractère de tabulation, il devrait y avoir un équivalent Unicode qui peut être codé en html . Je sais que cela n'existe pas, mais c'est un mystère que je n'ai jamais pu saisir.
Ma question est donc la suivante: pourquoi n'y a-t-il pas de caractère Unicode pour un onglet même si je peux le copier et le coller?
Réponses:
Bien sûr, il existe une entité pour les onglets:
(L'onglet est le caractère ASCII 9 ou Unicode U + 0009.)
Cependant, tout comme les tabulations littérales (celles que vous saisissez dans votre éditeur de texte), tous les caractères de tabulation sont traités comme des espaces par les analyseurs HTML et réduits en un seul espace, sauf ceux d'un
<pre>
bloc, où les tabulations littérales seront rendues sous forme de 8 espaces dans un police monospace.la source
Tab
. (Je pense que vous pourriez confondre les entités HTML avec le jeu de caractères Unicode.)Essayer
 
selon les docs:
Lien vers la documentation: https://www.w3.org/MarkUp/html3/specialchars.html
la source
placez-le entre les
<pre></pre>
balises puis utilisez ces caractères	
cela ne fonctionnerait pas sans les
<pre></pre>
balisesla source
	
seul, mais cela n'a pas fonctionné. Merci d'avoir mentionné<pre>
!white-space: pre-wrap;
ouwhite-space: pre;
Poster une autre alternative pour être plus complet. Quand j'ai essayé les réponses basées sur «pré», ils ont également ajouté des sauts de ligne verticaux supplémentaires.
Chaque onglet peut être converti en une séquence d'espaces insécables qui ne nécessitent aucun habillage.
Ceci n'est pas recommandé pour une utilisation répétée / étendue dans une page. Une approche de marge / padding div semble beaucoup plus propre.
la source
J'utilise
<span style="display: inline-block; width: 2ch;">	</span>
pour un onglet large de deux caractères.la source
La tabulation est [HT], ou le caractère numéro 9, dans la bibliothèque Unicode.
la source
Comme mentionné, pour des raisons d'efficacité, les espaces séquentiels sont regroupés en un seul espace que le navigateur affiche réellement. Rappelez-vous ce que signifie le ML en HTML. C'est un langage de balisage, conçu pour contrôler la façon dont le texte est affiché .. pas les espaces: p
Pourtant, vous pouvez prétendre que le navigateur respecte les onglets, car tout ce que fait la tabulation est d'ajouter 4 espaces au début, et c'est facile avec CSS. soit en ligne comme ...
Ou en classe ordinaire dans une feuille de style
Ensuite, le HTML pourrait ressembler à
la source