Что делают элементы <o: p>?

Я сталкивался с некоторыми (стандартными) проблемами, когда Microsoft Office вводил свою неприятную разметку в некоторый html после пересылки электронной почты через Outlook.

Мне интересно знать:

  • Есть ли ресурс, который объясняет, что на самом деле <o:p> элементы
  • Какие другие элементы MSO обычно вводятся

Ответ 1

Не удалось найти официальную документацию (не удивительно), но в соответствии с этой интересной статьей эти элементы вводятся, чтобы включить Word чтобы преобразовать HTML обратно в полностью совместимый документ Word, со всем сохраненным.

Соответствующий абзац:

Microsoft добавила специальные теги в Word HTML с учетом обратной совместимости. Microsoft хотела, чтобы вы могли сохранять файлы в HTML в комплекте со всеми отслеживаниями, комментариями, форматированием и другими специальными функциями Word, найденными в традиционных файлах DOC. Если вы сохраните файл в HTML и затем перезагрузите его в Word, теоретически вы ничего не потеряете.

Это имеет смысл.

Для вашего конкретного вопроса. o в <o:p> означает "пространство имен Office", поэтому все, что следует за тегом o: в теге, означает "Я являюсь частью пространства имен Office" - в случае <o:p> это просто означает абзац, эквивалент обычного тега <p>.

Я предполагаю, что каждый тег HTML имеет свой "эквивалент" Office, и у них больше.