私はレポートを作成しており、レポート内でさまざまなプロバイダーからのメールをレンダリングする必要があります。このメールには独自の css が付属しています (通常はインライン css ですが、一般的なスタイルが適用されることもあります)。私は通常、iframes を使用して css をカプセル化するので、私のものは壊れませんが、今は使用できません。
iframe を使用せずに CSS をカプセル化する方法はありますか?
これが私が抱えている問題の例です:
<html>
<head>
<style>
// I enclose it to content so it doesn't override the email css
#my_content table, #my_content p {
color: black;
}
</style>
</head>
<body>
<div id='my_content'>
... some stuff ...
<div id='email'>
<html>
<head>
<style>
table {
margin-left: 100cm; // screws up all my tables
}
.... some styles that should only apply inside the email div ...
</style>
</head>
<body>
.... email content ...
</body>
</html>
</div>
</div>
</body>
</html>
HTML 構造を抽出して、本文の内容を取得することはできますが、すべてのメールが適切に表示されるわけではありません。また、HTMLは有効でなければならないので、どんな提案も素晴らしいでしょう!