Kalle: Anker <a name=...> in Tabelle

Hallöle,

habe eine größere Tabelle, in der ich Zeilen mit <a href='#6'> anspringen möchte. Das klappt nicht (FF 1.5).

Liegt es an dieser Lösung:

<tr>...</tr>
<a name='6'></a>
<tr class='bggrau'>
 <td .. /td>
</tr>
<tr>...</tr>

Wo müsste der Eintrag <a name..> sitzen? Oder ist eine Zahl unzulässig (SelfHTML sat nichts darüber)?

Lieben Gruß, Kalle

  1. Hallöle,

    habe eine größere Tabelle,

    Das ist schon mal schlecht, mach Dein Layout ohne Tabellen

    Wo müsste der Eintrag <a name..> sitzen?

    Auch das ist veraltet:
    <a id="...">

    Oder ist eine Zahl unzulässig (SelfHTML sat nichts darüber)?
    Doch:

    ID, IDREF oder Name

    Der Wert eines solchen Attributs muss mit einem Buchstaben A-Z oder a-z beginnen, und darf in der weiteren Zeichenkette ebenfalls nur Buchstaben A-Z und a-z, Ziffern 0-9, Bindestriche (-), Unterstriche (_), Doppelpunkte (:) und Punkte (.) enthalten. Nicht erlaubt sind Sonderzeichen, Leerzeichen oder andere Interpunktionszeichen.

    Werte vom Typ IDREF müssen als Wert den identisch geschriebenen Namen erhalten, der in einem anderen Element, auf das mit dem IDREF-Attribut Bezug genommen wird, mit dem Attribut id vergeben wurde.

    Gruß
    Avalon

    1. Hi,

      Oder ist eine Zahl unzulässig (SelfHTML sat nichts darüber)?
      Doch:

      Nein.

      ID, IDREF oder Name

      Das name-Attribut des a-Elements ist aber nicht vom Typ ID, IDREF oder NAME - also trifft der von Dir zitierte Abschnitt gar nicht zu - , sondern vom Typ CDATA.

      cu,
      Andreas

      --
      Warum nennt sich Andreas hier MudGuard?
      Schreinerei Waechter
      Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
      1. Hi.

        Sorry aber ich hab das noch nicht verstanden.

        Ich möchte ein Verweisziel in einer bestimmten Zelle einer Tabelle anzeigen lassen.

        ich habe jetzt folgendes in den Abschnitt der gewünschten Zelle geschrieben:

        <th a id="ziel" body bgcolor="#000033" width="*" scope="col">

        Wichtig dabei ist natürlich nur   id="ziel"   !!!
        Ist das so weit richtig?

        Wenn ja, wie müsste dann ein Verweis zu z.B. Google formuliert werden?

        so z.B.???
        <a href="http://www.google.de" target="ziel"> Google </a> ???

        Mir geht es wirklich nur um die Deklaration des Ziels!

        mfG pAnZeR

        1. Hallo,

          Sorry aber ich hab das noch nicht verstanden.

          den Eindruck habe ich auch. ;-)

          Ich möchte ein Verweisziel in einer bestimmten Zelle einer Tabelle anzeigen lassen.

          Was meinst du damit? Hier ging es darum, mit einem Verweis (Link) eine bestimmte Stelle des Dokuments anzuspringen.

          <th a id="ziel" body bgcolor="#000033" width="*" scope="col">

          Du liebe Güte, was ist denn das? Jedenfalls kein HTML. Was willst du mit "a" und "body" als Attribute (aber ohne Wert) im th-Element? Ebenso ist "*" kein gültiger Wert für das width-Attribut, und vom scope-Attribut habe ich auch noch nie gehört.

          Wenn ja, wie müsste dann ein Verweis zu z.B. Google formuliert werden?

          Was hat Google jetzt damit zu tun? Eigentlich gar nichts.
          Der Sinn der ganzen Geschichte war nur, beispielsweise eine Zelle in einer Tabelle zu kennzeichnen, um mit einem Link genau diese Stelle anspringen zu können. Also z.B. so:

          <td id="ziel">Hier steht der Inhalt, auf den ich verlinken möchte</td>

          Diese Stelle würde man dann mit einem Link in der Art referenzieren:

          <a href="datei.htm#ziel">Zur interessanten Stelle</a>

          Mir geht es wirklich nur um die Deklaration des Ziels!

          Ja, aber irgendwie hast du anscheinend trotzdem etwas ganz anderes im Sinn.
          So long,

          Martin

          --
          You say, it cannot be love if it isn't for ever.
          But let me tell you: Sometimes, a single scene can be more to remember than the whole play.
          1. kann ja nicht jeder alles wissen... -.-
            "*" is eine gultige deklaration für einen widht wert.
            jedenfalls macht dreamweaver 8 das so.   -.-
            und body is auf bgcolor bezogen, oder weisst du wie man sonnst die hintergrungfarbe der zelle bestimmt?-.-

            dachte auch das ich das selbe problem hab wie kalle.
            scheint nicht so.

            sehr hilfeicher betreig auf jeden fall -.-

            1. Hallöchen,

              kann ja nicht jeder alles wissen... -.-

              Das verlangt ja auch niemand. :-)

              "*" is eine gultige deklaration für einen widht wert.

              Nein, nur in Framesets. Dort darf man "*" als Breite oder Höhe eines Frames setzen, und es heißt dann soviel wie "der Rest, der noch übrig ist".

              jedenfalls macht dreamweaver 8 das so.

              Tja, dann macht Dreamweaver da Murks. Das ist grundsätzlich nichts Neues. Es gibt Leute, die das Programm toll finden, mag sein, dass es wirklich was taugt (keine Ahnung), aber es erzeugt eben gern auch ungültigen HTML-Code.

              und body is auf bgcolor bezogen, oder weisst du wie man sonnst die hintergrungfarbe der zelle bestimmt?

              Hmm? Du meinst <td bgcolor="...">?
              Das mit dem bgcolor-Attribut ist schon richtig, aber das "body" hat da nix verloren. Davon abgesehen solltest du dir von Anfang an angewöhnen, für die optische Gestaltung (und Farben gehören eindeutig dazu) CSS zu verwenden und nicht die alten HTML-Attribute. Der Trend ist ganz klar, Inhalt und Gestaltung voneinander zu trennen.

              dachte auch das ich das selbe problem hab wie kalle.
              scheint nicht so.

              Möglicherweise nicht. Ich hab nämlich immer noch nicht verstanden, was du eigentlich gemeint hattest.

              Schönen Abend noch,

              Martin

              --
              Ich wollt', ich wär ein Teppich. Dann könnte ich morgens liegenbleiben.
              1. Hi Martin,

                Ich hab nämlich immer noch nicht verstanden, was du eigentlich gemeint hattest.

                Iframes vielleicht. Igitt!

                Live long and prosper,
                Gunnar

                --
                „Weisheit ist nicht das Ergebnis der Schulbildung, sondern des lebenslangen Versuchs, sie zu erwerben.“ (Albert Einstein)
              2. Hi,

                "*" is eine gultige deklaration für einen widht wert.

                Nein, nur in Framesets.

                Nein, natürlich nicht - denn frameset hat gar kein width-Attribut.

                "*" und Konsorten sind im width-Attribut nur in den Elementen col und colgroup zulässig.
                (und im rows- und cols-Attribut des frameset-Elementes)

                cu,
                Andreas

                --
                Warum nennt sich Andreas hier MudGuard?
                Schreinerei Waechter
                Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
                1. Hallo,

                  "*" is eine gultige deklaration für einen widht wert.
                  Nein, nur in Framesets.

                  Nein, natürlich nicht - denn frameset hat gar kein width-Attribut.

                  das habe ich auch nicht gesagt, sondern nur, dass "*" nur in Framesets eine gültige Deklaration (schlechter Ausdruck, zugegeben) ist.

                  [...] nur in den Elementen col und colgroup zulässig.

                  Die Elemente kenne ich nur vom Hörensagen. Verwendet habe ich sie noch nie.
                  Schönen Abend noch,

                  Martin

                  --
                  Alkohl ist ungesund,
                  Rauchen ist schädlich,
                  Sex ist unanständig
                  - und die Erde ist eine flache Scheibe.
              3. Hallo.

                Nein, nur in Framesets. Dort darf man "*" als Breite oder Höhe eines Frames setzen, und es heißt dann soviel wie "der Rest, der noch übrig ist".

                Nicht ganz, sondern "der durch die unmittelbar vor dem '*' stehende Zahl definierte Anteil vom Rest, der noch übrig ist, wobei '*' für '1*'steht".
                MfG, at

                1. Hallo,

                  Nein, nur in Framesets. Dort darf man "*" als Breite oder Höhe eines Frames setzen, und es heißt dann soviel wie "der Rest, der noch übrig ist".

                  Nicht ganz, sondern "der durch die unmittelbar vor dem '*' stehende Zahl definierte Anteil vom Rest, der noch übrig ist, wobei '*' für '1*'steht".

                  ja, du hast Recht. Grundsätzlich wusste ich das auch, aber da diese Möglichkeit "in freier Natur" selten anzutreffen ist, war sie mir momentan nicht gegenwärtig.
                  Mir ging es auch primär darum klarzumachen, dass "*" eben nicht als width-Angabe eines td-Elements taugt.

                  Schönen Abend noch,

                  Martin

                  --
                  Paradox ist, wenn jemand eingefleischter Vegetarier ist.
                  1. Hallo.

                    Mir ging es auch primär darum klarzumachen, dass "*" eben nicht als width-Angabe eines td-Elements taugt.

                    Okay, ich schreibe demnächst dazu, wenn mir zwar klar ist, dass du das weißt, ich aber dennoch etwas ergänze, um Folgeprobleme bei Hilfesuchenden zu vermeiden.
                    MfG, at

                  2. Hi Der Martin,

                    Mir ging es auch primär darum klarzumachen, dass "*" eben nicht als width-Angabe eines td-Elements taugt.

                    Der Drwamweaver setzt das auch nicht so, halten zu Gnaden.

                    Viele Grüße
                    Mathias Bigge

          2. ach ja, und das a vor dem id ist mir da nur aus versehen reingerutscht.

            bedenke bitte das ich erst seit 2 wochen mit html/dramweaver 8 experiementiere.
            und als kleine unterstützung hab ich noch das HTML 4.0 Handbuch
            3. Auflage Copyright 1999.

            also bitte konstruktive beiträge.

    2. Hallöle Avalon,

      habe eine größere Tabelle,
      Das ist schon mal schlecht, mach Dein Layout ohne Tabellen

      Gemach, gemach, ist ja in Arbeit:
      http://forum.de.selfhtml.org/archiv/2005/12/t119817/
      Aber DIESE Frage bezieht sich auf eine TABELLE.

      Wo müsste der Eintrag <a name..> sitzen?
      Auch das ist veraltet:
      <a id="...">

      Und wie spring man zum id? Auch mit <a href=''> ?

      Werte vom Typ IDREF müssen als Wert den identisch geschriebenen Namen erhalten, der in einem anderen Element, auf das mit dem IDREF-Attribut Bezug genommen wird, mit dem Attribut id vergeben wurde.

      Gut und schön, aber wo darf <a name> oder <a id> innerhalb einer TABELLE sitzen?

      LG Kalle

      1. Hi Kalle,

        Und wie spring man zum id? Auch mit <a href=''> ?

        ähm... ja. Am Link ändert sich nichts. Allerdings ist es nicht Sinn der Sache, den Anker <a name="..."> einfach in <a id="..."> umzutaufen. Der Sinn der Übung ist vielmehr, dass man die ID auch jedem anderen Element geben kann und das a-Element als Anker damit überflüssig wird.

        Gut und schön, aber wo darf <a name> oder <a id> innerhalb einer TABELLE sitzen?

        Jedenfalls nicht außerhalb eines td! In deinem Beispiel hattest du es direkt als Kindelement eines tr notiert. Das ist nicht zulässig.

        Um nochmal auf die ID-Geschichte zu kommen: Lass doch das a-Element als Anker weg und gib stattdessen dem passenden td die ID, die du dann als Linkziel angibst.

        So long,

        Martin

        --
        Finanztipp:
        Leihen Sie sich Geld von einem Pessimisten.
        Er rechnet sowieso nicht damit, dass er es zurückbekommt.