素早い応答ができなくて申し訳ないです。
TonTonTon さん、お手数をおかけします。
EarlgreyTea さん、毎度毎度のフォロー、感謝に堪えません。
TonTonTon さんが書きました:
早速HTML作成し、FirefoxとChrome、およびthunderbirdで(オリジナルHTML)で試したのですが
どの場合でも、動かないです。
前回サンプルとして投稿したコードを、あらためてフォーラム上に表示されている内容で精査したところ、一部のコードが適切に反映されていないようです。
投稿後の確認を怠ったのはぼくの責任ですが、コードの一部が削除された理由は、
EarlgreyTea さんが書きました:
どうやら、このフォーラムではクラス指定の(わざと全角で書きます)「class=”hide”」などを書くとサニタイズされるのか、除去されてしまうようです。
とご指摘くださっている点にあるみたいです。
EarlgreyTea さん、わざわざ zip 化した html ファイルを添付してくださって、ありがとうございます。
テスト用に使う分にはこれで十分だと思いますが、サンプルを提示した手前、訂正内容について触れておきます。
サニタイズされたと思われる箇所は複数ありますが、本件の検証用において決定的な影響を与えているのは、<body> 以下の次の部分です。
コード:
<body>
<div class=”hide”>
<input type="checkbox" id="ddmenu">
<label for="ddmenu">(+)</label>
<div class=”show”>
=以下略=
全角で表現した class=”hide” と class=”show” が削除されているので、上部で指定した CSS の内容が適用されなくなっていたのでしょう。
この欠落部分(全角)をすべて半角で書き足せば、当方が意図したサンプルコードの動作をするはずです。(EarlgreyTea さんが添付してくださったのは、こうした部分がすべて修正されており、zip ファイルを解凍して取り出した html ファイルをそのままブラウザで開けばテストできますし、HTML メール用にも流用可能です。)
TonTonTon さんが書きました:
クライアントPCのセキュリティソフトを全社的に変更はしたのですが、その前から同じ現象は出ており、
その会社のからのある特定のメールで、ドロップダウンされる表示のものが見れないという現象のままです。
会社として全社のメールクライアントを変更する予定は今のところないので、thunderbirdのまま表示が可能となると
嬉しいのですが・・・。
上記のサンプルコードで構成したドロップダウンは、現状の Thunderbird 52.9.1 でも、次期メジャーバージョンの Thunderbird 60.0 でも、メッセージペインやタブなどの閲覧画面では動きません。
(補足)
EarlgreyTea さんも仰っていますが、ぼくもこの動作が、セキュリティ上の措置なのか、単なるバグなのかはわかりません。印象としては、セキュリティ対策のような気はするのですが......。
ただ、同系バージョンの Thunderbird をベースにしている SeaMonkey では、メッセージペインやタブで開いた閲覧画面でも、クリックでプルダウンの動作がおこなわれます。
実際のところ、「その会社からのある特定のメール」のメッセージソース(HTML や CSS の指定内容)がわからないと、具体的なことは他者には何も言えません。
なので、このフォーラムをご覧になっている方なら誰でも試せるようにサンプルコードを挙げたのですが、それも「その会社からのある特定のメール」と同じような内容かどうかは何とも言えません。
プレーンテキスト形式に比べ HTML 形式は表現の幅が広いのが特徴だとはいえ、個人的にはあまり凝りすぎるのはどうかと考えています。
・意識的に不可視にした要素を設定してある。
・メッセージ内に動的なナビゲーションを含んでいる。
―― といった本件のような HTML メールは、万人が安心して使える形にはなっていない印象を持ちます。
分かりやすく、印象的に見て(読んで)もらうことが前提の HTML メールに、なぜもったいぶって隠し要素を設け、クリックなどのアクションを介さないと表示しないようにしているのか、メッセージ本文内にクリックなどの動的なナビゲーションを必要とすることが、受信側の警戒対象(*) になることを分かっているのか......など、
個人的に思うところはあります。が、客観的な判断はぼくの力量でできる範囲を越えています...。
(*)
電子メールの本文内でクリックというアクションをおこなうことは、一定の注意が必要です。
そのクリックが、どこかのサイトへの誘導と連動していたり、別の動作を実行させるためのトラップ等である可能性を事前に除外できない以上、受信側メールクライアントの警戒対象になりうる、という意味で申し上げています。
その会社への信用とは別次元の話として、単純なリンクであっても、HTML メール内にある要素をクリックするという行為は、慎重におこなわれるべきものだということです。
(参考)
・標的型攻撃への対策(総務省)
www.soumu.go.jp/main_sosiki/joho_tsusin ... ff/05.htmlくり返しますが、「その会社からのある特定のメール」のメッセージソース(HTML や CSS の指定内容)がわからないと、他者から確定的なことは何も申し上げられません。
が、不可視化されたり、動的ナビゲーション(クリックしてドロップダウンなど)を含む HTML メールの要素を、最初から可視化して表示させるには、次のような方法(一例)もあります。
プロファイルフォルダ直下に、chrome という名称のフォルダを作り、その中に userContent.css という名前のテキストファイルを置き、そこに
コード:
/* HTML メール内の隠し要素を最初から表示するための一例 */
body, div {
display: block !important;
overflow: visible !important;
}
のようなコードを記述しておけば、上記サンプルソースのような構成を持ったドロップダウンなら、クリックしなくても メニュー 1 などの要素が最初から展開して表示されるはずです。
ただし、「その会社からのある特定のメール」が、もっと別の構成を持った HTML メールなら、通用しないこともあると思います。
とりえあえず以上です。
(おことわり)
現在、健康上の制約により不定期な書き込みしかできなくなっています。すぐに応答できない場面がかなり多くなりますことを、ご容赦ください。