[この記事は Hayato Ito、Shadow DOM お抱え運転手による Chromium Blog の記事 "Chrome 53 Beta: Shadow DOM, PaymentRequest, and Android autoplay" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。]

特に記載のない限り、下記の変更は Android、Chrome OS、Linux、Mac、Windows 向けの最新の Chrome ベータ版に適用されます。

Shadow DOM V1

HTML、CSS、JavaScript は強力な開発言語ですが、大規模なコードベースのメンテナンスは難しい場合もあります。サードパーティのコンテンツを埋め込んだサイトでも、そこに含まれるスタイルがアプリの他のパーツに影響しないことを確認する必要があります。Chrome 53 は Shadow DOM V1 をサポートしています。これによって、要素のスタイルと子要素の DOM をカプセル化してメインのドキュメントから切り離せるようになるため、大規模なサイトや複合サイトのメンテナンス性が改善されます。Shadow DOM V1 は、バージョン V0 からいくつか重要な変更が行われており、主要なブラウザ ベンダーの広い同意を得ています。十分な数のデベロッパーが V1 に移行するまで、Chrome は両方のバージョンの API をサポートします。shadow root の動作は、どちらの API で作成されたかによって決まります。

PaymentRequest API

ウェブで支払いを完了するのはユーザーにとってわずらわしい操作であり、サイトでのコンバージョン率の低下につながる可能性があります。情報の入力はオートフィルによっていくらか簡単になりますが、モバイル端末で効率的にデータを入力するのは依然として難しい課題です。PaymentRequest は、クレジット カードまたは Android Pay を使用してウェブ上で高速、シームレスかつ安全な支払いを行う仕組みです。さらに、ユーザーは請求先住所、発送の詳細、支払者情報を手入力せずに設定できます。PaymentRequest は、Android 向け Chrome で利用できます。他のプラットフォームでのサポートも今後拡大する予定です。


Android 向け Chrome での muted ビデオの自動再生

ビデオはユーザーを獲得する優れた方法ではありますが、突然再生が始まると不快に感じる場合があります。このような現象は、特にユーザーが音声を再生させたくない環境にいる可能性があるモバイル端末で起こりがちです。Android 向け Chrome では、muted が指定されたビデオの再生をユーザーの操作なしに開始できるようになります。ビデオに muted が指定されており、autoplay 属性がある場合、Chrome はユーザーが見える状態になった際にビデオの再生を開始します。デベロッパーがスクリプトを使ってユーザーの操作なしに muted ビデオを再生することもできます。ユーザーがアクションを行う前に muted ビデオが音声の再生を始めようとすると、自動的に一時停止されます。

今回のリリースに追加されたその他の機能

  • Android 6.0(Marshmallow)以降の Android 端末に通知を送るサイトは、ステータスバーに、Chrome ロゴの代わりにバッジを表示できるようになります。
  • Notification オブジェクトに対して、通知アクション ボタンと振動パターンを読み出す getter が提供されるようになります。
  • プラグイン設定に "Detect and run important plugin content." を設定しているユーザーには、5x5 ピクセルより小さいクロスオリジン プラグイン コンテンツがロードされなくなります
  • allow-presentation サンドボックス フラグによって、サイトで iframe を外部端末に表示するかどうかを制御できるようになります。
  • input 要素の pattern 属性値で unicode フラグが使えるようになり、構文チェックなどの正規表現を用いた使い勝手の向上が図れるようになります。
  • 3D で配置された要素は、先祖要素の opacity が 1 より小さい場合にフラット化されます。
  • transformscale の変更を行う場合、視覚的な副作用を防ぐために、すべてのコンテンツが再ラスタライズされます。ただし、コンテンツの CSS プロパティに will-change: transform が指定されている場合は除きます。
  • Web Audio において、low-pass および high-pass biquad フィルタさらに多くのフィルタ特性がサポートされるようになります。
  • --webkit-filter は接頭辞なしの filter プロパティの別名となり、別の動作ではなく、まったく同じ動作をするようになります。
  • --webkit-user-selectall プロパティをサポートするようになります。これによって、要素を選択したときに、強制的に要素全体とすべての子孫要素を含めるようにできます。
  • いくつかのプラットフォームで Web Bluetooth APIオリジン トライアルとして実験的に利用可能になり、サイトが Bluetooth Generic Attribute Profile(GATT)を利用して近くにあるデバイスと通信できるようになります。
  • text-size-adjust プロパティによって、モバイル端末に合わせて自動的にフォントサイズが縮小されるかどうかを制御できるようになります。

廃止の予定と相互運用性の改善

  • スクリプトで生成されたイベント によってデフォルト アクションがトリガーされなくなります。これによって、仕様への準拠とブラウザの相互運用性が改善されます。
  • レスポンス ヘッダーのサポートが追加されている HTTP/1.0 があるため、HTTP/0.9 は廃止予定となりました。
  • M51 で廃止予定となった TLS Diffie-Hellman 暗号は、セキュリティ上の懸念のため、削除されました
  • TextEncoder API に引数を渡すことはできなくなり、常に utf-8 でエンコードされるようになります。
  • 最新のセキュリティ上の問題により、Symantec Corporation または Symantec Corporation にチェーンされている CA が発行した新しい証明書は Chrome で信頼されなくなります。ただし、Certificate Transparency 情報が付加されているものは除きます。


Posted by Eiji Kitamura - Developer Relations Team