2010-08-26 3 views
5

MSHTML을 사용하여 html 요소의 스타일을 가져오고 싶습니다.C#에서 MSHTML을 사용하여 현재 스타일 가져 오기

원하는 것은 계산 된 스타일이지만 모든 기본값이 없습니다. (html과 css에 설정된 것들만)

MSHTML에는 지금까지 스타일, currentStyle 및 runtimeStyle 스타일 중 3 가지 유형이 있습니다.

스타일 및 runtimeStyle에는 인라인 스타일 만 있고 현재 스타일에는 상속 된 스타일과 기본 스타일이 포함됩니다.

상속 및 기본값없이 현재 설정된 스타일 (인라인, 외부 및 내부 CSS)을 가져 오는 방법이 있습니까?

IE 개발자 툴바는 어떤 스타일을 상속 받았는지 알고있는 것처럼 보입니다.

+0

"상속 된"속성이 없습니다. – MCSI

+0

당신은 각 스타일 시트를 순서대로 처리하고 그것을 해결하기 위해 로직을 수행해야 할 것처럼 들립니다. IE는 이것과 같은 것을 가지고있을 것입니다. 고통처럼 들리 더 많은 도움이 되었으면 좋겠다. 다른 사람이해야 할 말을 보려합니다. – Mayhem50

답변

0

"default"및/또는 상속 된 속성 을 인라인, 외부 및 내부 CSS과 반대로 제외하려는 경우 user-agent css를 통해 기본 속성이 설정되므로 완전히 구두 수정이 정확하지 않습니다.

명시 적으로 적용된 속성의 "기본"속성을 필터링하는 한 가지 방법은 CSS/인라인 스타일의 페이지에서 렌더링 된 요소와 런타임에서 동일한 DOM 구조에 렌더링 된 동일한 요소를 비교하는 것입니다. 외부 CSS 및 인라인 스타일이 제거되었습니다. 어쩌면 숨겨진 iframe 등 내부에 말이야?

귀하의 안락한 정도에 따라 Firebug Lite 소식통을 살펴 보는 것이 좋습니다.