我遇到了游标问题。我有一个 CSS 类,我将其称为 block ,因为它只是一个具有高度和宽度的 div。使用 jQuery UI, block 可以调整大小和拖动。当光标靠近边缘时,会显示调整大小图标,当光标位于 block 的中心时,会显示抓取图标。使用 cursor: url(...), default;
检索抓取图标,这就是问题发生的地方。使用虚拟机在不同的操作系统上进行测试我只在 Windows XP 中得到一个奇怪的行为 - 同时显示两个图标。它是抓取图标,以及光标在进入可拖动区域之前的样式(见图)。
这fiddle说明了问题(工作正常,除了在我的 Windows XP 虚拟机上)
在这个元素中,我只为 Chrome 开发并且只关心 Chorme 中的行为。它只发生在使用 Window XP 时。我尝试使用工作正常的 -webkit-grab
,但它在其他操作系统之一上显示为黑色(我不记得是哪个),所以这不是一个好的解决方案(除非你知道一种避免黑色图标的方法)。
有什么线索吗?如果你们中的某些人无法在 Windows XP 上重现它,我也很想听听。
最好的问候
最佳答案
您看到的是您正在使用的虚拟机软件的错误,而不是开发过程中的错误。虚拟机软件将您的主机光标堆叠在 VM 的光标上,因此您会看到双图形。
我刚刚测试了这个,供您仔细检查。你没事了!
如果你真的想确定,加载this page并尝试将鼠标悬停在示例中的链接上。
顺便说一句(在这个特定的例子中它不会影响你):你真的应该将 cursor
属性直接应用到元素而不是 :hover
选择器。无论如何,光标只会在您将鼠标悬停在该元素上时显示,但它消除了旧浏览器的任何歧义。
因此,根据您的示例:
.block {
width: 100px;
height: 100px;
background-color: red;
cursor: url(https://mail.google.com/mail/images/2/openhand.cur), default;
}
关于css - Windows XP 中两个光标相互重叠的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20376108/