2009-07-15 5 views
2

У меня есть сайт, который позволяет пользователю создавать записи в блогах. Есть несколько занесенных в список тегов, но большинство стандартных HTML-тегов приемлемы.Как сделать HTML, написанный пользователями на сайте, а не противоречить таблицам стилей сайта?

Однако у меня возникают проблемы с отображением страниц.

Я сохраняю HTML, завернутый в свой собственный div.

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

В конце концов, есть ли что-нибудь, что я могу применить к div, чтобы его содержимое было помещено в карантин от остальной части сайта?

Спасибо!

ответ

3

Вы можете использовать таблицу стилей сброса, чтобы сбросить свойства для этого конкретного DIV и его детей. А с другой стороны вам, вероятно, понадобится парсер CSS для настройки таблицы стилей пользователя для этого конкретного DIV.

+2

Согласен. Yahoo один неплох. http://developer.yahoo.com/yui/reset/ – NikolaiDante

0

Не могли бы вы форматировать каждый созданный пользователем контент с помощью имени пользователя 'div' в дополнение к любым другим именам классов, которые вы можете добавить автоматически?

Тогда они - я предполагаю, что они «могут» форматировать и стилизовать, как им заблагорассудится, могут иметь все свои стили, предваряющие так: div.username selector.

В противном случае вы можете использовать iframes.

1

Вы можете сделать это в рамке или в iframe. Это будет держать его в отдельности во всех отношениях.

0

Вы можете использовать iframe, чтобы держать их полностью отдельными, если вы действительно хотели быть предельно об этом.

Или вы могли бы ограничить их только стилей письма инлайн, так что они не могут повлиять на таблицу стилей вашей страницы:

1) вырезать любые теги стилей HTML создает пользователь. Таким образом, они не могут переопределить ваши стили.

2) проверить их код и исправить или отклонить такие вещи, как закрытые теги или элементы, которые не должны находиться внутри div (например, теги головы или тела) и убедитесь, что все закрыто правильно, поэтому он не может испортить любой html с вашей страницы после раздела div, в котором он содержится.

 Смежные вопросы

  • Нет связанных вопросов^_^