#html
#HTML
Вопрос:
Проверка W3C выдает мне вышеупомянутую ошибку в следующей строке:
<div id='main' style='border:1px solid #999;'>
в следующем коде:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><body>
<p>
<label for="wrap">Quick Reference:</label>
<div id='main' style='border:1px solid #999;'>
<div id='wrap' ></div>
</div>
</p>
</body>
</html>
Заранее спасибо
Комментарии:
1. Где ваши теги <!DOCTYPE><html><body>? Вы знаете, что такое правильная структура html?
2.A
<div>
не может быть дочерним для<p>
элемента.3. Да, но когда я удаляю элементы <p>, я получаю эту ошибку: тип документа не допускает здесь элемента «label»; отсутствует один из «p», «h1», «h2», «h3», «h4», «h5», «h6», «div», «pre», «address», «fieldset», «ins», «del» start-tag
4. Там есть мои теги doctype, html и body. Я просто не включил их для ясности.
5. Вы хотите сказать, что единственные вещи, которые вы нам не показываете, — это элементы wrapping
<body>
и<html>
? И предыдущий<!DOCTYPE>
? Я бы посоветовал включить ваш полный HTML, потому что то, что вы опубликовали, является недопустимым HTML (из-за того, что он<div>
заключен в<p>
), но если ошибка сохраняется, это говорит о том, что что-то еще идет не так.
Ответ №1:
Вы не можете иметь div внутри абзаца, а содержимое, которое у вас есть, не похоже на абзац. Замените p
на div
(который является общим контейнером уровня блока для случаев, когда более подходящий элемент не существует в HTML).
Кроме того, метки обозначают элементы управления формой, а не divs. Вероятно, у вас должен быть заголовок (возможно, h1
но более вероятно h2
, если бы было больше контекста), а не label
. Заголовки также не могут отображаться внутри абзацев.