Skip to main content

Labels

Figma

Labels are used to describe inputs, select menus, textareas, radio buttons, and checkboxes.

Labels inform users what information is being asked of them. They should be written in sentence case.

For usability reasons, if a label is connected with an input, the for="[id]" attribute should be filled in. This attribute references the input’s id="[value]" value. This makes clicking the label automatically focus the proper input.
<form class="d-flex gy4 fd-column">
<label class="flex--item s-label" for="question-title">Question title</label>
<div class="d-flex ps-relative">
<input class="flex--item s-input" type="text" id="question-title" placeholder="e.g. Why doesn’t Stack Overflow use a custom web font?"/>
</div>
</form>
Name Size Class Example
Small 12px .s-label__sm
Default 15px N/A
Medium 17px .s-label__md
Large 21px .s-label__lg
Extra Large 27px .s-label__xl

When a label or input needs further explantation, text should be placed directly underneath it.

<form class="d-flex gy4 fd-column">
<label class="d-block s-label" for="example-item">
Question title
</label>
<p class="s-description mtn2 mb0">Clear question titles are more likely to get answered.</p>
<div class="d-flex ps-relative">
<input class="s-input" id="example-item" type="text" placeholder="e.g. Why doesn’t Stack Overflow use a custom web font?" />
</div>
</form>

Clear question titles are more likely to get answered.

When you need to flag labels as required or optional, use the following flags. Use the full word “Required” or “Optional” for these flags instead of using asterisks. If a majority of a form’s inputs are required, use the asterisk symbol to indicate which fields are required and include a legend. See Input Accessibility for more details.

<form class="d-flex gy4 fd-column">
<label class="flex--item s-label" for="question-tags">Question tags <span class="s-label--status">Optional</span></label>
<div class="d-flex ps-relative">
<input class="flex--item s-input" type="text" id="question-tags" placeholder="e.g. Why doesn’t Stack Overflow use a custom web font?"/>
</div>
</form>
<form class="d-flex gy4 fd-column">
<label class="flex--item s-label" for="question-title-required">Question title <span class="s-label--status s-label--status__required">Required</span></label>
<div class="d-flex ps-relative">
<input class="flex--item s-input" type="text" id="question-title-required" placeholder="e.g. Why doesn’t Stack Overflow use a custom web font?"/>
</div>
</form>
<form class="d-flex gy4 fd-column">
<label class="flex--item s-label" for="question-title-new">What is your favorite animal? <span class="s-label--status s-label--status__new">New</span></label>
<div class="d-flex ps-relative">
<input class="flex--item s-input" type="text" id="question-title-new" placeholder="e.g. hedgehog, platypus, sugar glider"/>
</div>
</form>
<form class="d-flex gy4 fd-column">
<label class="flex--item s-label" for="question-title-beta">Notify people <span class="s-label--status s-label--status__beta">Beta</span></label>
<div class="d-flex ps-relative">
<input class="flex--item s-input" type="text" id="question-title-beta" placeholder="e.g. jdoe, bgates, sjobs"/>
</div>
</form>
Deploys by Netlify