Checkboxes

Contributors

A check box is...

commonly used for giving the user a choice among a list of options, e.g. for checklists or customizing settings.

Typical Appearance

Across nearly all platforms, check boxes are virtually identical. This component's simplicity prevents it from having a wide variety of designs.

The appearance of a check box mirrors the real-world check box, which makes a mental model blatant.

Typical Behavior

This component has many states across most platforms: checked, unchecked, disabled, and pressed down. Like a button, these different states should be obvious in the event that someone clicks (or holds down) on it. The two states that are most important, however, and checked and unchecked. This allows the user to designate the statement next to the check box as either true or false.

Events

A check box can be checked or unchecked as the result of a click. Additionally, check boxes represent the event of an item in a list. A simple example of this representation is a to-do list, which showcases whether a certain task has been completed.

The most relevant button event is the click. A click event indicates that the user has switched the check box's state. Secondary events include hover, indicating that a pointing device is explicitly within the button’s bounds. In the event that a user presses and holds on a check box, the release event is applicable.

State Diagram

The following diagram shows the six states of a standard check box and the events/actions that cause each state to change.

Unchecked
[Not supported by viewer]
Checked
[Not supported by viewer]
Unchecked (disabled)
[Not supported by viewer]
Checked (disabled)
[Not supported by viewer]
Unchecked (held)
[Not supported by viewer]
Checked (held)
[Not supported by viewer]
press
[Not supported by viewer]
release
[Not supported by viewer]
click
[Not supported by viewer]
click
[Not supported by viewer]
click, press
[Not supported by viewer]
click, press
[Not supported by viewer]
press
[Not supported by viewer]
release
[Not supported by viewer]

Most check box designs have the following states: the checked (enabled) , checked (disabled) , unchecked (enabled) , and unchecked (disabled) states. The disabled check boxes can be viewed as “dormant” check box states—they are the only states that a check box can have when a user is not interacting with the check box, and is not permitted to do so either. In contrast, the enabled states means that a user can interact with them.

In most cases, if a button is not disabled, a click action will cause the check box to change states from checked to unchecked or vice-versa.

The other two states occur when a user invokes the press event. These states are checked (held) and unchecked (held). Upon release, the check box enters the corresponding state, either checked or unchecked.

Variants

Radio Buttons and Switches

Deviations from the original check box include both radio buttons and switches.

  • Radio Buttons A radio button has a different design but conveys nearly the same information by being able to be either selected or unselected. Traditionally, radio buttons are used when only one option from a list of options is able to be selected at a time. Another way of saying this is that radio buttons are used when the choices are mutually exclusive, while checkboxes are more often used when the choices are not mutually exclusive.
  • Switch Buttons The switch button also has two primary states: on and off. The switch, also known as a toggle, changes state also by a click, however, is usually used to enact an action rather than mark a statement as true or false.
    This gif of a switch represents ON and OFF states by changing color.

Component in Action

See the check boxes below to interact with some basic check boxes!

Please fast forward to time 3:08 in the following video done by DetroitBORG to experience the check box phenomenon.

When to Use What Widgets

Ever since the first edition of Inside Macintosh in 1984, the rule has been the same for when to use checkboxes versus radio buttons. All subsequent GUI standards and the official W3C Web standards have included the same definition of these two controls:

  1. Radio buttons are used when there is a list of two or more options that are mutually exclusive and the user must select exactly one choice. In other words, clicking a non-selected radio button will deselect whatever other button was previously selected in the list.
  2. Checkboxes are used when there are lists of options and the user may select any number of choices, including zero, one, or several. In other words, each checkbox is independent of all other checkboxes in the list, so checking one box doesn't uncheck the others.
  3. A stand-alone checkbox is used for a single option that the user can choose by marking the statement as true or false.

Priority Metrics

Because check boxes are so intuitive for users, all usability metrics are applicable, with efficiency and memorability being the most significant.

Because check boxes are such a fundamental part of so many user interfaces available today, it can be said that all usability metrics are equally important for this component. Users who are seeing a check box in a given platform for the first time must not have any issues recognizing it and knowing what to do with it (learnability). The high priority of learnability also implies that memorability is a given.

Users must also never experience undue delays with using a check box (efficiency), particularly because using a check box almost always involves an instantaneous, immediate-result action. Users should almost never trigger a check box by mistake (errors)—especially check boxes whose actions result in significant changes to data or the real world. Additionally, because check boxes are commonly used in lists, the user usually needs to submit the list, using a button.

If any metric at all can be considered as a “low priority” for check boxes, it would be satisfaction. The check box is such a utilitarian component that “joy” or “uncontrollable excitement” is hardly associated with its use. One exception to this prioritization may be for check boxes in applications whose primary metric is satisfaction (e.g. video games, entertainment platforms). As a part of that overall system, making check boxes “pleasurable” may then become more important than in other situations.

Key Characteristics

So what makes for a good check box?

According to Microsoft, one should limit the number of check boxes in the user interface. If one needs to include several options, consider using a list view or list box control instead. In addition, one should:

  • Label all check boxes
  • Use sentence caps for check box labels
  • Write check box labels as sentence fragments (imperative sentences) with no ending punctuation
  • Avoid long check-box labels
  • Use select and clear in instructions for check boxes
  • Use grammatically positive phrasing for all check box labels

According to Google, a check box can either be a primary action or secondary action, and desktop check boxes should appear only on hover and focus.

In the image above, the check box is the primary action and the state indicator for the list item.

Feedback

Much like a button, it is important for check boxes to give instant feedback. Users must never doubt whether:

  1. they have checked a box, or selected an option.
  2. they have successfully unchecked a box, or in the case of switches, successfully disabled an action.

Platform-Specific Instances

Use the tabs below to compare examples of check box use on various platforms, including Windows 10, Mac OS X El Capitan and iOS 9.

In Windows 10, a check box is used to record a single binary choice or to select multiple options from a list.

Guidelines

Windows 10 follows the below guidelines outlined by the most recent Windows developer guidelines found here. These guidelines include, but are not limited to:

  • Check box text is on two lines or less.
  • The label must be worded as a statement that the checkmark designates as true.
  • Don’t put two check box groups next to each other without a clear label to separate them.
  • If there are mutually exclusive statements in a check box list, use radio buttons instead.
  • Checkboxes should not be used to perform or control a command, use a toggle instead.
  • Checking a box should not cause a display or control to be displayed.
  • The indeterminate state should be used when the user is able to see the sub-choices.

Examples of Check Box Use

Although the choice is said to be binary, Windows 10 actually allows for a checkbox to be in three (not two) states: selected, unselected, and indeterminate. Indeterminate is used when the choice is composed of both selected and unselected sub-choices. The indeterminate checkbox is very rarely used, likely because it is confusing for the user. For example, A check box in the indeterminate state is shown in the screen shot to the right. The checkbox is filled with a square. If the user clicks on the square, the square disapears. If the user clicks on the box again, a checkmark appears, and if the user clicks a third time, the box reappears.

Checkboxes are commonly used to mark a statement as either true or false, and in cases where the indeterminate is allowed, a naive user is unsure of what they are marking the statement as when indeterminate is an option. This example of the indeterminate seems to violate the Microsoft guidelines above because the sub-choices are not visible.

indeterminate check box

Microsoft defines the appropriate time to use a check box for a yes/no choice instead of a toggle as when the check box designates a status rather than causing an immediate action.

The screenshot to the right shows a single check box being used in Windows 10. When the box is checked, a status is saved but there is no immediate action. The action instead happens when the form is submitted by clicking a button at the bottom of the window. Other examples include agreeing to a terms of service agreement and a “Remember me?” box when logging in.

single check box

Another difference between toggles and check boxes is that only check boxes are used for multi-selection. The choices cannot be mutually exclusive (in that scenario, a radio button would be appropriate). The below screenshot shows multiple checkboxes being used in Windows 10. The checkboxes allow the user to select which days the alarm will repeat on. The days of the week are selected with checkboxes, but to turn the alarm itself on or off, a toggle is used.

Multiple checkboxes can also be used when selecting folders or files in the file explorer. This allows the user to designate files and folders to do some other action to. The check marks them as selected, and then the user is able to perform actions such as move, delete and copy to all of the selected items at once.

multiple checkboxes
This version of the Mac operating system debuted in October of 2015, but kept many of the stylistic design choices that came out with Mac OS X 10.9 Mavericks. One of the big changes came with the addition to the Notes app that allows users to turn a list into a checklist, which makes use of the check box component.

Mac OS X Design Principles

Mental Model

"A mental model is the concept of an object or experience that people carry in their heads."
Apple believes that it is important to acknowledge the mental models that people bring with them, since those models influence their expectations.
In the case of the check box component, many users' mental models are inspired by the fact that people use checklists in their daily lives, and are therefore familiar with what the check box represents and what it means for a check box to be enabled.

The screenshot above illustrates how Mac OS X El Capitan takes advantage of this mental model that many users have. Many users use notepads to keep track of to-do lists, and so the new Notes application makes it easy for one to convert a list into a checklist. Note that the check box icons are designed in a way that makes it easy for one to tell which ones are enabled.

Explicit & Implied Actions

According to Apple, a typical action involves three steps:

  1. Identify an object onscreen
  2. Select or designate the object
  3. Perform an action, either by invoking a command or by direct manipulation of the object
These steps lead to the two "paradigms for manipulating objects: explicit actions and implied actions." For check boxes, the explicit action paradigm applies, since one of the key characteristics of a check box is that a label is supplied with the check box, which explicitly tells the user why the check box is being used.
The screenshot above highlights the use of a clearly described check box. In Mac OS X, the check box is most commonly seen in the preference panes of applications, probably due to the customizable nature of a preference panel. In addition, one can see that this label does not confuse the reader, making it clear that a checked box will cause the operating system to "automatically hide and show the menu bar."

User Control

This principle presumes that the user should initiate and control actions. However, Apple admits this can be challenging for the following reasons:

  • The ideal user experience lies somewhere between expecting users to provide instructions for every step of every action and preventing users from initiating any but the most basic actions
  • The right amount of user control depends on the sophistication of the user audience
The screenshot shown here illustrates an example where check boxes are disabled, thus taking the control away from the user. In this case, this was done as a matter of security, since the user must first "unlock" the panel by inputting his/her account information.

Consistency

Obviously, consistency is one of the most important principles, especially when thinking about the usability metrics of memorability, efficiency, and errors. Apple also believes that consistency in the interface "allows users to transfer their knowledge and skills from one app to another."
This does not mean that each application needs to looks and behave just as every other application does. Instead, an application should "respect its users and avoid forcing them to learn new ways to do things for no reason than to be different."

The image above is taken from a preferences panel in the Mail application. Note that the check boxes for the past three "settings-based" examples have used the same check box component. This makes it easy for a user to recognize that a check box will have the same behavior throughout the operating system. Next one will see how this does principle does not always apply when the concept of aesthetic integrity comes into play.

Aesthetic Integrity

Apart from consistency, one must also be thinking about how the "visual and behavioral design of an app is consistent with the content and tasks it presents." This means that the check box does not always need to be that classic blue check box when it does not flow with the application's purpose.

The image above showcases this principle, as the reminders app is meant for seeing what has been done, not what is selected.

Many different variants and different designs of check boxes are used in iOS. The original check box is utilized in applictions like Mail, Messages, and Reminders. The radio button appears in setting options such as wifi, ringtone selection, and many more. Of all variants, the switch is the most popular in iOS. Applications like Clock and Settings make frequent use of the component.

Below are two examples of check boxes in Mail. Notice in the first example, when no emails are selected the Move and Trash buttons help indicate the status of the check boxes. Notice in the second example, the Mail application uses the color alteration and the original symbol to show selection. Here the component is used to indicate selection of individual emails so that an action can be applied to multiple at a time.

The following example emphasizes the different aesthetic design styles of iOS. The check boxes in the Reminders application stand out from other platforms with their lack of a check symbol and color specification. Although there is differentiation, because the unchecked state is indicated by the empty circle the application does attempt to stay consistent with other applications.

Next are the examples of radio buttons, indicated by small blue check marks. Depending on which choice is selected, the blue check mark will disappear off the previous option and appear on the most recent selection.

Finally are the examples of switches. Most clearly exemplified in the Clock application. The switches act as a clear indication of whether an alarm with be set, or off. Since left and right positions of the switch do not have a global state meaning, the grey and green colors provide the greatest distinguishing factor between on and off states.

Credits & References

https://msdn.microsoft.com/en-us/windows/uwp/controls-and-patterns/checkbox
http://www.google.com/design/spec/components
https://msdn.microsoft.com/en-us/library/windows/desktop/bb246416(v=vs.85).aspx
http://getbootstrap.com/css/
https://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.checkbox(v=vs.110).aspx
http://www.nngroup.com/articles/checkboxes-vs-radio-buttons/
https://www.youtube.com/watch?v=_OzWxKSm1rU&feature=youtu.be Apple OS X El Capitan: What's New? by DetroitBORG Jun 9, 2015
https://developer.apple.com/library/mac/documentation/UserExperience/Conceptual/OSXHIGuidelines/DesignPrinciples.html#//apple_ref/doc/uid/20000957-CH18-SW1