2013-04-16 3 views
2

저는 웹 기반 전자 메일 클라이언트로 거의 작동하는 시스템을 개발 중입니다. 지원 데스크 시스템입니다. 수신 된 전자 메일이 시스템에 표시됩니다. 웹 기반 이메일 클라이언트를 생각해보십시오. 이제 문제는 나머지 응용 프로그램에 영향을 미치는 끔찍한 Microsoft Word 형식의 스타일 메타 데이터가 있다는 것입니다.나머지 사이트에서 HTML 컨텐트를 분리하십시오.

iframe을 시도했지만 콘텐츠 높이를 조정하는 것이 제대로 작동하지 않습니다. 나는 iframe을 사용하고 싶지 않습니다.

나머지 애플리케이션에 영향을 미치지 않도록 프런트 엔드에 표시된 이메일 HTML을 분리하는 데 사용할 수있는 패턴이나 연습은 무엇입니까? 내 말은, Gmail, Yahoo Mail, 지원 데스크 또는 CRM 시스템이 어떻게 처리할까요?

+0

사이트에 영향을 미치는 HTML입니까, 아니면 문서의 나머지 부분을 엉망으로 만드는 인라인 CSS입니까? – Lowkase

+0

iframe에 소스를 포함하거나 출력물을 슈퍼 위생 처리하는 것 (대부분의 HTML 속성과 CSS 속성 (웹 메일 앱이하는 것)을 제거함)을 제외하고 나는 이것을 수행 할 방법이 없다고 생각합니다. – darma

+0

자신의 코드를 래핑 할 수 있으므로'.my_wrapper .my_class'로 스타일을 지정할 수 있습니다. 그렇다면 메일 스타일은 자신의 '물건'에 영향을 미치지 않습니다. –

답변

1

두 가지 방법 - 마스터 스타일이 내 스타일에 영향을 미치고 마스터 페이지에 액세스 할 수 없어서 셰어 포인트 사이트를 개발할 때도 동일한 문제가있었습니다.

  1. 이 코드 랩, 그리고 당신의 스타일을 필요로하는 요소를 좁힐 ID 선택기를 사용
  2. 사용 !important - 그것이 가장 좋은 방법

예 HTML 아니다 나는이 방법을 권장하지 않습니다 :

<div id="wrapper"> 
    <p class="email-par">Some text</p> 
</div> 

CSS :

따라서 사이트에 <p> 태그를 적용하는 다른 스타일이 있더라도 이메일 단락은 위의 스타일을 따릅니다.

-1

HTML에 강력한 ID를 사용한 다음 이메일에 사용할 CSS 파일을 만드십시오. 난 당신이 사용하는 것이 좋습니다! 중요한 일부 셰어 스타일은 여전히 ​​자신의 CSS 파일을 일단 마스터 페이지 갤러리에 SharePoint 디자이너 (_catalogs/mastrpage)

헤더에 전화로 복사하여 스타일

를 오버라이드 (override)하는 경우 아래 예제와 같이 마스터 페이지의 영역

+0

'! important'는 나쁜 모조이며 계단식 스타일 시트의 "캐스케이드"를 무효화하고 사이트를 100 배 더 어렵게 만듭니다. – Adrian

관련 문제