CSS 变换比例滚动问题
CSS Transform scale scrolling issue
我正在创建一个使用 CSS 变换比例 属性 的网络应用程序。如下图所示,我在一个容器内有一个对象,它非常适合放在里面,没有任何溢出的内容。这就是我希望的样子。
当我将对象重新缩放到大于容器的大小时出现了我的问题。如图所示,显然物体比容器大。正如 "scrollable area" 的箭头和标签所标记的,容器可以滚动到这些区域,但是带有 "hidden" 标记的部分由于溢出而无法通过滚动看到或访问。
为了更实际地看待我的问题,这里有一个 link 代码笔和我的代码:
我的CSS代码区的片段如下:
#container {
position: fixed;
width: 300px;
height: 200px;
border: 1px solid #000000;
left: 0px;
top: 0px;
margin-left: 330px;
margin-top: 10px;
overflow: scroll;
display: block;
text-align: center;
}
#object {
position: relative;
width: 120px;
height: 120px;
display: inline-block;
background-color: rgba(255, 0, 255, 0.45);
margin-top: 40px;
border-radius: 25px;
transform: scale(3); /* This would be scale(1) on the small object */
}
这个问题阻碍了我的网络应用程序的开发,所以提前感谢您的时间和贡献。
我最好的猜测是这是由于变换原点而发生的。尝试将其设置为 0 0
应该可以解决您的问题:
#object2 {
position: relative;
width: 120px;
height: 120px;
display: block;
background-color: rgba(255, 0, 255, 0.45);
border-radius: 25px;
transform: scale(3);
transform-origin: 0 0;
}
演示 codepen
我正在创建一个使用 CSS 变换比例 属性 的网络应用程序。如下图所示,我在一个容器内有一个对象,它非常适合放在里面,没有任何溢出的内容。这就是我希望的样子。
当我将对象重新缩放到大于容器的大小时出现了我的问题。如图所示,显然物体比容器大。正如 "scrollable area" 的箭头和标签所标记的,容器可以滚动到这些区域,但是带有 "hidden" 标记的部分由于溢出而无法通过滚动看到或访问。
为了更实际地看待我的问题,这里有一个 link 代码笔和我的代码:
我的CSS代码区的片段如下:
#container {
position: fixed;
width: 300px;
height: 200px;
border: 1px solid #000000;
left: 0px;
top: 0px;
margin-left: 330px;
margin-top: 10px;
overflow: scroll;
display: block;
text-align: center;
}
#object {
position: relative;
width: 120px;
height: 120px;
display: inline-block;
background-color: rgba(255, 0, 255, 0.45);
margin-top: 40px;
border-radius: 25px;
transform: scale(3); /* This would be scale(1) on the small object */
}
这个问题阻碍了我的网络应用程序的开发,所以提前感谢您的时间和贡献。
我最好的猜测是这是由于变换原点而发生的。尝试将其设置为 0 0
应该可以解决您的问题:
#object2 {
position: relative;
width: 120px;
height: 120px;
display: block;
background-color: rgba(255, 0, 255, 0.45);
border-radius: 25px;
transform: scale(3);
transform-origin: 0 0;
}
演示 codepen