javascript - transform:scale() 使右下角的元素消失
问题描述
这只发生在 GOOGLE CHROME 和 WINDOWS 10 上
我正在制作一本检查用户屏幕尺寸并使用 transform:scale() 显示尽可能大的内容的翻书。然后有一个缩放按钮,可以增加/减少比例因子。我正在抓住鼠标并移动事件并允许用户通过用鼠标拖动来滚动。该应用程序是在 Angular 的帮助下构建的。我面临的问题是,当用户放大很多时,右下角的内容会消失。这是一个实时链接http://bg.e-prosveta.bg/fulldemo/4iyEkxtEbY-946/40?page=11。页面结构如下:
<div class="outer-pages-wrapper" [ngStyle]="{'max-width': (containerWidth - 100) + 'px', width: ((ebook.width * ebook.scaleFactor) + (hideRight ? 0 : (ebook.width * ebook.scaleFactor))) + 'px', height: (ebook.height * ebook.wrapperScaleFactor) + 'px'}">
<div class="inner-pages-wrapper" [ngStyle]="{transform:'scale(' + ebook.scaleFactor + ')', '-ms-transform':'scale(' + ebook.scaleFactor + ')','-webkit-transform':'scale(' + ebook.scaleFactor + ')'}">
<app-ebook-page></app-ebook-page>
<app-ebook-page></app-ebook-page>
</div>
</div>
一些相关的 CSS 规则:
.outer-pages-wrapper {
display:flex;
overflow: hidden;
}
.inner-pages-wrapper {
transform-origin: left top;
-ms-transform-origin: left top;
-webkit-transform-origin: left top;
display:flex;
}
这是在 Windows 版 Chrome 上缩放 5-6 倍后发生的屏幕截图:
解决方案
推荐阅读
- xctest - XCTest 将信息从应用程序(被测)发送回 XCTests
- javascript - Node.JS - 为什么缓冲区不在循环中收集垃圾?
- hue - HUE 操作对 Hive 查询超时
- android - 应用程序重新启动后如何保存此切换按钮(心脏)的状态?
- node.js - 即使没有角度进程正在运行,Angular Web 应用程序也会显示网页
- c# - 通过 web api 将大文件 (> 1 GB) 上传到 azure blob 存储
- mysql - 在codeigniter中执行后如何记录所有查询?
- github-actions - Github 操作:在使用 JavaFX 13 进行测试期间无法打开 DISPLAY
- apache-nifi - 使用 apache nifi 更新记录
- kibana - 想要使用 DSL 查询从 kibana 中的记录列表中获取最新记录