我有一个自编的灯箱,可以从数据库中加载内容,结果是这样的:
<div class="lightbox">
<div class="lbtop">
</div>
<div class="lbcontent">
lightbox content
</div>
<div class="lbbot">
</div>
</div>
灯箱中的所有元素都是块级元素,并且是浮动的(包括像p,h1等子元素)。
灯箱使用固定定位以确保它始终位于同一个地方:
.lightbox {
width: 320px;
height: auto;
z-index: 999;
position: fixed;
top: 0;
left: 0;
display: block;
overflow-y: scroll;
}
到目前为止一切顺利。将内容添加到灯箱也完全没问题,所有元素都可以很好地滚动。
但是当我尝试在灯箱内添加iframe(特别是:soundcloud embeds)时,iframe元素的滚动方式与灯箱内的其他元素不同,如下所示:
在这个例子中,我只是向下滚动,iframe元素现在移动到文本上,而不是留在原地。
我已经尝试了大量的解决方案,使用CSS位置的不同组合,溢出甚至尝试为此构建我自己的jQuery驱动修复程序(将iframe包装在正确定位的div中),但无济于事。总而言之,我感觉它可能是webkit中的一个错误(我在Android上遇到问题,我正在开发的网站是一个移动网站)。我确实使用-webkit-overflow-scrolling : touch;
解决了iOs中的错误(任何人,是否有替代安装程序?)。
在网上搜索修复程序也没有给我任何有用的结果。我得到的最接近的是将灯箱的位置设置为绝对,但这会影响灯箱的功能,但这并不能让我满意。
我会喜欢这方面的任何建议:)提前感谢:)
答案 0 :(得分:1)
过了一会儿,我设法解决了这个问题。这是一个只出现在SDK模拟器中的奇怪的问题。太糟糕了,我花了这么多时间来解决它,但我认为阻止其他人浪费时间可能会很好..
如果你遇到这个问题,请仔细检查一下物理安卓设备,因为那里不存在问题(跨越不同的操作系统/浏览器版本)