Сброс и переопределение CSS под определенным элементом
У меня есть элемент, который может быть вставлен в любую страницу с помощью Firefox Addon.
Естественно, на него и его предков влияют правила CSS, определенные на этой странице.
Я могу пойти так далеко, просто явно указав каждый атрибут, но даже тогда мои объявления могут быть переопределены более ранним объявлением на странице с большей конкретностью.
Без большого беспорядка ненужных специфических селекторов и использования Hanus !important
Как я могу пойти о сбросе атрибутов всех элементов в данном элементе (div#my_root_container_element
) и убедитесь, что мои объявления под этим родительским элементом применяются.
Использование iFrame - один из вариантов, но я бы предпочел его избегать, если это возможно - есть ли другой способ? Учитывая приложение, решения должны работать только в Firefox.
Благодарю.
2 ответа
Используя SASS, это не слишком неприятно, если вы вложите все под div с идентификатором для достижения достаточной специфичности, и именно это решение я выбрал.
Тем не менее, любой !important
Объявление, сделанное на странице CSS, отменит мои стили.
Очевидно, похоже, что это имеет целью переопределить "специфичность", которая является основной для CSS в целом, но это самое близкое, что я помню, когда-либо, когда кто-то пытался это сделать. В то время это казалось чем-то заслуживающим уважения со стороны кого-то, связанного с проектом YUI: