CSS работает, применяя правила, которые применяются к элементам в порядке от тех, которые наиболее обычно нацелены на элемент, к тем, которые наиболее конкретно предназначены для элемента. Таким образом, вы можете добавить правила, ссылающиеся на контейнер для части описания и сбрасывать применяемые стили, которые вам не нравятся. Например, с этими правилами:
p
{
color: red;
}
#description p
{
color: blue;
}
... все абзацы на странице будут иметь красный текст , за исключением абзацев внутри элемента с идентификатором «description», который будет иметь синий текст (при условии, что текст не стилизован другими элементами с другие правила). Это связано с тем, что первое правило является довольно общим, второе правило более конкретным и поэтому переопределяет первое правило.
Это не обязательно должен быть контейнер с идентификатором, просто все, что делает правило более конкретно ориентированным на содержание описания. Например, если у контейнера описания нет идентификатора, но есть класс, просто измените второе правило соответствующим образом:
.description p
{
color: blue;
}
Любой абзац в любом элементе с классом "description" теперь будет иметь синий текст.
К сожалению, я не верю, что есть стиль "просто игнорируй все, кроме этого правила", и поэтому ты должен переопределить стили, которые тебе не нужны по отдельности. Для подхода с полным боровом вам понадобится iframe, как вы предложили.