2016-06-27 2 views
0

Ich möchte mir eine kleine Website machen und bin fast komplett neu in dieser Welt (habe ein paar Sachen in der Schule gemacht und weiß wie man eine einfache Seite erstellt, aber nichts besonderes). Ich wollte dich fragen, wie man unten eine bewegliche Navigation macht, die dort bei Fenstergröße bleibt.Bewegliche Navigation an der Unterseite, die dort bei Fenstergröße bleibt

Ich habe es schon selbst versucht, aber seit ich bootstrap und materializecss benutze, denke ich, dass ich ein paar nutzlose Zeilen im CSS geschrieben habe und nicht wirklich zeigen kann, was ich bisher gemacht habe. Ich habe etwas mit absoluter Positionierung ausprobiert, aber es schraubte sich herum, wenn Leute die Chrom-Browser-Lesezeichenleiste abschalten, also wechselte ich wieder zu Relativ.

Lange Rede kurzer Sinn, ich möchte wirklich auf dieser Website eine navbar wie haben: http://www.reverse-magazine.com/

+0

Navbar ist die Navigationsleiste oben, meinst du Fußzeile? – Ctc

+0

Seien Sie nicht besorgt, uns zu zeigen, was Sie versucht haben - wir alle lernen so schneller. –

+0

@Ctc nein schaue auf die verlinkte Website .. die Navigation ist am unteren Rand zuerst, aber wenn Sie nach unten scrollen bewegt sich und bleibt an der Spitze ... ich tat das gleiche, aber wenn ich die Größe des Fensters die Bar ist auch weit unten, da ich relativ positioining –

Antwort

1

Dies sollte man losgeht:

https://jsfiddle.net/f26eudd7/2/

$(document).ready(function() { 
 
    var navbar_el = $('.navbar'); 
 
    var navbar_top = navbar_el.offset().top; 
 
    
 
    $(window).scroll(function() { 
 
    if ($(window).scrollTop() > navbar_top) { 
 
     navbar_el.addClass('sticky'); 
 
    } else { 
 
     navbar_el.removeClass('sticky'); 
 
    } 
 
    }); 
 
    
 
    $(window).resize(function() { 
 
    navbar_top = navbar_el.offset().top; 
 
    }); 
 
});
html,body { 
 
    height: 100%; 
 
    margin: 0px; 
 
    padding: 0px; 
 
} 
 

 
.full-height { 
 
    height: 100% 
 
} 
 

 
header { 
 
    position: relative; 
 
    display: block; 
 
    background-image: url('http://placehold.it/1920x1080'); 
 
    background-repeat: no-repeat; 
 
    background-size: cover; 
 
    background-position: center; 
 
} 
 

 
.navbar { 
 
    background: #ffffff; 
 
    position: absolute; 
 
    bottom: 0; 
 
    left: 0; 
 
    width: 100%; 
 
    height: 65px; 
 
} 
 

 
.navbar.sticky { 
 
    position: fixed; 
 
    top: 0; 
 
    z-index: 100; 
 
} 
 

 
#content { 
 
    background: #ff0000; 
 
    height: 1000px; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<header class="full-height"> 
 
    <nav class="navbar"> 
 
    Your navbar 
 
    </nav> 
 
</header> 
 

 
<div id="content"> 
 
    Your content 
 
</div>

+0

bekommen Gute Antwort, in einer Weise, dass OP in der Lage sein sollte zu verstehen – Ctc

+0

omg Vielen Dank, dass funktioniert genau, wie ich wollte. Leider weiß ich nichts über Java Script, also hast du mir sehr geholfen. –

+0

noch eins: wenn die navbar an der spitze "klebt" steht der "your content" text dahinter. Ist es möglich, der Website mitzuteilen, dass sie unter der Navigation stehen soll? Ich könnte es für Hashlinks benötigen, da es immer zu weit scrollt. Ich habe versucht, Polsterungen und Ränder, aber nichts schien zu funktionieren (repost..ich dachte, ich muss Ihren Namen im neuen zu dieser Seite sry verbinden :)) –