diff options
| author | Mark Otto <[email protected]> | 2016-12-23 11:48:03 -0800 |
|---|---|---|
| committer | Mark Otto <[email protected]> | 2016-12-24 14:21:04 -0800 |
| commit | 5464f4ab7e1ea5e6ef841609dbeb04d0436655db (patch) | |
| tree | 494714fed716ec3bcd1217e74cfcf2aecbf24dc8 /docs | |
| parent | e4933c72da93453d45af2dc71197000742ef1bb4 (diff) | |
| download | bootstrap-5464f4ab7e1ea5e6ef841609dbeb04d0436655db.tar.xz bootstrap-5464f4ab7e1ea5e6ef841609dbeb04d0436655db.zip | |
Start to blow out and document more flexbox utilities
- Adds new flexbox.md file to utilities docs
- Adds a `breakpoints.yml` data file for easier output of responsive classes in the docs. Will put this to use on other pages soon.
- Adds hella flex utils. There are some dupes for now, but they'll get removed in time.
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/_data/breakpoints.yml | 29 | ||||
| -rw-r--r-- | docs/_data/nav.yml | 1 | ||||
| -rw-r--r-- | docs/utilities/flexbox.md | 196 |
3 files changed, 226 insertions, 0 deletions
diff --git a/docs/_data/breakpoints.yml b/docs/_data/breakpoints.yml new file mode 100644 index 000000000..3c8cfe293 --- /dev/null +++ b/docs/_data/breakpoints.yml @@ -0,0 +1,29 @@ +- breakpoint: xs + abbr: "" + name: Extra small + min-width: 0px + container: "" + +- breakpoint: sm + abbr: -sm + name: Small + min-width: 576px + container: 540px + +- breakpoint: md + abbr: -md + name: Medium + min-width: 768px + container: 720px + +- breakpoint: lg + abbr: -lg + name: Large + min-width: 992px + container: 960px + +- breakpoint: xl + abbr: -xl + name: Extra large + min-width: 1200px + container: 1140px diff --git a/docs/_data/nav.yml b/docs/_data/nav.yml index 6723352f4..256e1bb9d 100644 --- a/docs/_data/nav.yml +++ b/docs/_data/nav.yml @@ -56,6 +56,7 @@ - title: Clearfix - title: Close icon - title: Colors + - title: Flexbox - title: Display property - title: Image replacement - title: Invisible content diff --git a/docs/utilities/flexbox.md b/docs/utilities/flexbox.md new file mode 100644 index 000000000..324bfa2f0 --- /dev/null +++ b/docs/utilities/flexbox.md @@ -0,0 +1,196 @@ +--- +layout: docs +title: Flexbox +group: utilities +--- + +Quickly manage the layout, alignment, and sizing of grid columns, navigation, components, and more with a full suite of responsive flexbox utilities. For more complex implementations, custom CSS may be necessary. + +## Contents + +* Will be replaced with the ToC, excluding the "Contents" header +{:toc} + +## Enable flex behaviors + +Apply `display` utilities to create a flexbox container and transform **direct children elements** into flex items. Flex containers and items are able to be modified further with additional flex properties. Choose from the following options. + +| Class | property: value; | Description | +| --- | --- | --- | +| `.d-flex` | `display: flex;` | Creates a block-level element using the flexbox model. | +| `.d-inline-flex` | `display: inline-flex;` | Creates an inline-level element using the flexbox model. | + +{% example html %} +<div class="d-flex p-2 bd-highlight">I'm a flexbox container!</div> +{% endexample %} + +{% example html %} +<div class="d-inline-flex p-2 bd-highlight">I'm an inline flexbox container!</div> +{% endexample %} + +Responsive variations also exist for `.d-flex` and `.d-inline-flex`. + +<table class="table-responsive"> + <thead> + <tr class="bg-faded"> + <th>Class</th> + <th>Description</th> + </tr> + </thead> + <tbody> + {% for bp in site.data.breakpoints %} + <tr> + <td> + <code>.d{{ bp.abbr }}-flex</code> + </td> + <td> + Sets <code>display: flex;</code> on viewports {{ bp.min-width }} wide and up + </td> + </tr> + {% endfor %} + {% for bp in site.data.breakpoints %} + <tr> + <td> + <code>.d{{ bp.abbr }}-inline-flex</code> + </td> + <td> + Sets <code>display: inline-flex;</code> on viewports {{ bp.min-width }} wide and up + </td> + </tr> + {% endfor %} + </tbody> +</table> + +## Direction + +Set the direction of flex items in a flex container with direction utilities. In most cases you can omit the horizontal class here as the browser default is `row`. However, you may encounter situations where you needed to explicitly set this value (like responsive layouts). + +Use `.flex-row` to set a horizontal direction. + +{% example html %} +<div class="d-flex flex-row bd-highlight"> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> +</div> +{% endexample %} + +Use `.flex-column` to set a vertical direction. + +{% example html %} +<div class="d-flex flex-column bd-highlight"> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> +</div> +{% endexample %} + +Responsive variations also exist for `.flex-row` and `.flex-column`. + +<table class="table-responsive"> + <thead> + <tr class="bg-faded"> + <th>Class</th> + <th>Description</th> + </tr> + </thead> + <tbody> + {% for bp in site.data.breakpoints %} + <tr> + <td> + <code>.flex{{ bp.abbr }}-row</code> + </td> + <td> + Sets <code>flex-direction: row;</code> on viewports {{ bp.min-width }} wide and up + </td> + </tr> + {% endfor %} + {% for bp in site.data.breakpoints %} + <tr> + <td> + <code>.flex{{ bp.abbr }}-column</code> + </td> + <td> + Sets <code>flex-direction: column;</code> on viewports {{ bp.min-width }} wide and up + </td> + </tr> + {% endfor %} + </tbody> +</table> + +## Wrap + +Change how flex items wrap in a flex container. Choose from no wrapping at all (the browser default) with `.flex-nowrap`, or enable wrapping with `.flex-wrap`. + +{% example html %} +<div class="d-flex flex-nowrap bd-highlight"> +<div class="p-2 bd-highlight">Flex item</div> +<div class="p-2 bd-highlight">Flex item</div> +<div class="p-2 bd-highlight">Flex item</div> +<div class="p-2 bd-highlight">Flex item</div> +<div class="p-2 bd-highlight">Flex item</div> +<div class="p-2 bd-highlight">Flex item</div> +<div class="p-2 bd-highlight">Flex item</div> +<div class="p-2 bd-highlight">Flex item</div> +<div class="p-2 bd-highlight">Flex item</div> +<div class="p-2 bd-highlight">Flex item</div> +<div class="p-2 bd-highlight">Flex item</div> +<div class="p-2 bd-highlight">Flex item</div> +<div class="p-2 bd-highlight">Flex item</div> +<div class="p-2 bd-highlight">Flex item</div> +<div class="p-2 bd-highlight">Flex item</div> +</div> +{% endexample %} + +{% example html %} +<div class="d-flex flex-wrap bd-highlight"> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> +</div> +{% endexample %} + +Responsive variations also exist for `.flex-nowrap` and `.flex-wrap`. + +<table class="table-responsive"> + <thead> + <tr class="bg-faded"> + <th>Class</th> + <th>Description</th> + </tr> + </thead> + <tbody> + {% for bp in site.data.breakpoints %} + <tr> + <td> + <code>.flex{{ bp.abbr }}-nowrap</code> + </td> + <td> + Sets <code>flex-wrap: nowrap;</code> on viewports {{ bp.min-width }} wide and up + </td> + </tr> + {% endfor %} + {% for bp in site.data.breakpoints %} + <tr> + <td> + <code>.flex{{ bp.abbr }}-wrap</code> + </td> + <td> + Sets <code>flex-wrap: wrap;</code> on viewports {{ bp.min-width }} wide and up + </td> + </tr> + {% endfor %} + </tbody> +</table> |
