Я создаю плагин для CKEditor, настраивая существующий плагин 'Image', чтобы он лучше соответствовал нашей цели.
Проблема с ним заключается в том, что он имеет тенденцию возиться с существующими атрибутами при редактировании изображения. Например, что-либо с левым или правым атрибутом 'align =' будет изменено на стиль 'float:' после редактирования изображения, даже если вы не вносите никаких изменений. Кроме того, все, что установлено на 'auto', также удаляется.
С обычным html это не проблема, но мы создаем адаптивные электронные письма, и эти атрибуты необходимы для правильного их отображения в Outlook.
Я пытаюсь сохранить определенные атрибуты на основе их исходных значений, которые работают хорошо. Однако я столкнулся с проблемой с атрибутом 'margin'.
Изображение в одном из наших шаблонов электронной почты имеет атрибут margin: style, установленный в «0 auto». CKEditor, похоже, обрабатывает весь Html в структуру DOM с добавленными идентификаторами, из которых он хранит и работает - однако к тому времени, когда это значение было обработано и включено в этот внутренний DOM, оно было изменено на
margin: "0px"
margin-top: "0px"
margin-bottom: "0px"
margin-left: "0px"
margin-right: "0px"
без признаков исходного значения 'auto'.
Есть ли способ получить доступ к исходной строке HTML элемента без DOMed, чтобы я мог получить исходное свойство стиля?
Я копался в диалоге и в объекте CKEDITOR; Я обнаружил, что объект CKEDITOR хранит саму «сырую» структуру DOM с необработанным атрибутом стиля, однако, если не считать какого-то ужасно сложного обхода этого, я не могу найти способ вернуться к элементу в этом необработанном DOM.