transform:scale() 使右下角的元素消失
transform:scale() makes elements on bottom right to disappear
这只发生在 GOOGLE CHROME, WINDOWS 10
我正在制作一本检查用户屏幕尺寸的动画书,并使用 transform:scale() 显示尽可能大的内容。然后有一个 increases/decreases 比例因子的缩放按钮。我正在按下鼠标并移动事件,并允许用户通过拖动鼠标来滚动。该应用程序是在 Angular 的帮助下构建的。我面临的问题是,当用户缩放很多时,右下角的内容消失了。这里有直播linkhttp://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 倍后发生的情况的屏幕截图:
浏览器的缩放是有限制的,如果超出限制,效果会不好看。
我的建议是将缩放限制在某个点,然后在达到限制时禁用缩放按钮。
要解决此问题 - 您可以将溢出设置为常见的 class 元素。
#ebook-40 .ws0 {
overflow: auto;
}
希望对您有所帮助。
没有溢出 -
溢出 -
.w2.h2 {
overflow: visible;
}
似乎解决了这个问题。
只是补充一下,我遇到了类似的问题,我添加了
transform: translate3d(0,0,0)
消失的元素...似乎仍然有效的老技巧!
这只发生在 GOOGLE CHROME, WINDOWS 10
我正在制作一本检查用户屏幕尺寸的动画书,并使用 transform:scale() 显示尽可能大的内容。然后有一个 increases/decreases 比例因子的缩放按钮。我正在按下鼠标并移动事件,并允许用户通过拖动鼠标来滚动。该应用程序是在 Angular 的帮助下构建的。我面临的问题是,当用户缩放很多时,右下角的内容消失了。这里有直播linkhttp://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 倍后发生的情况的屏幕截图:
浏览器的缩放是有限制的,如果超出限制,效果会不好看。 我的建议是将缩放限制在某个点,然后在达到限制时禁用缩放按钮。
要解决此问题 - 您可以将溢出设置为常见的 class 元素。
#ebook-40 .ws0 {
overflow: auto;
}
希望对您有所帮助。
没有溢出 -
溢出 -
.w2.h2 {
overflow: visible;
}
似乎解决了这个问题。
只是补充一下,我遇到了类似的问题,我添加了
transform: translate3d(0,0,0)
消失的元素...似乎仍然有效的老技巧!