diff --git a/apps/readest-app/src/app/reader/components/FoliateViewer.tsx b/apps/readest-app/src/app/reader/components/FoliateViewer.tsx index 10d7ff52..63d4403c 100644 --- a/apps/readest-app/src/app/reader/components/FoliateViewer.tsx +++ b/apps/readest-app/src/app/reader/components/FoliateViewer.tsx @@ -14,6 +14,7 @@ import { useFoliateEvents } from '../hooks/useFoliateEvents'; import { useProgressSync } from '../hooks/useProgressSync'; import { useProgressAutoSave } from '../hooks/useProgressAutoSave'; import { + applyFixedlayoutStyles, applyImageStyle, applyTranslationStyle, getStyles, @@ -134,6 +135,10 @@ const FoliateViewer: React.FC<{ mountAdditionalFonts(detail.doc, isCJKLang(bookData.book?.primaryLanguage)); + if (bookDoc.rendition?.layout === 'pre-paginated') { + applyFixedlayoutStyles(detail.doc); + } + applyImageStyle(detail.doc); // Inline scripts in tauri platforms are not executed by default diff --git a/apps/readest-app/src/app/reader/components/notebook/Notebook.tsx b/apps/readest-app/src/app/reader/components/notebook/Notebook.tsx index 0b412708..fc229790 100644 --- a/apps/readest-app/src/app/reader/components/notebook/Notebook.tsx +++ b/apps/readest-app/src/app/reader/components/notebook/Notebook.tsx @@ -216,7 +216,7 @@ const Notebook: React.FC = ({}) => { } `}
diff --git a/apps/readest-app/src/app/reader/components/sidebar/SideBar.tsx b/apps/readest-app/src/app/reader/components/sidebar/SideBar.tsx index 8bbb5f68..ce9e2c10 100644 --- a/apps/readest-app/src/app/reader/components/sidebar/SideBar.tsx +++ b/apps/readest-app/src/app/reader/components/sidebar/SideBar.tsx @@ -259,7 +259,7 @@ const SideBar: React.FC<{ )}
; sections?: Array; diff --git a/apps/readest-app/src/utils/style.ts b/apps/readest-app/src/utils/style.ts index 89cd1524..a8d06614 100644 --- a/apps/readest-app/src/utils/style.ts +++ b/apps/readest-app/src/utils/style.ts @@ -538,3 +538,21 @@ export const applyImageStyle = (document: Document) => { } }); }; + +export const applyFixedlayoutStyles = (document: Document) => { + const style = document.createElement('style'); + style.textContent = ` + html, body { + overflow: hidden; + height: 100%; + width: 100%; + } + body { + position: relative; + } + img.singlePage { + position: relative; + } + `; + document.head.appendChild(style); +};