XHTML действительно Xtensible? - PullRequest
3 голосов
/ 30 ноября 2010

Есть ли способ (на стороне сервера или на стороне клиента), чтобы я мог фактически расширить HTML для включения новых тегов?Например, было бы здорово, если бы я мог написать что-то вроде фрагмента схемы, который определил blogpost, который содержит postname, postauthor, posttime и postcontent, и после этого обратился бы кblogpost в моем HTML, вместо того чтобы прибегать к базовым тегам HTML div и p.

Ответы [ 6 ]

2 голосов
/ 30 ноября 2010

Похоже, что HTML5 прямо на вашей аллее!

Вы можете использовать такие элементы, как section, чтобы завершить все ваши сообщения, и article для каждого сообщения, а также такие основы, какheader, nav и footer.Нет мелкозернистых элементов, таких как postauthor или posttime, но вы можете предоставить другие атрибуты, чтобы помочь определить их.

Хм, кажется, я говорил с вами в ближайшее время, вы также можете использовать это:

<time pubdate datetime="2010-11-13T20:00+09:00">Posted Nov 13.</time>
2 голосов
/ 30 ноября 2010

Что будет здорово. Вот статья , объясняющая, почему это не сработает.В принципе, вы можете расширить разметку.Но HTML-браузеры не будут знать, как интерпретировать ваши новые теги.

0 голосов
/ 30 ноября 2010

Вы можете добавить пользовательские теги, смешивая XHTML с вашим собственным языком. Этот язык уже не XHTML, а составной язык, включающий XHTML, но в любом случае это всегда было целью XHTML.

Однако вам необходимо будет правильно использовать XHTML и использовать его с типом mime XML, например application / xhtml + xml, что означает отсутствие поддержки IE до IE9.

Вы можете увидеть пример использования блога, поста, поставтора и т. Д. Здесь:

http://www.alohci.net/application/xhtml+xml/custom1.xhtml.ashx

(работает в Firefox, Chrome, Safari, Opera и IE9)


[Конечно, вы можете просто вставить недопустимые теги в HTML и стилизовать их, но мне это не кажется вопросом, который был конкретно о природе расширяемости XHTML.]

0 голосов
/ 30 ноября 2010

Вы можете добавить пользовательские теги в дерево DOM. Вы не получите действительный XHTML, но браузеры будут понимать эти теги, если вы правильно их стилизуете.

Очень интересный проект, использующий это поведение браузера, - WebODF , инструмент для доставки документов ODF в браузер. Посмотрите видео на сайте и демоверсию, чтобы понять, как это работает.

0 голосов
/ 30 ноября 2010

Хотя браузер не будет легко понимать расширения, основанные на расширяемости на основе XML, это не означает, что люди не работают над этой проблемой.

HTML5 дополнений, таких как <section> в стороне, лучшее решение для того, что вы пытаетесь сделать, это, вероятно, микроформаты . В случае вашего блога, например, hAtom .

Затем вы получаете что-то, что понимают браузеры, но могут постепенно улучшаться, поскольку все больше систем поддерживают hAtom, и вы можете стилизовать записи, используя ссылки на классы, такие как .hentry, .entry-title и .author.

0 голосов
/ 30 ноября 2010

Для обычного веб-разработчика нет. Вам нужно написать собственный DTD, чтобы иметь свои собственные теги, и даже в этом случае он не принесет вам семантической пользы ни для чего, кроме вашего здравомыслия.

Кроме того, некоторые браузеры ahem IE не будут знать, как обрабатывать ваши пользовательские теги, и вам придется прибегнуть к JavaScript, чтобы научить этому. Не очень рекомендуется ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...