menu
書いてる野郎
orebike@gmail.com
Androidでもiframeは使うことができる。
通常のブラウザと異なる点は、Androidではiframe内のコンテンツサイズによってiframe自体が自動拡大するということ。 この性質があるので、全体のスクロールと一部のスクロールを独立してコントロールすることができない。逆に言うと拡大してしまうのでiframeはスクロールバーがでなくそのコンテンツは親のコンテンツと一体化しているかのように見える。
スクロールバーがなくなってしまうので、結果的にiframeはスクロールしていない扱いになるので、iframe内では
var hoge = window.pageYOffset;
みたいな値はプログラマの意図と反して(スクロールしているのはiframeが拡大されたことによりスクロールしている親なので)常にゼロになってしまう
iframeと同様にスクロールを独立コントロールするためにCSSによる指定をすることがある。
#hoge{ height:100px; overflow:scroll; }
Androidのブラウザではiframe同様スクロールの独立コントロールを許してくれないので、ここでは
#hoge{ height:100px; overflow:hidden; }
のように振舞う。