## 待分类 - 下拉菜单中一个选项如果禁用了,是隐藏还是显示好? - 目前站显示,因为禁用并显示有机会教育用户,为什么禁用。 - 如果隐藏了可能会导致其他菜单的位置发生变化,熟练用户可能会发生误操作。 - 当然,如果禁用项特别多,已经浪费空间的地步,那就按场景作最优选择。 ## 概念 为了减少用户犯错造成的挫败感,很多产品会采用禁用状态来限制其犯错,却可能引发出可用性的问题。 ## 最佳实践 - 尽量标注为什么禁用,用户可以自主学习 - 该问题的重灾区是工具类软件,用着用着一些功能突然就灰掉了,只能慢慢摸索是哪里的问题。功能之所以不可用肯定有个原因,不论是直接显示还是鼠标悬停时显示,有必要让用户明白原由或者如何解决,避免把用户困在死胡同。 - 优秀案例 1,hubspot 的低代码建站产品,提示为什么禁用,并且还有链接进行指引:![](https://chi-1259224060.cos.ap-shanghai.myqcloud.com/20220722235708.png) ^5d50ed - 优秀案例 2,cirquits 。![Circuit for teams.jpg](https://chi-1259224060.cos.ap-shanghai.myqcloud.com/Circuit%20for%20teams.jpg) ## 反面案例 ### Broker Post Load 公司的一款 SaaS 产品,用户填写表单较多时,有可能注意不到一个再角落的必填项,却又无法保存数据,很是苦恼,下方为案发现场。![](https://chi-1259224060.cos.ap-shanghai.myqcloud.com/2022-08-20%2020.17.07.gif) ### 宽尔 C3 系统 单据中的流程按钮,如果禁用了,用户将不知道为什么不可用,点击之后报错其实也有一定的教学作用。 例如:用户想结束某个单据,点了以后发现原来订单还没有开票,不能结束,用户就会自发的去了解发票的事。![](https://chi-1259224060.cos.ap-shanghai.myqcloud.com/20220821005448.png) ## 其他观点 ### Adam Dannaway [Adham Dannaway on Twitter: "Make disabled buttons more inclusive: ✅ Change the cursor to “cursor: not-allowed” ✅ Prevent the click via JavaScript ✅ Avoid the “disabled” attribute in HTML and use “aria-disabled” instead ✅ Use ARIA live regions to announce dynamic content" / Twitter](https://twitter.com/AdhamDannaway/status/1624786515539771393) 和我的观点一致。 Mem 收藏 < [https://mem.ai/p/1V9FFsQn8dfmi6wlPr8D>](https://mem.ai/p/1V9FFsQn8dfmi6wlPr8D>) Make disabled buttons more inclusive : ✅ Change the cursor to “cursor: not-allowed” ✅ Prevent the click via JavaScript ✅ Avoid the “disabled” attribute in HTML and use “aria-disabled” instead ✅ Use ARIA live regions to announce dynamic content ### Fiori [[Which UI Elementt Sate#^80002f]] 也谈到了何时该禁用,大体思路是,如果禁用的原因显而易见,是可以禁用的,因为禁用本身也是在弱化不可用的信息。 ### Shopify - Shopify 有个不同的观点 - 直接禁用按钮,让用户不会犯错,减少挫败感, - 地址 [[Polaris Design System#^24c426]] - 这是一个深刻的问题,应该根据不同的场景来考虑。 ## 资源 - [Disabled Buttons in User Interface (babich.biz)](https://babich.biz/disabled-buttons-in-user-interface/)