Ludwig Ruderstaller: Wie weit ist das von W3C entfernt?

Hallo,

Ich hab da ein kleines Problem naja, problem ist vielleicht übertrieben den das Construct funktioneiert ja in IE und NS die Frage ist aber ist es "richtig"?

<table border="0" align="center" cellspacing="2" cellpadding="5">
<tr>
  <td colspan="2" class="input">Bitte wählen Sie aus:</td>
</tr>
<form methode="post" action="auswahl.php3">
<tr valign="middle">
  <td class="name">Eintrag hinzufügen:</td>
  <td class="input" valign="middle"><input type="hidden" name="ausart" value="<? $ausart ?>"><input type="hidden" name="userid" value="<? $userid ?>"><input type="submit" name="add" value="Starten"></td>
</tr>
</form>
<form methode="post" action="auswahl.php3">
<tr>
        [.....]
        </tr>
    </table>

es geht dabei um die <form> tags die zwischen </tr> und <tr> stehen. Normalerweisse baue ich das form vor die tabelle, nur in diesem fall hab ich mehrere Formular (nur submit button) die variablen an ein PHP skript übergeben. eigene Tabellen für jeden form aufmachen schien mir umständlich.

lg
Ludwg

  1. Hi

    erlaubt ist es offiziell nicht , aber so du daran denkst
    die zweite <form> noch vor </table> zu schliessen um keinen Nesting-Error zu es in der Praxis keine Probleme.
    Anosnten

    Schick doch mal z.B. die Forumshauptdatei durch nen
    Validator , was da alles an Tags so angeblich nicht
    erlaubt ist ist schon erstaunlich , aber es funktioniert
    und es lässt sich gerade bei Seiten die durch Scripts
    erstellt werden manchmal gar nicht anders vernünftig
    lösen.

    gruss
    Jens

  2. Hallo Ludwig!

    »»die Frage ist aber ist es "richtig"?
    »»</tr>
    »»<form>
    <tr valign="middle">

    So wird der Validator bestimmt meckern, denn so steht <form> praktisch zwar in der Tabelle jedoch im nichts.
    Im <form> sind block-level Elemente (wie <table>) erlaubt, dagegen weder im <table> noch im <tr> ist <form> erlaubt.

    Grüße
    Thomas

  3. Ich hab da ein kleines Problem naja, problem ist vielleicht übertrieben den das Construct funktioneiert ja in IE und NS die Frage ist aber ist es "richtig"?

    http://www.htmlhelp.com/tools/validator/direct.html

    Line 11, character 4:
    <tr>
       ^
    Error: element TR not allowed here; check which elements this element may be contained within

    Line 14, character 15:
    <form methode="post" action="auswahl.php3">
                  ^
    Error: there is no attribute METHODE for this element (in this HTML version)

    Line 15, character 20:
    <tr valign="middle">
                       ^
    Error: element TR not allowed here; check which elements this element may be contained within

    Line 21, character 4:
    <tr>
       ^
    Error: element TR not allowed here; check which elements this element may be contained within

    Line 22, character 9:
            [.....]
            ^
    Error: text is not allowed here; try wrapping the text in a more descriptive container

    Line 23, character 13:
            </tr>
                ^
    Error: missing a required sub-element of TR

    Line 24, character 12:
        </table>
               ^
    Error: end tag for element TABLE which is not open; try removing the end tag or check for improper nesting of elements

    Line 25, character 9:
      </body>
            ^
    Error: end tag for FORM omitted; possible causes include a missing end tag, improper nesting of elements, or use of an element where it is not allowed

    Line 20, character 1:
    <form methode="post" action="auswahl.php3">
    ^
    start tag was here