input und textarea in einem form-bereich
DNingel
- html
Nabend Leute :)
Ich versuch grad ein Kontaktscript, das nicht von mir is xhtml 1.1 strict-konform zu machen.
Der Validator liefert mir dabei allerdings immer die Meldungen das die input und textarea in nem form-Tag nix zu suchen haben.
Ausserdem hätte ich gern die Buttons unter dem Textfeld.
Da ich mich mit Formularen so ziemlich null auskenne n Tipp für dumme hat ;)
Hab schon gegoogled ohne ende und mir die Definitionen und co auf slfhtml.org angeguckt, aber ich weiss nicht weiter :(
Hier ist der entsprechende Code-Teil:
<form id="kontakt" method="post" action="/kontakt.htm">
<div class="stress">Name, Vorname</div>
<input id="name" name="name" type="text" size="30" maxlength="28" value="<?php if(isset($default)) { echo $default['name'];}?>"/>
<p></p>
<div class="stress">E-Mail Adresse </div>
<input id="mail" name="mail" type="text" size="30" maxlength="28" value="<?php if(isset($default)) { echo $default['mail'];}?>"/>
<p></p>
<div class="stress">Betreff</div>
<input id="betr" name="betr" type="text" size="50" maxlength="160" value="<?php if(isset($default)) { echo $default['betr'];}?>"/>
<p></p>
<div class="stress">Nachrichtentext</div>
<textarea id="nachrichtenfeld" name="text" cols="50" rows="9"><?php if(isset($default)) { echo $default['mail'];}?></textarea><p></p>
<div class="center"><input id="formbuttons" name="" type="image" src="/images/buttons/absenden.gif" /><a href="" onclick="reset_all();"><img src="/images/buttons/reset.gif" id="resetbutton" alt="Daten resetten" /></a></div>
</form>
Achja zu sehen is das ganze auf http://dningel.bplaced.net/kontakt.htm
MfG Daniel
Lieber DNingel,
Deine Eingabefelder müssen in Block-Elementen stecken. Das <form>-Element selbst ist kein "sichtbares" Element der Textstrukturierung, sondern definiert eben nur einen Bereich, in welchem diese Eingabe-Elemente als zusammengehörende Bestandteile stehen können - die ihrerseits aber in Textelementen (wie Textabsätze, Listenpunkte, Überschriften etc.) enthalten sein müssen.
[code lang=html]<form id="kontakt" method="post" action="/kontakt.htm">
<div class="stress">Name, Vorname</div>
<input id="name" name="name" type="text" size="30" maxlength="28" value="<?php if(isset($default)) { echo $default['name'];}?>"/>
Das <div> möchte so sehr ein <p> sein, und es möchte ein <http://de.selfhtml.org/html/formulare/strukturieren.htm#label@title=<label>> enthalten, das mit dem nachfolgenden <input> (das auch so gerne noch ins <p> gepasst hätte) logisch verknüpft werden möchte.
PHP-Code kannste Dir in einem solchen Falle sparen, da den Validator nur interessiert, was da tatsächlich als XHTML-Code bei ihm landet. Von dem PHP-Gedönse sieht der nämlich nix - wozu sollten also wir das sehen müssen?
Liebe Grüße,
Felix Riesterer.