Seitenanfang verschieben (für Anker)
bert
- css
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ß
Hi,
Also ich möchte ... 80px weiter unten steht.
Wie wär's denn mit
<div id=anker style='font-size:80px'> </div>
<p>Hier der nach unten verschobener Text</p>
Kalle
Wie wär's denn mit
<div id=anker style='font-size:80px'> </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.
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
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