5

これを適切に行う方法について少し混乱しています。menu.html というテンプレート ファイルがあります。私は自分のサイトのすべてのページに menu.html を含めたいので、実行しましたが、うまくいきました{% include "menu.html" %}。私が行き詰まっているのは、メニューリンクをクリックすると、その色が赤に変わり、そのページにいる限り赤のままでなければならないということです.

メニューに A、B、C、および D へのリンクがあるとします。B ページにいる場合、B は赤で、その他はすべて黒である必要があります。

これを達成する方法についてのアイデアは何ですか?

4

1 に答える 1

8

これが最もクリーンなソリューションの1つであることがわかりました: http://djangosnippets.org/snippets/2421/

リンクが切れた場合に備えて、コードは次のとおりです。

CSS

ul.tab-menu li a {
  text-decoration: none;
  color: #000;
}

ul.tab-menu li.active a {
  color: #F00;
}

menu.html

<ul class="tab-menu">
    <li class="{% if active_tab == 'A' %}active{% endif %}"><a href="#">A</a></li>
    <li class="{% if active_tab == 'B' %}active{% endif %}"><a href="#">B</a></li>
    <li class="{% if active_tab == 'C' %}active{% endif %}"><a href="#">C</a></li>
</ul>

ページ「A」</h3>
{% include "menu.html" with active_tab='A' %}

ページ「B」</h3>
{% include "menu.html" with active_tab='B' %}

ページ「C」</h3>
{% include "menu.html" with active_tab='C' %}

于 2013-03-01T15:37:46.733 に答える