Felix Rabe: Was tut «a href="#top"»?

hallihallo

bevor ich noch den vorig hier eingetippten Blabla rauslasse ;-)

Frage: Führt <a href="#top"> immer zum Seitenbeginn? Steht das irgendwo in SELFHTML und ich habs überlesen?

danke für Antworten
Felix Rabe

  1. <kurzees Hallo>Hallo</kurzes Hallo>

    Frage: Führt <a href="#top"> immer zum Seitenbeginn? Steht das irgendwo in SELFHTML und ich habs überlesen?

    <a href="#top"> springt _immer_ zur Marke (Anker, Anchor) mit dem Namen 'top', hier in Deinem Beispiel innerhalb des gleichen Dokuments.
    Die Marke definierst Du mit: <a name='top'>bla</a>.

    Falls diese Marke am Dokumentende steht, dann springt <a href="#top"> halt ans Dokumentende ;-)

    Grüsse

    Tom

    1. <kurzees Hallo>Hallo</kurzes Hallo>

      Frage: Führt <a href="#top"> immer zum Seitenbeginn? Steht das irgendwo in SELFHTML und ich habs überlesen?

      <a href="#top"> springt _immer_ zur Marke (Anker, Anchor) mit dem Namen 'top', hier in Deinem Beispiel innerhalb des gleichen Dokuments.
      Die Marke definierst Du mit: <a name='top'>bla</a>.

      Falls diese Marke am Dokumentende steht, dann springt <a href="#top"> halt ans Dokumentende ;-)

      Grüsse

      Tom

      Stimmt, springt aber anscheinend auch automatisch (sofern "undefiniert") zum Dokument_anfang_!!!

      Schau dir doch mal den Quellcode dieses Links an:
      <../../selfhtml.htm>

      Du wirst kein <a name="top"> oder dergleichen vorfinden!

      Meine Frage ist damit leider noch nicht beantwortet.

      mfG
      Felix Rabe

      1. Hi!

        Stimmt, springt aber anscheinend auch automatisch (sofern "undefiniert") zum Dokument_anfang_!!!

        Was der Browser tut, wenn ein Sprungziel undefiniert ist, ist seine Sache (oder ist das in der Html-Spec geregelt?). Manche Browser springen dann an den Seitenanfang, andere springen ueberhaupt nicht, und es waere sogar denkbar, dass ein Browser bei der "Suche" nach dem Anker bis zum Seitenende scrollt (ok, es waere Dummheit, das so zu programmieren).

        Meine Frage ist damit leider noch nicht beantwortet.

        Es bleibt dabei. <a href="#top"> springt zum Anker "top", sofern dieser vorhanden ist.

        Calocybe

        1. Stimmt, springt aber anscheinend auch automatisch (sofern "undefiniert") zum Dokument_anfang_!!!

          Was der Browser tut, wenn ein Sprungziel undefiniert ist, ist seine Sache (oder ist das in der Html-Spec

          mit dem code den ich getestet habe, hab ich folgendes erfahren:

          1. es funzt nur mit "top"
          2. springt der browser (ie & netsi!) zum seitenanfang!

          so, und da es ja auch in selfhtml so gemacht wurde, soll mich jemand korrigieren, falls es in browsern wie lynx nicht gehen sollte

          hier ist mein kurzes Testchen:

          http://redrival.com/frhp/toptest.htm

          bis nextens
          Felix

        2. Es bleibt dabei. <a href="#top"> springt zum Anker "top", sofern dieser vorhanden ist.

          Calocybe

          Hi,

          ich hab das unlängst zufällig entdeckt - der anker "top" ist tatsächlich ein ausnahmefall beim IE. Wenn kein anker definiert ist, springt netscape immer zum anfang, IE tut hingegen gar nichts, wenn der anker nicht zufällig "top" heisst! Also verwend ich immer #top und erspare mir die definition am seitenanfang.

          Ciao,
          rob.

          1. Hallo Robert und Felix!

            ich hab das unlängst zufällig entdeckt - der anker "top" ist tatsächlich ein ausnahmefall beim IE. Wenn kein anker definiert ist, springt netscape immer zum anfang, IE tut hingegen gar nichts, wenn der anker nicht zufällig "top" heisst!

            Ich habe es jetzt auch ausprobiert und es stimmt.

            IE4 springt bei "#top" immer an den Seitenanfang, es sei denn der Anker ist irgendwo anders definiert. Bei allen anderen nicht definierten Sprungzielen (ich habe natuerlich nicht ALLE ausprobiert) reagiert er nicht.

            IE3 verhaelt sich genauso, oder versucht es zumindest (er trifft den oberen Rand nicht so genau und bleibt ein paar Pixel tiefer haengen).

            Netscape 4 und IE2 springen beide an den Seitenanfang, wenn sie einen Anker nicht finden koennen.

            Netscape 2 und 3 habe ich im Moment leider nicht zur Verfuegung. Vielleicht komme ich heute Abend noch dazu, das zu testen.

            Also verwend ich immer #top und erspare mir die definition am seitenanfang.

            Diese Schlussfolgerung finde ich nun wieder nicht so toll. Es gibt ja noch jede Menge andere Browser auf der Welt, und wie die reagieren, ist ungewiss.

            Kleiner Tip noch an Felix: A-Tags duerfen nicht verschachtelt werden. Deshalb nicht
                <a name="ende"><a href="#top">Zum Anfang</a></a>
            sondern
                <a name="ende" href="#top">Zum Anfang</a>
            .

            Bye, Calocybe

            1. Kleiner Tip noch an Felix: A-Tags duerfen nicht verschachtelt werden. Deshalb nicht
                  <a name="ende"><a href="#top">Zum Anfang</a></a>
              sondern
                  <a name="ende" href="#top">Zum Anfang</a>

              danke für den Tip. Sollte das in SELFHTML nicht stehen, dann vielleicht beim nexten Update :)

              mfG
              Felix Rabe

            2. Hi nochmal!

              Netscape 2 und 3 habe ich im Moment leider nicht zur Verfuegung. Vielleicht komme ich heute Abend noch dazu, das zu testen.

              Hab ich jetzt ausprobiert. Sie verhalten sich genauso wie Netscape 4 und IE2.

              Bye, Calocybe

        3. Hallo Colocybe

          Was der Browser tut, wenn ein Sprungziel undefiniert ist, ist seine Sache (oder ist das in der Html-Spec geregelt?).

          Habe ich gerade recherchiert:

          Allgemeine Definition des A-Elements: http://www.w3.org/TR/REC-html40/struct/links.html

          Und falls eine Ressource nicht definiert ist, gilt folgendes: http://www.w3.org/TR/REC-html40/struct/links.html#h-12.2.4

          Somit müsste der Browser eigentlich eine Fehlermeldung bringen, bzw. nichts tun.
          Soviel zur Umsetzung von Standards ;-)

          Grüsse

          Tom

          1. Hi Tom!

            Und falls eine Ressource nicht definiert ist, gilt folgendes: http://www.w3.org/TR/REC-html40/struct/links.html#h-12.2.4
            Somit müsste der Browser eigentlich eine Fehlermeldung bringen, bzw. nichts tun.

            Ja, ich bin auch gerade am recherchieren, komischerweise an derselben Stelle. *g* Du meinst sicher den Satz "If a user agent cannot locate a linked resource, it should alert the user. " Aber vielleicht beziehen die das mehr auf "richtige" Links, also auf eine andere Datei? Wie auch immer, "should" bedeutet nicht "must" (in der HTTP-Sepc werden diese Woerter deshalb auch immer in Grossbuchstaben geschrieben), und wenn es Sinn macht, nehme ich eine Abweichung vom Standard gerne hin. Und eine alert-Box bei jedem fehlenden Anker? Naja, muss wohl auch nicht sein, oder? Dass der Netscape einfach an den Seitenanfang springt, ist aber imho auch keine gute Loesung.

            So long

            1. Dass der Netscape einfach an den Seitenanfang springt, ist aber imho auch keine gute Loesung.
              ---

              Also: Das macht 1. der IE auch und 2. auch nur mit #top.

              Werde jetzt noch diesen Thread zu Ende lesen...

            2. Dass der Netscape einfach an den Seitenanfang springt, ist aber imho auch keine gute Loesung.
              ---

              Also: Das macht 1. der IE auch und 2. auch nur mit #top.

              Werde jetzt noch diesen Thread zu Ende le

  2. Frage: Führt <a href="#top"> immer zum Seitenbeginn? Steht das irgendwo in SELFHTML und ich habs überlesen?

    (ich hoffe, eine "GRAFIK" ist gleich "HTML" <g>)

  3. Frage: Führt <a href="#top"> immer zum Seitenbeginn? Steht das irgendwo in SELFHTML und ich habs überlesen?

    In SELFHTML habe ich auch keinen Hinweis gefunden obwohl Stefan das schon auf der Startseite verwendet. Im Forum fand sich ein Hinweis: <../../sfarchiv/1999_3/t05077.htm#a24791>.

    Leider hat dort sonst niemand Stellung genommen um die Hintergruende zu erlaeutern oder zu bestaetigen oder zu dementieren.

    Hat jemand Erfahrung mit Browsern die das nicht so interpretieren?

    H-P