Почему единый текстовый беспорядок все последующие XHTML?

Я столкнулся с проблемой в моей веб-программе. У меня есть textarea в моем виде, иногда в textarea ничего нет, поэтому шаблонный движок genshi просто выводит его как

<textarea xxxx />

и здесь возникает проблема, все следующие теги находятся в текстовой области. Почему все браузеры не могут правильно обрабатывать одну текстовую область?

Если я напишу это как

<textarea xxxx></textarea>

и все работает отлично. Почему одна текстовая область портит следующие теги в xhtml?

1 ответ

Решение

Потому что вы, по-видимому, обслуживаете свой XHTML с типом содержимого text / html и заставляете его обрабатывать как HTML. Самозакрывающиеся теги в стиле XML не существуют в HTML (поэтому вы должны использовать явные начальный и конечный теги, за исключением случаев, когда они запрещены (например, конечные теги для img) или необязательны (например, начальные и конечные теги для элемента body).

Если вы хотите, чтобы ваши страницы обрабатывались как XHTML, тогда используйте приложение / xhtml + xml (и попрощайтесь с поддержкой из Internet Explorer).

(Вот почему я придерживаюсь HTML 4.01 для большинства проектов)

См. http://www.w3.org/TR/xhtml-media-types/ для получения более подробной информации (включая полный набор рекомендаций по совместимости, чтобы превратить ваш XHTML в форму, в которой пользовательские агенты HTML могут с этим справиться).

Другие вопросы по тегам