HTML メールを作成しており、送信する前にブラウザでプレビューしたいので、ブラウザとメール クライアントで同じように表示されるようにしたいと考えています。行とセルの幅と高さを設定する方法をいくつか試しました。
<table height="500" width="200">
<tr>
<td height="100">TEST</td>
</tr>
<tr>
<td style="height: 100px;">TEST</td>
</tr>
</table>
HTML プロパティまたはスタイル プロパティを使用して高さを設定できません。セルはテーブルの高さ全体をカバーします。
編集
空白の HTML ページで動作しているように見えるので、ここにさらに多くのコードを投稿します。私は実際に PHP ページで Javascript を使用して、div の innerHTML プロパティを設定しています。関数の完全なコードは次のとおりです。
function changeDivHTML()
{
begin = '<table width="595" height="842" align="left" bgcolor="#FFFFFF" border="1" cellpadding="0" cellspacing="0" style="border: 1px solid black; border-radius: 10px; padding: 0px;padding-top: 6px; margin: 0px;">';
test = "<tr><td height=\"100\">Test</td></tr>";
testTwo = "<tr><td height=\"100\">Test</td></tr>";
end = "</table>";
parent.document.getElementById('divToChange').innerHTML = begin + test + testTwo + end;
}
関数が呼び出され、div の innerHTML が正常に変更されます。セルの高さがそれぞれ 50% であることを除いて、すべて問題ありません。それぞれ 100px の高さを取るのではなく、テーブル全体を埋めます。
tr タグで高さを設定しても同じ効果がありますが、効果はありません。
より詳しい情報
これは、空の HTML ページの出力です。私のFirefoxブラウザでは、セルはそれぞれ高さの50%を占めています。100px ではなくページ全体をカバーする
<html>
<head>
</head>
<body onload="window.print()">
<table style="border: 1px solid black; border-radius: 10px; padding: 0px;padding-top: 6px; margin: 0px;" align="left" bgcolor="#FFFFFF" border="1" cellpadding="0" cellspacing="0" height="842" width="595">
<tbody>
<tr height="100"><td height="100">Test</td></tr>
<tr height="100"><td height="100">Test</td></tr>
</tbody>
</table>
</body>
</html>
CSS はメール用に生成された HTML コードであり、メール クライアントは CSS と相性が悪いと述べたので、これには CSS の使用を避ける必要があります。