Modernizrがブラウザで背景サイズをサポートしていないことが検出された場合、適切なフォールバックが表示されます。background-attachment:background-sizeとの干渉を修正しました。
.wrap {
width: 200px;
height: 116px;
position: absolute;
background-image: url(image.jpg);
background-attachment: fixed;
background-position: 0 0;
background-size: 200px 116px;
background-repeat: no-repeat;
}
ここでは例です:http://jsfiddle.net/crowjonah/6xYNm/
それはしかし、私は、Androidのいくつかの事例でトラブルを抱えている、クロム、Firefoxの、サファリ(デスクトップとiOS)に美しく見えます。
ここで正しく表示されるデバイスのためのUAです:
Mozilla/5.0 (Linux; U; Android 4.0.4; en-us; Xoom Build/IMM76L) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Safari/534.30
、ここではないデバイスのためのUAです:
Mozilla/5.0 (Linux; U; Android 4.2.2; en-us; sdk Build/JB_MR1.1) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30
のAndroidの新しいバージョン(エミュレート)がスケール固定された背景画像は、ビューポートにフィットするように(ぼくらは)考えられ、そのコンテナのサイズや定義されているbackground-size
には注意を払わず、すべて吹き飛ばされてピクセル化される。
これで大丈夫です。実際には、それは何MDN says will happenです:
背景の添付ファイルが固定されている場合は、背景配置領域ではなく、彼らが存在している場合は、スクロールバーがカバーするエリアを含まないブラウザウィンドウの全領域、です。
私の問題は、それが適切かどうかを合理的に検出する方法がわからないため、適切に調整できるようになります。ページ上のレイアウトとアニメーションのために、私は本当にそれをサポートするすべてのブラウザのために背景を修正したいと思うし、scroll
のために解決することができます。
アップデート(2013年10月3日): 混乱を防止するために、私は私が定義したCSSプロパティの多くを正当化するより現実的で問題の例を示すためにバイオリンを更新しました:http://jsfiddle.net/crowjonah/QtpVN/
参考までに、私の問題は[this one]と同じように見えます(http://stackoverflow.com/questions/13039135/css-background-image-resizes-when-i-set-background-attachment-fixed?rq = 1)。 – crowjonah
これを試しましたか?http:// stackoverflow。com/a/12244662/1947286 – apaul
Yep:http://jsfiddle.net/crowjonah/6xYNm/13/問題のあるAndroidエミュレータは、Modernizrの背景化テストに合格します。 – crowjonah