zurück zur Startseite
  


Zurück XHTMLforum > (X)HTML und CSS > CSS
Seite neu laden Unterschiede zwischen IE, Opera und Mozilla ...

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 22.06.2004, 21:39
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 22.06.2004
Beiträge: 7
Sayon befindet sich auf einem aufstrebenden Ast
Standard Unterschiede zwischen IE, Opera und Mozilla ...

Nachdem die Menus soweit so funktioniert haben wie sie sollen, dachte ich mir ich schaus mir auch mal mit Opera und Firefox an...

Leider musste ich feststellen das in dem horizontalen Menu gravierende Unterschiede gibt.

Werft bitte mal einen Blick auf den Quellcode und helft mir herauszufinden wieso, und wie ich das abstellen kann.

Vielen Dank
Sayon
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 23.06.2004, 18:21
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 24.05.2004
Beiträge: 275
dexter befindet sich auf einem aufstrebenden Ast
Standard

Kannst Du einen Screenshot machen, wo bei Dir das Problem ist? Ich seh da nix Gravierendes.

Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 23.06.2004, 20:51
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 22.06.2004
Beiträge: 7
Sayon befindet sich auf einem aufstrebenden Ast
Standard

Ok, kein Problem...


Darstellung IE:


Darstellung Opera:


Darstellung Firefox:


Gruss
Sayon
Mit Zitat antworten
  #4 (permalink)  
Alt 24.06.2004, 13:15
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 24.05.2004
Beiträge: 275
dexter befindet sich auf einem aufstrebenden Ast
Standard

Oh, ein Javascriptmenü. Dass man davon gar nichts mitbekommt, wenn man Javascript deaktiviert hat oder einen Browser nutzt, der kein javascript kann weisst Du?
Dass Suchmaschinen kein Javascript können, und somit Deine Seiten nicht indizieren, sollte Dir auch klar sein.
Wie man es richtig macht:
http://www.alistapart.com/articles/dropdowns/

Validier Dein Dokument erst einmal und korrigiere die Fehler, vielleicht haut es hin, wenn die Browser das Dokument im Standards-mode rendern.
Mit Zitat antworten
  #5 (permalink)  
Alt 24.06.2004, 14:18
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 22.06.2004
Beiträge: 7
Sayon befindet sich auf einem aufstrebenden Ast
Standard

Hmm.... Javascript... eigentlich nur das Zeilen wie
Code:
document.getElementById('menuh$id').style.visibility='hidden'
einsetze...
Der Rest (die Links) steht doch im Quellcode eigentlich drin...
für CSS Effekte dieser Art habe ich doch gar keine andere Wahl oder?

Validieren werd ich es jedenfalls mal noch... ist ja bisher auch nur ein Konzept.
Mit Zitat antworten
  #6 (permalink)  
Alt 24.06.2004, 15:35
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 24.05.2004
Beiträge: 275
dexter befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Sayon
...
Der Rest (die Links) steht doch im Quellcode eigentlich drin...
Was schätzt Du, wieviele Deiner Besucher in den Quellcode schauen?
Zitat:
für CSS Effekte dieser Art habe ich doch gar keine andere Wahl oder?
Du hast den Link, den ich gepostet habe, nicht verfolgt.
Ein Beispiel was (mit Ausnahme des IE ) ohne Javascript funktioniert:
http://www.htmldog.com/articles/suckerfish/example/
Mit Zitat antworten
  #7 (permalink)  
Alt 24.06.2004, 16:31
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 24.05.2004
Beiträge: 1.176
terrikay befindet sich auf einem aufstrebenden Ast
Standard

Na, mit den richtigen Links waren wohl eher die Suchmaschinen gemeint.....

Und Menüs, die im IE nicht gehen, kann man leider in der Praxis nicht benutzen.....

Ich hätte noch zwei Alternativen:

1. Ein Menü mit kleinem Javascript als "Hilfsmotor" für den IE - bei den anderen Browsern kann man es auch ausmachen - kleiner Schönheitsfehler: im Opera "hakt" es etwas - wenn man von der anderen Seite aus nochmal drüberfährt, geht es dann. Das ganze funktioniert sogar noch eine Ebene tiefer. - Meine Erfindung ist es nicht, habs nur in meiner Trickkiste abgespeichert.

Code:
Das CSS:

<style type="text/css">
<!--
ul.dropdown
{
    list-style: none;
    margin:0;
    padding:0;
    width:100%;
       }

ul.dropdown * ul
{
    list-style: none;
    margin:0;
    padding: 0;
	display:none;
	position:absolute;
	}

ul.dropdown li
{
    float:left;
    padding:2px; /* helps Opera with hover - do not remove! */
}

ul.dropdown li * li
{
    float:none;
    position: relative;
}

ul.dropdown ul * ul
{
    left:98%;
    top:0;
    width:100%;
}

ul.dropdown a
{
    display:block;
    background-color:#c0c0c0;
    border:1px solid black;
}

ul.dropdown ul * a
{
	width:13em;
}

ul.dropdown li:hover ul ul, ul.dropdown li:hover ul ul ul, ul.dropdown li:hover ul ul ul ul
{
    display:none;
}

ul.dropdown li:hover ul, ul.dropdown ul li:hover ul, ul.dropdown ul ul li:hover ul
{
    display:block;
}

ul.dropdown a.has_submenu
{
    background:url(http://www.gy-mi.de/images/elegant_grey/ddm_arrow_right.gif) no-repeat right;
}

ul.dropdown
{
    font:10px verdana;
    }

ul.dropdown ul
{
    font:10px verdana;
    background-color:#f0f0f0;
    border:1px outset #888;
}


ul.dropdown a
{
    color:#000;
    padding:4px;
    text-decoration:none;
}

ul.dropdown a:hover
{
    background-color:#ddd;
    color:#888;
}
//-->
</style>
Das Javascript für den IE:

Code:
<script type="text/javascript">
<!--
function enable_menues_for_ie()
{
	if (document.all)
	{
        uls = document.getElementsByTagName('UL');

        for(i = 0; i < uls.length; i++)
        {
            if (uls[i].className == 'dropdown')
            {
                var lis = uls[i].getElementsByTagName('li');

                for (j = 0; j < lis.length; j++)
                {
                    if(lis[j].lastChild.tagName == 'UL')
                    {
                        lis[j].onmouseover = function() { this.lastChild.style.display = 'block'; }
                        lis[j].onmouseout = function() { this.lastChild.style.display = 'none'; }
                    }
                }
            }
        }
    }
}
//-->
</script>
Und der HTML-Teil:
Code:
<body onload="enable_menues_for_ie();">

<ul id="mainmenu" class="dropdown">[*]Link1
[*]
        Link2
        <ul>[*]Link2a[*]Link2b[/list]    
[*]
        Link3
        <ul>[*]link3a[*]link3b[*]
                link3c
                <ul>[*]untermenu1[*]untermenü2[*]untermenü3
                    [/list]             [/list]    
[*]
        Link4
        <ul>[*]link4a[*]link4b
[/list]    
[*]
        Link5
        <ul>[*]link5a[*]
                link5b
                <ul>[*]untermenü1[*]untermenü2
                    [/list]            
            [/list]    
[/list]


Es gibt sogar eine reine CSS-Lösung, die Stu Nicholson ausgetüftelt hat - aber die ist nicht valide und der Code sieht recht haarsträubend aus - aber funktioniert in allen Browsern!

Hier: http://www.stunicholls.myby.co.uk/menus/dropdown.html

Hier noch ein paar Worte dazu, er selbst sieht es nur als Gag: http://www.stunicholls.myby.co.uk/me...opdownfun.html
Mit Zitat antworten
  #8 (permalink)  
Alt 24.06.2004, 17:02
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 24.05.2004
Beiträge: 275
dexter befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von terrikay
Na, mit den richtigen Links waren wohl eher die Suchmaschinen gemeint.....
Mhh, hab jetzt nochmal geschaut, war mein Fehler.
Allerdings bleibt, dass das Menü nicht angezeigt wird, wenn javascript deaktiviert ist.
Zitat:
Und Menüs, die im IE nicht gehen, kann man leider in der Praxis nicht benutzen.....
Vielleicht missverständlich formuliert. Ich meinte nicht, dass das Menü im IE _nicht_ funktioniert, sondern dass es ohne Javascript (als "Hilfsmotor") nicht funktioniert. Zu allem Überfluss postest Du (imho) genau den Code von der von mir verlinkten Suckerfish-seite .
Zitat:
Es gibt sogar eine reine CSS-Lösung, die Stu Nicholson ausgetüftelt hat - aber die ist nicht valide und der Code sieht recht haarsträubend aus - aber funktioniert in allen Browsern!
Mist. Auf den ersten Blick sah das sehr interessant aus.
Mit Zitat antworten
  #9 (permalink)  
Alt 24.06.2004, 17:29
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 22.06.2004
Beiträge: 7
Sayon befindet sich auf einem aufstrebenden Ast
Standard

Die CSS Spass-Variante benutzt Tabellen, das wollte ich eigentlich nicht.

Schade... hab mal Spasseshalber Java abgestellt... klar das es dann nicht mehr geht... aber dann geht sowieso jegliche aktive Dynamik verloren...

Den Fall das es kein Java gibt könnte man ja mit einer Browserweiche regeln, die dann bei Bedarf halt ein anderes Stylesheet benutzt.

Wieso wird OnClick, OnMousover und OnMouseout nicht akzeptiert? Es funktioniert doch in allen Browsern...

Dann bräuchten wir nur noch klären war die Ebene teilweise so verschieden überlappen...

Ich weiß nicht so recht was mir das Suckerfish Beispiel bringen soll, Java nutzt es auch, außer das es halt die oben genannten Javascript Funktionen nicht braucht. Ich wollte eigentlich eine Variante schreiben die leicht zu kapieren ist mit nur minimalen Aufwand...
Mit Zitat antworten
Sponsored Links
  #10 (permalink)  
Alt 24.06.2004, 17:36
Benutzerbild von hemfrie
Administrator
XHTMLforum-Kenner
 
Registriert seit: 18.12.2003
Ort: Düsseldorf
Beiträge: 2.777
hemfrie ist jedem bekannthemfrie ist jedem bekannthemfrie ist jedem bekannthemfrie ist jedem bekannthemfrie ist jedem bekannthemfrie ist jedem bekannt
Standard

schreib mal das onClick klein. (onclick)

Genauso auch bei onmousover und onmouseout. Danach sollte Deine Seite valid sein.


hemfrie
Mit Zitat antworten
Sponsored Links
Antwort


Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Wie zwischen Netscape und Mozilla unterscheiden? Zausel (X)HTML 14 05.07.2005 16:47
Viele Probleme mit der Darstellung bei Mozilla und Opera. weeh CSS 10 12.08.2004 11:43
Border/Box Problem zwischen Mozilla und Opera cro4ky CSS 3 12.03.2004 09:21
problem mit css interpretation von IE - Opera - Mozilla captain CSS 2 03.03.2004 13:15
Externe CSS Definition fkt mit Opera 7 / Mozilla 1.5 nicht uri2510 CSS 4 17.12.2003 15:29


Alle Zeitangaben in WEZ +2. Es ist jetzt 10:12 Uhr.