水平分割を含むフレームセットを持つWebページで作業しています。左側にはメニュー用のサイドバーとコンテンツ領域があります。 (サファリを含む)のデスクトップブラウザでiOS Safariがビューセットより大きなフレームセットを展開する
<!DOCTYPE html>
<html>
<head>
<title>Frameset Test</title>
</head>
<frameset border="0" cols="100,*">
<frame id="SideMenu" name="SideMenu" src="SideMenu.html" scrolling="no" />
<frame id="MainPage" name="MainPage" src="LongPageContent.html" scrolling="auto" />
</frameset>
</html>
は、フレームセットをビューポートのサイズに設定され、スクロールバーは、メインページのフレーム内に長いページのコンテンツを表示されます。 iOSのSafariでは、フレームセットはMainPageフレーム内のコンテンツと同じサイズに展開され、可視のビューポートを超えて拡張されます。
MainPageの内容にかかわらず、ページサイズがビューポートと同じになるようにしたいと思います。私はビューポートメタタグを使いこなしましたが、ビューポートを調整してもフレームセットの動作は変更されません。
AppleのiOSガイドラインでは、スクロールがもっと紛らわしい(フレームで2本の指をスクロールする必要がある)ので、フレームセットを避けることが推奨されています。
:
はこのライブラリには、興味深い回避策を提供しているようだ//stackoverflow.com/questions/4599153/iframes-and-the-safari - ipad-how-can-the-user-user-scroll-the-content –