質問: ### 前提・実現したいこと 本をめくるように表示されるプラグインを使ったところ、パソコン版では表示されましたが、スマホ版では右が切れてしまい、ページをめくることができませんでした。 ### 発生している問題・エラーメッセージ スマホで見た時の画面↓ ![スマホで見た時の画面](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/cc482ab44fe41648de8bfd85f1cb2853.png) 右端が切れてページがめくれないのと、1ページ目と2ページ目の間に隙間があく。 パソコンで見た時の画面↓ ![パソコンで見た時の画面](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/d0990af2b69c4521fd1c3c18b5484c62.png) 2ページ目もきちんと表示されるためページをめくることができて、1ページ目と2ページ目の間に隙間はあかない。 ``` ``` ``` ``` ↓は使っているテンプレートのスマホの画面用の設定です。 ``` @media only screen and (max-width: 480px){ #header .logo{padding-top:10px;} .info{padding:10px 0 0;} ul#topnav li{width:50%;} ul#topnav li:nth-child(3n){ border-right:1px solid #6c272d; width:50%; } ul#topnav li:nth-child(2n),ul#topnav li:nth-child(6n){border-right:0;} #mainBanner h2,#mainBanner h3{font-size:80%;} } ``` ### 試したこと 画像の大きさを小さくすることは試してみましたが、元々は文章が入っているので、あまり小さくし過ぎると読めないと思いまして、横幅240px以下は試していないです。
回答: turn.js の API を見てみました。 jQueryプラグインの記述ルール: **{1.対象要素のjQueryObject}**`.`**{2.pluginName}**`(`**{3.pluginArguments}**`)` 1. **$('#flipbook')** 2. **turn** 3. 第一引数に `object` のみの場合は初期化。 プラグインのAPIを呼ぶには、第一引数にAPI名、以降、APIが関数の時は引数を与える。 と、古式床しい jQuery用プラグイン実装でした。 ご質問のコードでも $('#flipbook').turn({options}) と初期化していますので、条件によってサイズを変更する方法も試してみてはどうでしょうか。 1. `$('#flipbook').turn("size", width, height)` で変更したいサイズを設定 2. `$('#flipbook').turn("resize")` 全ページを再設定 という手順を思いつきます(ソースコードは未確認です)。 ドキュメントを読んでの思いつきで申し訳ありません。 共にリンクを示しましたので、解決の糸口になればと思います。 1. 使えそうなAPIを試してみる 2. 実装を調べてみる ※初期値を与える際、表示するデバイスに応じて `{options}` を動的生成するのも良いかもしれません。