XHTML-совместимое встраивание живого мессенджера
Следующий код может быть встроен в веб-сайт для добавления функциональности Windows Live Messenger. Есть ли способ сделать это XHTML 1.0 Translitional совместимым?
<div
id="Microsoft_Live_Messenger_PresenceButton_e17530aa6eff7871"
msgr:width="100"
msgr:backColor="#DBDBDB"
msgr:altBackColor="#FFFFFF"
msgr:foreColor="#424542"
msgr:conversationUrl="http://settings.messenger.live.com/Conversation/IMMe.aspx?invitee=e17530aa6eff7871@apps.messenger.live.com&mkt=de-DE&useTheme=true&themeName=gray&foreColor=676769&backColor=DBDBDB&linkColor=444444&borderColor=8D8D8D&buttonForeColor=99CC33&buttonBackColor=676769&buttonBorderColor=99CC33&buttonDisabledColor=F1F1F1&headerForeColor=729527&headerBackColor=B2B2B2&menuForeColor=676769&menuBackColor=BBBBBB&chatForeColor=99CC33&chatBackColor=EAEAEA&chatDisabledColor=B2B2B2&chatErrorColor=760502&chatLabelColor=6E6C6C"></div>
<script type="text/javascript" src="http://messenger.services.live.com/users/e17530aa6eff7871@apps.messenger.live.com/presence?dt=&mkt=de-DE&cb=Microsoft_Live_Messenger_PresenceButton_onPresence"></script>
1 ответ
Решение
В XHTML амперсанд всегда инициирует сущность. Поэтому вам нужно заменить все амперсанды на &
чтобы получить действительный XML.
Так как XHTML1.0 указан в DTD, а DTD не могут обрабатывать пространства имен, код никогда не будет технически действительным XHTML1.0 Transitional. В любом случае, любое нормальное приложение будет относиться к нему как таковому.