为什么Windows上的safari,chrome或firefox不支持`cursor:context-menu`?但它是由IE9和Opera?

时间:2012-02-20 15:32:58

标签: css firefox google-chrome safari cursor

This page说IE9和Opera 11.6支持Windows上下文菜单光标,但我知道Chrome,Safari和Firefox不支持Windows上的上下文菜单光标,它只显示那些中的常规箭头浏览器。

我根本无法理解为什么他们不支持该游标。它非常有用,特别是在Mac上的那些浏览器中支持它时。

它的目的是当您希望用户知道您在元素上放置了一个特殊函数时,当您在该元素上使用上下文菜单触发器时将激活该元素。对于Windows,这是一个右键单击。 (最有可能提出自定义上下文菜单)

显然,网络上的所有内容都有上下文菜单,您可以右键单击页面上的任意位置,然后会出现通用上下文菜单。这个光标是用于将您自己的特殊功能放置在一个元素上,该元素将通过右键单击激活(以及Mac有什么 - 上下文菜单键?)

有没有人知道为什么这三种浏览器不支持Windows,但是在这三种浏览器中它是在Mac上?

2 个答案:

答案 0 :(得分:4)

在Mozilla开发者网络的"CSS cursor" page上,您可以看到:

  
    

光标下有一个上下文菜单。     在Gecko / Firefox中未在Windows上实现,错误258960 WONTFIX。

  

On this page您可以阅读有关该错误的更多信息,例如:

  
    

在本机Windows应用程序中,带有快捷菜单的区域的光标     一直与普通光标相同。使用自定义光标将     使用非默认正常光标来解决烦人的问题。

  

答案 1 :(得分:0)

要真正跨浏览器/平台,您可以使用custom cursor from a image url来显示您想要的上下文菜单光标。

例如,您应用以下CSS规则:

cursor: url("https://i.stack.imgur.com/ygtZg.png"), auto;

看起来像这样:

  

Custom Context Menu

这是Demo in jsFiddle

  

注意:即使您可以解决任何跨平台呈现问题,您也可以考虑whether you should use the context-menu cursor。它很少被使用,它可能会使看到它的用户感到困惑,而上下文菜单本身并不能很好地转化为移动部署,这将是大多数网络用户的一大块。

进一步阅读