iOS5 と iOS6 の Mobile Safari が -webkit-radial-gradient を処理する方法に矛盾があることに気付きました。これを webapp で修正したいと考えています。
次の例を見てください。
div {
width:100%;
height:100%;
background-color: black;
background-image: -webkit-radial-gradient(center center, circle cover, rgba(255,255,255,1), rgba(0,0,0,0) 75%);
position:absolute;
}
に適用されます
<div> </div>
表示/編集可能: http://jsfiddle.net/kJ8z3/3/ モバイル デバイスの場合: http://fiddle.jshell.net/kJ8z3/3/show/
なぜかiOS6ではグラデーションが「強め」になっています。
- iOS6 スクリーンショット(iPad 2、WebKit 536.26)
- iOS5 スクリーンショット(iPad 1、WebKit 534.46)
デスクトップ上の Google Chrome (WebKit 537.4) または Safari (Webkit 534.57.2) の更新されたバージョンは、iOS5 に似たグラデーションを生成するため、おそらく直接 WebKit の問題ではありません。
どちらのデバイスも 32 ビットの色深度 (screen.colorDepth) を報告しますが、iOS5 からのグラデーションは、バンディングを示すアーティファクトまたは低い色深度を示しているようです。Google Chrome は 32 ビット深度を報告しますが、24 ビット色深度のみを報告する Desktop Safari よりもバンディングが多くなります。
何が起こっているのか分かりますか?または、より重要なことに、実用的な観点から、2 つの違いをどのように調整できますか? アルファ透明度が白から透明にフェードする、同じようにレンダリングされた放射状グラデーションが欲しいです。