Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Menu - firefox ;] IE sux...
Forum PHP.pl > Forum > Po stronie przeglądarki
ennics
cześć, mam menu oparte o nadzwyczaj prosty Javascript
  1. function activateMenu(nav) {
  2. //IE only
  3. if (document.all && document.getElementById(nav).currentStyle) {
  4. var navroot = document.getElementById(nav);
  5. var lis=navroot.getElementsByTagName("LI");
  6. for (i=0; i<lis.length; i++){
  7. if(lis[i].lastChild.tagName=="UL"){
  8. lis[i].onmouseover=function(){
  9. this.lastChild.style.display="block";
  10. }
  11. lis[i].onmouseout=function() {
  12. this.lastChild.style.display="none";
  13. }
  14. }
  15. }
  16. }
  17. }

oraz o już nieco bardziej rozbudowany CSS. Problem polega na tym że w pod firefox działa a pod IExplorer wyświetla podrzędne warstwy tylko dla pierwszego elementu menu. Kod HTML wygląda mniej więcej tak
  1. <td align="left" height="22" valign="top">
  2. <ul id="nav">
  3. <li class="topmain"><a class="topmain" href="index.php">0Strona g��wna</a>
  4. <ul class="subul">
  5. <li><a href="index.php">1 1ROK 2005</a>
  6. <ul class="subul">
  7. <li><a href="index.php">2 2Wrzesie 2005</a>
  8. </li>
  9. <li><a href="index.php">2 3Wrzesie 2005</a>
  10. </li>
  11. </ul>
  12. </li>
  13.  
  14. <li><a href="index.php">1 5ROK 2005</a>
  15. <ul class="subul">
  16. <li><a href="index.php?call=Harmonogram&Harmonogram=0905">6 6Wrzesie 2005</a>
  17. </li>
  18. <li><a href="index.php?call=Harmonogram&Harmonogram=1005">6 7Padziernik 2005</a>
  19. </li>
  20. <li><a href="index.php?call=Harmonogram&Harmonogram=1105">6 8Listopad 2005</a>
  21. </li>
  22. </ul>
  23. </li>
  24. </ul>
  25. </li></ul>


czy to wina JScript czy CSS questionmark.gif? gdzie jest błąd ?
Kas
IE nie obsługuje CSS2 oraz CSS3, więc np. wartswy mogą działać nie poprawnie.
ennics
hmm ale pierwszą obsługuje ?!
nie znam się dokładnie na specyfikacji CSS, czy to wygląda na CSS2/3 ?
Kod
a.subul a,.subul a:link,.subul a:visited,.subul a:active {
text-decoration:none;
color:#3333CC;
margin:0;
padding:2px;
padding-left:10px;
width:120px; display:block;
background-color:#EEEEEE;border:solid 1px #CECECE;
-moz-box-sizing: border-box;
filter:alpha(opacity=60);
}
Kas
Tak.

Poza tym

Kod
-moz-box-sizing: border-box;

działa wyłącznie w przeglądarkach opartych o Gecko.
revyag
W kodzie masz napisane IE only, sprawdziłem oczywście i pod IE działa częściowo prawidłowo. Chodzi o to że nie ma ustawionego stanu początkowego, np. taki kiedy widać tylko głowny korzeń, albo korzeń i te dwa podmenu. Co do działania to u mnie wygląda to tak: po najechaniu na jedną opcję pojawiaja się kolejne podmenu, po najechaniu na drugą poprzednie znika i pojawia się to drugie.
Cytat
IE nie obsługuje CSS2

Śmiem się nie zgodzić, dobrze napisany kod zawsze będzie działał.
To już zaczyna przypominać paranoję, niedługo będą texty że IE niczego nie obługuje i na stos z nim snitch.gif
Sh4dow
Cytat(revyag @ 2005-08-24 09:43:22)
...
Cytat
IE nie obsługuje CSS2

Śmiem się nie zgodzić, dobrze napisany kod zawsze będzie działał.
To już zaczyna przypominać paranoję, niedługo będą texty że IE niczego nie obługuje i na stos z nim snitch.gif

chcialbym sie niezgodzic. IE nie obsluguje css2 ale css1 tak. Wielkosc ludzi kozysta w 80% z css1 tylko a bledy logiczne i skladniowe przypisuja bledom IE. Zaden dobrze napisany kod css2 nie bedzie dzialac poprawnie na IE. No chyba ze mi pokazesz ze najprostrzy na swiecie kod z css2 czyli pierwszy z brzegu
Kod
min-height: 30px;
text-decoration: blink;

ewentualne :after czy :before zadziala poprawnie na IE.
Zgodze sie ze poprawnie napisany kod zadziala poprawnie ale tylko pierwesza wersja css.

P.S. zapraszam do lekturki o zmianach miedzy css1 a 2 changeList
revyag
Tak, źle to ująłem. Chodzi o to że nie zgadzam się z tym że IE w ogóle nie obsługuje css2, bo tak nie jest.
Nie będę tu wymieniał wszystkiego bo to bez sensu, ale np. popularne pozycjonowanie:
Kod
div#head {
    position:absolute;
    top:20px;
    left:20px;
}

BTW. text-decoration:blink to css1 snitch.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.