2014-01-29 454 views
6

我一直在尋找教程如何爲一個網站,可以摺疊在&出一個簡單的側邊欄菜單通過單擊側邊欄菜單旁邊的主頁按鈕,非常類似於通過點擊漢堡圖標在應用程序中打開主菜單。 我無法真正找到我在找什麼,也許我沒有使用正確的術語。css爲側欄菜單摺疊進出

任何幫助表示讚賞, THX

+0

你必須使用JavaScript來做到這一點,CSS是不夠的。 – Njol

+0

有許多代碼片段標有[側欄](http://bootsnipp.com/tags/sidebar),你可以看看。 – hyip

回答

12

不知道你想要什麼樣的解決方案,純CSS,JS和jQuery等,但這裏有一些鏈接,讓你開始。

嘗試搜索 「的CSS滑出邊欄」 或類似的規定

jQuery的例子

http://www.hongkiat.com/blog/building-mobile-app-navigation-with-jquery/

http://www.berriart.com/sidr/

http://mmenu.frebsite.nl/

http://tympanus.net/codrops/2013/07/30/google-nexus-website-menu/

CSS實施例

http://css-tricks.com/off-canvas-menu-with-css-target/

+0

我的意思是使用CSS,謝謝你,這就是我一直在尋找!順便說一句,使用jQuery比使用純CSS還是隻是一個選擇問題? –

+0

那麼,CSS解決方案並不總是跨瀏覽器兼容的,因爲並非所有的瀏覽器都支持所有的CSS屬性(老版本的Internet Explorer是最差的競爭者),所以你必須在不同的瀏覽器上測試它。另一方面,JS/jQuery解決方案應該可以在所有瀏覽器中工作,但加載時間稍慢,如果某人由於某種原因導致JavaScript關閉,您的導航將會分裂。 –

4
<div id="slideout"> 
    <img src="http://eduardovalencia.com/wp-content/uploads/2011/03/FEEDBACK-LOGO-PURPLE.jpg" alt="Feedback" /> 
    <div id="slideout_inner">Hi Welcome to Stack Overflow</div> 
</div> 

CSS

#slideout { 
    position: fixed; 
    top: 40px; 
    left: 0; 
    -webkit-transition-duration: 0.3s; 
    -moz-transition-duration: 0.3s; 
    -o-transition-duration: 0.3s; 
    transition-duration: 0.3s; 
} 
#slideout_inner { 
    position: fixed; 
    top: 40px; 
    left: -250px; 
    -webkit-transition-duration: 0.3s; 
    -moz-transition-duration: 0.3s; 
    -o-transition-duration: 0.3s; 
    transition-duration: 0.3s; 
} 
#slideout:hover { 
    left: 250px; 
} 
#slideout:hover #slideout_inner { 
    left: 0; 
} 
img { 
    width:100px; 
    height:100px; 
} 

Working Fiddle

Source Code

Demo
+0

看起來不錯,但它不完全是我所需要的,我需要在點擊上滑出而不是懸停。不管怎麼說,還是要謝謝你! –

+0

@ user3004304通過我提供的鏈接,希望它可以幫助 –

+0

非常好!這正是我所尋找的:-)非常感謝! – peter70

0

我已經改變的CSS代碼(例如,從Amarnath),一點點。僅用於測試目的。所以我可以更好地理解這個功能。也許它可以幫助別人......

#slideout { 
    position: fixed; 

    top: 0px; 
    left: 0; 
    width: 10px; 
    height: 100px; 

    background-color: yellow; 
    -webkit-transition-duration: 0.3s; 
    -moz-transition-duration: 0.3s; 
    -o-transition-duration: 0.3s; 
    transition-duration: 0.3s; 
    -webkit-transition-duration: 0.3s; 
} 

#slideout:hover { 
    left: 180px; 
    background-color: cyan; 
} 

#slideout_inner { 
    position: fixed; 

    top: 0px; 
    left: -180px; 
    width: 180px; 
    height: 100px; 

    background-color: red; 
    -webkit-transition-duration: 0.3s; 
    -moz-transition-duration: 0.3s; 
    -o-transition-duration: 0.3s; 
    transition-duration: 0.3s; 
} 

#slideout:hover #slideout_inner { 
    left: 0; 
    background-color: magenta; 
} 
0

對不起,如果它很無聊,但這裏又是一個例子。在這裏,我們有一個horizo​​ntaly可摺疊條:

#slideout { 
    position: fixed; 

    top: 0px; 
    height: 10px; 
    left: 0px; 
    right: 0px; 

    background-color: yellow; 
    -webkit-transition-duration: 0.3s; 
    -moz-transition-duration: 0.3s; 
    -o-transition-duration: 0.3s; 
    transition-duration: 0.3s; 
    -webkit-transition-duration: 0.3s; 
} 

#slideout:hover { 
    top: 50px; 
    background-color: cyan; 
} 

#slideout_inner { 
    position: fixed; 

    top: -50px; 
    height: 50px; 
    left: 0px; 
    right: 0px; 

    background-color: red; 
    -webkit-transition-duration: 0.3s; 
    -moz-transition-duration: 0.3s; 
    -o-transition-duration: 0.3s; 
    transition-duration: 0.3s; 
} 

#slideout:hover #slideout_inner { 
    top: 0px; 
    left: 0px; 
    right: 0px; 
    background-color: magenta; 
} 

的顏色是痘痘咬creazy,但這SERV爲更好地說明。乾杯!