In a user interface, is it better to “gray out” or hide features that are unavailable? [closed]

StackOverflow https://stackoverflow.com/questions/1608379

  •  05-07-2019
  •  | 
  •  

Question

In my particular situation, I have a comment form than cannot be used until the user has logged in and joined a specific topic. Then, they can comment on that topic.

In your opinion, should I hide the comment form completely, or disable it and prompt the user to complete the necessary requirements.

Was it helpful?

Solution

Disabling them saves the user from effortlessly looking for functionality she knew to exist before. So in general, hiding something completely from view just generates frustration. Remember the dynamically populated menus in Office 2000 to 2003? Then you know what I mean (cf. Jensen Harris' blog posts on that topic).

I suggest you should disable them and make it clear in what states they are available and how to achieve that.

In some cases, however, such as the application we are developing right now, functionality being there or not depends more on the user's permissions than on the current state of the program. In such cases it can be helpful to just hide things that shouldn't be accessible since users never get to the point where they could use the controls. Simply because they're lacking privileges. See for example Stack Overflow's moderation tools which are accessible once you get above 10k rep but are never shown before, not even as disabled.

OTHER TIPS

If you don't want the user to know there is a comment form you should hide it.

If you want the user to know there's a comment form, but it is not (yet) available to them, you should disable it (gray it out).

There are good reasons why you might want to hide instead of gray. If you are security-trimming the interface, for example.

Gray out.

You want users to be aware of what options are available. If they're hidden a user may never know that additional setting exists.

EDIT:

I guess what I'm trying to say is if you really should hide an option you'll know. IE spacing issues, security, whatnot.

No matter what you do to visually imply something is disabled, old/inexperienced/hasty users will lose time trying to comprehend that the form looks like a form but it isn't.

I would go with a clear message instead.

gray them out. if they click on them provide a message stating why they are unavailable.

Hide the form and provide a message such as:

"Comment on this article by signing in or registering" which links to the login and registration form, once they have registered they should be directed back to the comment form so they can leave a comment.

Leaving the form visible but inactive would make the user think they have to click somewhere special to activate it.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top