2009-10-02 1 views
2
<form id="youtube-form" method="post" action=""> 

    <label for="searchField" id="label-youtube-id">YouTube ID:</label> 
    <input type="text" id="searchField" name="videoid" class="search-field" /> 

    <fieldset id="outputFieldset"> 
    <legend>Output format:</legend> 
     <label for="flv">FLV</label> 
     <input type="radio" id="flv" name="format" class="radio-button" value="flv" /> 

     <label for="avi">AVI</label> 
     <input type="radio" id="avi" name="format" class="radio-button" value="avi" /> 

     <label for="mp3">MP3</label> 
     <input type="radio" id="mp3" name="format" class="radio-button" value="mp3" /> 
    </fieldset> 

    <input id="youtube-submit" type="submit" name="submit" value="Submit" /> 

</form> 

Что не так с этим кодом? Я, кажется, получаю сообщение об ошибке при проверке. (три из них тоже)Проверка на полевом наборе. Поле находится внутри формы и имеет входы вне

Строка 21, Столбец 49: тип документа не допускается элемент «label» здесь; отсутствует один из «ins», «del», «h1», «h2», «h3», «h4», «h5», «h6», «p», «div», «address», Начальная метка «fieldset»

Это потому, что мне нужно добавить больше полей, или это что-то еще я сделал не так?

Любая помощь очень ценится :)

ответ

3

input и label элементы не допускаются в качестве дочерних элементов для form элементов.

ins, del, h1, h2, h3, h4, h5, h6, p, div, address, fieldset допускаются в качестве дочерних элементов и также могут иметь input и label элементы, как их дети (хотя большинство из них не являются семантически подходящий).

+0

Спасибо :) Теперь я понимаю проблему. Но почему вы видите так много гидов в Интернете, полностью лишенных поля? – MindTooth

+1

Входы и метки допускаются как дочерние элементы форм в переходных версиях HTML. Мы уже давно прошли переходный период. – Quentin

2

этикетки и входы должны быть внутри полей. Или создайте второе/третье filedset, чтобы заключить их отдельно.

например:

<form id="youtube-form" method="post" action=""> 


<fieldset id="youtube"> 
    <label for="searchField" id="label-youtube-id">YouTube ID:</label> 
    <input type="text" id="searchField" name="videoid" class="search-field" /> 
</fieldset> 

    <fieldset id="outputFieldset"> 
    <legend>Output format:</legend> 
     <label for="flv">FLV</label> 
     <input type="radio" id="flv" name="format" class="radio-button" value="flv" /> 

     <label for="avi">AVI</label> 
     <input type="radio" id="avi" name="format" class="radio-button" value="avi" /> 

     <label for="mp3">MP3</label> 
     <input type="radio" id="mp3" name="format" class="radio-button" value="mp3" /> 
    </fieldset> 

<fieldset id="submit"> 
    <input id="youtube-submit" type="submit" name="submit" value="Submit" /> 
</fieldset> 
</form> 
+0

Благодарим вас за предоставленный правильный код для меня. Я узнал из этого. – MindTooth