Contao-Camp 2024
Ergebnis 1 bis 12 von 12

Thema: HTML und CSS Hamburger Menü in Contao einbinden.

  1. #1
    Contao-Nutzer
    Registriert seit
    01.06.2022.
    Beiträge
    5

    Standard HTML und CSS Hamburger Menü in Contao einbinden.

    Hallo zusammen,

    ich bin noch Contao-Anfänger und versuche mich in das CMS einzuarbeiten.

    Ich versuche ein Hamburger Menü zum Laufen zu bekommen, dabei soll nur HTML und CSS genutzt werden.

    Lokal funktioniert es (d.h. index.hmtl mit Verweis auf das style.css). Nachfolgend der Code:

    HTML-Code:
    <!-- Link CSS file -->
        <link rel="stylesheet" href="style.css">
    <div class="hamburger-menu">
        <input id="menu__toggle" type="checkbox" />
        <label class="menu__btn" for="menu__toggle">
          <span></span>
        </label>
    
        <ul class="menu__box">
          <li><a class="menu__item" href="#">Test</a></li>
    			<li><a class="menu__item" href="#">Home</a></li>
    			<li><a class="menu__item" href="#">Über mich</a></li>
    			<li><a class="menu__item" href="#">Kontakt</a></li>
    			<li><a class="menu__item" href="#">Angebot</a></li>
        </ul>
      </div>
    Code:
    #menu__toggle {
      opacity: 0;
    }
    
    #menu__toggle:checked ~ .menu__btn > span {
      transform: rotate(45deg);
    }
    #menu__toggle:checked ~ .menu__btn > span::before {
      top: 0;
      transform: rotate(0);
    }
    #menu__toggle:checked ~ .menu__btn > span::after {
      top: 0;
      transform: rotate(90deg);
    }
    #menu__toggle:checked ~ .menu__box {
      visibility: visible;
      left: 0;
    }
    
    .menu__btn {
      display: flex;
      align-items: center;
      position: fixed;
      top: 20px;
      left: 20px;
    
      width: 26px;
      height: 26px;
    
      cursor: pointer;
      z-index: 1;
    }
    
    .menu__btn > span,
    .menu__btn > span::before,
    .menu__btn > span::after {
      display: block;
      position: absolute;
    
      width: 100%;
      height: 2px;
    
      background-color: #616161;
    
      transition-duration: .25s;
    }
    .menu__btn > span::before {
      content: '';
      top: -8px;
    }
    .menu__btn > span::after {
      content: '';
      top: 8px;
    }
    
    .menu__box {
      display: block;
      position: fixed;
      visibility: hidden;
      top: 0;
      left: -100%;
    
      width: 300px;
      height: 100%;
    
      margin: 0;
      padding: 80px 0;
    
      list-style: none;
    
      background-color: #ECEFF1;
      box-shadow: 1px 0px 6px rgba(0, 0, 0, .2);
    
      transition-duration: .25s;
    }
    
    .menu__item {
      display: block;
      padding: 12px 24px;
    
      color: #333;
    
      font-family: 'Roboto', sans-serif;
      font-size: 20px;
      font-weight: 600;
    
      text-decoration: none;
    
      transition-duration: .25s;
    }
    .menu__item:hover {
      background-color: #CFD8DC;
    }
    Allerdings ist mir nicht klar wie ich das in Contao mache, bzw. ob der Weg den ich nutze der so sinnvoll ist.
    Mein Vorgehen:
    Die Datei "style.css" wurde als Externes Stylesheet unter dem genutzten Layout (nur Hauptzeile) hinzugefügt und "Skripte zusammenführen" aktiviert.
    Weiterhin habe ich ein "Frontend Module" mit dem "Eigenem HTML-Code" erstellt und gespeichert. Dieses wurde dann auch im Layout eingefügt.

    In der Vorschau erscheinen die drei Striche vom Hamburger Menü, aber leider passiert nichts beim Anklicken.

    Folgende Zeilen musste ich aus dem HTML entfernen, da diese sonst angezeigt werden.
    HTML-Code:
    <!-- Link CSS file -->
        <link rel="stylesheet" href="style.css">
    Ich denke das ist ok, da ja im Layout auf das style.css verwiesen wird, allerdings weiß ich nicht was ich machen soll.

    Die Version: 4.13.4 von Contao wird verwendet.

    Bin für jeden Tipp dankbar.

    Viele Grüße
    Melantzius

  2. #2
    Contao-Fan
    Registriert seit
    03.01.2012.
    Beiträge
    809

    Standard

    Gibt es eventuell einen Link zur Seite?

  3. #3
    Contao-Nutzer
    Registriert seit
    01.06.2022.
    Beiträge
    5

    Standard

    Leider nicht, da ich erstmal lokal den Webserver betreibe.

  4. #4
    Contao-Urgestein Avatar von Franko
    Registriert seit
    22.06.2009.
    Beiträge
    1.503
    Partner-ID
    6122

    Standard

    Zitat Zitat von melantzius Beitrag anzeigen
    In der Vorschau erscheinen die drei Striche vom Hamburger Menü, aber leider passiert nichts beim Anklicken.
    Naja, für einen Klick Event benötigst du Javascript.

    Eine Alternative, ohne JS, wird hier schön beschrieben:
    https://www.youtube.com/watch?v=8QKOaTYvYUA
    Freelancer, Digital Design Enthusiast, Contao Aficionado and Tutorial Junkie @MoinFranko - Carpe diem ...

  5. #5
    Contao-Nutzer
    Registriert seit
    01.06.2022.
    Beiträge
    5

    Standard

    Vielen Dank für die Rückmeldung, aber ich verstehe nicht warum ich Javascript als Klick Event benötige, wenn es lokal ohne JS geht.
    Liegt das an Contao? Ist mein Vorgehen denn überhaupt der richtige Weg?
    Hab mir das Hamburg Menü von hier gezogen: https://codepen.io/andreykrokhin/pen/mGEqja

  6. #6
    AG Pressearbeit
    Community-Moderator
    Buchautor 'Contao für Webdesigner'
    Avatar von planepix
    Registriert seit
    05.06.2009.
    Ort
    Stuttgart
    Beiträge
    6.468
    Partner-ID
    107
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Such mal nach „Pure CSS menu”, da gibt es viele Seiten mit Beispielen.

    Ein Beispiel auf deutsch hab ich hier gefunden:
    https://www.mediaevent.de/tutorial/c....html#nav_menu
    ---------------------------------
    Beste Grüße planepix
    Contao für Webdesigner (Website), Twitter: @contaowebdesign
    weitzeldesign
    Contao-Sprechstunde
    Contao Schulungen: https://www.weitzeldesign.com/cms-co...chulungen.html
    Contao Jahrbuch: www.contao-jahrbuch.de
    Contao Agenturtag: www.contao-agenturtag.de
    Contao Stammtisch Stuttgart: www.contao-stammtisch-stuttgart.de
    Contao 4 Erfahrungen als Gitbook: https://app.gitbook.com/@planepix/s/...-mit-contao-4/
    Contao 4 & Manager Hosterhinweise: https://github.com/contao/contao-manager/wiki

    Schon wieder ein Update?
    Glücklich sind die, die den Wert erkennen – und wertschätzen.
    „Muss man machen wie beim Zahnarzt. Der bestraft einen auch mit hohen Rechnungen wenn man die Pflege vernachlässigt.”

  7. #7
    Contao-Urgestein Avatar von Franko
    Registriert seit
    22.06.2009.
    Beiträge
    1.503
    Partner-ID
    6122

    Standard

    Zitat Zitat von melantzius Beitrag anzeigen
    Vielen Dank für die Rückmeldung, aber ich verstehe nicht warum ich Javascript als Klick Event benötige, wenn es lokal ohne JS geht.
    Liegt das an Contao? Ist mein Vorgehen denn überhaupt der richtige Weg?
    Hab mir das Hamburg Menü von hier gezogen: https://codepen.io/andreykrokhin/pen/mGEqja
    Sorry, hatte überlesen das du bereits ein formular feld benutzt.
    Freelancer, Digital Design Enthusiast, Contao Aficionado and Tutorial Junkie @MoinFranko - Carpe diem ...

  8. #8
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.742
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von melantzius Beitrag anzeigen
    Leider nicht, da ich erstmal lokal den Webserver betreibe.
    Ohne Link ist es mühselig den Fehler zu suchen.
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  9. #9
    Wandelndes Contao-Lexikon Avatar von tab
    Registriert seit
    22.10.2013.
    Beiträge
    10.076
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Ist das denn das ganze HTML in deiner lokalen index.html?

  10. #10
    Contao-Nutzer
    Registriert seit
    01.06.2022.
    Beiträge
    5

    Standard

    Mein Problem ist nicht das CSS oder die Funktionalität vom Hamburger Menü.
    Es funktioniert lokal ohne Contao. Das Problem macht leider Contao bzw. die Konfiguration von CSS und HTML.

    Die Datei "style.css" wurde als Externes Stylesheet unter dem genutzten Layout (nur Hauptzeile) hinzugefügt und "Skripte zusammenführen" aktiviert.
    Weiterhin habe ich ein "Frontend Module" mit dem "Eigenem HTML-Code" erstellt und gespeichert. Dieses wurde dann auch im Layout eingefügt.
    Soweit so gut, aber irgendwie greift das CSS nicht richtig.

    Sind diese Schritte überhaupt so richtig?

  11. #11
    Contao-Nutzer
    Registriert seit
    01.06.2022.
    Beiträge
    5

    Standard

    Bitte die index.txt in index.html ändern damit es klappt. Es ist kein vollständiger HTML Code, nur ein Teil damit ich das Menü testen kann.
    Angehängte Dateien Angehängte Dateien

  12. #12
    Wandelndes Contao-Lexikon Avatar von tab
    Registriert seit
    22.10.2013.
    Beiträge
    10.076
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von melantzius Beitrag anzeigen
    Bitte die index.txt in index.html ändern damit es klappt. Es ist kein vollständiger HTML Code, nur ein Teil damit ich das Menü testen kann.
    Dass es kein vollständiger HTML-Code ist, ist ja mein Problem. Contao baut dir da alles mögliche dazu und drum herum. Deswegen würde ich ja gern vergleichen, was Du als komplettes index.html benutzt und was Contao aus deinem Schnipsel macht. Vielleicht baue ich es heute abend mal nach, dann sehe ich wenigstens wie es scheitert, wenn auch immer noch nicht wie und warum es ohne Contao funktioniert. Du solltest jedenfalls mal versuchen, das von Contao per Default eingebundene CSS im Seitenlayout zu deaktivieren, so dass wirklich nur noch dein CSS benutzt wird. Dann sieht man wenigstens schon mal, ob es am CSS oder am HTML scheitert.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •