HTML処理機能

こんにちはhabrausers!



最近、HTML形式の文字の分布を詳しく調べる機会がありました。 有効なメーリングリストレイアウトのトピックについて書かれた記事は数多くありますが、これはそれに関するものではありません。 各メーラーには、HTML文字を表示するという独自の特性があることが知られています。 これらの機能と、異なるメーラーでの文字の表示の違いに興味がありました。



mail.ru、yandex.ru、およびgmail.comサービスの3つのメールボックスが調査対象になりました。 HTML形式で同じ文字を送信するスクリプトが作成されました。 それを使用して、いくつかのオプションを実行し、結果を比較しました。 起こったことは次のとおりです。



ボディタグ



メーラーによって表示されるレターの本文は、bodyタグで始まります。 それは理解できる-全体の手紙がそれに含まれています。 ただし、bodyタグ自体にはスタイル属性が含まれる場合があります。 各メーラーでは、レターの本文はdivで表されますが、全員がスタイルの内容をこのdivに転送するわけではありません。





スタイル属性を転送するための機能



スタイル属性は多くの場合メールエンジンによって解析され、ユーザーに送信される前に変更できます。 これは、調査したメーラーでどのように発生しますか?





負の値



HTMLメーリングのレイアウトに関するすべての記事で、負の値(たとえば、マージン)は忘れられる可能性があることが繰り返し述べられています。 テスト結果は非常に期待されています:



Mail.ruのmargin属性は、そこのスタイルが前処理を受けないためにのみスキップされます。



CSS3サポート



CSS 3は現在開発中であり、一部のメーラーは特定の属性が無効であると見なしています。 そのため、3つのクライアントでいくつかのCSS3ルールをテストします。



Mail.ru



スタイルタグの非常に忠実なフィルタリングにより、CSS3およびその他のブラウザー依存の属性を完全にサポートします。



Yandex.ru





Gmail.com







CSSの高さ



高さ属性は、すべてのメーラーでサポートされているわけではありません。





UPD:コメントでは、javascript:***やexpression:***などのトリックがmail.ruセキュリティシステムによってブロックされていることが判明しました。



All Articles