.htaccessでPHPのファイルアップロードサイズの上限値を変更
2022.02.5
PHPを使用して画像(動画・PDF等)をアップロードするフォームを作成した際に、ファイル…

パソコンとスマホ用にメディアクエリを使用してレスポンシブ対応のHTMLメールを作成する機会があったので、制作時に気付けた点をメモ。
受信環境(メーラー)によって使用できるCSSの種類が異なるため、2カラムをCSSで実装できるものとできないもがある。
全てのメーラーで同じ表現にする場合はテーブルタグを入れ込状にして使用する「テーブルレイアウト」を使用するのが確実。
CSSの外部読み込みはもちろん、一部のメーラーではインラインで設定したCSSが効かない場合も。
基本的には「style」やHTMLタグが保有している属性を使って直にHTMLタグに設定していくのが安全。
PCのOutlook、スマートフォンのGmailアプリはCSSのメディアクエリが効かない。(Gmailアプリに関しては「メッセージ全体を見る」ボタンを押さなければ有効。)
そのため原則としてPC版の表示を基準に作成し、スマートフォン(タブレット)にのみ適応するところを、メディアクエリを使用して制作する方法をとる必要がある。
また、Outlookに関しては、下記のタグを使用することで、他のメーラーでは表示させない方法をとることもできる。
<!--[if gte mso 9]>
====outlookのみ対応====
<![endif]-->
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<meta name="format-detection" content="telephone=no, address=no, email=no, date=no, url=no">
<title>レスポンシブ対応したHTMLメールのサンプルソースコード|株式会社衆</title>
<style>
body {
font-size: 90%;
}
@media screen and (max-width: 480px) {
.tbl {
width: 90% !important;
margin: 0 5% !important;
border-collapse: separate;
border-spacing: 5vw !important;
}
.tbl__cell {
display: block !important;
width: 100% !important;
}
.padding_top {
padding-top: 5vw !important;
}
}
</style>
</head>
<body style="background-color: #f5f5f5; margin: 0; padding: 0;">
<table width="650" border="0" cellpadding="0" cellspacing="25" bgcolor="#ffffff" style="margin: 0 auto;" class="tbl">
<tr>
<td>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="width: 48%; padding: 0 1%" valign="top" class="tbl__cell">
<p style="margin: 0 0 10px;">こんにちは、「株式会社衆」メルマガ担当の○○○○です。<br>
いつも弊社の備忘録(ブログ)をご覧頂きありがとうございます。</p>
<p style="margin: 0 0 10px;">衆では「HTMLメール」の参考になればと考え、弊社ブログをご覧頂いている方限定でこちらのソースを公開しています。</p>
<p style="margin: 0;"><strong>レスポンシブ対応したHTMLメールを作成</strong>される際に、こちらの<strong style="color: #FD5B3E;">ソースコード</strong>がお役に立ちますと幸いです。</p>
</td>
<td style="width: 48%; padding: 0 1%" valign="top" class="tbl__cell padding_top"><img src="○○○○" width="100%"></td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
同じHTMLを使用しても送信環境(メーラー)によって正しく送信されない場合もあるようです。
たまたま、異なるメーラーを使用してメール配信テストをした際に、同じ内容なのに異なる表示がされたことがあったので一応追記。
メール作成の手順もあるので、再度検証は必要。
| 送信環境(メーラー) | 結果 | 状態 |
| Outlook | × | メディアクエリが正しく機能しなかった。 |
| Becky | 〇 |

2022.02.5
PHPを使用して画像(動画・PDF等)をアップロードするフォームを作成した際に、ファイル…

2020.10.3
テキストエリア等で入力した文字の中にURLを含んでいた場合に、自動で認識してリンクタグを…

2024.03.30
外部ファイル(CSVファイル等)を読み込んでサイト内に表示する際に、保存時の文字コードが…

2020.12.5
メールフォームからメールを送信する際に、画像(ファイル)を添付できるようにしてほしいとの…

2023.12.2
ワードプレスの投稿のカテゴリー機能を、目的ごとに使い分けたいというご要望があった際に、カ…

2020.08.1
動画ファイルをCMS化して保存するときに、多くの場合はファイルパスをデータベース(MyS…

2022.09.24
パソコンやスマートフォンの戻るボタンを使って画面を戻す(ブラウザバックする)時があります…

2022.02.19
画像データ等をサーバーにアップロードする際、一点づつアップロードしても良いけれど、ファイ…

2020.08.15
フォームの入力値やURLのパラメータ等、文字列や数値を受け取る際に正規表現を利用してバリ…

2019.12.29
メールフォーム等での入力値チェック(バリデーション)。PHPの「preg_match」(…