Html Sticky header funktioniert nicht?

Hallo, seit Weile arbeite ich an einer Website, für welche ich jetzt einen Header installiere. Oben ist etwas Content und danach ist eben der Header, der beim Scrollen oben am Rand bleiben soll. Das ist mein Code dazu, ich hoffe jemand kann mir helfen und danke im Vorraus.

------HTML------

<div id="header">
    <img src="bilder/Logo.png" alt="Logo Fliesen"></img>
         <div id="flexbox">
             <nav>
                 <ul class="menu">
                     <div class="flexitem" id="navFlex">
                        <li><a href="index.html">Home</a></li>
                        <li><a href="engagement.html">Unser Engagement</a></li>
                        <li><a href="contact.html">Kontakt</a></li>
                        <li><a href="about.html">Über mich</a></li>
                        <li><a href="referenzen.html">Referenzen</a></li>
                    </div>
                </ul>
            </nav>
       </div>
   <div class="social" class="flexitem"></div>
</div>

-----CSS------

#header {
    height: 80px;
    left: 0;
    right: 0;
    width: 100vw;
    border-bottom: 1px solid #DEDCD9;
    background-color: white;
    display: flex;
    overflow: hidden;
    position: sticky;
}

.sticky {
    position: fixed;
    top: 0;
    width: 100%;
}
  
  .sticky + #bsp {
    padding-top: 60px;
}

------Script-------

<script>window.onscroll = function() {stickyH()};

var navbar = document.getElementById("header");
var sticky = navbar.offsetTop;
function stickyH() {
   if (window.pageYOffset >= sticky) {
       navbar.classList.add("sticky")
        } else {
                navbar.classList.remove("sticky");
              }
            } 
</script>
HTML, Webseite, CSS, HTML5, Code, Webdesign, Webentwicklung, Frontend
Wie kann ich auf Google Sites Anker ohne Inhaltsverzeichnis erstellen?

Hallo,

ich bin verzweifelt. Ich versuche auf einer Seite in Google Sites einen Anker auf den Bereich einer anderen Seite zu erstellen. Soweit, so offensichtlich (mag man behaupten). Ich habe schon mal über den Quellcode herausgefunden, dass Sites automatisch jedem Bereich der Seite ein id-Attribut zuordnet, was die Sache ja in der Theorie vereinfachen sollte. Aber wenn ich einen Link erstelle, werden nur vollständige URLs akzeptiert, keine Anker-Links (ich glaube, nicht mal interne Links auf der selben Websites würden funktionieren). Gut: dachte ich mir, gehe ich den Umweg und setze halt die vollständige URL davor, muss halt die Seite beim Klick drauf notgedrungen neu geladen werden. Dann kam das nächste Problem: die Links werden immer voreingestellt in neuen Tabs geöffnet. Was bitte soll das? Ich brauche schon gar keinen neuen Tab, wenn ich doch ursprünglich nicht einmal die Seite neu aufrufen wollte.

Nun, jetzt mag man ja noch kreativ genug sein, und extra ein Seitenelement anlegen, um HTML selber einzufügen (das geht nämlich auch nicht in einem normalen Textelement, das muss extra angelegt werden). Weiter geht das Drama: HTML-Code wird nicht einfach in die bestehende Seite hinzugefügt, sondern über ein Iframe eingebunden (Geht's noch? Welchen Zweck hat es, HTML extra über ein Iframe einzubinden?).

Kann mir jemand erklären, was das alles soll? Ich weiß, Google Sites richtet sich eher an einfache Baukastenersteller, die sich nicht so für die einfachsten Grundlagen von Webentwicklung interessieren. Aber ernsthaft, direkt HTML in einer Seite einbauen zu können und Ankerlinks zu setzen gehören doch nun zu den primitivsten Basics, eine Webseite zu erstellen. Es scheint so, als wäre das so einfach, dass es schon wieder maßlos kompliziert ist. Geht das überhaupt?

Gut, bevor ich mich über das allererste Google-Produkt weiter aufrege, dass mich echt enttäuscht hat, wenn es da keine Lösung für gibt: weiß jemand, wie man das Problem angehen kann? Und gibt es irgendwo eine versteckte Funktion, einen erweiterten Editor zum Vorschein zu bringen, der etwas professionelleres Arbeiten ermöglicht? Ich brauche doch nur eine sehr simple Webseite mit etwas Text und einem Google Formular. Das darf doch nicht für einen Webbaukasten, der mit einem „professionellen Aussehen“ wirbt, so schwer sein.

PS: Ja, man kann Verknüpfungen über das Inhaltsverzeichnis erstellen. Aber ich brauche diese im Fließtext.

Datenschutz, Google, HTML, Webseite, Recht, HTML5, Medienrecht, Webentwicklung, Google Sites, DSGVO
HTML Buttons alignment?

Moin, hier eine kleine Seite die Nur 3 Knöpfe ausgibt. Habe jetzt leider das Problem, dass die Knöpfe nicht auf gleicher höhe sind, trotz des "vertical-align:top" bin noch sehr neu in html, hoffe ihr könnt helfen. LG

Nachtrag: Habe es mit Padding gelöst, vielleicht geht es trotzdem besser anders?

<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <body>
        <style>
          .subscribe-button
          {
            background-color: rgb(204, 0, 0);
            color:white;
            border:none;
            border-radius:2px;
            cursor:pointer;
            margin-right:12px;
            transition:opacity 0.2s;
            padding-top:10px;
            padding-bottom:10px;
            padding-left:16px;
            padding-right:16px;
            vertical-align:top;
          }
          .subscribe-button:hover
          {
            opacity: 0.7;
          }
          .subscribe-button:active
          {
            opacity: 0.4;
          }
          .join-button:hover
          {
            background-color:
            rgb(37, 25, 207);
            color: white;
          }
          .join-button:active
          {
            opacity:0.7;
          }
          .join-button
          {
            background-color:white;
            color:rgb(37, 25, 207);
            border-color:rgb(37, 25, 207);
            border-style:solid;
            border-width:1px;
            border-radius:2px;
            cursor:pointer;
            margin-right:8px;
            transition:background-color 0.2s, color 0.2s, opacity 0.2s;
            padding-left:5px;
            padding-right:5px;
            padding-top:4px;
            padding-bottom:4px;
            vertical-align:top;
          }
          .tweet-button
          {
            color:white;
            background-color:rgb(67, 145, 235);
            height:36px;
            width:75px;
            border:none;
            border-radius:20px;
            font-weight:bold;
            font-size:15px;
            cursor:pointer;
            transition:box-shadow 0.15s;
            transition:opacity 0.2s;
            vertical-align:top;
          }
          .tweet-button:hover
          {
            box-shadow: 0px 5px 5px rgba(0,0,0,0.15);
          }
          .tweet-button:active
          {
            opacity:0.6;
          }
        </style>
        <button class="subscribe-button">
          SUBSCRIBE
        </button>
        <button class="join-button">
          JOIN my channel
        </button>
        <button class="tweet-button">
          Tweet
        </button>
        <btton
      </body>
  </head>
</html>
HTML, programmieren, HTML5

Meistgelesene Beiträge zum Thema HTML5