mailtoとは?
HTML内にクリックするとメールを送信する機能を持たせる方法として「mailto:」を使用する方法があります。
「mailto:」の使い方
Webサイトにあるメアドのリンク文字をクリックするとメールソフトが立ち上がるやつっすね。
書き方の例:
<a href=”mailto:user@dammy.com”>MAIL</a>
↑だと、送信先メアドだけ指定しているけど、他にも、以下のものが予め設定できる。
- タイトル
- 本文
- 改行を入れる
- Cc
- Bcc
予め設定できれば、メールソフトが立ち上がったときに、以下のように必要な項目(文字列)をテンプレートとして適用できる。
To:送り先メアド
Cc:担当者2
Bcc:影の存在
Subjet:問い合わせデース
本文:
名前:
住所:
年齢:
好みのタイプ:
文字数制限
結論
この、予め設定できる文字数は、
- OS
- Webブラウザ
- mailtoから呼び出されるメールソフト
の組み合わせで変わる。
また、上記ソフトウェアのバージョンによっても変更される可能性がある。
文字数制限については、上記のソフトではほとんど公開されていないっぽい。
RFCでは規定されていない
では規定されていない。
Chromeのフォーラム
このmailtoの指定だが、最大の文字数の制限がブラウザによってかけられている場合がある。
全体で261文字までは起動、262文字以上は起動しなくなります。
mailToリンクが一定の文字数を超えると開けなくなる ※Windows版GoogleChromeのみ発生 - Google Chrome コミュニティ
↑の引用はChromeのフォーラムからのものだが、ココに書かれている通り、自分でも試したところ、261文字まではmailtoリンクを開ける(メールソフトが起動する)が、262文字になるとリンクが開けない。
この261文字というのは、
「mailto」
から、
「body」の中身の末尾までの文字数
を言っている。
以下の赤文字の部分の文字数。
<a href=”mailto:info@example.com?subject=あいうえおかきくけこさしすせそ&body=テストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテストテステストテストテストトテストテストテストテストテストテストテストテ“>【起動する】</a><br>
文字数ではなく、バイト数
制限がかかるのは、文字数ではなく、バイト数の模様。
上記のGoogleChromeフォーラムからリンクされているStackOverFlowでもそれらしきことが書かれている。和訳して引用↓
Safari とほとんどの電子メール クライアントにはハード リミットがありません (使用可能な CPU と RAM に依存します)。
2015 年の Web ブラウザ テスト:
- サファリ
- 705000000
- 2分
- Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/601.1.56 (Gecko のような KHTML) バージョン/9.0 Safari/601.1.56
- 16GB RAM による制限
- ファイアフォックス
- 268435455
- 20秒
- Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:41.0) Gecko/20100101 Firefox/41.0
- 文字列の最大長による制限
- クロム
- 2097132
- 1秒
- Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (Gecko のような KHTML) Chrome/45.0.2454.101 Safari/537.36
- 説明なしに制限
MAILTO max-length of each internet browsers?Update: Two years before this question, a similar question was asked: Effective maximum mailto: body lengths as pointed out by Peter O. Luckily answers of both ...
実際に、日本語部分をASCII文字(カンタンに言うと、半角の英数字と記号)に変えると、設定できる文字数が増える。
メールの内容をURLエンコードするのはやめとけ?
2017年現在の環境ではエンコードしないのが無難で、
mailto の文字化けとエンコード、メールアプリが起動しない条件
こちらで2017年時点でテストしてくださってる環境ごとの表がある。ブラウザとメールソフトの組み合わせによっちゃ、メールの内容が文字化けすることがあるので、使いづらい。
コメント