Commit eee27576 authored by Patrick H. Lauke's avatar Patrick H. Lauke

Callout for labelling of input groups

plus a few suggested approaches (in some cases, elided, as the actual
content of the label - being a generic example - is not important)
parent c918127e
...@@ -16,7 +16,11 @@ ...@@ -16,7 +16,11 @@
<h4>Don't mix with other components</h4> <h4>Don't mix with other components</h4>
<p>Do not mix form groups or grid column classes directly with input groups. Instead, nest the input group inside of the form group or grid-related element.</p> <p>Do not mix form groups or grid column classes directly with input groups. Instead, nest the input group inside of the form group or grid-related element.</p>
</div> </div>
<div class="bs-callout bs-callout-warning" id="callout-inputgroup-form-labels">
<h4>Always add labels</h4>
<p>Screen readers will have trouble with your forms if you don't include a label for every input. For these input groups, ensure that any additional label or functionality is conveyed to assistive technologies.</p>
<p>The exact technique to be used (<code>&lt;label&gt;</code> elements hidden using the <code>.sr-only</code> class, or use of the <code>aria-label</code>, <code>aria-labelledby</code>, <code>aria-describedby</code>, <code>title</code> or <code>placeholder</code> attribute) and what additional information will need to be conveyed will vary depending on the exact type of interface widget you're implementing. The examples in this section provide a few suggested, case-specific approaches.</p>
</div>
<h2 id="input-groups-basic">Basic example</h2> <h2 id="input-groups-basic">Basic example</h2>
<p>Place one add-on or button on either side of an input. You may also place one on both sides of an input.</p> <p>Place one add-on or button on either side of an input. You may also place one on both sides of an input.</p>
...@@ -24,35 +28,35 @@ ...@@ -24,35 +28,35 @@
<p><strong class="text-danger">We do not support multiple form-controls in a single input group.</strong></p> <p><strong class="text-danger">We do not support multiple form-controls in a single input group.</strong></p>
<form class="bs-example bs-example-form" data-example-id="simple-input-groups"> <form class="bs-example bs-example-form" data-example-id="simple-input-groups">
<div class="input-group"> <div class="input-group">
<span class="input-group-addon">@</span> <span class="input-group-addon" id="basic-addon1">@</span>
<input type="text" class="form-control" placeholder="Username"> <input type="text" class="form-control" placeholder="Username" aria-describedby="basic-addon1">
</div> </div>
<br> <br>
<div class="input-group"> <div class="input-group">
<input type="text" class="form-control"> <input type="text" class="form-control" placeholder="Recipient's username" aria-describedby="basic-addon2">
<span class="input-group-addon">.00</span> <span class="input-group-addon" id="basic-addon2">@example.com</span>
</div> </div>
<br> <br>
<div class="input-group"> <div class="input-group">
<span class="input-group-addon">$</span> <span class="input-group-addon">$</span>
<input type="text" class="form-control"> <input type="text" class="form-control" aria-label="Amount (to the nearest dollar)">
<span class="input-group-addon">.00</span> <span class="input-group-addon">.00</span>
</div> </div>
</form> </form>
{% highlight html %} {% highlight html %}
<div class="input-group"> <div class="input-group">
<span class="input-group-addon">@</span> <span class="input-group-addon" id="basic-addon1">@</span>
<input type="text" class="form-control" placeholder="Username"> <input type="text" class="form-control" placeholder="Username" aria-describedby="basic-addon1">
</div> </div>
<div class="input-group"> <div class="input-group">
<input type="text" class="form-control"> <input type="text" class="form-control" placeholder="Recipient's username" aria-describedby="basic-addon2">
<span class="input-group-addon">.00</span> <span class="input-group-addon" id="basic-addon2">@example.com</span>
</div> </div>
<div class="input-group"> <div class="input-group">
<span class="input-group-addon">$</span> <span class="input-group-addon">$</span>
<input type="text" class="form-control"> <input type="text" class="form-control" aria-label="Amount (to the nearest dollar)">
<span class="input-group-addon">.00</span> <span class="input-group-addon">.00</span>
</div> </div>
{% endhighlight %} {% endhighlight %}
...@@ -61,34 +65,34 @@ ...@@ -61,34 +65,34 @@
<p>Add the relative form sizing classes to the <code>.input-group</code> itself and contents within will automatically resize—no need for repeating the form control size classes on each element.</p> <p>Add the relative form sizing classes to the <code>.input-group</code> itself and contents within will automatically resize—no need for repeating the form control size classes on each element.</p>
<form class="bs-example bs-example-form" data-example-id="input-group-sizing"> <form class="bs-example bs-example-form" data-example-id="input-group-sizing">
<div class="input-group input-group-lg"> <div class="input-group input-group-lg">
<span class="input-group-addon">@</span> <span class="input-group-addon" id="sizing-addon1">@</span>
<input type="text" class="form-control" placeholder="Username"> <input type="text" class="form-control" placeholder="Username" aria-describedby="sizing-addon1">
</div> </div>
<br> <br>
<div class="input-group"> <div class="input-group">
<span class="input-group-addon">@</span> <span class="input-group-addon" id="sizing-addon2">@</span>
<input type="text" class="form-control" placeholder="Username"> <input type="text" class="form-control" placeholder="Username" aria-describedby="sizing-addon2">
</div> </div>
<br> <br>
<div class="input-group input-group-sm"> <div class="input-group input-group-sm">
<span class="input-group-addon">@</span> <span class="input-group-addon" id="sizing-addon3">@</span>
<input type="text" class="form-control" placeholder="Username"> <input type="text" class="form-control" placeholder="Username" aria-describedby="sizing-addon3">
</div> </div>
</form> </form>
{% highlight html %} {% highlight html %}
<div class="input-group input-group-lg"> <div class="input-group input-group-lg">
<span class="input-group-addon">@</span> <span class="input-group-addon" id="sizing-addon1">@</span>
<input type="text" class="form-control" placeholder="Username"> <input type="text" class="form-control" placeholder="Username" aria-describedby="sizing-addon1">
</div> </div>
<div class="input-group"> <div class="input-group">
<span class="input-group-addon">@</span> <span class="input-group-addon" id="sizing-addon2">@</span>
<input type="text" class="form-control" placeholder="Username"> <input type="text" class="form-control" placeholder="Username" aria-describedby="sizing-addon2">
</div> </div>
<div class="input-group input-group-sm"> <div class="input-group input-group-sm">
<span class="input-group-addon">@</span> <span class="input-group-addon" id="sizing-addon3">@</span>
<input type="text" class="form-control" placeholder="Username"> <input type="text" class="form-control" placeholder="Username" aria-describedby="sizing-addon3">
</div> </div>
{% endhighlight %} {% endhighlight %}
...@@ -100,17 +104,17 @@ ...@@ -100,17 +104,17 @@
<div class="col-lg-6"> <div class="col-lg-6">
<div class="input-group"> <div class="input-group">
<span class="input-group-addon"> <span class="input-group-addon">
<input type="checkbox"> <input type="checkbox" aria-label="Checkbox for following text input">
</span> </span>
<input type="text" class="form-control"> <input type="text" class="form-control" aria-label="Text input with checkbox">
</div><!-- /input-group --> </div><!-- /input-group -->
</div><!-- /.col-lg-6 --> </div><!-- /.col-lg-6 -->
<div class="col-lg-6"> <div class="col-lg-6">
<div class="input-group"> <div class="input-group">
<span class="input-group-addon"> <span class="input-group-addon">
<input type="radio"> <input type="radio" aria-label="Radio button for following text input">
</span> </span>
<input type="text" class="form-control"> <input type="text" class="form-control" aria-label="Text input with radio button">
</div><!-- /input-group --> </div><!-- /input-group -->
</div><!-- /.col-lg-6 --> </div><!-- /.col-lg-6 -->
</div><!-- /.row --> </div><!-- /.row -->
...@@ -120,17 +124,17 @@ ...@@ -120,17 +124,17 @@
<div class="col-lg-6"> <div class="col-lg-6">
<div class="input-group"> <div class="input-group">
<span class="input-group-addon"> <span class="input-group-addon">
<input type="checkbox"> <input type="checkbox" aria-label="...">
</span> </span>
<input type="text" class="form-control"> <input type="text" class="form-control" aria-label="...">
</div><!-- /input-group --> </div><!-- /input-group -->
</div><!-- /.col-lg-6 --> </div><!-- /.col-lg-6 -->
<div class="col-lg-6"> <div class="col-lg-6">
<div class="input-group"> <div class="input-group">
<span class="input-group-addon"> <span class="input-group-addon">
<input type="radio"> <input type="radio" aria-label="...">
</span> </span>
<input type="text" class="form-control"> <input type="text" class="form-control" aria-label="...">
</div><!-- /input-group --> </div><!-- /input-group -->
</div><!-- /.col-lg-6 --> </div><!-- /.col-lg-6 -->
</div><!-- /.row --> </div><!-- /.row -->
...@@ -146,12 +150,12 @@ ...@@ -146,12 +150,12 @@
<span class="input-group-btn"> <span class="input-group-btn">
<button class="btn btn-default" type="button">Go!</button> <button class="btn btn-default" type="button">Go!</button>
</span> </span>
<input type="text" class="form-control"> <input type="text" class="form-control" placeholder="Search for...">
</div><!-- /input-group --> </div><!-- /input-group -->
</div><!-- /.col-lg-6 --> </div><!-- /.col-lg-6 -->
<div class="col-lg-6"> <div class="col-lg-6">
<div class="input-group"> <div class="input-group">
<input type="text" class="form-control"> <input type="text" class="form-control" placeholder="Search for...">
<span class="input-group-btn"> <span class="input-group-btn">
<button class="btn btn-default" type="button">Go!</button> <button class="btn btn-default" type="button">Go!</button>
</span> </span>
...@@ -166,12 +170,12 @@ ...@@ -166,12 +170,12 @@
<span class="input-group-btn"> <span class="input-group-btn">
<button class="btn btn-default" type="button">Go!</button> <button class="btn btn-default" type="button">Go!</button>
</span> </span>
<input type="text" class="form-control"> <input type="text" class="form-control" placeholder="Search for...">
</div><!-- /input-group --> </div><!-- /input-group -->
</div><!-- /.col-lg-6 --> </div><!-- /.col-lg-6 -->
<div class="col-lg-6"> <div class="col-lg-6">
<div class="input-group"> <div class="input-group">
<input type="text" class="form-control"> <input type="text" class="form-control" placeholder="Search for...">
<span class="input-group-btn"> <span class="input-group-btn">
<button class="btn btn-default" type="button">Go!</button> <button class="btn btn-default" type="button">Go!</button>
</span> </span>
...@@ -196,12 +200,12 @@ ...@@ -196,12 +200,12 @@
<li><a href="#">Separated link</a></li> <li><a href="#">Separated link</a></li>
</ul> </ul>
</div><!-- /btn-group --> </div><!-- /btn-group -->
<input type="text" class="form-control"> <input type="text" class="form-control" aria-label="Text input with dropdown button">
</div><!-- /input-group --> </div><!-- /input-group -->
</div><!-- /.col-lg-6 --> </div><!-- /.col-lg-6 -->
<div class="col-lg-6"> <div class="col-lg-6">
<div class="input-group"> <div class="input-group">
<input type="text" class="form-control"> <input type="text" class="form-control" aria-label="Text input with dropdown button">
<div class="input-group-btn"> <div class="input-group-btn">
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false">Action <span class="caret"></span></button> <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false">Action <span class="caret"></span></button>
<ul class="dropdown-menu dropdown-menu-right" role="menu"> <ul class="dropdown-menu dropdown-menu-right" role="menu">
...@@ -230,12 +234,12 @@ ...@@ -230,12 +234,12 @@
<li><a href="#">Separated link</a></li> <li><a href="#">Separated link</a></li>
</ul> </ul>
</div><!-- /btn-group --> </div><!-- /btn-group -->
<input type="text" class="form-control"> <input type="text" class="form-control" aria-label="...">
</div><!-- /input-group --> </div><!-- /input-group -->
</div><!-- /.col-lg-6 --> </div><!-- /.col-lg-6 -->
<div class="col-lg-6"> <div class="col-lg-6">
<div class="input-group"> <div class="input-group">
<input type="text" class="form-control"> <input type="text" class="form-control" aria-label="...">
<div class="input-group-btn"> <div class="input-group-btn">
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false">Action <span class="caret"></span></button> <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false">Action <span class="caret"></span></button>
<ul class="dropdown-menu dropdown-menu-right" role="menu"> <ul class="dropdown-menu dropdown-menu-right" role="menu">
...@@ -270,12 +274,12 @@ ...@@ -270,12 +274,12 @@
<li><a href="#">Separated link</a></li> <li><a href="#">Separated link</a></li>
</ul> </ul>
</div> </div>
<input type="text" class="form-control"> <input type="text" class="form-control" aria-label="Text input with segmented button dropdown">
</div><!-- /.input-group --> </div><!-- /.input-group -->
</div><!-- /.col-lg-6 --> </div><!-- /.col-lg-6 -->
<div class="col-lg-6"> <div class="col-lg-6">
<div class="input-group"> <div class="input-group">
<input type="text" class="form-control"> <input type="text" class="form-control" aria-label="Text input with segmented button dropdown">
<div class="input-group-btn"> <div class="input-group-btn">
<button type="button" class="btn btn-default" tabindex="-1">Action</button> <button type="button" class="btn btn-default" tabindex="-1">Action</button>
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false"> <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
...@@ -299,11 +303,11 @@ ...@@ -299,11 +303,11 @@
<div class="input-group-btn"> <div class="input-group-btn">
<!-- Button and dropdown menu --> <!-- Button and dropdown menu -->
</div> </div>
<input type="text" class="form-control"> <input type="text" class="form-control" aria-label="...">
</div> </div>
<div class="input-group"> <div class="input-group">
<input type="text" class="form-control"> <input type="text" class="form-control" aria-label="...">
<div class="input-group-btn"> <div class="input-group-btn">
<!-- Button and dropdown menu --> <!-- Button and dropdown menu -->
</div> </div>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment