如何在markdown文件中的特定部分放置标记?例如将div放在两个列表周围,然后将另一个div放在其余内容周围。
以此为例:
降价
* Eggs
* Flour
* Sugar
Text goes here
输出
<div class="section1">
<ul>
<li>Eggs</li>
<li>Flour</li>
<li>Sugar</li>
</ul>
<div class="section2">
<p>Text goes here</p>
</div>
答案 0 :(得分:6)
我猜你想要这样的东西:
首先,&#34;常规&#34;您不想显示成分和准备的页面的布局文件:
/_layouts/default.html
:<!DOCTYPE html>
<html>
<head>
<title>{{ page.title }}</title>
</head>
<body>
<h1>{{ page.title }}</h1>
{{ content }}
</body>
</html>
这里没什么特别的,只是一个非常基本的布局文件。
然后,您实际想要显示食谱的页面的第二个布局文件:
(我称之为&#34;食谱&#34;,因为&#34;成分&#34;&#34;准备&#34;听起来像你正在建立一个关于烹饪的网站)
/_layouts/recipe.html
:---
layout: default
---
<div class="ingredients">
<ul>
{% for item in page.ingredients %}
<li>{{item.name}}</li>
{% endfor %}
</ul>
</div>
<div class="preparation">
{{ content }}
</div>
现在你可以创建这样的页面,在这里你可以将成分列表放入YAML前面的内容和内容中的准备:
---
layout: recipe
title: Cake recipe
ingredients:
- name: sugar
- name: milk
- name: eggs
---
Here's the "how to prepare the cake" text
这将生成以下HTML:
<!DOCTYPE html>
<html>
<head>
<title>Cake recipe</title>
</head>
<body>
<h1>Cake recipe</h1>
<div class="ingredients">
<ul>
<li>sugar</li>
<li>milk</li>
<li>eggs</li>
</ul>
</div>
<div class="preparation">
Here's the "how to prepare the cake" text
</div>
</body>
</html>
关于你的问题:
我不确定它是否会起作用,因为我需要用一些粗体格式化成分列表,例如:100ml 水我不认为我能做到这一点在YAML?
您可以将页面前面的成分和数量分开:
---
layout: recipe
title: Cake recipe
ingredients:
- name: sugar
amount: 1 pound
- name: milk
amount: 100ml
- name: eggs
amount: 3
---
Here's the "how to prepare the cake" text
新的布局文件/_layouts/recipe.html
:
---
layout: default
---
<div class="ingredients">
<ul>
{% for item in page.ingredients %}
<li>{{item.amount}} <b>{{item.name}}</b></li>
{% endfor %}
</ul>
</div>
<div class="preparation">
{{ content }}
</div>
生成的HTML:
<!DOCTYPE html>
<html>
<head>
<title>Cake recipe</title>
</head>
<body>
<h1>Cake recipe</h1>
<div class="ingredients">
<ul>
<li>1 pound <b>sugar</b></li>
<li>100ml <b>milk</b></li>
<li>3 <b>eggs</b></li>
</ul>
</div>
<div class="preparation">
Here's the "how to prepare the cake" text
</div>
</body>
</html>