diff options
Diffstat (limited to 'docs/components')
| -rw-r--r-- | docs/components/alerts.md | 2 | ||||
| -rw-r--r-- | docs/components/button-group.md | 2 | ||||
| -rw-r--r-- | docs/components/helpers.md | 2 | ||||
| -rw-r--r-- | docs/components/input-group.md | 55 | ||||
| -rw-r--r-- | docs/components/pagination.md | 18 |
5 files changed, 42 insertions, 37 deletions
diff --git a/docs/components/alerts.md b/docs/components/alerts.md index ff25de763..f11f8fbfa 100644 --- a/docs/components/alerts.md +++ b/docs/components/alerts.md @@ -33,7 +33,7 @@ Build on any alert by adding an optional `.alert-dismissible` and [close button] {% example html %} <div class="alert alert-warning alert-dismissible" role="alert"> - <button type="button" class="close" data-dismiss="alert"> + <button type="button" class="close" data-dismiss="alert" aria-label="Close"> <span aria-hidden="true">×</span> <span class="sr-only">Close</span> </button> diff --git a/docs/components/button-group.md b/docs/components/button-group.md index 80c69b5b9..650949820 100644 --- a/docs/components/button-group.md +++ b/docs/components/button-group.md @@ -54,7 +54,7 @@ Combine sets of button groups into button toolbars for more complex components. ### Sizing -Instead of applying button sizing classes to every button in a group, just add `.btn-group-*` to the `.btn-group`. +Instead of applying button sizing classes to every button in a group, just add `.btn-group-*` to each `.btn-group`, including each one when nesting multiple groups. <div class="bs-example"> <div class="btn-group btn-group-lg" role="group" aria-label="Large button group"> diff --git a/docs/components/helpers.md b/docs/components/helpers.md index 21a145962..8976e0556 100644 --- a/docs/components/helpers.md +++ b/docs/components/helpers.md @@ -52,7 +52,7 @@ Similar to the contextual text color classes, easily set the background of an el Use a generic close icon for dismissing content like modals and alerts. **Be sure to include screen reader text when you can** as we've done with `.sr-only`. {% example html %} -<button type="button" class="close"> +<button type="button" class="close" aria-label="Close"> <span aria-hidden="true">×</span> <span class="sr-only">Close</span> </button> diff --git a/docs/components/input-group.md b/docs/components/input-group.md index 7da1432c7..fc91ac978 100644 --- a/docs/components/input-group.md +++ b/docs/components/input-group.md @@ -17,6 +17,11 @@ Extend form controls by adding text or buttons before, after, or on both sides o <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> </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><label></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> ## Basic example @@ -28,18 +33,18 @@ Place one add-on or button on either side of an input. You may also place one on {% example html %} <div class="input-group"> - <span class="input-group-addon">@</span> - <input type="text" class="form-control" placeholder="Username"> + <span class="input-group-addon" id="basic-addon1">@</span> + <input type="text" class="form-control" placeholder="Username" aria-describedby="basic-addon1"> </div> <br> <div class="input-group"> - <input type="text" class="form-control"> - <span class="input-group-addon">.00</span> + <input type="text" class="form-control" placeholder="Recipient's username" aria-describedby="basic-addon2"> + <span class="input-group-addon" id="basic-addon2">.00</span> </div> <br> <div class="input-group"> <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> </div> {% endexample %} @@ -50,18 +55,18 @@ Add the relative form sizing classes to the `.input-group` itself and contents w {% example html %} <div class="input-group input-group-lg"> - <span class="input-group-addon">@</span> - <input type="text" class="form-control" placeholder="Username"> + <span class="input-group-addon" id="sizing-addon1">@</span> + <input type="text" class="form-control" placeholder="Username" aria-describedby="sizing-addon1"> </div> <br> <div class="input-group"> - <span class="input-group-addon">@</span> - <input type="text" class="form-control" placeholder="Username"> + <span class="input-group-addon" id="sizing-addon2">@</span> + <input type="text" class="form-control" placeholder="Username" aria-describedby="sizing-addon2"> </div> <br> <div class="input-group input-group-sm"> - <span class="input-group-addon">@</span> - <input type="text" class="form-control" placeholder="Username"> + <span class="input-group-addon" id="sizing-addon3">@</span> + <input type="text" class="form-control" placeholder="Username" aria-describedby="sizing-addon3"> </div> {% endexample %} @@ -74,17 +79,17 @@ Place any checkbox or radio option within an input group's addon instead of text <div class="col-lg-6"> <div class="input-group"> <span class="input-group-addon"> - <input type="checkbox"> + <input type="checkbox" aria-label="Checkbox for following text input"> </span> - <input type="text" class="form-control"> + <input type="text" class="form-control" aria-label="Text input with checkbox"> </div> </div> <div class="col-lg-6"> <div class="input-group"> <span class="input-group-addon"> - <input type="radio"> + <input type="radio" aria-label="Radio button for following text input"> </span> - <input type="text" class="form-control"> + <input type="text" class="form-control" aria-label="Text input with radio button"> </div> </div> </div> @@ -101,12 +106,12 @@ Buttons in input groups are a bit different and require one extra level of nesti <span class="input-group-btn"> <button class="btn btn-secondary" type="button">Go!</button> </span> - <input type="text" class="form-control"> + <input type="text" class="form-control" placeholder="Search for..."> </div> </div> <div class="col-lg-6"> <div class="input-group"> - <input type="text" class="form-control"> + <input type="text" class="form-control" placeholder="Search for..."> <span class="input-group-btn"> <button class="btn btn-secondary" type="button">Go!</button> </span> @@ -131,12 +136,12 @@ Buttons in input groups are a bit different and require one extra level of nesti <li><a href="#">Separated link</a></li> </ul> </div> - <input type="text" class="form-control"> + <input type="text" class="form-control" aria-label="Text input with dropdown button"> </div> </div> <div class="col-lg-6"> <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"> <button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-expanded="false">Action</button> <ul class="dropdown-menu dropdown-menu-right" role="menu"> @@ -159,8 +164,8 @@ Buttons in input groups are a bit different and require one extra level of nesti <div class="col-lg-6"> <div class="input-group"> <div class="input-group-btn"> - <button type="button" class="btn btn-secondary" tabindex="-1">Action</button> - <button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" tabindex="-1" aria-expanded="false"> + <button type="button" class="btn btn-secondary">Action</button> + <button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-expanded="false"> <span class="sr-only">Toggle Dropdown</span> </button> <ul class="dropdown-menu" role="menu"> @@ -171,15 +176,15 @@ Buttons in input groups are a bit different and require one extra level of nesti <li><a href="#">Separated link</a></li> </ul> </div> - <input type="text" class="form-control"> + <input type="text" class="form-control" aria-label="Text input with segmented button dropdown"> </div> </div> <div class="col-lg-6"> <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"> - <button type="button" class="btn btn-secondary" tabindex="-1">Action</button> - <button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" tabindex="-1" aria-expanded="false"> + <button type="button" class="btn btn-secondary">Action</button> + <button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-expanded="false"> <span class="sr-only">Toggle Dropdown</span> </button> <ul class="dropdown-menu dropdown-menu-right" role="menu"> diff --git a/docs/components/pagination.md b/docs/components/pagination.md index dacc653f7..35cebe435 100644 --- a/docs/components/pagination.md +++ b/docs/components/pagination.md @@ -13,7 +13,7 @@ Simple pagination inspired by Rdio, great for apps and search results. The large <nav> <ul class="pagination"> <li> - <a href="#"> + <a href="#" aria-label="Previous"> <span aria-hidden="true">«</span> <span class="sr-only">Previous</span> </a> @@ -24,7 +24,7 @@ Simple pagination inspired by Rdio, great for apps and search results. The large <li><a href="#">4</a></li> <li><a href="#">5</a></li> <li> - <a href="#"> + <a href="#" aria-label="Next"> <span aria-hidden="true">»</span> <span class="sr-only">Next</span> </a> @@ -41,7 +41,7 @@ Links are customizable for different circumstances. Use `.disabled` for unclicka <nav> <ul class="pagination"> <li class="disabled"> - <a href="#"> + <a href="#" aria-label="Previous"> <span aria-hidden="true">«</span> <span class="sr-only">Previous</span> </a> @@ -54,7 +54,7 @@ Links are customizable for different circumstances. Use `.disabled` for unclicka <li><a href="#">4</a></li> <li><a href="#">5</a></li> <li> - <a href="#"> + <a href="#" aria-label="Next"> <span aria-hidden="true">»</span> <span class="sr-only">Next</span> </a> @@ -69,7 +69,7 @@ You can optionally swap out active or disabled anchors for `<span>`, or omit the <nav> <ul class="pagination"> <li class="disabled"> - <span> + <span aria-label="Previous"> <span aria-hidden="true">«</span> <span class="sr-only">Previous</span> </span> @@ -88,7 +88,7 @@ Fancy larger or smaller pagination? Add `.pagination-lg` or `.pagination-sm` for <nav> <ul class="pagination pagination-lg"> <li> - <a href="#"> + <a href="#" aria-label="Previous"> <span aria-hidden="true">«</span> <span class="sr-only">Previous</span> </a> @@ -97,7 +97,7 @@ Fancy larger or smaller pagination? Add `.pagination-lg` or `.pagination-sm` for <li><a href="#">2</a></li> <li><a href="#">3</a></li> <li> - <a href="#"> + <a href="#" aria-label="Next"> <span aria-hidden="true">»</span> <span class="sr-only">Next</span> </a> @@ -110,7 +110,7 @@ Fancy larger or smaller pagination? Add `.pagination-lg` or `.pagination-sm` for <nav> <ul class="pagination pagination-sm"> <li> - <a href="#"> + <a href="#" aria-label="Previous"> <span aria-hidden="true">«</span> <span class="sr-only">Previous</span> </a> @@ -119,7 +119,7 @@ Fancy larger or smaller pagination? Add `.pagination-lg` or `.pagination-sm` for <li><a href="#">2</a></li> <li><a href="#">3</a></li> <li> - <a href="#"> + <a href="#" aria-label="Next"> <span aria-hidden="true">»</span> <span class="sr-only">Next</span> </a> |
