Сбросить CSS для определенной области страницы? - PullRequest
0 голосов
/ 13 ноября 2009

Я работаю на CMS. Одной из его функций является редактирование «кусочков» HTML в редакторе WYSIWYG, которые отображаются как отдельные страницы.

У меня есть область в CMS, где эти куски предварительно просматриваются.

Чанки полагаются на файл "foundation.css", который загружается в редактор WYSIWYG. Он выполняет небольшие перезагрузки, определяет шрифт и цвет текста по умолчанию и в целом очень прост.

CMS, очевидно, поставляется с кучей CSS-операторов, многие из которых влияют на общие настройки, такие как размер шрифта, семейство, цвет, высота строки, отступы и тому подобное.

Естественно, когда я пытаюсь отобразить фрагмент HTML на странице CMS, он выглядит иначе, чем когда он отображается только с таблицей стилей foundation.css.

Кто-нибудь может придумать, как очистить определенную область на странице HTML (скажем, DIV) от всех предыдущих определений стиля? Я не могу.

  • Помог бы Iframe, отображающий чанк и встраивающий foundation.css, но я боюсь за рабочий процесс пользователя, когда 5-10 IFrames должны быть отрисованы, а затем отрегулированы по высоте через JS после их загрузки. Тьфу.

  • Я думал о том, чтобы «поднять» все остальные CSS в подкласс (то есть настроить CSS CMS), но это потребовало бы прикосновения ко многим файлам, возможно, к некоторому исходному коду PHP, и я бы скорее не делай этого.

Я не думаю, что у этого есть решение, но вы никогда не знаете.

Ответы [ 5 ]

2 голосов
/ 13 ноября 2009

Доступно CSS Reset таблиц стилей; Вы могли бы изменить это, возможно?

1 голос
/ 13 ноября 2009

вы можете присвоить всем элементам div, содержащим код из редактора WYSIWYG, класс, а затем сбросить все внутри этого элемента.

0 голосов
/ 13 ноября 2009

Если взять, например, TinyMCE , они также используют iframe, я думаю, что у них были такие же проблемы, как у вас. Я использую его в своем бэкэнде и на некоторых страницах 4 фрейма. Я не вижу никаких проблем с производительностью.

С TinyMCE можно сжимать нужные вам функции (в PHP, JSP, .NET и Coldfusion), что дает вам большой скоростной рост.

Подумайте дважды, прежде чем писать свой собственный редактор WYSIWYG, остальные хорошо протестированы и имеют множество очень хороших плагинов для почти любой потребности.

0 голосов
/ 13 ноября 2009

Используете ли вы определенный редактор WYSIWYG в CMS? Я обнаружил, что Telerik RadEditor позволит вам использовать конкретные таблицы стилей для реальной области редактирования редактора. Редактор, который вы используете, также может сделать это.

Удачи и надеюсь, что это поможет.

0 голосов
/ 13 ноября 2009

В дополнение к тому, что сказал GSto, вы можете настроить стиль как

div.clearCss *
{
  property: value !important 
}

Со сбросом всех соответствующих свойств стиля. Этот стиль должен применяться ко всему элементу с параметром clearCss, установленным в качестве его класса, поэтому вам нужно только применить этот класс к родительскому элементу.

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