Apollo(+ Scout)のレンダリングは Safari 互換か?
amachang さんの IT戦記に、Apollo の Scout というアプリケーションを使えば、わざわざ Safari の動作確認のために MacOS X を用意しなくてもよくなるみたいなことが書いてあったので、早速、落としてみました。(ただし、Windows 2000 にですが。(^ ^;) )
Windows で Safari 互換の Web ブラウザが使えるようになるとすれば、やっぱり気になりますよね。
Apollo の HTML エンジンは WebKit!
公開されたばかりの Adobe の脱ブラウザ志向 RIA 実行環境 Apollo(alpha 版)は、どうも HTML のレンダリングに Safari のレンダリングエンジンでお馴染みの WebKit が使われている模様。
Adobe had kept the HTML engine a secret, but after sitting in on a press event with Kevin, they've announced which one they're using - WebKit, which is what the Safari browser is built on.
まずは Apollo SDK やランタイムを入れて中身をざっと調べてみると、確かに ApolloWebkit.dll という12MB くらいのファイルがありました。をぉ、確かに。
ブラウザつき Webページ解析アプリ Scout
次に、やはりAdobe Labs から、問題の Apollo のミニアプリ: Scout を落として導入してみました。
簡単にいえば、編集機能のない Firebug のようなミニアプリといったらいいのかなぁ。表示中の Web ページの HTML や CSS、JavaScript などのソースコードを見たり(ちゃんと構文解析もしてくれます)、JavaScript コンソールがついていたり...。で、その Web ページを表示するブラウザ部分が WebKit でレンダリングされているらしい、とのこと。(表示フォントを設定できないので、Safari と比べるとちょっと無骨な感じがしますけど。)
少なくとも Scout のレンダリングは必ずしも Safari 互換とはいえなさそう
上のスクリーンショットをご覧いただければわかるように、テキストの折り返しがされないことがあったり、text-shadow プロパティもどうも効いてなさそうな感じだったりして、結論からいえば、(少なくとも今の Scout では)Safari の代替となる動作確認用ブラウザにはなりえないっぽいです。
ちなみに以下のイメージは Safari でのレンダリング。
問題はどこまで Safari の WebKit と互換性があるのか
ただ、ブラウザのデフォルトスタイルシートのようなものがない(もしくは不充分)という理由で、Scout で表示が乱れてしまっている可能性もあって(このあたりは要追加検証。イマイチ仕組みがよくわからない..)、単純に ApolloWebkit.dll がオリジナルの WebKit の劣化コピーだと断定してしまうのも早計のようです。
というのも、Scout を CSS3.info の CSS Selectors test に通してみると、353/578 のテストにパスします。これは手元にある今年 1月頃のナイトリー WebKit の 355/578 とかなり近い結果で、Safari 2.0.4 の 336/578 よりも上なんですよね。(最新のナイトリー r20318 で再テストしてみたら、346/578 で実装が後退してました。(^o^;) )
はてさて、どうなんでしょう。期待したくなるような結果ではあります。
追記
Taken SPC さんのエントリーに参考になる情報が上がってます。
- application/xhtml+xml も大丈夫
- navigator.userAgent は Mozilla/5.0 (Windows; U; en) AppleWebKit/420+ (KHTML, like Gecko) Safari/419.3 Apollo/1.0.Alpha1
- WebKit の Subversion における WebKit-419 タグ (2006 年 12 月 18 日)
- WebKit-419 タグ ができる 2 月ほど前のRecent WebKit Features。
- DOM3 XPath に対応しているみたい
- CSS
- Acid2 は通らない
- CSS3 resize は使える
- CSS3 MediaQuery も使える
- CSS3 text-overflow も使える
- CSS3 Multi-column は使えない
- CSS3 box-shadow/text-shadow は使えない
- text-stroke/text-fill は使えない
- canvas はスクリプトオブジェクト (CanvasRenderingContext2D) はあるけれど、描画されない (Mac OS X 版だったら描画されるかもしれません)。
- SVG には未対応
なるほど、去年の第4四半期頃の WebKit がベースになっているみたいですね。
Scout | Safari |
---|---|
あと、kz さんが UA 情報チェックをされています。
早速UAを確認すると、Mozilla/5.0 (Windows; U; en) AppleWebKit/420+ (KHTML, like Gecko) Safari/419.3 Apollo/1.0.Alpha1と表示されました。これは...すごい!
(kz さんが追記されている、Swift ってブラウザ、以前 試してたのを思い出しました。やはりテキストの折り返しがダメダメだったので放置していたんですけど、あれも WebKit ベースだったんですね。再導入してみたところ、CSS Selectors test も Acid 2 も無反応..。アレ?(^ ^;) )
あと補足ですが、WebKit(Safari)って、前々からどうも Firefox や Opera なんかと比べて、文字コードの自動判別まわりが弱くて、ちょくちょく文字化けを起こすんですが(実は Mac で Safari から Firefox に乗り換えた理由がコレです。文字化けの再現条件は未検証。そのうち検証してみます)、現状の Scout だとエンコーディングを切り替える機能が実装されていないので、今のままでは、文字化けしちゃったら対応しようがありません。
ま、Apollo 自体がまだ alpha 版ですし、ここは気長に見守りましょう。
| 固定リンク
「[Web]ブラウザ(Safari, WebKit, Konqueror)」カテゴリの記事
- 主要ブラウザのデフォルトCSS(2007.07.26)
- Apollo(+ Scout)のレンダリングは Safari 互換か?(2007.03.20)
- WebKit が CSS 3 box-shadow に対応(2007.01.09)
- CSS 3 は Konqueror がアツイ!(2006.10.17)
この記事へのコメントは終了しました。
コメント
kz さん、こちらこそ、はじめまして!UA情報、どうもです!
そうなんですですよね。現状は少し残念でしたけど、まだ alpha ですし、何よりあの WebKit がクロスプラットホームで(しかもデスクトップアプリとして)動くという点はすごく魅力的ですよね!肩すかしを喰いながらも、CSS Selectors test の結果が意外に良かったこともあって、今後の展開に僕もまだドキドキしてます。(*^-^*)
投稿: ゆう@管理人 | 2007-03-20 11:19
脱ブラウザ志向の Apollo をブラウザとして活用するという、何だか皮肉 極まる話をしている自分自身に気づいて、しばし苦笑。(^ ^;;)
投稿: ゆう@管理人 | 2007-03-20 11:08
はじめまして。kzと申します。
会社の同僚の方のMacでSafari 2.0.4のUAを調べてみたところ、AppleWebKit/419 (KHTML, like Gecko) Safari/419.3 なんですね。
それに対してScoutはAppleWebKit/420+ (KHTML, like Gecko) Safari/419.3なので、CSS Selectors testの結果がナイトリーのものに近いのは納得といった感じがします。
現段階の出来はともかくとして、デスクトップアプリ(しかもFlashベース)でWebkitが動作したことは、すごいなぁと思います。
amachangさんと試しながら久々にどきどきしちゃいました^^;
それでは、失礼いたします。
投稿: kz | 2007-03-20 01:32