bert: Seitenanfang verschieben (für Anker)

Hi,

habe neulich gehört, man könne den Seitenanfang, also das, was der Browser als ober Kante bei innerheight erkennt, per CSS nach unten versetzen könnte.

Also ich möchte einen Anker setzen (irgendwo in der Mitte der Seite). Wenn ich dann per Klick zu diesem Anker verweise, wird dieser ja normalerweise am oberen Bildrand angezeigt. Ich möchte aber, dass er nicht ganz oben, sondern 80px weiter unten steht. Weiß aber leider auch nicht, wonach ich da googlen soll.

Kann mir jemand ein Stichwort sagen?

Danke und Gruß

  1. Hi,

    Also ich möchte ... 80px weiter unten steht.

    Wie wär's denn mit
    <div id=anker style='font-size:80px'>&nbsp;</div>
    <p>Hier der nach unten verschobener Text</p>

    Kalle

    1. Wie wär's denn mit
      <div id=anker style='font-size:80px'>&nbsp;</div>
      <p>Hier der nach unten verschobener Text</p>

      Schlecht, dann hab ich nämlich 80px leere Seite..

      Also ich habe ein fixed div am oberen Rand, daher bringt ein Anker nichts, weil er hinter dem DIV verschwindet. Aber der Text soll schon durchgängig und ohne 80px große Lücken sein.

      1. Hi,

        Also ich habe ein fixed div am oberen Rand, daher bringt ein Anker nichts, weil er hinter dem DIV verschwindet.

        Probleme mit Ankern und position:fixed

        MfG ChrisB

        --
        “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
  2. hi,

    [...] Wenn ich dann per Klick zu diesem Anker verweise, wird dieser ja normalerweise am oberen Bildrand angezeigt. Ich möchte aber, dass er nicht ganz oben, sondern 80px weiter unten steht. [...]

    Mit reinem CSS wird sich das nicht machen lassen, weil CSS keine Pseudoklasse für "geankerlinkt" besitzt, werden alle Abstände natürlich immer angezeigt.

    Du müsstest mit JavaScript arbeiten:
      .: http://de.selfhtml.org/javascript/objekte/location.htm#hash@title=Hash überprüfen, ob .length größer als 1.
      .: Wenn ja, scrollen nach oben.
    if (location.hash.length > 1) { scrollBy(0,-80); } (ungetest, sollte aber klappen)

    lg JeSchnell