2012-08-28 17 views
6

Seçime göre kullanmak için özelleştirdiğim bu menüye sahibim. Sadece krom üzerinde iyi çalışır, ancak firefox çalışmıyor. Normal davranış şu şekildedir: menü odakta genişlediğinde bağlantılar görüntülenir (yardım ve çıkış) ve üzerlerine tıklarsanız aynı tarayıcıda başka bir sayfaya yönlendirilirsiniz. Firefox'ta yanlış davranış: menü si odağa genişletildi ancak bağlantılar (hep ve logoff) yönlendirmiyor.a href "#" ile çalışmaz: Firefox tarayıcısına odaklanma

<ul id="main"> 
       <li class="username" tabindex="1" > <a>USER</a> 
        <ul class="curent_buser"> 
         <li class="ai"><a class="jaximus"href="http://en.wikipedia.org/wiki/Wiki">Help</a></li> 
<li class="aj"><a class="jaximus" href="http://en.wikipedia.org/wiki/Wiki" name="logoff">Log Off</a></li>    </ul> 
       </li> 
      </ul> 

Bu neden firefox yapıyor ??? Son versiyonum ff: | Burada

bir keman örnektir: http://jsfiddle.net/RwtHn/1152/

cevap

5

Size "Yardım" veya bastırın anlık bir eleman odağı alır ve bu "devre dışı bırakır" hangi etkin, encompasing "Log Off" çünkü var kural:

#main li:focus ul, #main a:active + ul{ 
display:block; 
} 

Böylece bağlantı (veya daha spesifik linki kapsayan ül) linke tıklayın tamamlanmadan önce ortadan kaybolur.

En azından bu, firefox'un nasıl işlediği gibi görünüyor.

DÜZENLEME: Yukarıda kuralın seçici

#main li.username:active ul 

ekleyerek birlikte çalışmalıdır.

+0

evet biliyorum :) ama bunu nasıl düzeltebilirim ve neden sadece firefox'ta bu davranış vardır. – BurebistaRuler

+0

Peki, sadece tıklandığında görüntülenmesini ister misiniz? gezinmek de uygunsa, bunu yukarıdaki kurala ekleyin: "#main li.username: hover ul" – gabtub

+0

CSS kuralını, # # li li'nin altındaki odaklanmış herhangi bir öğeyle eşleştirmek için değiştirmeyi denerdim. Bu şekilde, elemanlar görünür olacak ve bağlantılar tıklanabilir olacaktır. – orique

3
Buna son kuralı değiştirin

:

#main li:focus ul, #main a:active + ul, 
#main li ul:hover 
{ 
display:block; 
} 

#main li ul:hover kural alt menüsü tıklayın kayıt için yeterince uzun açık kalacağı anlamına gelir.

forked JS Fiddle

dip not bakın Serin hile, daha önce böyle bir lansmanı yapılmış bir kutu görmedim.

İlgili konular