[{"data":1,"prerenderedAt":823},["ShallowReactive",2],{"blog-post:fr:\u002Ffr\u002Fblog\u002Fcomment-ajouter-une-ligne-horizontale-markdown":3},{"id":4,"title":5,"author":6,"body":7,"category":792,"date":793,"description":794,"extension":795,"image":796,"imageAlt":797,"meta":798,"navigation":799,"path":800,"seo":801,"stem":802,"tags":803,"translationKey":804,"__hash__":805,"html":806,"bodyMarkdown":807,"translations":808,"previous":815,"next":818},"blog\u002Ffr\u002Fblog\u002F3.comment-ajouter-une-ligne-horizontale-markdown.md","Comment ajouter une ligne horizontale en Markdown","Antoine Frankart",{"type":8,"value":9,"toc":775},"minimark",[10,14,17,22,34,64,71,74,94,100,107,138,142,145,166,172,176,181,184,198,205,208,225,229,232,255,261,264,268,271,291,297,301,304,307,340,343,399,403,418,424,427,431,439,442,446,449,526,529,533,542,545,551,555,562,587,594,597,644,648,742,744,747,753,761,764,771],[11,12,13],"p",{},"Une ligne horizontale en Markdown permet de séparer des sections, de casser le rythme entre deux idées, ou tout simplement d'offrir une respiration visuelle au lecteur. Il suffit de trois caractères sur une ligne. C'est tout. Mais comme souvent avec Markdown, ce n'est pas toujours aussi simple, surtout si vous alternez entre GitHub, Obsidian ou un générateur de site statique.",[11,15,16],{},"Voici l'essentiel à savoir sur les lignes horizontales en Markdown, depuis la syntaxe de base jusqu'aux cas limites qui vous feront perdre du temps.",[18,19,21],"h2",{"id":20},"les-trois-syntaxes-possibles","Les trois syntaxes possibles",[11,23,24,25,29,30,33],{},"Markdown accepte trois écritures pour créer une ligne horizontale, aussi appelée ",[26,27,28],"em",{},"horizontal rule"," ou ",[26,31,32],{},"thematic break"," :",[35,36,41],"pre",{"className":37,"code":38,"language":39,"meta":40,"style":40},"language-markdown shiki shiki-themes github-light github-dark","---\n***\n___\n","markdown","",[42,43,44,52,58],"code",{"__ignoreMap":40},[45,46,49],"span",{"class":47,"line":48},"line",1,[45,50,51],{},"---\n",[45,53,55],{"class":47,"line":54},2,[45,56,57],{},"***\n",[45,59,61],{"class":47,"line":60},3,[45,62,63],{},"___\n",[11,65,66,67,70],{},"Trois tirets, trois astérisques ou trois underscores. Dans tous les cas, le rendu HTML produit une balise ",[42,68,69],{},"\u003Chr>",".",[11,72,73],{},"Vous pouvez aussi utiliser plus de trois caractères si vous préférez un séparateur plus visible dans le fichier brut :",[35,75,77],{"className":37,"code":76,"language":39,"meta":40,"style":40},"---------------\n***************\n_______________\n",[42,78,79,84,89],{"__ignoreMap":40},[45,80,81],{"class":47,"line":48},[45,82,83],{},"---------------\n",[45,85,86],{"class":47,"line":54},[45,87,88],{},"***************\n",[45,90,91],{"class":47,"line":60},[45,92,93],{},"_______________\n",[11,95,96,97,99],{},"Le rendu HTML reste celui d'une balise ",[42,98,69],{},". Les caractères supplémentaires n'ajoutent pas d'effet spécial en eux-mêmes.",[11,101,102,103,106],{},"Une bonne habitude à retenir : laissez une ligne vide avant et après la ligne horizontale. Ce n'est pas une obligation absolue pour tous les lecteurs (parseurs) de fichiers Markdown, mais c'est la manière la plus sûre d'éviter les problèmes, surtout avec ",[42,104,105],{},"---"," qui peut être interprété comme un titre de niveau 2 en syntaxe Setext.",[35,108,110],{"className":37,"code":109,"language":39,"meta":40,"style":40},"Voici un paragraphe.\n\n---\n\nVoici un autre paragraphe.\n",[42,111,112,117,123,127,132],{"__ignoreMap":40},[45,113,114],{"class":47,"line":48},[45,115,116],{},"Voici un paragraphe.\n",[45,118,119],{"class":47,"line":54},[45,120,122],{"emptyLinePlaceholder":121},true,"\n",[45,124,125],{"class":47,"line":60},[45,126,51],{},[45,128,130],{"class":47,"line":129},4,[45,131,122],{"emptyLinePlaceholder":121},[45,133,135],{"class":47,"line":134},5,[45,136,137],{},"Voici un autre paragraphe.\n",[18,139,141],{"id":140},"tirets-astérisques-ou-underscores-lequel-choisir","Tirets, astérisques ou underscores : lequel choisir ?",[11,143,144],{},"Sur le plan fonctionnel, il n'y a aucune différence. Le choix relève surtout de la convention.",[146,147,148,154,160],"ul",{},[149,150,151,153],"li",{},[42,152,105],{}," est la forme la plus courante. On la retrouve partout dans les README GitHub, la documentation et les articles.",[149,155,156,159],{},[42,157,158],{},"***"," est parfois utilisé dans des contenus plus éditoriaux, car certains le trouvent plus visuel dans le texte brut.",[149,161,162,165],{},[42,163,164],{},"___"," fonctionne très bien aussi, mais reste plus rare.",[11,167,168,169,171],{},"Le plus important est la cohérence. Mieux vaut choisir une syntaxe et s'y tenir dans tous vos fichiers. En pratique, ",[42,170,105],{}," est le standard.",[18,173,175],{"id":174},"les-erreurs-les-plus-fréquentes","Les erreurs les plus fréquentes",[177,178,180],"h3",{"id":179},"le-piège-du-titre-setext","Le piège du titre Setext",[11,182,183],{},"Si vous écrivez ceci :",[35,185,187],{"className":37,"code":186,"language":39,"meta":40,"style":40},"Un texte\n---\n",[42,188,189,194],{"__ignoreMap":40},[45,190,191],{"class":47,"line":48},[45,192,193],{},"Un texte\n",[45,195,196],{"class":47,"line":54},[45,197,51],{},[11,199,200,201,204],{},"Markdown ne rendra généralement pas une ligne horizontale. Il transformera ",[42,202,203],{},"Un texte"," en titre de niveau 2.",[11,206,207],{},"La solution la plus sûre consiste à encadrer le séparateur avec des lignes vides :",[35,209,211],{"className":37,"code":210,"language":39,"meta":40,"style":40},"Un texte\n\n---\n",[42,212,213,217,221],{"__ignoreMap":40},[45,214,215],{"class":47,"line":48},[45,216,193],{},[45,218,219],{"class":47,"line":54},[45,220,122],{"emptyLinePlaceholder":121},[45,222,223],{"class":47,"line":60},[45,224,51],{},[177,226,228],{"id":227},"la-confusion-avec-le-frontmatter-yaml","La confusion avec le frontmatter YAML",[11,230,231],{},"Si vous utilisez du frontmatter dans vos fichiers Markdown, ce qui est commun avec Nuxt Content, Astro, Hugo, Jekyll ou d'autres générateurs de sites statiques, votre document commence souvent comme ceci :",[35,233,235],{"className":37,"code":234,"language":39,"meta":40,"style":40},"---\ntitle: Mon article\ndate: 2026-04-13\n---\n",[42,236,237,241,246,251],{"__ignoreMap":40},[45,238,239],{"class":47,"line":48},[45,240,51],{},[45,242,243],{"class":47,"line":54},[45,244,245],{},"title: Mon article\n",[45,247,248],{"class":47,"line":60},[45,249,250],{},"date: 2026-04-13\n",[45,252,253],{"class":47,"line":129},[45,254,51],{},[11,256,257,258,260],{},"Ici, les ",[42,259,105],{}," ne représentent pas une ligne horizontale. Ils servent à délimiter les métadonnées.",[11,262,263],{},"La confusion arrive surtout quand le frontmatter est mal fermé. Dans ce cas, le parser peut produire un rendu incohérent. Il faut donc toujours vérifier que le bloc est bien ouvert et fermé correctement.",[177,265,267],{"id":266},"les-espaces-entre-les-caractères","Les espaces entre les caractères",[11,269,270],{},"Les syntaxes suivantes sont valides :",[35,272,274],{"className":37,"code":273,"language":39,"meta":40,"style":40},"- - -\n* * *\n_ _ _\n",[42,275,276,281,286],{"__ignoreMap":40},[45,277,278],{"class":47,"line":48},[45,279,280],{},"- - -\n",[45,282,283],{"class":47,"line":54},[45,284,285],{},"* * *\n",[45,287,288],{"class":47,"line":60},[45,289,290],{},"_ _ _\n",[11,292,293,294,296],{},"Elles produisent elles aussi une balise ",[42,295,69],{},". Certaines personnes les utilisent pour améliorer la lisibilité du fichier source, mais ce n'est pas indispensable.",[18,298,300],{"id":299},"comment-cela-se-comporte-sur-github","Comment cela se comporte sur GitHub",[11,302,303],{},"GitHub Flavored Markdown accepte les trois syntaxes.",[11,305,306],{},"Quelques remarques utiles :",[146,308,309,320,330],{},[149,310,311,312,316,317,319],{},"dans les ",[313,314,315],"strong",{},"README"," et les wikis, ",[42,318,105],{}," est la forme la plus fréquente",[149,321,311,322,325,326,329],{},[313,323,324],{},"issues"," et les ",[313,327,328],{},"pull requests",", les lignes horizontales fonctionnent aussi très bien pour séparer le contexte de la demande",[149,331,332,333,336,337,339],{},"dans ",[313,334,335],{},"GitHub Pages",", un ",[42,338,105],{}," placé tout en haut du fichier sera interprété comme du frontmatter",[11,341,342],{},"Exemple courant dans une issue :",[35,344,346],{"className":37,"code":345,"language":39,"meta":40,"style":40},"## Bug report\n\nÉtapes pour reproduire :\n1. Ouvrir l'application\n2. Cliquer sur \"Save\"\n\n---\n\n**Expected:** le fichier est enregistré\n**Actual:** erreur 500\n",[42,347,348,353,357,362,367,372,377,382,387,393],{"__ignoreMap":40},[45,349,350],{"class":47,"line":48},[45,351,352],{},"## Bug report\n",[45,354,355],{"class":47,"line":54},[45,356,122],{"emptyLinePlaceholder":121},[45,358,359],{"class":47,"line":60},[45,360,361],{},"Étapes pour reproduire :\n",[45,363,364],{"class":47,"line":129},[45,365,366],{},"1. Ouvrir l'application\n",[45,368,369],{"class":47,"line":134},[45,370,371],{},"2. Cliquer sur \"Save\"\n",[45,373,375],{"class":47,"line":374},6,[45,376,122],{"emptyLinePlaceholder":121},[45,378,380],{"class":47,"line":379},7,[45,381,51],{},[45,383,385],{"class":47,"line":384},8,[45,386,122],{"emptyLinePlaceholder":121},[45,388,390],{"class":47,"line":389},9,[45,391,392],{},"**Expected:** le fichier est enregistré\n",[45,394,396],{"class":47,"line":395},10,[45,397,398],{},"**Actual:** erreur 500\n",[18,400,402],{"id":401},"comment-cela-se-comporte-dans-obsidian","Comment cela se comporte dans Obsidian",[11,404,405,406,408,409,411,412,414,415,417],{},"Obsidian prend en charge ",[42,407,105],{},", ",[42,410,158],{}," et ",[42,413,164],{},". En pratique, ",[42,416,105],{}," est la syntaxe la plus utilisée.",[11,419,420,421,423],{},"Un point à connaître : Obsidian utilise aussi ",[42,422,105],{}," pour le frontmatter YAML. Si vous placez une ligne horizontale juste après ce bloc, il vaut mieux garder une ligne vide pour rester compatible avec les autres renderers Markdown.",[11,425,426],{},"En mode lecture comme en aperçu live, Obsidian rend la ligne sous la forme d'un séparateur visuel fin, adapté au thème actif.",[18,428,430],{"id":429},"peut-on-changer-son-épaisseur-ou-son-style","Peut-on changer son épaisseur ou son style ?",[11,432,433,434,436,437,70],{},"Le Markdown standard ne permet pas de définir l'épaisseur, la couleur ou l'espacement d'une ligne horizontale. ",[42,435,105],{}," produit simplement un ",[42,438,69],{},[11,440,441],{},"Si vous avez besoin d'un rendu personnalisé, vous avez deux options.",[177,443,445],{"id":444},"option-1-le-css-externe","Option 1 : le CSS externe",[11,447,448],{},"Pour un site ou un blog, c'est la meilleure solution :",[35,450,454],{"className":451,"code":452,"language":453,"meta":40,"style":40},"language-css shiki shiki-themes github-light github-dark","hr {\n  border: none;\n  border-top: 3px solid #333;\n  margin: 2rem 0;\n}\n","css",[42,455,456,466,481,503,521],{"__ignoreMap":40},[45,457,458,462],{"class":47,"line":48},[45,459,461],{"class":460},"s9eBZ","hr",[45,463,465],{"class":464},"sVt8B"," {\n",[45,467,468,472,475,478],{"class":47,"line":54},[45,469,471],{"class":470},"sj4cs","  border",[45,473,474],{"class":464},": ",[45,476,477],{"class":470},"none",[45,479,480],{"class":464},";\n",[45,482,483,486,488,491,495,498,501],{"class":47,"line":60},[45,484,485],{"class":470},"  border-top",[45,487,474],{"class":464},[45,489,490],{"class":470},"3",[45,492,494],{"class":493},"szBVR","px",[45,496,497],{"class":470}," solid",[45,499,500],{"class":470}," #333",[45,502,480],{"class":464},[45,504,505,508,510,513,516,519],{"class":47,"line":129},[45,506,507],{"class":470},"  margin",[45,509,474],{"class":464},[45,511,512],{"class":470},"2",[45,514,515],{"class":493},"rem",[45,517,518],{"class":470}," 0",[45,520,480],{"class":464},[45,522,523],{"class":47,"line":134},[45,524,525],{"class":464},"}\n",[11,527,528],{},"Cela vous donne le contrôle sur l'épaisseur, la couleur, la largeur et les marges.",[177,530,532],{"id":531},"option-2-le-css-inline-dans-le-html","Option 2 : le CSS inline dans le HTML",[35,534,536],{"className":37,"code":535,"language":39,"meta":40,"style":40},"\u003Chr style=\"border: 2px solid red;\" \u002F>\n",[42,537,538],{"__ignoreMap":40},[45,539,540],{"class":47,"line":48},[45,541,535],{},[11,543,544],{},"Cela dépend de l'outil de rendu. Certains acceptent le HTML inline, d'autres le filtrent partiellement ou complètement. Par exemple, GitHub accepte certaines balises HTML, mais nettoie les styles inline, donc cet exemple n'y donnera pas le rendu attendu. C'est moins fiable, donc mieux vaut l'éviter si vous voulez conserver un Markdown propre.",[11,546,547,548,550],{},"La bonne approche est généralement la suivante : gardez ",[42,549,105],{}," dans le contenu, et gérez le style dans la couche CSS.",[18,552,554],{"id":553},"peut-on-mettre-une-ligne-horizontale-dans-un-tableau","Peut-on mettre une ligne horizontale dans un tableau ?",[11,556,557,558,561],{},"Non. Dans un tableau Markdown, la syntaxe ",[42,559,560],{},"|---|---|"," sert uniquement à séparer l'en-tête des colonnes.",[35,563,565],{"className":37,"code":564,"language":39,"meta":40,"style":40},"| Nom   | Rôle     |\n| ----- | -------- |\n| Alice | Dev      |\n| Bob   | Designer |\n",[42,566,567,572,577,582],{"__ignoreMap":40},[45,568,569],{"class":47,"line":48},[45,570,571],{},"| Nom   | Rôle     |\n",[45,573,574],{"class":47,"line":54},[45,575,576],{},"| ----- | -------- |\n",[45,578,579],{"class":47,"line":60},[45,580,581],{},"| Alice | Dev      |\n",[45,583,584],{"class":47,"line":129},[45,585,586],{},"| Bob   | Designer |\n",[11,588,589,590,593],{},"Ici, la ligne ",[42,591,592],{},"|-------|-----------|"," ne représente pas une ligne horizontale indépendante. Elle fait partie de la structure du tableau.",[11,595,596],{},"Si vous avez besoin d'une vraie séparation visuelle, le plus simple est souvent de découper le contenu en deux tableaux, avec une ligne horizontale entre les deux.",[35,598,600],{"className":37,"code":599,"language":39,"meta":40,"style":40},"| Équipe A | Rôle |\n| -------- | ---- |\n| Alice    | Dev  |\n\n---\n\n| Équipe B | Rôle     |\n| -------- | -------- |\n| Bob      | Designer |\n",[42,601,602,607,612,617,621,625,629,634,639],{"__ignoreMap":40},[45,603,604],{"class":47,"line":48},[45,605,606],{},"| Équipe A | Rôle |\n",[45,608,609],{"class":47,"line":54},[45,610,611],{},"| -------- | ---- |\n",[45,613,614],{"class":47,"line":60},[45,615,616],{},"| Alice    | Dev  |\n",[45,618,619],{"class":47,"line":129},[45,620,122],{"emptyLinePlaceholder":121},[45,622,623],{"class":47,"line":134},[45,624,51],{},[45,626,627],{"class":47,"line":374},[45,628,122],{"emptyLinePlaceholder":121},[45,630,631],{"class":47,"line":379},[45,632,633],{},"| Équipe B | Rôle     |\n",[45,635,636],{"class":47,"line":384},[45,637,638],{},"| -------- | -------- |\n",[45,640,641],{"class":47,"line":389},[45,642,643],{},"| Bob      | Designer |\n",[18,645,647],{"id":646},"référence-rapide","Référence rapide",[649,650,651,667],"table",{},[652,653,654],"thead",{},[655,656,657,661,664],"tr",{},[658,659,660],"th",{},"Syntaxe",[658,662,663],{},"Valide ?",[658,665,666],{},"Remarque",[668,669,670,683,694,705,717,729],"tbody",{},[655,671,672,677,680],{},[673,674,675],"td",{},[42,676,105],{},[673,678,679],{},"Oui",[673,681,682],{},"La forme la plus courante. Attention au piège des titres Setext.",[655,684,685,689,691],{},[673,686,687],{},[42,688,158],{},[673,690,679],{},[673,692,693],{},"Une bonne alternative si vous voulez éviter toute confusion avec le frontmatter.",[655,695,696,700,702],{},[673,697,698],{},[42,699,164],{},[673,701,679],{},[673,703,704],{},"Plus rare, mais pris en charge partout.",[655,706,707,712,714],{},[673,708,709],{},[42,710,711],{},"- - -",[673,713,679],{},[673,715,716],{},"Les espaces sont autorisés.",[655,718,719,724,726],{},[673,720,721],{},[42,722,723],{},"----",[673,725,679],{},[673,727,728],{},"Plus de trois caractères fonctionne aussi.",[655,730,731,736,739],{},[673,732,733],{},[42,734,735],{},"--",[673,737,738],{},"Non",[673,740,741],{},"Deux caractères ne suffisent pas.",[461,743],{},[11,745,746],{},"Les lignes horizontales font partie des éléments Markdown les plus simples, mais ce sont aussi ceux qui génèrent des petits pièges agaçants : les titres Setext, le frontmatter YAML, ou les limites dans les tableaux.",[11,748,749,750,752],{},"Une fois ces cas compris, vous pouvez utiliser ",[42,751,105],{}," sans hésiter dans la plupart des documents.",[11,754,755,756,70],{},"Si vous travaillez aussi avec des tableaux, vous pouvez lire notre guide dédié : ",[757,758,760],"a",{"href":759},"\u002Ffr\u002Fblog\u002Fmarkdown-tableaux-guide-complet","Tableau Markdown : Guide complet avec exemples",[11,762,763],{},"Et si vous cherchez un lecteur Markdown qui rend correctement les séparateurs, les tableaux, les blocs de code et le reste sur tous vos appareils, notre application Fude est conçu précisément pour cela.",[11,765,766,767],{},"📌 ",[757,768,770],{"href":769},"\u002Ffr#download","Téléchargez Fude",[772,773,774],"style",{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}",{"title":40,"searchDepth":54,"depth":54,"links":776},[777,778,779,784,785,786,790,791],{"id":20,"depth":54,"text":21},{"id":140,"depth":54,"text":141},{"id":174,"depth":54,"text":175,"children":780},[781,782,783],{"id":179,"depth":60,"text":180},{"id":227,"depth":60,"text":228},{"id":266,"depth":60,"text":267},{"id":299,"depth":54,"text":300},{"id":401,"depth":54,"text":402},{"id":429,"depth":54,"text":430,"children":787},[788,789],{"id":444,"depth":60,"text":445},{"id":531,"depth":60,"text":532},{"id":553,"depth":54,"text":554},{"id":646,"depth":54,"text":647},"markdown-guides","2026-04-13","Découvrez comment ajouter une ligne horizontale dans un fichier Markdown, éviter les pièges courants et personnaliser son design.","md","\u002Fimages\u002Fblog\u002Fblog3","Guide pratique pour ajouter une ligne horizontale en Markdown",{},false,"\u002Ffr\u002Fblog\u002Fcomment-ajouter-une-ligne-horizontale-markdown",{"title":5,"description":794},"fr\u002Fblog\u002F3.comment-ajouter-une-ligne-horizontale-markdown",null,"horizontal-line-markdown","YprMlPRuPgIjSFasguWzrcC6-XY9ZhoSyMf7TFn6IrU","\u003Cp>\u003Cspan data-fude-source-start=\"1\" data-fude-source-end=\"379\">Une ligne horizontale en Markdown permet de séparer des sections, de casser le rythme entre deux idées, ou tout simplement d'offrir une respiration visuelle au lecteur. Il suffit de trois caractères sur une ligne. C'est tout. Mais comme souvent avec Markdown, ce n'est pas toujours aussi simple, surtout si vous alternez entre GitHub, Obsidian ou un générateur de site statique.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan data-fude-source-start=\"381\" data-fude-source-end=\"529\">Voici l'essentiel à savoir sur les lignes horizontales en Markdown, depuis la syntaxe de base jusqu'aux cas limites qui vous feront perdre du temps.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch2>\u003Cspan data-fude-source-start=\"534\" data-fude-source-end=\"562\">Les trois syntaxes possibles\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Cp>\u003Cspan data-fude-source-start=\"564\" data-fude-source-end=\"645\">Markdown accepte trois écritures pour créer une ligne horizontale, aussi appelée \u003C\u002Fspan>\u003Cem>\u003Cspan data-fude-source-start=\"646\" data-fude-source-end=\"661\">horizontal rule\u003C\u002Fspan>\u003C\u002Fem>\u003Cspan data-fude-source-start=\"662\" data-fude-source-end=\"666\"> ou \u003C\u002Fspan>\u003Cem>\u003Cspan data-fude-source-start=\"667\" data-fude-source-end=\"681\">thematic break\u003C\u002Fspan>\u003C\u002Fem>\u003Cspan data-fude-source-start=\"682\" data-fude-source-end=\"684\"> :\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"698\" data-fude-code-block-end=\"709\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"698\" data-fude-code-block-end=\"709\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">---\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-keyword, color-mix(in srgb, var(--color-accent-primary) 68%, var(--color-code-text) 32%))\">*\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">**\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string-expression)\">___\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cspan data-fude-source-start=\"715\" data-fude-source-end=\"821\">Trois tirets, trois astérisques ou trois underscores. Dans tous les cas, le rendu HTML produit une balise \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"821\" data-fude-source-end=\"827\">&#x3C;hr>\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"827\" data-fude-source-end=\"828\">.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan data-fude-source-start=\"830\" data-fude-source-end=\"948\">Vous pouvez aussi utiliser plus de trois caractères si vous préférez un séparateur plus visible dans le fichier brut :\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"962\" data-fude-code-block-end=\"1009\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"962\" data-fude-code-block-end=\"1009\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">---------------\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-keyword, color-mix(in srgb, var(--color-accent-primary) 68%, var(--color-code-text) 32%))\">*\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">**************\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string-expression)\">_______________\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cspan data-fude-source-start=\"1015\" data-fude-source-end=\"1054\">Le rendu HTML reste celui d'une balise \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"1054\" data-fude-source-end=\"1060\">&#x3C;hr>\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"1060\" data-fude-source-end=\"1137\">. Les caractères supplémentaires n'ajoutent pas d'effet spécial en eux-mêmes.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan data-fude-source-start=\"1139\" data-fude-source-end=\"1394\">Une bonne habitude à retenir : laissez une ligne vide avant et après la ligne horizontale. Ce n'est pas une obligation absolue pour tous les lecteurs (parseurs) de fichiers Markdown, mais c'est la manière la plus sûre d'éviter les problèmes, surtout avec \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"1394\" data-fude-source-end=\"1399\">---\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"1399\" data-fude-source-end=\"1470\"> qui peut être interprété comme un titre de niveau 2 en syntaxe Setext.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"1484\" data-fude-code-block-end=\"1537\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"1484\" data-fude-code-block-end=\"1537\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">Voici un paragraphe.\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">---\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">Voici un autre paragraphe.\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch2>\u003Cspan data-fude-source-start=\"1546\" data-fude-source-end=\"1599\">Tirets, astérisques ou underscores : lequel choisir ?\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Cp>\u003Cspan data-fude-source-start=\"1601\" data-fude-source-end=\"1695\">Sur le plan fonctionnel, il n'y a aucune différence. Le choix relève surtout de la convention.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>\u003Cspan data-fude-source-start=\"1699\" data-fude-source-end=\"1704\">---\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"1704\" data-fude-source-end=\"1816\"> est la forme la plus courante. On la retrouve partout dans les README GitHub, la documentation et les articles.\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Ccode>\u003Cspan data-fude-source-start=\"1819\" data-fude-source-end=\"1824\">***\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"1824\" data-fude-source-end=\"1936\"> est parfois utilisé dans des contenus plus éditoriaux, car certains le trouvent plus visuel dans le texte brut.\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Ccode>\u003Cspan data-fude-source-start=\"1939\" data-fude-source-end=\"1944\">___\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"1944\" data-fude-source-end=\"1994\"> fonctionne très bien aussi, mais reste plus rare.\u003C\u002Fspan>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cspan data-fude-source-start=\"1996\" data-fude-source-end=\"2113\">Le plus important est la cohérence. Mieux vaut choisir une syntaxe et s'y tenir dans tous vos fichiers. En pratique, \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"2113\" data-fude-source-end=\"2118\">---\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"2118\" data-fude-source-end=\"2135\"> est le standard.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch2>\u003Cspan data-fude-source-start=\"2140\" data-fude-source-end=\"2171\">Les erreurs les plus fréquentes\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Ch3>\u003Cspan data-fude-source-start=\"2177\" data-fude-source-end=\"2201\">Le piège du titre Setext\u003C\u002Fspan>\u003C\u002Fh3>\n\u003Cp>\u003Cspan data-fude-source-start=\"2203\" data-fude-source-end=\"2225\">Si vous écrivez ceci :\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"2239\" data-fude-code-block-end=\"2251\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"2239\" data-fude-code-block-end=\"2251\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">Un texte\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">---\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cspan data-fude-source-start=\"2257\" data-fude-source-end=\"2332\">Markdown ne rendra généralement pas une ligne horizontale. Il transformera \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"2332\" data-fude-source-end=\"2342\">Un texte\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"2342\" data-fude-source-end=\"2364\"> en titre de niveau 2.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan data-fude-source-start=\"2366\" data-fude-source-end=\"2448\">La solution la plus sûre consiste à encadrer le séparateur avec des lignes vides :\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"2462\" data-fude-code-block-end=\"2475\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"2462\" data-fude-code-block-end=\"2475\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">Un texte\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">---\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>\u003Cspan data-fude-source-start=\"2485\" data-fude-source-end=\"2522\">La confusion avec le frontmatter YAML\u003C\u002Fspan>\u003C\u002Fh3>\n\u003Cp>\u003Cspan data-fude-source-start=\"2524\" data-fude-source-end=\"2729\">Si vous utilisez du frontmatter dans vos fichiers Markdown, ce qui est commun avec Nuxt Content, Astro, Hugo, Jekyll ou d'autres générateurs de sites statiques, votre document commence souvent comme ceci :\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"2743\" data-fude-code-block-end=\"2786\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"2743\" data-fude-code-block-end=\"2786\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">---\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-keyword, color-mix(in srgb, var(--color-accent-primary) 68%, var(--color-code-text) 32%))\">title\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-keyword, color-mix(in srgb, var(--color-accent-primary) 68%, var(--color-code-text) 32%))\">:\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-string-expression)\"> Mon article\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-keyword, color-mix(in srgb, var(--color-accent-primary) 68%, var(--color-code-text) 32%))\">date\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-keyword, color-mix(in srgb, var(--color-accent-primary) 68%, var(--color-code-text) 32%))\">:\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\"> 2026-04-13\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">---\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cspan data-fude-source-start=\"2792\" data-fude-source-end=\"2801\">Ici, les \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"2801\" data-fude-source-end=\"2806\">---\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"2806\" data-fude-source-end=\"2890\"> ne représentent pas une ligne horizontale. Ils servent à délimiter les métadonnées.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan data-fude-source-start=\"2892\" data-fude-source-end=\"3095\">La confusion arrive surtout quand le frontmatter est mal fermé. Dans ce cas, le parser peut produire un rendu incohérent. Il faut donc toujours vérifier que le bloc est bien ouvert et fermé correctement.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch3>\u003Cspan data-fude-source-start=\"3101\" data-fude-source-end=\"3133\">Les espaces entre les caractères\u003C\u002Fspan>\u003C\u002Fh3>\n\u003Cp>\u003Cspan data-fude-source-start=\"3135\" data-fude-source-end=\"3172\">Les syntaxes suivantes sont valides :\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"3186\" data-fude-code-block-end=\"3203\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"3186\" data-fude-code-block-end=\"3203\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">- - -\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">* * *\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">_ _ _\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cspan data-fude-source-start=\"3209\" data-fude-source-end=\"3249\">Elles produisent elles aussi une balise \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"3249\" data-fude-source-end=\"3255\">&#x3C;hr>\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"3255\" data-fude-source-end=\"3371\">. Certaines personnes les utilisent pour améliorer la lisibilité du fichier source, mais ce n'est pas indispensable.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch2>\u003Cspan data-fude-source-start=\"3376\" data-fude-source-end=\"3411\">Comment cela se comporte sur GitHub\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Cp>\u003Cspan data-fude-source-start=\"3413\" data-fude-source-end=\"3465\">GitHub Flavored Markdown accepte les trois syntaxes.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan data-fude-source-start=\"3467\" data-fude-source-end=\"3494\">Quelques remarques utiles :\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cspan data-fude-source-start=\"3498\" data-fude-source-end=\"3507\">dans les \u003C\u002Fspan>\u003Cstrong>\u003Cspan data-fude-source-start=\"3509\" data-fude-source-end=\"3515\">README\u003C\u002Fspan>\u003C\u002Fstrong>\u003Cspan data-fude-source-start=\"3517\" data-fude-source-end=\"3532\"> et les wikis, \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"3532\" data-fude-source-end=\"3537\">---\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"3537\" data-fude-source-end=\"3568\"> est la forme la plus fréquente\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"3571\" data-fude-source-end=\"3580\">dans les \u003C\u002Fspan>\u003Cstrong>\u003Cspan data-fude-source-start=\"3582\" data-fude-source-end=\"3588\">issues\u003C\u002Fspan>\u003C\u002Fstrong>\u003Cspan data-fude-source-start=\"3590\" data-fude-source-end=\"3598\"> et les \u003C\u002Fspan>\u003Cstrong>\u003Cspan data-fude-source-start=\"3600\" data-fude-source-end=\"3613\">pull requests\u003C\u002Fspan>\u003C\u002Fstrong>\u003Cspan data-fude-source-start=\"3615\" data-fude-source-end=\"3708\">, les lignes horizontales fonctionnent aussi très bien pour séparer le contexte de la demande\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"3711\" data-fude-source-end=\"3716\">dans \u003C\u002Fspan>\u003Cstrong>\u003Cspan data-fude-source-start=\"3718\" data-fude-source-end=\"3730\">GitHub Pages\u003C\u002Fspan>\u003C\u002Fstrong>\u003Cspan data-fude-source-start=\"3732\" data-fude-source-end=\"3737\">, un \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"3737\" data-fude-source-end=\"3742\">---\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"3742\" data-fude-source-end=\"3809\"> placé tout en haut du fichier sera interprété comme du frontmatter\u003C\u002Fspan>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cspan data-fude-source-start=\"3811\" data-fude-source-end=\"3843\">Exemple courant dans une issue :\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"3857\" data-fude-code-block-end=\"4011\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"3857\" data-fude-code-block-end=\"4011\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">## Bug report\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">Étapes pour reproduire :\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">1. Ouvrir l'application\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">2. Cliquer sur \"Save\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">---\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">**Expected:** le fichier est enregistré\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">**Actual:** erreur 500\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch2>\u003Cspan data-fude-source-start=\"4020\" data-fude-source-end=\"4058\">Comment cela se comporte dans Obsidian\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Cp>\u003Cspan data-fude-source-start=\"4060\" data-fude-source-end=\"4085\">Obsidian prend en charge \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"4085\" data-fude-source-end=\"4090\">---\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"4090\" data-fude-source-end=\"4092\">, \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"4092\" data-fude-source-end=\"4097\">***\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"4097\" data-fude-source-end=\"4101\"> et \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"4101\" data-fude-source-end=\"4106\">___\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"4106\" data-fude-source-end=\"4121\">. En pratique, \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"4121\" data-fude-source-end=\"4126\">---\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"4126\" data-fude-source-end=\"4159\"> est la syntaxe la plus utilisée.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan data-fude-source-start=\"4161\" data-fude-source-end=\"4207\">Un point à connaître : Obsidian utilise aussi \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"4207\" data-fude-source-end=\"4212\">---\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"4212\" data-fude-source-end=\"4391\"> pour le frontmatter YAML. Si vous placez une ligne horizontale juste après ce bloc, il vaut mieux garder une ligne vide pour rester compatible avec les autres renderers Markdown.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan data-fude-source-start=\"4393\" data-fude-source-end=\"4518\">En mode lecture comme en aperçu live, Obsidian rend la ligne sous la forme d'un séparateur visuel fin, adapté au thème actif.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch2>\u003Cspan data-fude-source-start=\"4523\" data-fude-source-end=\"4567\">Peut-on changer son épaisseur ou son style ?\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Cp>\u003Cspan data-fude-source-start=\"4569\" data-fude-source-end=\"4680\">Le Markdown standard ne permet pas de définir l'épaisseur, la couleur ou l'espacement d'une ligne horizontale. \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"4680\" data-fude-source-end=\"4685\">---\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"4685\" data-fude-source-end=\"4708\"> produit simplement un \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"4708\" data-fude-source-end=\"4714\">&#x3C;hr>\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"4714\" data-fude-source-end=\"4715\">.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan data-fude-source-start=\"4717\" data-fude-source-end=\"4785\">Si vous avez besoin d'un rendu personnalisé, vous avez deux options.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch3>\u003Cspan data-fude-source-start=\"4791\" data-fude-source-end=\"4816\">Option 1 : le CSS externe\u003C\u002Fspan>\u003C\u002Fh3>\n\u003Cp>\u003Cspan data-fude-source-start=\"4818\" data-fude-source-end=\"4872\">Pour un site ou un blog, c'est la meilleure solution :\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"css\" data-fude-code-block-start=\"4881\" data-fude-code-block-end=\"4951\">\u003Ccode class=\"language-css\" data-language=\"css\" data-fude-code-block-start=\"4881\" data-fude-code-block-end=\"4951\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string-expression)\">hr\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\"> {\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-constant, color-mix(in srgb, var(--color-code-text) 94%, var(--color-accent-primary) 6%))\">  border\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-keyword, color-mix(in srgb, var(--color-accent-primary) 68%, var(--color-code-text) 32%))\">:\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-constant, color-mix(in srgb, var(--color-code-text) 94%, var(--color-accent-primary) 6%))\"> none\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-constant, color-mix(in srgb, var(--color-code-text) 94%, var(--color-accent-primary) 6%))\">  border-top\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-keyword, color-mix(in srgb, var(--color-accent-primary) 68%, var(--color-code-text) 32%))\">:\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-constant, color-mix(in srgb, var(--color-code-text) 94%, var(--color-accent-primary) 6%))\"> 3\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-keyword, color-mix(in srgb, var(--color-accent-primary) 68%, var(--color-code-text) 32%))\">px\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-constant, color-mix(in srgb, var(--color-code-text) 94%, var(--color-accent-primary) 6%))\"> solid #333\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-constant, color-mix(in srgb, var(--color-code-text) 94%, var(--color-accent-primary) 6%))\">  margin\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-keyword, color-mix(in srgb, var(--color-accent-primary) 68%, var(--color-code-text) 32%))\">:\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-constant, color-mix(in srgb, var(--color-code-text) 94%, var(--color-accent-primary) 6%))\"> 2\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-keyword, color-mix(in srgb, var(--color-accent-primary) 68%, var(--color-code-text) 32%))\">rem\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-constant, color-mix(in srgb, var(--color-code-text) 94%, var(--color-accent-primary) 6%))\"> 0\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">}\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cspan data-fude-source-start=\"4957\" data-fude-source-end=\"5039\">Cela vous donne le contrôle sur l'épaisseur, la couleur, la largeur et les marges.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch3>\u003Cspan data-fude-source-start=\"5045\" data-fude-source-end=\"5082\">Option 2 : le CSS inline dans le HTML\u003C\u002Fspan>\u003C\u002Fh3>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"5096\" data-fude-code-block-end=\"5133\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"5096\" data-fude-code-block-end=\"5133\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">&#x3C;\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-string-expression)\">hr\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-function, color-mix(in srgb, var(--color-accent-secondary) 62%, var(--color-code-text) 38%))\"> style\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-keyword, color-mix(in srgb, var(--color-accent-primary) 68%, var(--color-code-text) 32%))\">=\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-string-expression)\">\"border: 2px solid red;\"\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\"> \u002F>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cspan data-fude-source-start=\"5139\" data-fude-source-end=\"5483\">Cela dépend de l'outil de rendu. Certains acceptent le HTML inline, d'autres le filtrent partiellement ou complètement. Par exemple, GitHub accepte certaines balises HTML, mais nettoie les styles inline, donc cet exemple n'y donnera pas le rendu attendu. C'est moins fiable, donc mieux vaut l'éviter si vous voulez conserver un Markdown propre.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan data-fude-source-start=\"5485\" data-fude-source-end=\"5541\">La bonne approche est généralement la suivante : gardez \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"5541\" data-fude-source-end=\"5546\">---\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"5546\" data-fude-source-end=\"5601\"> dans le contenu, et gérez le style dans la couche CSS.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch2>\u003Cspan data-fude-source-start=\"5606\" data-fude-source-end=\"5660\">Peut-on mettre une ligne horizontale dans un tableau ?\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Cp>\u003Cspan data-fude-source-start=\"5662\" data-fude-source-end=\"5704\">Non. Dans un tableau Markdown, la syntaxe \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"5704\" data-fude-source-end=\"5715\">|---|---|\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"5715\" data-fude-source-end=\"5765\"> sert uniquement à séparer l'en-tête des colonnes.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"5779\" data-fude-code-block-end=\"5862\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"5779\" data-fude-code-block-end=\"5862\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">| Nom   | Rôle     |\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">| \u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-punctuation, color-mix(in srgb, var(--color-code-text) 78%, var(--color-code-bg) 22%))\">-----\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\"> | \u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-punctuation, color-mix(in srgb, var(--color-code-text) 78%, var(--color-code-bg) 22%))\">--------\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\"> |\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">| Alice | Dev      |\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">| Bob   | Designer |\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cspan data-fude-source-start=\"5868\" data-fude-source-end=\"5882\">Ici, la ligne \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"5882\" data-fude-source-end=\"5905\">|-------|-----------|\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"5905\" data-fude-source-end=\"6004\"> ne représente pas une ligne horizontale indépendante. Elle fait partie de la structure du tableau.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan data-fude-source-start=\"6006\" data-fude-source-end=\"6169\">Si vous avez besoin d'une vraie séparation visuelle, le plus simple est souvent de découper le contenu en deux tableaux, avec une ligne horizontale entre les deux.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"6183\" data-fude-code-block-end=\"6320\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"6183\" data-fude-code-block-end=\"6320\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">| Équipe A | Rôle |\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">| \u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-punctuation, color-mix(in srgb, var(--color-code-text) 78%, var(--color-code-bg) 22%))\">--------\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\"> | \u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-punctuation, color-mix(in srgb, var(--color-code-text) 78%, var(--color-code-bg) 22%))\">----\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\"> |\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">| Alice    | Dev  |\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">---\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">| Équipe B | Rôle     |\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">| \u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-punctuation, color-mix(in srgb, var(--color-code-text) 78%, var(--color-code-bg) 22%))\">--------\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\"> | \u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-punctuation, color-mix(in srgb, var(--color-code-text) 78%, var(--color-code-bg) 22%))\">--------\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\"> |\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">| Bob      | Designer |\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch2>\u003Cspan data-fude-source-start=\"6329\" data-fude-source-end=\"6345\">Référence rapide\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>\u003Cspan data-fude-source-start=\"6349\" data-fude-source-end=\"6356\">Syntaxe\u003C\u002Fspan>\u003C\u002Fth>\n\u003Cth>\u003Cspan data-fude-source-start=\"6359\" data-fude-source-end=\"6367\">Valide ?\u003C\u002Fspan>\u003C\u002Fth>\n\u003Cth>\u003Cspan data-fude-source-start=\"6370\" data-fude-source-end=\"6378\">Remarque\u003C\u002Fspan>\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u003Cspan data-fude-source-start=\"6561\" data-fude-source-end=\"6566\">---\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan data-fude-source-start=\"6571\" data-fude-source-end=\"6574\">Oui\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan data-fude-source-start=\"6582\" data-fude-source-end=\"6646\">La forme la plus courante. Attention au piège des titres Setext.\u003C\u002Fspan>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u003Cspan data-fude-source-start=\"6667\" data-fude-source-end=\"6672\">***\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan data-fude-source-start=\"6677\" data-fude-source-end=\"6680\">Oui\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan data-fude-source-start=\"6688\" data-fude-source-end=\"6768\">Une bonne alternative si vous voulez éviter toute confusion avec le frontmatter.\u003C\u002Fspan>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u003Cspan data-fude-source-start=\"6773\" data-fude-source-end=\"6778\">___\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan data-fude-source-start=\"6783\" data-fude-source-end=\"6786\">Oui\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan data-fude-source-start=\"6794\" data-fude-source-end=\"6833\">Plus rare, mais pris en charge partout.\u003C\u002Fspan>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u003Cspan data-fude-source-start=\"6879\" data-fude-source-end=\"6886\">- - -\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan data-fude-source-start=\"6889\" data-fude-source-end=\"6892\">Oui\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan data-fude-source-start=\"6900\" data-fude-source-end=\"6927\">Les espaces sont autorisés.\u003C\u002Fspan>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u003Cspan data-fude-source-start=\"6985\" data-fude-source-end=\"6991\">----\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan data-fude-source-start=\"6995\" data-fude-source-end=\"6998\">Oui\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan data-fude-source-start=\"7006\" data-fude-source-end=\"7048\">Plus de trois caractères fonctionne aussi.\u003C\u002Fspan>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u003Cspan data-fude-source-start=\"7091\" data-fude-source-end=\"7095\">--\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan data-fude-source-start=\"7101\" data-fude-source-end=\"7104\">Non\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>\u003Cspan data-fude-source-start=\"7112\" data-fude-source-end=\"7145\">Deux caractères ne suffisent pas.\u003C\u002Fspan>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Chr>\n\u003Cp>\u003Cspan data-fude-source-start=\"7201\" data-fude-source-end=\"7416\">Les lignes horizontales font partie des éléments Markdown les plus simples, mais ce sont aussi ceux qui génèrent des petits pièges agaçants : les titres Setext, le frontmatter YAML, ou les limites dans les tableaux.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan data-fude-source-start=\"7418\" data-fude-source-end=\"7465\">Une fois ces cas compris, vous pouvez utiliser \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"7465\" data-fude-source-end=\"7470\">---\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"7470\" data-fude-source-end=\"7514\"> sans hésiter dans la plupart des documents.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan data-fude-source-start=\"7516\" data-fude-source-end=\"7597\">Si vous travaillez aussi avec des tableaux, vous pouvez lire notre guide dédié : \u003C\u002Fspan>\u003Ca href=\"\u002Ffr\u002Fblog\u002Fmarkdown-tableaux-guide-complet\" data-fude-link-kind=\"unsupported\">\u003Cspan data-fude-source-start=\"7598\" data-fude-source-end=\"7644\">Tableau Markdown : Guide complet avec exemples\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan data-fude-source-start=\"7687\" data-fude-source-end=\"7688\">.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan data-fude-source-start=\"7690\" data-fude-source-end=\"7892\">Et si vous cherchez un lecteur Markdown qui rend correctement les séparateurs, les tableaux, les blocs de code et le reste sur tous vos appareils, notre application Fude est conçu précisément pour cela.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan data-fude-source-start=\"7894\" data-fude-source-end=\"7896\">📌 \u003C\u002Fspan>\u003Ca href=\"\u002Ffr#download\" data-fude-link-kind=\"unsupported\">\u003Cspan data-fude-source-start=\"7897\" data-fude-source-end=\"7913\">Téléchargez Fude\u003C\u002Fspan>\u003C\u002Fa>\u003C\u002Fp>","\nUne ligne horizontale en Markdown permet de séparer des sections, de casser le rythme entre deux idées, ou tout simplement d'offrir une respiration visuelle au lecteur. Il suffit de trois caractères sur une ligne. C'est tout. Mais comme souvent avec Markdown, ce n'est pas toujours aussi simple, surtout si vous alternez entre GitHub, Obsidian ou un générateur de site statique.\n\nVoici l'essentiel à savoir sur les lignes horizontales en Markdown, depuis la syntaxe de base jusqu'aux cas limites qui vous feront perdre du temps.\n\n## Les trois syntaxes possibles\n\nMarkdown accepte trois écritures pour créer une ligne horizontale, aussi appelée _horizontal rule_ ou _thematic break_ :\n\n```markdown\n---\n***\n___\n```\n\nTrois tirets, trois astérisques ou trois underscores. Dans tous les cas, le rendu HTML produit une balise `\u003Chr>`.\n\nVous pouvez aussi utiliser plus de trois caractères si vous préférez un séparateur plus visible dans le fichier brut :\n\n```markdown\n---------------\n***************\n_______________\n```\n\nLe rendu HTML reste celui d'une balise `\u003Chr>`. Les caractères supplémentaires n'ajoutent pas d'effet spécial en eux-mêmes.\n\nUne bonne habitude à retenir : laissez une ligne vide avant et après la ligne horizontale. Ce n'est pas une obligation absolue pour tous les lecteurs (parseurs) de fichiers Markdown, mais c'est la manière la plus sûre d'éviter les problèmes, surtout avec `---` qui peut être interprété comme un titre de niveau 2 en syntaxe Setext.\n\n```markdown\nVoici un paragraphe.\n\n---\n\nVoici un autre paragraphe.\n```\n\n## Tirets, astérisques ou underscores : lequel choisir ?\n\nSur le plan fonctionnel, il n'y a aucune différence. Le choix relève surtout de la convention.\n\n- `---` est la forme la plus courante. On la retrouve partout dans les README GitHub, la documentation et les articles.\n- `***` est parfois utilisé dans des contenus plus éditoriaux, car certains le trouvent plus visuel dans le texte brut.\n- `___` fonctionne très bien aussi, mais reste plus rare.\n\nLe plus important est la cohérence. Mieux vaut choisir une syntaxe et s'y tenir dans tous vos fichiers. En pratique, `---` est le standard.\n\n## Les erreurs les plus fréquentes\n\n### Le piège du titre Setext\n\nSi vous écrivez ceci :\n\n```markdown\nUn texte\n---\n```\n\nMarkdown ne rendra généralement pas une ligne horizontale. Il transformera `Un texte` en titre de niveau 2.\n\nLa solution la plus sûre consiste à encadrer le séparateur avec des lignes vides :\n\n```markdown\nUn texte\n\n---\n```\n\n### La confusion avec le frontmatter YAML\n\nSi vous utilisez du frontmatter dans vos fichiers Markdown, ce qui est commun avec Nuxt Content, Astro, Hugo, Jekyll ou d'autres générateurs de sites statiques, votre document commence souvent comme ceci :\n\n```markdown\n---\ntitle: Mon article\ndate: 2026-04-13\n---\n```\n\nIci, les `---` ne représentent pas une ligne horizontale. Ils servent à délimiter les métadonnées.\n\nLa confusion arrive surtout quand le frontmatter est mal fermé. Dans ce cas, le parser peut produire un rendu incohérent. Il faut donc toujours vérifier que le bloc est bien ouvert et fermé correctement.\n\n### Les espaces entre les caractères\n\nLes syntaxes suivantes sont valides :\n\n```markdown\n- - -\n* * *\n_ _ _\n```\n\nElles produisent elles aussi une balise `\u003Chr>`. Certaines personnes les utilisent pour améliorer la lisibilité du fichier source, mais ce n'est pas indispensable.\n\n## Comment cela se comporte sur GitHub\n\nGitHub Flavored Markdown accepte les trois syntaxes.\n\nQuelques remarques utiles :\n\n- dans les **README** et les wikis, `---` est la forme la plus fréquente\n- dans les **issues** et les **pull requests**, les lignes horizontales fonctionnent aussi très bien pour séparer le contexte de la demande\n- dans **GitHub Pages**, un `---` placé tout en haut du fichier sera interprété comme du frontmatter\n\nExemple courant dans une issue :\n\n```markdown\n## Bug report\n\nÉtapes pour reproduire :\n1. Ouvrir l'application\n2. Cliquer sur \"Save\"\n\n---\n\n**Expected:** le fichier est enregistré\n**Actual:** erreur 500\n```\n\n## Comment cela se comporte dans Obsidian\n\nObsidian prend en charge `---`, `***` et `___`. En pratique, `---` est la syntaxe la plus utilisée.\n\nUn point à connaître : Obsidian utilise aussi `---` pour le frontmatter YAML. Si vous placez une ligne horizontale juste après ce bloc, il vaut mieux garder une ligne vide pour rester compatible avec les autres renderers Markdown.\n\nEn mode lecture comme en aperçu live, Obsidian rend la ligne sous la forme d'un séparateur visuel fin, adapté au thème actif.\n\n## Peut-on changer son épaisseur ou son style ?\n\nLe Markdown standard ne permet pas de définir l'épaisseur, la couleur ou l'espacement d'une ligne horizontale. `---` produit simplement un `\u003Chr>`.\n\nSi vous avez besoin d'un rendu personnalisé, vous avez deux options.\n\n### Option 1 : le CSS externe\n\nPour un site ou un blog, c'est la meilleure solution :\n\n```css\nhr {\n  border: none;\n  border-top: 3px solid #333;\n  margin: 2rem 0;\n}\n```\n\nCela vous donne le contrôle sur l'épaisseur, la couleur, la largeur et les marges.\n\n### Option 2 : le CSS inline dans le HTML\n\n```markdown\n\u003Chr style=\"border: 2px solid red;\" \u002F>\n```\n\nCela dépend de l'outil de rendu. Certains acceptent le HTML inline, d'autres le filtrent partiellement ou complètement. Par exemple, GitHub accepte certaines balises HTML, mais nettoie les styles inline, donc cet exemple n'y donnera pas le rendu attendu. C'est moins fiable, donc mieux vaut l'éviter si vous voulez conserver un Markdown propre.\n\nLa bonne approche est généralement la suivante : gardez `---` dans le contenu, et gérez le style dans la couche CSS.\n\n## Peut-on mettre une ligne horizontale dans un tableau ?\n\nNon. Dans un tableau Markdown, la syntaxe `|---|---|` sert uniquement à séparer l'en-tête des colonnes.\n\n```markdown\n| Nom   | Rôle     |\n| ----- | -------- |\n| Alice | Dev      |\n| Bob   | Designer |\n```\n\nIci, la ligne `|-------|-----------|` ne représente pas une ligne horizontale indépendante. Elle fait partie de la structure du tableau.\n\nSi vous avez besoin d'une vraie séparation visuelle, le plus simple est souvent de découper le contenu en deux tableaux, avec une ligne horizontale entre les deux.\n\n```markdown\n| Équipe A | Rôle |\n| -------- | ---- |\n| Alice    | Dev  |\n\n---\n\n| Équipe B | Rôle     |\n| -------- | -------- |\n| Bob      | Designer |\n```\n\n## Référence rapide\n\n| Syntaxe | Valide ? | Remarque                                                                         |\n| ------- | -------- | -------------------------------------------------------------------------------- |\n| `---`   | Oui      | La forme la plus courante. Attention au piège des titres Setext.                 |\n| `***`   | Oui      | Une bonne alternative si vous voulez éviter toute confusion avec le frontmatter. |\n| `___`   | Oui      | Plus rare, mais pris en charge partout.                                          |\n| `- - -` | Oui      | Les espaces sont autorisés.                                                      |\n| `----`  | Oui      | Plus de trois caractères fonctionne aussi.                                       |\n| `--`    | Non      | Deux caractères ne suffisent pas.                                                |\n\n---\n\nLes lignes horizontales font partie des éléments Markdown les plus simples, mais ce sont aussi ceux qui génèrent des petits pièges agaçants : les titres Setext, le frontmatter YAML, ou les limites dans les tableaux.\n\nUne fois ces cas compris, vous pouvez utiliser `---` sans hésiter dans la plupart des documents.\n\nSi vous travaillez aussi avec des tableaux, vous pouvez lire notre guide dédié : [Tableau Markdown : Guide complet avec exemples](\u002Ffr\u002Fblog\u002Fmarkdown-tableaux-guide-complet).\n\nEt si vous cherchez un lecteur Markdown qui rend correctement les séparateurs, les tableaux, les blocs de code et le reste sur tous vos appareils, notre application Fude est conçu précisément pour cela.\n\n📌 [Téléchargez Fude](\u002Ffr#download)\n",[809,812],{"locale":810,"slug":811},"en","how-to-add-horizontal-line-markdown",{"locale":813,"slug":814},"fr","comment-ajouter-une-ligne-horizontale-markdown",{"title":760,"path":759,"stem":816,"description":817,"children":-1},"fr\u002Fblog\u002F2.markdown-tableaux-guide-complet","Apprenez à créer, aligner et formater des tableaux Markdown. Couvre la syntaxe, les cellules multilignes, les solutions de fusion et le comportement spécifique aux outils comme GitHub, Obsidian, et plus.",{"title":819,"path":820,"stem":821,"description":822,"children":-1},"Markdown et IA : pourquoi tous les LLMs ont adopté ce format","\u002Ffr\u002Fblog\u002Fpourquoi-ia-repond-en-markdown","fr\u002Fblog\u002F4.pourquoi-ia-repond-en-markdown","Les LLMs produisent du Markdown à chaque réponse. Ce n'est pas un hasard : efficacité en tokens, structure sémantique, corpus d'entraînement. Voici pourquoi tous les LLMs ont adopté le Markdown comme format natif, et ce que ça change pour vous.",1776593810559]