Legen Sie den oberen Rand für ein DIV mit JQuery fest

Lesezeit: 1 Minute

Benutzer-Avatar
Amir

Hier ist die Situation, ich habe einen festen Header mit 120 Pixel Höhe und ich habe die Seite gezwungen, zu #testdiv zu springen, wenn die Abfragezeichenfolge #testdiv ist.

Aber das Problem ist, wenn die Seite zum Anfang des obigen DIV springt, geht ein Teil des Inhalts verloren, da er sich hinter dem festen Header befindet. Gibt es eine Jquery, um die Seite zu zwingen, ohne tatsächlichen Rand zum #testdiv zu springen?

Ich habe den folgenden Code ausprobiert, aber er macht eine tatsächliche Marge

if (url.indexOf('#testdiv') >= 0) {
$('#testdiv').css('margin-top',120);
};

Ich denke, es wäre der einfachste Weg, das zu tun, set margin-top für Ihr Feld und stellen Sie das Negativ ein margin-top für Ihr übergeordnetes Feld.

Es sollte Arbeit für dich sein.

if (url.indexOf('#testdiv') >= 0) {
$('#testdiv').css('margin-top',120);
$('#parent').css('margin-top',"-120px");
};

  • Das hat mir geholfen, weil mir das ‘px’ von meinem negativen Wert fehlte

    – Fidschit

    16. Juni 2016 um 8:40 Uhr

Sie können margin-top über jQuery wie folgt festlegen:

$("#mydiv").css("margin-top", "10px");

Wenn Sie einen festen Header haben, der den Inhalt nicht überlappen soll, müssen Sie ihn hinzufügen padding-top an das enthaltende div (oder den body, falls erforderlich), das der Höhe des festen Inhalts entspricht, um die darunter liegenden Elemente nach unten zu verschieben.

  • Vielen Dank für Ihren Vorschlag, aber im Grunde möchte ich in diesem speziellen Fall ein überlappendes Bild unter der Überschrift haben.

    – Emir

    12. Mai 2014 um 14:39 Uhr

1101110cookie-checkLegen Sie den oberen Rand für ein DIV mit JQuery fest

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy