Есть ли какой-либо способ (сервер или клиент), который я могу на самом деле расширить HTML, чтобы добавить новые теги? Например, было бы здорово, если бы я мог бы написать что-то вроде фрагмента схемы, которая определяла в blogpost
, который содержит postname
, postauthor
, posttime
, и postcontent
, а затем обратитесь к blogpost
в моем HTML, а не прибегая к основным HTML div
и p
теги.Действительно ли XHTML Xtensible?
ответ
Похоже, что HTML5 находится прямо вверх по вашей аллее!
Вы можете использовать такие элементы, как section
завернуть все ваши сообщения, и article
для каждой должности, а также основы как header
, nav
и footer
. Существует не мелкозернистые элементы, такие как postauthor или posttime, но вы можете предоставить другие атрибуты, которые помогут определить их.
Хм, кажется, что я говорил в ближайшее время, вы можете использовать это тоже:
<time pubdate datetime="2010-11-13T20:00+09:00">Posted Nov 13.</time>
Согласен! Я не могу дождаться. – Stephen 2010-11-29 22:40:06
То, что будет be awesome. Here is an article объясняет, почему это не сработает. В принципе, вы можете расширить разметку. Но браузеры HTML не будут знать, как интерпретировать ваши новые теги.
Это близко к тому, о чем я говорю. (Хотя я, вероятно, попытаюсь создать новую схему XML, прежде чем пытаться создать новый DTD) – JnBrymn 2010-11-29 22:57:07
Не могли бы вы подробнее рассказать об этом. Что означает HTML-браузер? Все современные браузеры, кроме IE, имеют синтаксический анализатор XML. Какие браузеры знают, как интерпретировать пользовательские теги и которые не знают? – 2010-11-29 23:02:38
Связанная статья невероятно устарела («Netscape Navigator»?). Также я подозреваю, что браузер не основывает свою интерпретацию содержимого файла как HTML на основе расширения файла, как они утверждают. – ijw 2012-09-12 12:29:47
Для общего веб-разработчик, нет. Вам нужно будет написать свой собственный DTD, чтобы иметь свои собственные теги, и даже тогда это действительно не принесет вам семантического эффекта ни на что иное, кроме вашего собственного здравомыслия.
Кроме того, некоторые браузеры ahem IE не будут знать, как обращаться с вашими пользовательскими тегами, и вам придётся использовать JavaScript для его обучения. Не рекомендуется ...
Хотя браузер не будет легко понимать расширения на основе расширяемой XML-расширяемости, это не значит, что люди не работают над этой проблемой.
HTML5 дополнения, такие как <section>
в стороне, лучшее решение для того, что вы пытаетесь сделать, вероятно, microformats. В случае вашего примера блога, hAtom.
Тогда вы получите то, что браузеры понимают, но может быть постепенно повышена, поскольку все больше систем поддержки hAtom и вы можете стиль записи с помощью ссылок на классы, как .hentry
, .entry-title
и .author
.
может добавить пользовательские теги в дерево DOM. Вы не получите действительный XHTML, но браузеры поймут те теги, пока вы правильно их нарисуете.
Весьма интересный проект, использующий этот режим, является WebODF - инструмент для вывода документов ODF в браузер. Просмотрите видео на сайте и живую демонстрацию, чтобы понять, как это работает.
Вы можете добавить пользовательские теги, смешав XHTML с вашим пользовательским языком. Язык уже не XHTML, а сложный язык, включая XHTML, но это всегда было целью XHTML.
Вы, однако, должны правильно использовать XHTML и подавать его с типом XML mime, таким как application/xhtml + xml, что означает отсутствие поддержки IE до IE9.
Вы можете увидеть пример использования BlogPost, postname, postauthor и т.д. здесь:
http://www.alohci.net/application/xhtml+xml/custom1.xhtml.ashx
(Работает в Firefox, Chrome, Safari, Opera и IE9)
[Конечно , вы можете просто поместить недопустимые теги в HTML и стилизовать их, но для меня это не похоже на то, что касается вопроса о природе расширяемости XHTML.]
- 1. Может ли XHTML вложить больше XHTML?
- 2. Является ли соответствие XHTML бессмысленным?
- 3. Действительно ли CDATA?
- 4. Действительно ли IMFSampleGrabberSinkCallback действительно раковина?
- 5. Действительно ли отражение действительно медленное?
- 6. действительно ли устройство действительно независимое?
- 7. Действительно ли `qsort()` действительно QuickSort?
- 8. Действительно ли IDE действительно стоит?
- 9. Действительно ли openssl_random_pseudo_bytes действительно случайный?
- 10. Не установлен ли документ XHTML внутри документа XHTML?
- 11. Может ли монопроизводить действительный xhtml?
- 12. Действительно ли WebGL нарисовывает призывы, действительно медленные?
- 13. Действительно ли код Visual Studio действительно свободен?
- 14. Действительно ли обертывание тела действительно необходимо?
- 15. Действительно ли String.intern() действительно повышает производительность?
- 16. Действительно ли функции действительно делают код эффективным?
- 17. Действительно ли WebClient.DownloadDataAsync действительно генерирует исключения?
- 18. Действительно ли Rails 'protect_from_forgery действительно полезен?
- 19. Действительно ли частные переменные javascript действительно безопасны?
- 20. Действительно ли вентилятор клиента действительно хорошая идея?
- 21. Серьезно, действительно ли миниатюры Facebook действительно работают?
- 22. Действительно ли clojure.lang действительно детали реализации?
- 23. Действительно ли ColdFusion оценивает() действительно опасно?
- 24. Действительно ли html() действительно заменяет html-код?
- 25. Действительно ли интерпретаторы действительно собираются в памяти?
- 26. Действительно ли атака Bruteforce действительно достижима?
- 27. Как проверить, действительно ли вектор действительно восстановлен?
- 28. Действительно ли UUSiew's addSubview действительно сохраняет представление?
- 29. Действительно ли это smalldatetime?
- 30. Действительно ли это заявление?
Еще один интересный вопрос: если вы использовали эти пользовательские элементы и применяли правила CSS для них, в которых браузеры будут работать (например, из коробки)? – 2010-11-29 23:00:42