8

我有一个非常奇怪的 CSS“错误”。

我目前正在研究一个滑块(幻灯片上有表单元素)。当我在幻灯片中的标签上单击并拖动(向右滚动以水平滚动)时,滚动和下一张幻灯片在容器上设置container属性时可见。overflow: hidden;

label我发现没有标签时溢出属性工作正常。

有没有人有解决方案?我尝试了很多 CSS 的东西,但没有成功。我在这里重新创建了 JsFiddle 中的错误:clicky

更新

  • 单击和拖动错误仅出现在 Chrome 中。(我测试过IE和FF)
  • 另外,这与带有的滚动条无关,而是关于您可以单击 an并将其向右滚动到下一张幻灯片的事实。ul listlabelslabeldrag
4

3 回答 3

9

这是 Chromium 中的一个已知错误(Google chrome 基于此)请参阅:http ://code.google.com/p/chromium/issues/detail?id=116655

因为 Safari 和 Chrome 似乎都显示了这个问题,所以我冒昧地猜测这个错误对于所有基于webkit的浏览器都是通用的。

不幸的是,Chromium 开发没有回应。我建议您在提供的链接上为这个问题投票,以帮助看到它在未来的修订中得到解决。

于 2012-10-12T12:23:57.287 回答
2

这是使用 jQuery 的解决方法。

$(your_slider).scroll(function(){
    if($(this).scrollTop() != 0 ){
        $(this).scrollTop(0)
    }
});

如果您是水平滚动,则将 scrollTop 替换为 scrollLeft

于 2013-05-28T22:42:17.867 回答
2

如果您将 HTML 元素的“溢出”更改为“隐藏”,它会阻止它滚动。唯一的问题是“mousemove”事件。如果您在鼠标按下时禁用滚动(溢出=隐藏),它将正常工作。如果您在鼠标移动时执行此操作(例如用于拖动),它将无法正常工作。因此,您应该将禁用滚动从“onmousemove”移至“onmousedown”。

于 2013-06-20T15:40:53.037 回答