전자 메일 HTML 템플릿을 작성 중이며 일부 전자 메일 클라이언트는 CSS 지정을 위해 <style>
을 지원하지 않습니다. CSS를 적용하는 유일한 방법은 인라인 스타일 (style
속성)을 사용하는 것입니다. 일부 HTML에 스타일 시트를 적용하고 스타일이 적용된 HTML을 다시 가져 오는 도구 또는 라이브러리 (Node.JS)가 있습니까?CSS를 HTML을 인라인 스타일로 "컴파일"하십시오.
이 도구는 많은 선택기를 지원할 필요는 없습니다. ID, 클래스 및 요소 이름 선택자는 내 요구에 충분해야합니다. 필요한 사항의
예 :
// stylesheet.css
a { color: red; }
// email.html
<p>This is a <a href="http://example.com/">test</a></p>
// Expected result
<p>This is a <a href="http://example.com/" style="color: red;">test</a></p>
간단한 HTML 파서 (정규식 사용)를 작성한 다음 HTML 노드를 HTML 노드 + 스타일 정보로 바꿉니다. – Raynos
@Raynos : 오, 어서, 그보다 조금 더 복잡해. HTML 구문 분석기를 처음부터 작성하는 것이 가장 좋은 아이디어가 아닐 수도 있습니다. –
@Matti 자신의 프로그램이 Microsoft의 Trident 어셈블리에 연결되면 HTML을 구문 분석하기가 너무 어렵지 않습니다. 그는 여전히 라이브러리 용 정규 표현식 래퍼를 작성하려고하지만 (견고성을 위해). – ClosureCowboy