Подтвердить что ты не робот

Складной заголовок в Markdown to html

Наша внутренняя wiki git -lab работает с Markdown. Я сделал несколько резюме статей и хочу опубликовать их в нашей вики, таким образом, что, если я нажму на заголовок, он должен развернуться и текст станет видимым, в основном как в этом пример

Имеет ли Markdown эту функцию expand/collapse/fold?

4b9b3361

Ответ 1

Короткий ответ: Нет, Markdown не предлагает такую ​​функцию напрямую, но с некоторой работой вы можете создать что-то, что работает.

Для такой функции вам понадобится некоторый CSS и/или JavaScript для управления анимациями и т.д. Хотя вы можете использовать такую ​​функцию для работы с любым HTML-кодом, это не очень удобно для вывода Markdown.

В идеале каждый разборный раздел будет обернут в div:

<div id="section1">
  <h1>Section 1</h1>
  <p>Section 1 content</p>
  <div id="section1-1">
    <h2>Section1-1</h2>
    <p>section 1-1 content</p>
  </div>
    <div id="section1-2">
    <h2>Section1-2</h2>
    <p>section 1-2 content</p>
  </div>
</div>

Затем вы можете использовать CSS/JavaScript для свернуть отдельные разделы. Однако у Markdown нет концепции разделов. Вместо вышеуказанного Markdown предоставит вам этот плоский документ:

<h1>Section 1</h1>
<p>Section 1 content</p>
<h2>Section1-1</h2>
<p>section 1-1 content</p>
<h2>Section1-2</h2>
<p>section 1-2 content</p>

Решение потребовало бы петли через весь документ, разбивая его на различные разделы и обертывая каждый раздел в div. Вы можете найти пару примеры в качестве расширений к Python-Markdown Parser. Однако с любой информацией о среде, в которой вы работаете, немного сложнее указать вам правильное направление. Кроме того, Stackoverflow не должен быть сайтом рекомендации инструмента. Однако, наблюдая, как другие решили проблему (в примерах, на которые я указал), вы должны иметь возможность разработать аналогичное решение.

После того, как вы соберете разделы правильно, затем немного JavaScript, чтобы сбросить/свернуть отдельные разделы, позаботится об остальном. Тем не менее, это отдельная проблема, о которой многие раз спрашивали и много раз ответили. См. Некоторые "связанные" вопросы, перечисленные на боковой панели для решения этой части проблемы.

Возможно даже, что существуют некоторые библиотеки JavaScript, которые будут использовать простой HTML-контент, обернуть секцию и реализовать функцию fold/collapse все в одном. Тем не менее, такая библиотека может быть немного тяжелой и замедлить ваш сайт, поэтому продолжайте использовать катион.

Ответ 2

Попробуйте:

<details>
  <summary>Your header here! (Click to expand)</summary>
  Your content here...
  > markup like blockquote should even work on github!
  more content here...
</details>

Вы можете попробовать такие вещи здесь:

    <details>
      <summary>Your header here! (Click to expand)</summary>
      Your content here...</br>
      (markup only where supported)</br>
      more content here...</br>
    </details>