웹 표준으로 메일링 작업하기

회사에서 새로운 칼럼 메일 서비스가 생겨서 디자인과 코딩을 했다.

https://kukie.net/resources/design/mail_service/default.html
https://kukie.net/resources/design/mail_service/default_noDTD.html
로컬 파일 일때는 몰랐는데 테스트 메일 발송을 하고 나서 보니 두가지 문제점을 발견할 수 있었다.

문제1)
DTD가 맞지 않는다.
문제2)
CSS가 불러와지지 않는다.

그냥 DTD를 뺐다

코딩 자체는 모두 표준에 맞게 했고, validator도 완벽하게 통과했지만, 웹메일 서비스를 하는 많은 웹사이트들이 DTD를 선언하지 않고 있기 때문에, 메일 자체에는 아무리 DTD를 넣어봤자 적용되지 않았다.
우리나라 메일만 그런가 싶어서, gmailyahoo.com의 메일서비스를 살펴봤는데, 마찬가지로 메일을 표출하는 곳에서는 DTD를 선언하지 않고 있었다.
대부분의 사이트가 이렇게 하는 걸로 봐서는 뭔가 이유가 있는 것 같다. (개발이나 정책과 연관되는 이유라면 나는 잘 모르겠다.)
아무튼, 이유는 모른채로 일단 DTD를 빼주고, DTD가 빠짐으로서 발생하는 margin과 padding등의 문제를 조금씩 수정해줬다.

CSS를 import로 처리 했던 것을 Link 형식으로 바꿨다

CSS는 여태 쓰던대로 @import를 사용해서 불러들였는데, 다른 곳의 경우 별다른 문제가 발생하지 않았고, 유독 Korea.com에서 문제가 발생했다.
@를 인식하지 못하는 것 같아서
<link rel="stylesheet" href="file.css" type="text/css" />로 바꿔주자 잘 적용이 되었다.

최종 파일 보기

DTD가 포함된 파일 (최초 작성)
DTD가 없는 파일 (추후 수정)
(칼럼 내용은 임의로 수정하였음)

안타까운 점

칼럼의 기사입력기를 통해 텍스트가 입력되고, 실제 기사를 표출해 주는 문서에는 p(paragraph)가 쓰이는 대신 두번의 br이 사용된다.
그리고, 표출된 기사에 걸리는 링크에 오류가 많다.(&같은 것이라든지..)

꼬릿말

기술적인 부분에 대해선 잘 알지 못하기 때문에 그냥 넘겨버린 것들이 있어서 아쉽고…
이메일에서의 코드는 단독 문서임에도 불구하고, 현재의 메일 시스템에서는 단독 파일의 HTML처럼 생각하면 안되는구나..!