Vous voulez souligner du texte dans vos README ou docs et ça ne marche pas ? Markdown standard n’offre pas de syntaxe native pour le soulignement, ce qui force à chercher des contournements selon la plateforme.
Je vous explique pourquoi cette limite existe, quelles méthodes fonctionnent selon l’environnement (HTML inline, CSS, extensions) et quels risques éviter. Vous repartirez avec des snippets prêts à coller et des règles de compatibilité pour GitHub, Pandoc et éditeurs. Commençons par la question clé : le soulignement existe‑t‑il en Markdown ?
Résumé
- Le Markdown standard (CommonMark) n’inclut pas de syntaxe pour le soulignement ; il faut des contournements.
- HTML inline (, , ) marche si la plateforme autorise le HTML, mais peut être filtré ou confondu avec des liens.
- Préférez les classes CSS (span + text-decoration/border-bottom) pour un contrôle précis sur sites statiques si vous gérez les feuilles de style.
- Les extensions/propriétés (ex. ++texte++) et plugins fonctionnent localement mais ne sont pas portables lors de migrations.
- Risques et bonnes pratiques : testez le rendu sur la cible, documentez les dépendances, évitez de transmettre une information uniquement par le style et vérifiez l’accessibilité.
Le soulignement existe-t-il en Markdown ? (limites et support natif)
Non, le langage Markdown standard ne propose pas de syntaxe native pour le soulignement. La spécification CommonMark ne définit aucun marqueur pour underline, car la philosophie de Markdown privilégie une syntaxe lisible en texte brut et évite les formats qui se confondent avec les liens ou l’emphase. underline in markdown reste donc un objectif obtenu par contournement plutôt que par syntaxe officielle.
Cela signifie que, dans la pratique, vous dépendez du renderer ou de la plateforme pour afficher un soulignement. Testez toujours le rendu sur la cible (README, wiki, système de gestion de documentation) avant de publier.
Méthodes pour obtenir l’underline in markdown : HTML, CSS, extensions et astuces
Voici les approches utilisables selon l’environnement : HTML inline quand il est autorisé, styles CSS si vous contrôlez la feuille, extensions locales de parseur et divers hacks typographiques. Choisissez la méthode qui maximise la portabilité et l’accessibilité.
Utiliser du HTML inline (<u>, <span>) pour créer un soulignement
Si le renderer accepte du HTML inline, insérez directement les balises HTML en échappant si nécessaire. Exemple visible : <u>texte souligné</u> ou <ins>texte</ins>. L’avantage : simplicité et compatibilité large sur les plateformes qui autorisent l’HTML. Le inconvénient : certaines plateformes filtrent ou nettoient l’HTML pour des raisons de sécurité, et le soulignement visuel peut être confondu avec un lien.
Appliquer du CSS ou des classes (text-decoration, border-bottom) pour contrôler le style
Quand vous générez le site (Jekyll, Hugo, générateur statique) ou contrôlez la feuille de style, préférez le CSS. Par exemple : <span class=”underline”>texte</span> avec .underline { text-decoration: underline; } ou border-bottom pour personnaliser l’épaisseur. Cette méthode fournit un contrôle précis et maintient la source Markdown propre, mais nécessite accès au template ou au fichier CSS.
Extensions et syntaxes non standard (Markdown Extra, CommonMark extensions, plugins) pour ajouter l’underline
Certains parseurs et plugins (markdown-it + extensions, Obsidian/Joplin plugins, Pandoc avec filtres) proposent des syntaxes propriétaires comme ++texte++. Ces solutions fonctionnent localement mais ne sont pas standard et cassent à la migration. Consultez la documentation du parseur ou l’outil de conversion ; Pandoc permet d’ajouter des classes/attributs lors de la conversion vers HTML/PDF, ce qui donne un résultat contrôlable via CSS (voir l’exemple de Pandoc : pandoc demo).
Hacks typographiques (underscore, caractères Unicode) : exemples, compatibilité et quand les éviter
Les astuces Unicode (caractères combinants) ou images peuvent produire un rendu souligné mais sont fragiles : mauvaise prise en charge des polices, impact SEO et accessibilité faible. N’utilisez ces hacks que si vous ne pouvez pas insérer d’HTML ni modifier le CSS. Préférez toujours une solution sémantique ou CSS quand elle est possible.
Risques, contraintes et bonnes pratiques pour l’underline in markdown
Le principal risque est la confusion visuelle : le soulignement évoque un lien sur le web. Par conséquent, évitez d’utiliser l’underline pour indiquer une importance sémantique à moins d’ajouter un contexte clair. Pour l’accessibilité, n’appuyez pas uniquement sur la couleur ou le soulignement pour transmettre une information ; fournissez du texte explicite ou des rôles ARIA si nécessaire.
Sur la sécurité et la portabilité : n’intégrez du HTML inline que si vous contrôlez le rendu final. Si votre .md circule entre plateformes, documentez les extensions utilisées et fournissez un fallback lisible. Testez toujours l’export (HTML, PDF) pour vérifier que le soulignement survive aux conversions.
Tester, déployer et documenter l’underline in markdown : outils et workflow
Organisez un workflow clair : tester localement, valider sur l’environnement cible, puis documenter la méthode pour les contributeurs. Fournissez snippets prêts à copier et une checklist de contrôles avant publication.
Snippets prêts à copier pour README, documentation et wikis
- <ins>Texte souligné</ins> — fonctionne sur de nombreuses plateformes qui autorisent HTML.
- <u>Texte souligné</u> — simple mais parfois filtré selon la plateforme.
- <span class=”underline”>Texte</span> + CSS {.underline { text-decoration: underline; }} — idéal pour sites statiques.
- Extension markdown-it : ++texte++ — pratique localement, non portable.
Étude de cas : migration d’un fichier .md entre environnements et solutions recommandées
Lors d’une migration .md d’un environnement avec plugin vers GitHub, attendez-vous à perdre les syntaxes propriétaires. Conservez une version “polyglotte” : utilisez HTML simple quand GitHub l’accepte (<ins>), fournissez une note CONTRIBUTING qui décrit les plugins requis, et privilégiez le CSS global pour homogénéiser le rendu sur vos sites générés.
Checklist avant publication et conseils d’accessibilité (lecteurs d’écran, contraste, styles)
- Vérifiez le rendu sur la plateforme cible et en export PDF.
- Confirmez que le soulignement ne prête pas à confusion avec un lien.
- Assurez un contraste suffisant et n’utilisez pas le seul style pour transmettre une information.
- Documentez les dépendances (plugins, classes CSS) pour les contributeurs.




