在blogger(blogspot) 標題列下加入一個水平列的功能選單(menu bar)
當部落格成立一段時間後, 文章數量及分類標籤變多, 加入部落格的小工具也增加, 此時對讀者而言, 想找些資訊或文章, 可能會不知從何下手.
可以考慮在標題列下方, 文章上面加入一列的功能選單. 選單就可以設定其他網頁連結,把一些原本放在側邊欄(sidebar)的資訊, 移進來.
這個方法, 對沒有特殊版型的部落客來說, 只要兩個步驟.
不過, 首先要先確定你的樣板是否可以在標題列下加一個網頁元素? 如下圖.
如果不能的話, 請參考這篇文章.新增Blogger Header及Post的網頁元素,可加入圖片或Adsense
記得先備份樣板.
1. 範本--> 修改HTML
在 #header-wrapper {..} 之後, 加入以下程式碼
#navmenubar{
height:25px;
line-height:23px;
margin:0 1px;
background:#1B90DD;
color:#ffffff;
}
#navmenubar li{
float:left;
list-style-type:none;
border-left:1px solid #ffffff;
border-top:1px solid #ffffff;
border-right:1px solid #777D85;
border-bottom:1px solid #777D85;
white-space:nowrap;
}
#navmenubar li a{
display:block;
padding:0 10px;
font-size:12px;
font-weight:normal;
text-transform:uppercase;
text-decoration:none;
background-color:inherit;
color: #ffffff;
}
* html #navmenubar a {width:1%;}
#navmenubar .selected,#navmenubar a:hover{
background:#80b0da;
color:#ffffff;
text-decoration:none;
}
如果想改背景色或字體色, 就自己調 background 及color 吧!
2. 然後到 範本 --> 網頁元素
在標題列下, 加入一個新的網頁元素. 加入要連結出去的程式碼.如下圖, 紅字部分是網址, 藍字部分是顯示出來的文字.
或是直接copy下述程式碼, 再自行修改吧!<div id="navmenubar">
<li><a href="網址">文字</a></li>
</div>
效果像這樣..
152 comments:
7/21/2007
我試了一下,發現我沒辦法做出水平的效果,
只能是垂直的Menu,
是因為版型的原因嗎?
7/21/2007
哈哈....
查了半天....
是我自己把Code放錯位置....
現在要來調顏色了!
謝謝你的秘訣喔!
7/21/2007
roy, 很高興你成功了! XD
7/25/2007
hello,我可以問一下flash slideshow作banner問題嗎????
我在這網站http://www.slide.com/main, 給我的相片作一個slide show. 我也是在blogger的標題例下加html/java script,貼上我slide的code. 但問題是preview一切ok, save後sidebar就會擠到body來...
我要到哪改html呢??? 3q3q
7/25/2007
Husky你好, 有幾個可能性.
1. 你先找一下 #header-wrapper是否有設定 height? 如果原先就有設定height, 那麼新增一個網頁元素, 一旦超過這個高度, 就可能擠到body了.
2. #header-wrapper 是否有設width? 同樣也是超出範圍的問題, 你可以先比較slide上的width, height 是否超出header wrapper的範圍? 再去調整一下. :)
7/30/2007
hello,
我在另一篇文章裡照你的方式改之後
可以在標題列下加一個網頁元素
但是仍然沒有#header-wrapper
這個關鍵字出現
請問你的程式碼應該放在哪個section後面呢?
7/30/2007
星子, 試看看放在這段
body #layout #header {
XXX} 之後. :)
8/02/2007
改好嚕!(放炮慶賀)
這個功能我好早就想要了!
謝謝你啊~~~
感恩
8/02/2007
星子, 恭喜囉! XD
9/11/2007
我已經成功加好了功能列,但我想像你的一樣,功能列可以蓋在標題列的照片上,要如何做呢?
版主你的排版真是賞心悅目~
9/12/2007
謝謝楊兄的讚美. 其實我使用的方式是用絕對位置, 這會依不同版型, 而會有不同的設定, 所以我才沒有在文章中提到. 如果您有興趣,可以參考我的程式碼, 再調整寬度,及顏色. :)
#navmenu{
width:390px;
top: 473px;
position: absolute;
text-align: center;
font: bold 11px/11px Verdana, Lucida Grande, Helvetica;
line-height:23px;
margin-left: 75px;
color:#ffffff;
}
#navmenu li{
float:left;
list-style-type:none;
border-left:1px solid #ffffff;
border-top:1px solid #ffffff;
border-right:1px solid #777D85;
border-bottom:1px solid #777D85;
background:#27408b;
white-space:nowrap;
}
#navmenu li a{
display:block;
padding:0 10px;
font-size:10px;
font-weight:normal;
text-transform:uppercase;
text-decoration:none;
background-color:inherit;
color: #ffffff;
}
* html #navmenu a {width:1%;} #navmenu .selected,#navmenu a:hover{
background:#80b0da;
color:#ffffff;
text-decoration:none;
}
* +html #navmenu a {width:1%;} #navmenu .selected,#navmenu a:hover{
background:#80b0da;
color:#ffffff;
text-decoration:none;
}
9/12/2007
Skyvee 你好,我發現若是將你整段碼貼上,標題列會變成垂直,而非並排。
像這樣:
●blogger小玩意
●blogger技巧
若是只改貼這段
#navmenu{
width:390px;
top: 473px;
position: absolute;
text-align: center;
font: bold 11px/11px Verdana, Lucida Grande, Helvetica;
line-height:23px;
margin-left: 75px;
color:#ffffff;
}
可以達到我要的效果,但我的sidebar就被擠到最下面了,並且功能列變成透明的,無法改顏色。
其實有點想放棄了,蠻難弄的,必竟自己對這些語法是一竅不通。
謝謝Skyvee的不吝分享與幫忙。
9/12/2007
我剛看了您的部落格, 目前這樣子挺讚的啊!
我的那段code, 應該還要調整top位置, 寬度的, 有可能是因為這些值, 導致您的sidebar被影響了.
9/13/2007
終極目標是想Skyvee你的那樣,不過目前我功力還不太夠,等我更懂些了再來做修改囉,多謝Skyvee的鼎力相助。
9/13/2007
好的, 楊兄, 到時候再一起討論. :)
9/20/2007
站長您好,我已經順利加入水平列功能選單了,感謝。
但我想讓各方塊選單不是左右緊密連在一起,而是留有一定的空隙,要如何做呢?
9/20/2007
xs,請調整 navmenubar li a 內, padding的值!
9/28/2007
skyvee, 拍謝,又來叨擾了 orz
我想要請問如果我想要做成兩排按鈕,不知道這樣的可行性如何?(我是程式麻瓜,只會自己看教學學習而已)
我會有這樣的念頭的原因是因為我的部落格主要是寫旅行記事,將來會有很多新增地點,我剛剛有試著增加很多,但是他自動折行下來,卻也造成下排全部變成背景色,而不是依文字多寡去自動調整。(我這樣講會不會很模糊啊...orz)
簡單說就是我希望可以做成兩排按鈕,這樣有可能嗎?
非常的感謝你 <(_ _)>
9/28/2007
skyvee,
哈哈,我自己試成功了!
剛剛跑去洗澡,邊洗邊想是不是有別的繞道方式可以達到我要的目的,於是我增加了一個新的指令 #navmenubar1 然後就成功啦!哈哈,只要把 top 位置改一下,然後網頁元素標題改一下就 ok 了,不過目前這樣設定的版面有點醜,還在找最適版型。 :-D
9/28/2007
有時候就是這樣, 換個事情做一下, 就突然有靈感了! XD 雙羊很有創意呢!
9/28/2007
所以我說我的部落格是拼拼湊湊出來的,就是這個道理 XD
10/23/2007
您好~~您的教學很棒很實用~~
笨貓在拿回去修改時, 沒辦法讓bar置中,
就算在網頁元素裡,
加上<div align="center">也沒用
這該怎辦呢??
10/23/2007
貓, 在navmenubar內, 用margin-left 的方式調看看?
10/24/2007
skyvee大哥:您的建議成功了, 但是我不明白, 為何使用
margin : 0 auto 0 auto ; 以及
margin-left: auto; margin-right: auto ; 無效呢?
參考CSS指令上, margin的左右設auto時, 會自動置中滴呀...
10/24/2007
貓, menu bar 置中, 似乎要採其他作法. 這部分, 我就沒深入研究了. :)
10/26/2007
如果我想把Google Search放左去要怎樣...
我的變成這樣><
http://rainlesss.blogspot.com/
10/26/2007
小雨, 試看看把height, line-height的數值調成大於30px.
11/15/2007
不好意思,請問skyvee,我試了一下,
但怎麼沒辦法改字體的顏色呀?
還有,請問長度要怎麼調呢?
嗯,我也照skyvee的方法做了標籤雲,
成功了,很開心,多虧了skyvee,謝謝!
但標籤雲有些標籤的字卻會被切到,請問這是怎麼回事呢?
skyvee有空再回覆,謝謝唷!
11/15/2007
啊..哈...我亂改改好了...
但標籤雲的問題還在,如果skyvee有空再幫我回覆吧!
謝謝耶~開心
11/16/2007
eatin, 看來是你的sidebar設定與邊框間矩的問題,不過在標籤雲格式裡也可以修改, 將margin:0 0 0 3px;padding:0, 其中0的部分, 改成數字 如 5 以上 看看.
11/16/2007
skyvee我改好了,最後我把有0的地方都改一改,就OK了欸....
哈哈,謝謝吶!多虧了你的幫忙!
11/16/2007
eatin, 不用客氣, 恭喜修改成功囉! :)
11/20/2007
在下腦殘漏掉整個步驟1,不過發現反而更符合小站的需求(因為原本就只打算加一個連結而已)...^^a
我已把這篇文章的連結分享在小站了,謝謝skyvee~~以後等我有很多資訊可以連結的時候一定再來好好學習。
11/20/2007
Jenge, 別這麼說, 第一步驟主要是 設定格式, 如果你只加一個連結, 其實就像是加入個網頁元素, 反而讓你試對了! :)
12/17/2007
耶我也成功了,也修改了喜歡的顏色。
我是最近才加入BLOG的新手,您這裡真的很多實用文章呢。
12/17/2007
小e, 別客氣, 我只是把自己改部落格的經驗記錄下來, 大家互相研究交流囉! :)
12/28/2007
Hi! skyvee兄!
我照著您的心得教學也為我的部落格加上標題列了,多謝您提供的寶貴資訊!!
12/28/2007
kansasray, 不客氣囉!我們一起交流囉!:)
1/05/2008
skyvee請問一下
我試了之後..用IE瀏覽時下方怎會多出一條藍線..而且標題列跑到中間去了..不過我用firefox看..就是我要的樣子..沒多出一條藍線且沒跑到中間去..你可以幫我看看嗎??謝謝!!
1/05/2008
呃...好像亂搞搞好了..
應該是ok了= =..
1/05/2008
木白柏, 有時候不見得是亂搞的囉!改部落格, 就是這種樂趣, 自己試出來的成就感應該很過癮吧! ^^
1/15/2008
我失败了。
可否帮我看看。。
1/15/2008
king yau
您是否已把程式移除了呢?因為我好像找不到相關的程式碼呢?不知道您的問題出在哪了?
1/17/2008
1/17/2008
1/17/2008
哈哈。。。
我成功啦。
但好像有点丑,请教我该如何改进?
谢谢
1/17/2008
king yau, 可能是在header的框線中, 又加有框的標籤 , 感覺線多一點, 或許把border color 調一下?
1/17/2008
该怎么把它放得跟你一样?请赐教。谢谢
1/17/2008
该怎么把它放在线的下方?
1/17/2008
king yau,可以參考我回答大鵬的語法,有詳細的程式.
在 #navmenu{ ..}內,主要是加入top: 473px;(代表與頁首的距離)的參數,及改 position: absolute;(指定絕對位置)
1/25/2008
初次留言,感謝你的熱心分享,沒想到新浪也能套用這個水平按鈕,用這個會比起找文章分類還來得輕鬆,感謝你。
1/25/2008
黑人您好, 很高興認識您, 也謝謝您的留言及心得分享.^^
1/26/2008
嗨嗨
我想請問一下
我在使用這個語法的時候
因為HTML裡沒有找到#header-wrapper {..}跟body #layout #header {
XXX}這兩個字串
所以我就直接放在 #header { 前面
但是我發現所呈現出來的效果
並不是像你blog那樣
我並沒有跟標題的區塊那邊結合
而且我的背景顏色(綠)似乎就一直延伸到全部
不知道如何修改
請您幫忙一下
謝謝
http://olly69.blogspot.com/
1/26/2008
想要調整位置的話請參考上面Skyvee於9/12回復楊大鵬的程式碼。
以下為我的程式碼,供參考。
#navmenubar{
width:650px;
top:154px;
position: absolute;
text-align:center;
height:25px;
line-height:23px;
margin:0 1px;
background:#none;
color:#666666;
}
重點是要根據自己的版面調整width和top的值,想要越靠近標題top值就要變小。
1/26/2008
olly,我的版面就像小E說的, 在回覆大鵬留言中的那段程式碼.是採用絕對位置的方式, 才能設到header區塊, 請參考一下囉!
小E,很感謝你抽空幫忙回答呢! 好感激!真的! ^^
1/27/2008
呵呵,沒什麼啦,舉手之勞而已,我也常常從你這裡撿東西回去啊。
1/27/2008
哈
感謝樓上兩位
我弄好啦 ~
另外我想再請問一下
要如何讓點選後視窗是開在新分頁呢 ??
謝謝
1/27/2008
Olly, 開新視窗的語法, 是在連結語法中, 加入 target="_blank" , 如<a href="網址" target="_blank">XXX</a>
小E, ^^
1/31/2008
Skyvee大~
在下試過好多次,都無法解決小弟的問題!
小弟是使用mac,在sarfary瀏覽器上觀看一切正常...
但只要用win上的ie觀看,格式就會跑掉...(使用您的程式碼在header的地方放上HTML,文章會往右偏移,放在sidebar就正常...)
目前是放在sidebar...請Skyvee解救!
1/31/2008
還有就是在mac sarfari上是水平效果,但是在win IE上就變成垂直﹦﹦是我程式碼放錯嗎?
1/31/2008
歷經測試,上述的問題有解決方法...
連結自述不超過三個中文字,文章部份就不會跑掉偏左,文章至中...
還是想了解,問題點在哪...請教Skyvee~
1/31/2008
謝謝自然捲的留言.
目前我用FF看你的blog, 格式還是跑掉了, 文章會擠到右邊去...IE下是OK的.(你目前還是放在sidebar?)
如果放在header下, 會不正常,這個問題有可能跟你的header 區塊所設的margin, padding, 長寬度有關, 因為menubar超過了header的長寬限制, 才會不正常. 可試著調看看header部分, 或是menubar的font size 改小一點, 如 font-size:10
2/02/2008
感謝你!上述問題我已經解決。
我現在想把MenuBar居中,試過幾個元素都沒辦法,不知道是否要加入其他語法元素呢?