【发布时间】:2014-07-29 19:41:44
【问题描述】:
我试图在 Jekyll 中简单地设置我的活动链接的样式,但未能成功地让它们正常工作。
这是我试图让他们工作的网站:http://concisecss.github.io/concise.css,您可以在此处查看源代码:https://github.com/ConciseCSS/concise.css/tree/gh-pages。
我将这个 YAML 代码放在我的 _config.yml 中来定义我的顶级导航:
# Main Navigation
nav:
- text: Welcome
url: /concise.css/
- text: Why Concise
url: /concise.css/why-concise/
- text: Get Started
url: /concise.css/get-started/
- text: Documentation
url: /concise.css/documentation/layout/container/
- text: Add-Ons
url: /concise.css/add-ons/
然后在我的header.html 包含,这是我的导航所在,我有:
{% for link in site.nav %}
<li>
<a {% if link.url == page.url %}class="active"{% endif %} href="{{ link.url }}">{{ link.text }}</a>
</li>
{% endfor %}
但是,每当我在其中一个导航链接上时,都不会添加活动类(当你在上面时,链接应该是粉红色的。
其他一切都运行良好,所以我假设这可能只是我遇到的一个小问题。
编辑:这是我的一个页面上的前端内容:
---
layout: why-concise
title: Why Concise
permalink: /why-concise/
---
【问题讨论】:
-
您是否在您的个人页面 YAML 中设置永久链接? (永久链接:/concise.css/why-concise/)
-
是的!我刚刚将其添加到问题描述中。
-
啊,我明白了,这是否与您设置循环以使用 link.url 构建类有关?因此,当 _config.yml link.url 设置为 /concise.css/why-concise/ 时,它与 /why-concise/ 的页面 YAML 不匹配
-
是的,确切地说,如果您要设置各个页面的永久链接,它需要与您的 _config.yml 的变量完全相同,如果该循环能够正常工作。如果您没有运行 jekyll serve --watch,您可能还需要重新运行 jekyll 以使其解析对 YAML 的更改 - 取决于您拥有的版本。
-
尝试将 permalink: /concise.css/documentation/layout/container/ 添加到您的文档页面 YAML 中,看看是否有效