从用户界面设计的角度来看,何时最好禁用控件或完全隐藏它。我附上了一个例子。在这两种情况下,如果单击“启用ASP.NET”复选框,则会启用“选择.Net版本选择器。
答案 0 :(得分:2)
我认为,禁用几乎总是最好的。隐藏控件意味着您将部分功能/可配置性留给最终用户一个谜。除非有令人信服的理由让用户处于黑暗中,否则我不会。
启用/禁用或隐藏/取消隐藏下拉框的复选框示例非常好。如果用户不知道复选框允许他们选择更多选项,他们可能永远不会检查并发现,因为他们没有意识到他们正在寻找的选项。
作为开发人员,我们中的许多人来自于使用软件时的“尝试一切”思维模式。普通用户不这么认为,这也不是坏事。这只是意味着我们必须记住,并不是每个人都会尽一切努力去发现隐藏的UI。让它可见但禁用让他们看到有什么东西可供他们决定他们想要/需要使用它,而不是让他们想知道软件是做某事还是从不考虑它可能。
答案 1 :(得分:2)
这实际上取决于示例的上下文。在这种情况下,有一些与禁用控件相关的值,因为它提供了一个可视化的示例,启用ASP .Net复选框将具有可确定的结果。
如果复选框的结果实际上是一系列非相关子选项,或者父控件是一个下拉列表,它确定哪些子元素可用,那么最好隐藏/显示那些适合当前元素的元素选择。
另外一点,如果你在控件中描述“隐藏”控件为control.visible = false而不是display:none,那么请记住,输出实际上根本不会被渲染到浏览器中。如果您为需要更严格的可访问性要求的浏览器的残疾用户提供服务,这可能是一个问题。
答案 2 :(得分:1)
对我来说,这取决于用户的知识。如果用户知道应该遵循什么,我倾向于给他们尽可能多的信息,所以我会显示它被禁用。如果用户对后面的内容毫无头绪,我会尽可能地隐藏。有时候我会对用户角色做不同的事情,有时它取决于应用程序的普通用户以及他们对底层问题的预期理解。
HTH,
\ ^ /我l
答案 3 :(得分:0)
我更喜欢禁用控件,因此用户可以看到他可能需要填写一些内容。但是如果你受到太空限制,隐藏它会很有用。
这实际上取决于具体情况