Beiträge von Sempervivum

    Was fertige Lösungen betrifft, ein Tipp von meiner Seite: Wenn hier die Aktivitäten einzelner Forenmitglieder als anstößig empfunden werden, einfach den Melden-Button benutzen. Möglicher Weise steigen die Betreffenden dann gern in eine Diskussion mit der Moderation ein.

    Du brauchst bloß das div.bottom eine Stufe höher anzuordnen, dann bekommst Du automatisch was Du wünschst:

    Code
        <footer>
            <div class="flex-items">
                <div>kontakt</div>
                <div>social</div>
                <div>hours</div>
            </div>
            <div class="bottom">unterer Teil</div>
        </footer>

    Das Skript macht nur das was hinein programmiert ist und an diesen Fall hatte ich nicht gedacht. Lässt sich aber sehr leicht hinzu fügen:

    In der Console getestet auf miflo.de und hat dort funktioniert.

    Wie Du jetzt miflo.de hast, ist genau so wie ich es verstanden hatte und wie ich es auch auf dieser Musterseite gesehen hatte, die Du ganz am Anfang gepostet hattest: #welcome überdeckt das Bild beim Scrollen aber verschwindet hinter der Navigation mit dem Logo links. Da fehlt jetzt nur noch das Logo über #welcome. Es sei denn, das Verhalten beim Scrollen, das Du dir vorstellt, ist ein anderes.

    PS: Jetzt dem Bild ein position:fixed geben und einen negativen z-index, damit es beim Scrollen vom Container #welcome überdeckt wird:

    Code
    .bild {
        z-index: -1;
        position: fixed;
    }

    Aber damit das Bild vor dem Scrollen sichtbar ist, musst Du dem #welcome noch ein margin-top geben:

    Code
    #welcome {
        height: 100vh;
        background-color: #b1d4e0;
        margin-top: 360px;
    }

    Dann funktioniert das schon in etwa. Fehlt nur noch das position:sticky für den Header.

    Die gängigen Kandidaten:

    CSS Layout - The position Property
    W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript,…
    www.w3schools.com

    An dem Beispiel für "sticky" kannst Du sehr gut erkennen, wie es funktioniert.

    position: sticky; | CSS-Tricks
    Better position: sticky; support is on the horizon. WebKit dropped in 2013, Firefox in 2014, and now Blink in (probably) 2016.
    css-tricks.com

    Ich habe aber auf die Schnelle keine Quelle gefunden, die einen ganz wichtigen Aspekt heraus stellt: Durch "sticky" Positionierung wird ein Element nicht aus dem Fluss genommen, d. h. die Elemente danach verschwinden nicht wie bei "fixed" darunter. Sondern erst beim Scrollen.

    Ich meinte, dass Du das Bild aus dem Header löschst und außerhalb darunter anordnest, also so:

    Und jetzt den Header sticky und das Bild fixed positionieren.

    Die Seite lässt sich nicht scrollen weil für html overflow: hidden; gesetzt ist. Ein Überbleibsel aus einem Onepager?

    BTW, es fehlt das öffnende <html>.

    position: fixed; verwendest Du ja schon für die Nav. Mach dich auch mit postition: sticky; vertraut. Den Header sticky machen und das Bild heraus ziehen und darunter anordnen. Dann das Bild fixed positionieren. Für den Content darunter wirst Du ein margin-top brauchen, damit er sich nicht mit dem Bild überlappt. Und dann das Bild mit einem negativen z-index versehen, so dass es vom Content überdeckt wird.

    Versuche dieses, so explodiert das Bild von der Mitte aus und verschwindet, wenn man drauf klickt:

    ... hier eine einfache Lösung mit Javascript und Klick. Das ist noch stark verbesserungsfähig, denn so verschwindet das Bild an seiner ursprünglichen Position und die anderen verschieben sich.

    Das Geflacker wundert mich nicht, es ist so zu erklären:

    Wenn das Bild vergrößert wird, bewegt es sich auch in die Mitte und dann liegt die Maus nicht mehr drauf --> :hover trifft nicht mehr zu und das Bild wird wieder kleiner usw.

    Ein typisches Problem bei Hover-Effekten. Es gibt noch einen anderen Nachteil beim Hover: Heute ist die Mehrzahl der Benutzer mit Touch-Geräten unterwegs und dabei gibt es kein Hover. Daher empfehle ich, statt des :hover in CSS das Klick-Event in Javascript zu verwenden. Dann wird das Bild stabil an seiner Position stehen bleiben bis ein Close-Button gedrückt wird oder außerhalb des Bildes geklickt wird, z. B.

    Ein Bild kannst Du so zentrieren:

    Ungetestet, aber so habe ich es schon häufig gemacht.

    Dies ist zunächst mal eine sehr einfache Lösung. Wenn Du erreichen möchtest, dass das Bild von der alten, kleinen Positon ausgehend an die neue, vergrößerte, explodiert, wird es ein wenig komplizierter.