Avatar billede skizo_someone Nybegynder
27. oktober 2004 - 20:35 Der er 12 kommentarer og
1 løsning

XHTML 1.1 Validering af <form>

God aften

Jeg har en meget simpel form som jeg har en del besvær med at få valideret til xhtml 1.1 standarden.

Formen ser basalt set således ud:

<form id="user_login" action="fil.php" method="post">
Brugernavn:<br/>
<input type="text" name="username" size="13"/>
Password:<br/>
<input type="password" name="password" size="13"/><br/>
<input type="submit" name="submitlogin" value="Log ind"/>
</form>

Jeg syntes at jeg efterhånden har prøvet alt for at få den godkendt, men lige meget har det hjulpet.

Så nu håber jeg at der er en - eller flere - som kan vise mig hvordan sådan en form skal bygges på for at være valid xhtml 1.1 kode.

På forhånd tak
Avatar billede roenving Novice
27. oktober 2004 - 20:39 #1
-- og lige en kommentar fra sidelinjen:

Hvorfor bruger du overhovedet 1.1, den er der stort set ingen browsere, som kan finde ud af alligevel ?-)
Avatar billede skizo_someone Nybegynder
27. oktober 2004 - 20:44 #2
hmm...det var jeg ellers overbevist om...
Avatar billede b.b Nybegynder
27. oktober 2004 - 20:56 #3
Det ville være lidt lettere hvis du kunne smide de fejl ind som validatoren kommer med..
Avatar billede skizo_someone Nybegynder
27. oktober 2004 - 20:59 #4
sorry, fejlen jeg får smidt i hovedet er følgende:

document type does not allow element "input" here; missing one of "ins", "del", "h1", "h2", "h3", "h4", "h5", "h6", "p", "div", "address", "fieldset" start-tag
Avatar billede Slettet bruger
27. oktober 2004 - 20:59 #5
b.b: Den siger, at han ikke må have <input> direkte i en <form>. Derudover siger den, hvilke elementer han kan bruge inde i <form> og som godt må indeholde <input>-elementer.

skizo_someone: Det ville måske være en ide, hvis du læste de beskeder validatoren kommer med. Jeg synes faktisk at den besked, man får ved netop denne fejltype er rigtig god.

Brug <fieldset> inden for din <form>
Avatar billede Slettet bruger
27. oktober 2004 - 21:02 #6
Og det er nok også en ide at have <legend>Login</legend> som det første i dit fieldset.
Avatar billede skizo_someone Nybegynder
27. oktober 2004 - 21:03 #7
jeg har skam læst beskeden, og forsøgt at følge dens forslag, men det resulterer bare i nye fejl fra validatoren, det er også derfor jeg spørger efter koden for en valideret version af formen
Avatar billede Slettet bruger
27. oktober 2004 - 21:15 #8
OK, her er den helt rigtige udgave:

<form id="user_login" action="fil.php" method="post">
<fieldset>
<label for="username">Brugernavn:</label>
<input type="text" id="username" name="username" size="13"/>
<label for="password">Password:</label>
<input type="password" id="password" name="password" size="13"/>
<input type="submit" name="submitlogin" value="Log ind"/>
</fieldset>
</form>

Jeg kan ikke lige huske om name stadig er tilladt på form-elementer. Hvis den melder fejl om det, så brug id alle steder.
Avatar billede Slettet bruger
27. oktober 2004 - 21:17 #9
Og så bruger du CSS til at styre udseendet af formen. Hvis du f.eks. bruger label{display:block;} vil der være linieskift mellem tekst og felt. Afstanden kan styres med margin-top og margin-bottom.
Avatar billede skizo_someone Nybegynder
27. oktober 2004 - 21:23 #10
Jeg prøver det lige ad...
Avatar billede skizo_someone Nybegynder
27. oktober 2004 - 21:34 #11
ja det hjalp satme... tak sandbox, gider du oprette et svar?
Avatar billede Slettet bruger
27. oktober 2004 - 21:39 #12
Måtte du kun bruge id eller var name også tilladt?
Avatar billede skizo_someone Nybegynder
27. oktober 2004 - 21:54 #13
name er så vidt jeg ved tilladt
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester