English 中文(简体)
我该如何用颜色表示成功和失败?
原标题:
  • 时间:2008-12-18 13:54:52
  •  标签:

我需要制作一个 Java 组件,当一个进程通过时将背景颜色变成特定的颜色,而当进程失败时将背景颜色变成另一种颜色。

我的第一个想法是:绿色代表成功,红色代表失败。

但是我读到有10%的男性无法区分这两种颜色。有什么更好的颜色组合?

对于挑剔的人:是的,我知道仅仅颜色是不够的,文本、形状和噪声也可以使用。尽管如此,我还是在询问颜色的适当使用方式。

最佳回答

alt text Red + x = Failure

alt text Green + checkmark = Success

问题回答

我认为你自己已经回答了这个问题。除了文本之外,使用绿色/红色。大多数人都会理解绿色/红色。如果你把它改成蓝色/黄色,那么看到绿色/红色的90%的人会感到困惑。坚持惯例,添加文本以帮助看不到绿色/红色的10%的人。

请记住,这些“明显”的颜色联系(例如,绿=好,红=坏)是有文化差异的。因此,不仅仅依赖于颜色是一个非常好的主意。

使用颜色和符号。绿色使用“+”号,红色使用“-”号,这样不能分辨颜色的人也能明白。

如果需要网格线的背景颜色,解决问题的方法是添加一个名为“状态”的列,并使用加号+或减号-的图标。

在我看来,最好的做法是使用颜色和图标/文本的混合。

例如,当我在表格上有错误时,我会采取以下措施:

  • 在表格的顶部提供一个文本标题,例如:“糟糕,您的提交出了一些问题:姓氏没有填写等等…”。

  • 在每个错误字段上,我将框的背景颜色高亮显示成粉色并修改边框。这不仅改变了颜色,还让错误字段具有了微妙但明显的焦点。

  • 最后,根据网站和我拥有的空间量,我在该字段后添加一个小的“警告”图标和一条小信息。

将这三个组合起来,错误表单易于阅读,所有人都不会错过正在发生的事情。

作为一个红绿色盲的人,我可以轻易地分辨出两种颜色的“纯”形式。问题在于红色往往看起来“洗淡”一些——更像棕色,而绿色/黄色则混合在一起。在8%的男性中,我相信很少有人完全无法区分纯红和纯绿。问题在于我的毛衣或秋叶的确切颜色可能会很困难和令人困惑。此外,我确实在任何LED中以及特别是交通信号灯方面遇到了困难。它们可能会令人困惑,主要是因为我更加关注相对亮度而不是颜色,而某些信号的亮度差别很大。

也许可以用一个交通信号灯的可视化来表示?在中立状态下,三盏灯都是灰色的,尽管颜色仍然可辨认。在“绿灯”状态下,绿色灯亮度更高,背景和灯的对比度增加。红灯状态也是如此。

我不得不承认

  1. I don t know if the red-amber-green configuration of UK traffic lights is a worldwide standard that would not be open to interpretation, and
  2. Whether the contrast between the light on and light off states would be enough for a visually impaired user to differentiate between them.

只是一个想法…

我们通常这样实施:

We have written 2 common functions in which we format the string with {0} for error fmsg and green for success.

因此,您可以使用一个单一的标签,并在服务器端代码本身上控制成功和错误消息的类型,而不是使用错误(红色)和成功(绿色)消息的2个不同标签。

但是,对于色盲的人们,使用图像X表示错误,以相同的方式进行实现,甚至使用橙色表示错误,蓝色表示成功也是一个不错的选择。

不要使用纯红和绿色。在交通信号灯等安全装置上,红色实际上是红橙混合物。如果我记得正确,绿色也掺杂了一点黄色。

除了颜色之外,使用其他方式来指示成功/失败仍然是一个好主意。这可以是文本、符号,或者引起注意的东西,例如将红色失败背景设置为闪烁的交替颜色,而不是静态的。例如将红色与黄色交替。

说实话,形状/位置几乎总是比颜色更重要的解决方案。颜色有一些方面,比如人眼对蓝色的不敏感,这意味着颜色有助于清晰度,但你不能指望它总是恰当的。





相关问题
热门标签