用CSS覆盖游标

时间:2012-05-11 13:47:45

标签: javascript css html5 cursor

我有一个overflow: hidden div我正在滚动,允许用户点击并拖动背景。此空间中还有链接和按钮。

这就是我为CSS做的事情:     

#div-grabscroll {    
    cursor: url(../img/openhand.cur), move;
}
#div-grabscroll:active {
   cursor: url(../img/closedhand.cur), n-resize;
}

这很有用,但是当拖动时,如果鼠标最终移动(由于达到滚动限制)在按钮上,pointer光标会覆盖我的closedhand光标。

期望的行为是,在鼠标控制div的整个持续时间内,我希望光标保持为closedhand

有没有办法覆盖光标而不修改鼠标可能会移动的所有的CSS?我在!important样式上尝试:active,但没有这样做。

2 个答案:

答案 0 :(得分:1)

答案/问题:如果你有一个位于grabscroll div顶部的重复div,但没有任何类型的背景或内容以便不隐藏任何背后的东西,然后设置光标手,会发生什么就此而言。

z-index是否会以这种方式覆盖重要性?

这有意义吗?

有效的是,你有grabscroll - button - opaque grabscroll这个分层顺序。

答案 1 :(得分:1)

这是一个非常类似于创建“模态”对话框的问题,它可能会有类似的解决方案:我认为你必须创建一个位于你正在滚动的内容上的iframe,在滚动的持续时间内,它在z-index顺序中比内容更高。这是因为在IE(至少)表单控件上往往不能很好地服从z-index,这就是为什么“lightbox”式的东西会做这个iframe shim的事情。

Here's an answer I gave关于SO的另一个问题,它展示了iframe垫片的基础知识。在这种情况下,它是出于模态目的,但概念和大部分代码都适用。