Frage von Croghs, 125

HTML Menü öffnet sich nicht?

Hallo Community, diese Frage habe ich schon einmal gestellt, damals konnte mir jedoch niemand eine Antwort geben. Ich baue derzeit an einer Website, bei der, wenn man über einen Schriftzug hovert, sich ein Menü öffnet. Meiner Meinung nach sollte es dem Code nach klappen, das tut es jedoch nicht. Wäre echt cool wenn jemand eine Lösung hierfür wüsste.... Danke und MfG Croghs

Link zum Quellcode: https://jsfiddle.net/jopoLg9t/4/

Antwort
von iBrain, 74

Das was du tust ist rein HTML damit kommst du mit solchen sachen nicht weit. Du benötigst dafür entweder ein CSS - Stylesheet oder ein Javascript schaue nochmal nach ob der da nicht irgendwo liegt, wo du ihn her hast.

Kommentar von Croghs ,

Eigentlich hatte ich auch den CSS code eingefügt, aber er hat das anscheinend nicht angenommen...

https://jsfiddle.net/jopoLg9t/4/

Kommentar von iBrain ,

Der Fehler der sich daraus schließt ist das du entweder ein Teil des Codes vergessen hast oder es auch noch einen JavaScript einfügen musst.

Kommentar von Croghs ,

Also 1. Ich hatte keinen JS-Code, 2. Jetzt mit dem Link sollte es klappen, also auch mit der CSS...

Kommentar von iBrain ,

Du hast die CSS-Dateien eingebunden über ein Verzeichnis was in meinen Augen nicht existiert.


Kommentar von iBrain ,

Genau daran liegt es. Du hast deine Einbindung in das nicht vorhandene CSS-Dokument gemacht. Es muss im Stammverzeichnis das Dokument mit dem Namen 'style1.css' angelegt sein und darin sollte sich der Text welcher jetzt im Fenster CSS steht liegen.

Kommentar von Croghs ,

Das habe ich ja auch gemacht, ich habe nur beim ersten mal vergessen, den CSS-Code mit einzufügen. Mittlerweile sollte es jedoch funktionieren (?).

Auf die CSS wird in der 3. Zeile der HTML verlinkt.

Kommentar von iBrain ,

Richtig auf das Dokument 'style1.css' aber dieses ist in der Dateistruktur nicht vorhanden.

Kommentar von Croghs ,

Ich verstehe grad nicht was du meinst. Bei jsfiddle wird einfach auf den CSS-Code zugegriffen, der rechts im Fenster eingefügt wurde. Dabei gibt es keine Dateistruktur. Auf meinem PC habe ich ja die Datei style1.css und groups.html in einem Ordner.

Antwort
von herja, 60

Hi,

muss nicht über dem header

<!DOCTYPE html>

stehen?

Kommentar von Croghs ,

Das kann sein, aber dadurch öffnet sich das Menü trotzdem nicht...

Kommentar von herja ,

Nö, natürlich nicht, weil keiner weiß ob das überhaupt html ist und daher wird auch garnicht weitergelesen!

Wenn die HTML-Datenstruktur nicht vorhanden ist, kann nichts funktionieren.

https://wiki.selfhtml.org/wiki/HTML/Dokumentstruktur_und_Aufbau

Kommentar von Croghs ,

An sich die Seite funktioniert aber.

Kommentar von perhp ,

Bei JS Fiddle benötigt man keine vollstände HTML Struktur, da diesen Teil JSFiddle schon selbst macht

Antwort
von karinili, 79

Klar, dass dir das niemand beantworten kann.

Der Code ist ohne CSS und dort liegt der Fehler begraben.

Kommentar von Croghs ,
Kommentar von karinili ,

Ok, das erste, was mir auffällt ist, dass nirgends ersichtlich ist, zu welchem Listen-Element welche Sublist gehört, da die Sublist komplett außerhalb des Fensters liegt.

Wobei der ganze Code sehr unstrukturiert wirkt…

Kommentar von Croghs ,

Bei dem Code ist es so, dass es nur ein Menü gibt, was sich öffnet {Services}, und dort öffnet sich dann eine neue Leiste unterhalb des HEaders mit verschiedenen Links. Und sorry für das durcheinander, das ist meine erste Website.

Kommentar von karinili ,

Ich seh mir den Code mal genauer an.
Ich glaube, da kann man SEHR viel rausschmeißen.

Kommentar von Croghs ,

Danke ;)

Kommentar von karinili ,

Nur mal eines vorne weg: Ich glaube nicht, dass overflow das macht, was du glaubst, das es macht…

Kommentar von Croghs ,

Ohh, ich glaube, du hast recht. Weißt du ein anderes css-attribut, was auch dinge versteckt (aber so, dass sie keinen Platz beanspruchen)? Evtl display:none?

Kommentar von karinili ,

Das macht man normalerweise über display: none; bzw display: inline/inline-block; bzw über die visibility…
Außerdem formatierst du li-Elemente direkt. No-Go. Du würdest dir damit sämtliche Listenelemnte auf deiner Seite gleich formatieren. Immer mit Klassen bzw nur als Sub-Elemente formatieren.

Auch bringen deine Klassen .ul und .li absolut gar nichts…

Kommentar von Croghs ,

Ich hab das jetzt mal zu inline und none geändert, aber es scheint so, als wenn ich services hovere, kein signal an das menü geht, dass es zu inline wechseln soll

Antwort
von perhp, 12

Irgendwo musst du noch einen Fehler in deinem Code haben, da ich auf JSFiddle nicht die Vorschau sehe.

ps: du kannst kein Bild einbinden, wenn der Pfad für das Bild nur bei dir existiert.


Kommentar von perhp ,

Habe jetzt schon gesehen, wieso ich nichts gesehen habe, da JS-Fiddle mir den Inhalt über dem Fenster hinausgeschrieben hat:D

Kommentar von perhp ,

Ich habe jetzt dein Problem gelöst: https://jsfiddle.net/jopoLg9t/8/

Dir fehlte eine Navigation innerhalb der Navigation (siehe Punkt Services)

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten