Citat:
Ursprungligen inskrivet av iceberg
xhtml1.1 behövs det i.
Nope. Det behövs inte.
I DTD:n står följande:
<!ENTITY % form.qname "form" >
.
.
.
<!ENTITY % fieldset.qname "fieldset" >
.
.
.
<!ENTITY % form.content
"( %BlkNoForm.mix;
| %fieldset.qname; )+"
>
<!ELEMENT %form.qname; %form.content; >
Översatt till svenska blir det ungefär:
Elementet med namnet "form" får innehålla det som är deklarerat i enhet "form.content". Enheten "form.content" får bestå av en eller flera (dock minst en) enhet(er) som heter "BlkNoForm.mix" eller "fieldset.qname" i vilken ordning som helst. Enheten "fieldset.qname" pekar bara på ett kvalificerat namn "fieldset" som finns deklarerat som ett element någon annanstans. Enheten "BlkNoForm.mix" ser ut så här:
<!ENTITY % BlkNoForm.mix
"%Heading.class;
| %List.class;
| %BlkStruct.class;
%BlkPhras.class;
%BlkPres.class;
%Table.class;
%Block.extra;
%Misc.class;"
>
Utifrån detta kan vi utläsa att form även får innehålla enheten "BlkStruct.class". Denna enhet definieras på ett annat ställe och ser ut så här:
<!ENTITY % BlkStruct.class "%p.qname; | %div.qname;" >
Enheten "div.qname" definierar elementet div:
<!ENTITY % div.content
"( #PCDATA | %Flow.mix; )*"
>
<!ENTITY % div.qname "div" >
<!ELEMENT %div.qname; %div.content; >
Enheten "div.content" får innehålla PCDATA (vanlig text ungefär) och enheten "Flow.mix"
<!ENTITY % Flow.mix
"%Heading.class;
| %List.class;
| %Block.class;
| %Inline.class;
%Misc.class;"
>
Denna enhet får innehålla "Inline.class":
<!ENTITY % Inline.class
"%InlStruct.class;
%InlPhras.class;
%InlPres.class;
%I18n.class;
%Anchor.class;
%InlSpecial.class;
%InlForm.class;
%Ruby.class;
%Inline.extra;"
>
Denna får innehålla "InlForm.class":
<!ENTITY % InlForm.class
"| %input.qname; | %select.qname; | %textarea.qname;
| %label.qname; | %button.qname;" >
"InlForm.class" får innehålla "input.qname":
<!ENTITY % input.qname "input" >
"input.qname" definieras som ett element:
<!ENTITY % input.content "EMPTY" >
<!ELEMENT %input.qname; %input.content; >
Alltså. Strukturen form/div/input[type="'text'"] är helt legitim.
Snälla. Ta reda på fakta innan ni skriver någonting. Om ni är osäkra. Skriv det. Tänk på att det ni skriver här kan ligga kvar på nätet länge. Personer som är nya inom fältet kanske läser nånting felaktigt och tror på detta. Det kan få ödesdigra konsekvenser.