Android標準ブラウザは、background
を短縮形(ショートハンド)で記載してもbackground-size
を初期化してくれなかったという話。
例えば、下記のようなコード
background
プロパティを短縮形で書いてやると、既に値が与えられているbackground-**
といったプロパティが初期化されます。この時、短縮形で記載できないbackground-size
も初期化してくれるはずなのですが、何故かAndroid標準ブラウザだけ初期化してくれなくて、背景画像が小さく表示されてしまった。
対策としては、background-size
も別途記載すると。
「CSS
Background shorthand coming to mobile WebKit
browsers」を読むと昔はwebkit全体が、background-size
を初期化してなかったのかな?その名残が残っているのかもしれません。
短縮形はCSSがシンプルに記載出来て良いのですが、思わぬことも引き起こすなあと感じていて、最近は、margin
とかpadding
とかも、出来る限り短縮形を使わずに書くようにしている。
なのでbackground
も短縮形使わずに書こうかなと思うんだけど長いよねえ、background
参考
- Backgrounds Shorthand: the 'background' property via http://www.w3.org/
- CSS ショートハンド・プロパティの問題点 via terkel.jp