2010-11-24 4 views
1

임의의 웹 사이트에서 고정 div로 팝업을 표시하고 있습니다.상속받은 CSS의 영향을받지 않고 div 요소의 요소 서식 지정

div에있는 페이지의 서식에 영향을주지 않으려면 div의 내용이 필요합니다. div의 요소에는 인라인 CSS가 있으며 상속 된 CSS가 아닌 인라인 CSS 만 있으면 효과적입니다.

한 가지 방법은 iframe을 사용하는 것입니다. 나는 다른 방법을 찾고 있습니다.

옵션 내가 고려 중이 야 : 모든 요소에서 실행 상속 CSS를 재설정합니다

  1. 작은 자바 스크립트 코드. 가능합니까? 인라인 CSS로 특성이 작성되지 않았다는 것을 교차 브라우저에 알릴 수 있습니까?

  2. 자바 스크립트 코드

  3. 는, 여백 등 (예를 들어, 사업부 내에서 모든 패딩을 모든 요소에 대한 속성의 그룹을 재설정하지만 여전히 스타일이 인라인 CSS에서 속성을 떠날?

다른 창의적인 아이디어를에 그것을 수행하는 방법?

답변

1

을 사업부 내부의 요소는 인라인을 CSS를 가지고, 나는 만 인라인 CSS는 효과가 원하는, 상속되지 CSS

이것은 기본 동작입니다. 인라인 CSS가 가장 우선 순위가 높습니다.

AFAIK 상속 된 스타일을 재정의하지 않는 한 상속 된 스타일을 제거 할 수 없습니다.

+0

네,하지만 인라인을 설정하지 않은 속성은 상속 된 값을 가져옵니다 (피하고 싶습니다) – Nir

0

다른 옵션 (실용적인 것이 사이트에 달려 있긴하지만)은 "resetCSS"라는 클래스 또는 클래스에 적용 할 수있는 클래스를 갖는 것입니다. 선택자에서이 클래스를 사용하고 여기에서 사용하는 모든 속성 (예 : 여백, 글꼴 등)에 대한 기본 값을 설정할 수 있습니다.

그런 다음이 클래스를 요소에 적용하면 모든 값이 기본값으로 재설정되며이 값을 CSS로 재정의 할 수 있습니다.

또 다른 대안은 셀렉터에서 "스타일있는 콘텐츠"클래스를 갖도록 현재 CSS를 모두 변경하여 특별히 마크 업 된 콘텐츠에만 스타일이 적용되어 해당 스타일에 적용될 가능성이 없도록합니다. 당신이 갖고 싶어하지 않는 요소들.

아마도 div가 특정 스타일을 가지기를 원한다면, 기본값이더라도 div 스타일을 명시 적으로 지정하는 것이 가장 좋습니다. 어쨌든 기본값을 사용했다면 아무 것도 잃지 않습니다. 다른 것이 상속 된 것이라면 원하는대로 설정해야합니다. 기본 스타일을 사용하면 두 브라우저가 모두 동일한 기본 스타일을 가져야하는 이유가 없으므로 사용자를 물릴 수 있습니다.