2012-03-16 81 views
0

我一直在試圖建立這個導航數週,現在總是出錯。導航問題jQuery CSS HTML

我想要做的是有主要導航,當你結束主要導航,次要導航將出現在它的下面和一點點的權利。如果您將鼠標懸停在主要導航欄或輔助導航欄上,輔助導航欄將顯示:無。

您可以在http://willruppelglass.com/index.php

看到這裏,這是我的HTML

<div class="headerNav"> 
<ul> 
<li><a href="#">Home</a></li> 

<li class="primary-nav-item"><a href="#" class='galleryNavToggle'>Gallery</a> 
<ul style="display:none;"> 
<li><a href="#">Categoies</a></li> 
<li><a href="#">Products</a></li> 
</ul> 
</li> 

<li class="primary-nav-item"><a href="#" class='galleryNavInfoToggle'>Info</a> 
<ul style="display:none;"> 
<li><a href="#">F.A.Q.</a></li> 
<li><a href="#">CV</a></li> 
<li><a href="#">Artist Bio</a></li> 
<li><a href="#">Video</a></li> 
<li><a href="#">Contact</a></li> 
</ul> 
</li> 

</ul> 
</div> 

我的CSS

.headerNav{ 
    color:#000; 
    margin:0 auto; 
    width: 1280px; 
    padding-top: 148px; 
} 

.headerNav ul{ 
    list-style-type:none; 
    margin:0; 
    padding:0 0 0 8px; 
} 

.headerNav li{ 
    float:left; 
} 

.headerNav ul a{ 
    font-size:24px; 
    color:#FFF; 
    display:block; 
    padding:0 55px 0 0; 
    text-decoration:none; 
    text-transform:capitalize; 

} 

.headerNav ul a:hover{ 
    color:#a40404; 
    text-decoration:none; 
} 

.headerNav ul ul li { 
    float: left; 
} 

.headerNav ul ul a { 
    font-size: 16px; 
    display:block;   
} 

JQUERY

$(document).ready(function(){ 
     $('.headerNav li.primary-nav-item').hover(
      function() { $('ul', this).css('display', 'block'); }, 
      function() { $('ul', this).css('display', 'none'); }); 
    }); 

其他注意事項,我有兩個d導航下面的ivs,這可能是爲什麼它不顯示,我可以得到它覆蓋這些divs?

<div class="headerDropShadow"></div><!--headerDropShadow--> 

<div class="contentWrapper"> 
<div class="content" id="content"> 
<div class="topContent"></div><!--topContent--> 
</div> 
</div> 

和他們的尊重CSS

.headerDropShadow{ 
    background:url(../images/headerShadow.jpg) repeat-x; 
    width:100%; 
    height:49px; 
} 

.topContent{ 
    background:url(../images/topContent.jpg) repeat-x; 
    width: 992px; 
    height:50px; 
    margin:0 auto; 
    position:relative; 
} 

一直作爲一個loooooong時間問題的任何幫助都將是巨大的,因爲這。

在先進的感謝, Ĵ

+1

恩,你有什麼問題? – 2012-03-16 21:40:47

+0

什麼是蓋在所有的地方!? – elclanrs 2012-03-16 21:44:39

+0

如果你看看http://willruppelglass.com/index.php你會注意到如果你把鼠標懸停在畫廊上,它和信息之間有一個巨大的空間,輔助導航根本不會顯示你需要的 – user1274810 2012-03-16 21:46:33

回答

0
.headerNav li ul { 
    position: absolute; 
    z-index: 999; 
} 

我還建議使用.clearfix hack作爲父ul元素。有關clearfix的更多信息,請點擊:http://nicolasgallagher.com/micro-clearfix-hack/。 在jQuery中嘗試使用.toggle(),僅僅因爲它需要更少的代碼^^。

+0

謝謝Paulooze,你是我的英雄,謝謝soooo多。 – user1274810 2012-03-16 22:01:02

0

對於初學者:

<style type="text/css"> 
    .headerNav ul { position: relative; z-index: 10000; } 
    .headerNav ul ul li { overflow: hidden; } 
</style> 

不要完全取代你有什麼 - 只需要添加這些屬性,那麼至少,你就可以看到你目前不能。然後你可以開始弄清楚JS發生了什麼事情。


更多的編輯

li.primary-nav-item { position: relative; } 
li.primary-nav-item ul { position: absolute; top: 32px; width: 600px; } 

這應該讓你足夠接近,你想完成。

+0

我剛更新了http://willruppelglass.com/index.php,但刪除了一個頁邊距:-48px,名爲.content,現在你可以看到它是secodary nav,我怎樣才能讓它超越.content類的頂部,但.content類需要它在哪裏。 – user1274810 2012-03-16 21:56:48

+0

jquery工作正常,我猜它是一個css定位的東西 – user1274810 2012-03-16 21:58:17