アプリ版:「スタンプのみでお礼する」機能のリリースについて

HPをつくったのですが、(HTMLのエンコードはUTF-8です。)
mailtoにsubjectを追記してメールフォームを作成しました。ですが、件名のところがどうしても文字化けしてしまうので、文字をエンコードしたものを貼り付けて何とか対応しました。しかし、ウィンドウズXPまでの古いブラウザでは大丈夫なものの、VISTAでは文字化けしてしまうようです。
どうしてこうなってしまうのでしょうか?outlookなどのバージョンの問題なのでしょうか?それともOS?
わかりません。理由をご存知の方、また解決策をご存知の方、どうぞ教えてください。

あと、こんなこと問題外といわれるかもしれませんが、UTF-8を単純にShift-JISに置換したのですが、レイアウトとうすべてがぐちゃぐちゃになってしまいました。たくさんのページをUTF-8からShift-JISに変換しても良い方法というのはないのでしょうか?この点も併せて回答お願いいたします。

A 回答 (1件)

 mailtoはあくまであなたが自分用に利用する分には使えますが、HTMLの仕様としては含まれていません。


【引用】____________ここから
action = uri [CT]
 この属性は、フォーム処理エージェントを指定する。HTTPスキームURI以外の値の場合のユーザエージェントの動作は、定義しない。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[Forms in HTML documents (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )]より

 あなたのご使用のブラウザが、このactionでメールクライアントを起動するのは、そのブラウザ独自の拡張というかおまけで、他のOSやブラウザにとって有効なものではありません。

 仕様書に書かれているように、formではHTTPでサーバーに対してデータを送信するためのものです。【form/actionの値にmailtoが書かれているマニュアルが存在するとは思えませんし、もしあればそのマニュアルを書いた人物は仕様書すら読んでいない可能性が大ですね】
 action=http://*** でサーバーに送信して、サーバーはそれをCGIでMailの仕様にあわせて
・文字コードをiso-2022-jp
・一行の文字数
・タイトルなどのBaseエンコード
 などを作成して。サーバー上のMTAに渡します。

 mailto:を使う限り解決はできない問題です。

>UTF-8を単純にShift-JISに置換したのですが、レイアウトとうすべてがぐちゃぐちゃになってしまいました
 リンク先のlangが指定されていない場合、ブラウザは基本的にリンク先もHTMLに使用されている文字コードと同じと解釈します。HTMLと同じエンコードで記述し、CSSにもcharsetを正しく記述するとよいでしょう。
★別の質問は、内容がよくわかる別タイトルで質問したほうがよいです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!