我需要在網頁上實現導航菜單,可能有幾個級別的選項卡。每當CSS處於我的控制之下時,我都會使用CSS方式,但現在我在使用擴展的CSS庫(本例中爲Twitter的Bootstrap)時遇到了問題。如何實現導航「選擇」項
首先,這是我用過的CSS方式。例如HTML:
<html>
<head>
<title>Example page</title>
</head>
<body class="articles">
<div class="navigation">
<ul>
<li class="frontpage"><a href="#">Frontpage</a></li>
<li class="articles"><a href="#">Articles</a></li>
</ul>
</div>
<p>Blah blah.</p>
</body>
</html>
...和CSS:
body.frontpage div.navigation li.frontpage,
body.articles div.navigation li.articles {
background-color:red;
color:white;
}
夠簡單。在適當的時候只需要改變身體的課程。
現在,Bootstrap似乎使用基於類的樣式來選擇導航項目(頂欄,標籤,藥丸)。例如:
...
<div class="navigation">
<ul class="tabs">
<li class="active"><a href="#">Frontpage</a></li>
<li><a href="#">Articles</a></li>
</ul>
</div>
...
我最初以爲做一些像
navigation = ('frontpage',)
# or
navigation = ('articles', 'categories', 'foo',)
控制器
,然後通過這個元組的模板,但不知何故,有「做錯了」這個氛圍。
所以問題是:由於我實際上必須在模板中打印類選擇,因此如何跟蹤當前位置(如導航樹中此頁所在的位置),因爲頁面可能有多個級別的標籤或其他導航項目?有沒有一種首選的方法來做到這一點?
我在使用金字塔的路線風格與Mako模板,但一般的答案也讚賞。
改變通過活動鏈接(例如在Jinja2的,但它應該是相似的)
更多信息只注意到你想每個項目都有自己的班級。這只是將其他元素傳遞給每件事物。 '
這很接近我最終做的。有點笨重,但它的工作,所以我會接受這個答案。 – tuomur
很酷我實際上改變了我的設置,甚至更好...每個導航項目是一個類標題,href和活動屬性的對象,我只是循環他們顯示導航,我發現它更好。 –