From 9754a84fa2cac6bfdeeca645336f525c4155ea32 Mon Sep 17 00:00:00 2001 From: Mark Otto <markdotto@gmail.com> Date: Mon, 11 Feb 2019 11:34:57 -0800 Subject: [PATCH] Publish docs for v4.3 --- about/index.html | 13 +- browser-bugs/index.html | 13 +- components/index.html | 13 +- docs/4.3/about/brand/index.html | 559 + docs/4.3/about/index.html | 11 + docs/4.3/about/license/index.html | 515 + docs/4.3/about/overview/index.html | 497 + docs/4.3/about/team/index.html | 550 + docs/4.3/about/translations/index.html | 497 + docs/4.3/assets/brand/bootstrap-outline.svg | 5 + docs/4.3/assets/brand/bootstrap-punchout.svg | 5 + .../assets/brand/bootstrap-social-logo.png | Bin 0 -> 23959 bytes docs/4.3/assets/brand/bootstrap-social.png | Bin 0 -> 231733 bytes docs/4.3/assets/brand/bootstrap-solid.svg | 5 + docs/4.3/assets/css/docs.min.css | 8 + docs/4.3/assets/css/docs.min.css.map | Bin 0 -> 83845 bytes docs/4.3/assets/img/bootstrap-themes.png | Bin 0 -> 28187 bytes docs/4.3/assets/img/bootstrap-themes@2x.png | Bin 0 -> 80588 bytes docs/4.3/assets/img/examples/album.png | Bin 0 -> 21740 bytes docs/4.3/assets/img/examples/album@2x.png | Bin 0 -> 26370 bytes docs/4.3/assets/img/examples/blog.png | Bin 0 -> 32843 bytes docs/4.3/assets/img/examples/blog@2x.png | Bin 0 -> 36944 bytes docs/4.3/assets/img/examples/carousel.png | Bin 0 -> 21450 bytes docs/4.3/assets/img/examples/carousel@2x.png | Bin 0 -> 31465 bytes docs/4.3/assets/img/examples/checkout.png | Bin 0 -> 25151 bytes docs/4.3/assets/img/examples/checkout@2x.png | Bin 0 -> 28180 bytes docs/4.3/assets/img/examples/cover.png | Bin 0 -> 7240 bytes docs/4.3/assets/img/examples/cover@2x.png | Bin 0 -> 17953 bytes docs/4.3/assets/img/examples/dashboard.png | Bin 0 -> 24376 bytes docs/4.3/assets/img/examples/dashboard@2x.png | Bin 0 -> 26556 bytes .../assets/img/examples/floating-labels.png | Bin 0 -> 10516 bytes .../img/examples/floating-labels@2x.png | Bin 0 -> 11053 bytes docs/4.3/assets/img/examples/grid.png | Bin 0 -> 37960 bytes docs/4.3/assets/img/examples/grid@2x.png | Bin 0 -> 34834 bytes docs/4.3/assets/img/examples/jumbotron.png | Bin 0 -> 31403 bytes docs/4.3/assets/img/examples/jumbotron@2x.png | Bin 0 -> 38408 bytes .../4.3/assets/img/examples/navbar-bottom.png | Bin 0 -> 9774 bytes .../assets/img/examples/navbar-bottom@2x.png | Bin 0 -> 11316 bytes docs/4.3/assets/img/examples/navbar-fixed.png | Bin 0 -> 11569 bytes .../assets/img/examples/navbar-fixed@2x.png | Bin 0 -> 13616 bytes .../4.3/assets/img/examples/navbar-static.png | Bin 0 -> 12523 bytes .../assets/img/examples/navbar-static@2x.png | Bin 0 -> 14893 bytes docs/4.3/assets/img/examples/navbars.png | Bin 0 -> 24748 bytes docs/4.3/assets/img/examples/navbars@2x.png | Bin 0 -> 27187 bytes docs/4.3/assets/img/examples/offcanvas.png | Bin 0 -> 20148 bytes docs/4.3/assets/img/examples/offcanvas@2x.png | Bin 0 -> 23975 bytes docs/4.3/assets/img/examples/pricing.png | Bin 0 -> 25033 bytes docs/4.3/assets/img/examples/pricing@2x.png | Bin 0 -> 29128 bytes docs/4.3/assets/img/examples/product.png | Bin 0 -> 24977 bytes docs/4.3/assets/img/examples/product@2x.png | Bin 0 -> 27953 bytes docs/4.3/assets/img/examples/sign-in.png | Bin 0 -> 5704 bytes docs/4.3/assets/img/examples/sign-in@2x.png | Bin 0 -> 5680 bytes .../assets/img/examples/starter-template.png | Bin 0 -> 9761 bytes .../img/examples/starter-template@2x.png | Bin 0 -> 11334 bytes .../img/examples/sticky-footer-navbar.png | Bin 0 -> 14167 bytes .../img/examples/sticky-footer-navbar@2x.png | Bin 0 -> 15836 bytes .../4.3/assets/img/examples/sticky-footer.png | Bin 0 -> 8170 bytes .../assets/img/examples/sticky-footer@2x.png | Bin 0 -> 9665 bytes .../img/favicons/android-chrome-192x192.png | Bin 0 -> 1935 bytes .../img/favicons/android-chrome-512x512.png | Bin 0 -> 4269 bytes .../assets/img/favicons/apple-touch-icon.png | Bin 0 -> 1738 bytes .../4.3/assets/img/favicons/browserconfig.xml | 9 + .../4.3/assets/img/favicons/favicon-16x16.png | Bin 0 -> 310 bytes .../4.3/assets/img/favicons/favicon-32x32.png | Bin 0 -> 491 bytes docs/4.3/assets/img/favicons/manifest.json | 20 + .../assets/img/favicons/mstile-144x144.png | Bin 0 -> 1479 bytes .../assets/img/favicons/mstile-150x150.png | Bin 0 -> 1428 bytes .../assets/img/favicons/mstile-310x150.png | Bin 0 -> 1746 bytes .../assets/img/favicons/mstile-310x310.png | Bin 0 -> 3085 bytes docs/4.3/assets/img/favicons/mstile-70x70.png | Bin 0 -> 1104 bytes .../assets/img/favicons/safari-pinned-tab.svg | 4 + docs/4.3/assets/js/docs.min.js | 22 + docs/4.3/assets/js/src/application.js | 112 + .../js/src/ie-emulation-modes-warning.js | 47 + docs/4.3/assets/js/src/search.js | 55 + docs/4.3/assets/js/vendor/anchor.min.js | 6 + .../js/vendor/bs-custom-file-input.min.js | 7 + docs/4.3/assets/js/vendor/clipboard.min.js | 7 + docs/4.3/assets/js/vendor/jquery-slim.min.js | 2 + docs/4.3/browser-bugs/index.html | 1393 +++ docs/4.3/components/alerts/index.html | 735 ++ docs/4.3/components/badge/index.html | 612 + docs/4.3/components/breadcrumb/index.html | 547 + docs/4.3/components/button-group/index.html | 744 ++ docs/4.3/components/buttons/index.html | 728 ++ docs/4.3/components/card/index.html | 1846 +++ docs/4.3/components/carousel/index.html | 1011 ++ docs/4.3/components/collapse/index.html | 833 ++ docs/4.3/components/dropdowns/index.html | 1605 +++ docs/4.3/components/forms/index.html | 2709 +++++ docs/4.3/components/index.html | 11 + docs/4.3/components/input-group/index.html | 1135 ++ docs/4.3/components/jumbotron/index.html | 516 + docs/4.3/components/list-group/index.html | 1057 ++ docs/4.3/components/media-object/index.html | 697 ++ docs/4.3/components/modal/index.html | 1373 +++ docs/4.3/components/navbar/index.html | 1342 +++ docs/4.3/components/navs/index.html | 1332 ++ docs/4.3/components/pagination/index.html | 758 ++ docs/4.3/components/popovers/index.html | 863 ++ docs/4.3/components/progress/index.html | 683 ++ docs/4.3/components/scrollspy/index.html | 824 ++ docs/4.3/components/spinners/index.html | 807 ++ docs/4.3/components/toasts/index.html | 961 ++ docs/4.3/components/tooltips/index.html | 861 ++ docs/4.3/content/code/index.html | 541 + docs/4.3/content/figures/index.html | 508 + docs/4.3/content/images/index.html | 552 + docs/4.3/content/index.html | 11 + docs/4.3/content/reboot/index.html | 877 ++ docs/4.3/content/tables/index.html | 1982 +++ docs/4.3/content/typography/index.html | 879 ++ docs/4.3/dist/css/bootstrap-grid.css | 3719 ++++++ docs/4.3/dist/css/bootstrap-grid.css.map | Bin 0 -> 151749 bytes docs/4.3/dist/css/bootstrap-grid.min.css | 7 + docs/4.3/dist/css/bootstrap-grid.min.css.map | Bin 0 -> 108539 bytes docs/4.3/dist/css/bootstrap-reboot.css | 331 + docs/4.3/dist/css/bootstrap-reboot.css.map | Bin 0 -> 76633 bytes docs/4.3/dist/css/bootstrap-reboot.min.css | 8 + .../4.3/dist/css/bootstrap-reboot.min.css.map | Bin 0 -> 32611 bytes docs/4.3/dist/css/bootstrap.css | 10038 ++++++++++++++++ docs/4.3/dist/css/bootstrap.css.map | Bin 0 -> 492198 bytes docs/4.3/dist/css/bootstrap.min.css | 7 + docs/4.3/dist/css/bootstrap.min.css.map | Bin 0 -> 626103 bytes docs/4.3/dist/js/bootstrap.bundle.js | 6866 +++++++++++ docs/4.3/dist/js/bootstrap.bundle.js.map | Bin 0 -> 392623 bytes docs/4.3/dist/js/bootstrap.bundle.min.js | 7 + docs/4.3/dist/js/bootstrap.bundle.min.js.map | Bin 0 -> 304915 bytes docs/4.3/dist/js/bootstrap.js | 4288 +++++++ docs/4.3/dist/js/bootstrap.js.map | Bin 0 -> 240942 bytes docs/4.3/dist/js/bootstrap.min.js | 7 + docs/4.3/dist/js/bootstrap.min.js.map | Bin 0 -> 183068 bytes docs/4.3/examples/album/album.css | 33 + docs/4.3/examples/album/index.html | 240 + docs/4.3/examples/blog/blog.css | 125 + docs/4.3/examples/blog/index.html | 232 + docs/4.3/examples/carousel/carousel.css | 90 + docs/4.3/examples/carousel/index.html | 196 + .../4.3/examples/checkout/form-validation.css | 5 + docs/4.3/examples/checkout/form-validation.js | 20 + docs/4.3/examples/checkout/index.html | 255 + docs/4.3/examples/cover/cover.css | 106 + docs/4.3/examples/cover/index.html | 64 + docs/4.3/examples/dashboard/dashboard.css | 106 + docs/4.3/examples/dashboard/dashboard.js | 53 + docs/4.3/examples/dashboard/index.html | 278 + .../floating-labels/floating-labels.css | 102 + docs/4.3/examples/floating-labels/index.html | 63 + docs/4.3/examples/grid/grid.css | 6 + docs/4.3/examples/grid/index.html | 156 + docs/4.3/examples/index.html | 419 + docs/4.3/examples/jumbotron/index.html | 112 + docs/4.3/examples/jumbotron/jumbotron.css | 4 + docs/4.3/examples/navbar-bottom/index.html | 71 + docs/4.3/examples/navbar-fixed/index.html | 70 + .../navbar-fixed/navbar-top-fixed.css | 5 + docs/4.3/examples/navbar-static/index.html | 70 + .../4.3/examples/navbar-static/navbar-top.css | 4 + docs/4.3/examples/navbars/index.html | 356 + docs/4.3/examples/navbars/navbar.css | 7 + docs/4.3/examples/offcanvas/index.html | 167 + docs/4.3/examples/offcanvas/offcanvas.css | 76 + docs/4.3/examples/offcanvas/offcanvas.js | 7 + docs/4.3/examples/pricing/index.html | 141 + docs/4.3/examples/pricing/pricing.css | 20 + docs/4.3/examples/product/index.html | 178 + docs/4.3/examples/product/product.css | 74 + docs/4.3/examples/sign-in/index.html | 53 + docs/4.3/examples/sign-in/signin.css | 44 + docs/4.3/examples/starter-template/index.html | 80 + .../starter-template/starter-template.css | 7 + .../examples/sticky-footer-navbar/index.html | 80 + .../sticky-footer-navbar.css | 20 + docs/4.3/examples/sticky-footer/index.html | 52 + .../examples/sticky-footer/sticky-footer.css | 13 + docs/4.3/extend/approach/index.html | 553 + docs/4.3/extend/icons/index.html | 506 + docs/4.3/extend/index.html | 11 + .../getting-started/accessibility/index.html | 542 + .../getting-started/best-practices/index.html | 495 + .../browsers-devices/index.html | 687 ++ .../getting-started/build-tools/index.html | 559 + docs/4.3/getting-started/contents/index.html | 617 + docs/4.3/getting-started/download/index.html | 586 + docs/4.3/getting-started/index.html | 11 + .../getting-started/introduction/index.html | 625 + .../4.3/getting-started/javascript/index.html | 610 + docs/4.3/getting-started/theming/index.html | 1085 ++ docs/4.3/getting-started/webpack/index.html | 567 + docs/4.3/index.html | 11 + docs/4.3/layout/grid/index.html | 1724 +++ docs/4.3/layout/index.html | 11 + docs/4.3/layout/overview/index.html | 647 + .../layout/utilities-for-layout/index.html | 506 + docs/4.3/migration/index.html | 989 ++ docs/4.3/utilities/borders/index.html | 590 + docs/4.3/utilities/clearfix/index.html | 511 + docs/4.3/utilities/close-icon/index.html | 491 + docs/4.3/utilities/colors/index.html | 601 + docs/4.3/utilities/display/index.html | 640 + docs/4.3/utilities/embed/index.html | 540 + docs/4.3/utilities/flex/index.html | 1298 ++ docs/4.3/utilities/float/index.html | 554 + .../utilities/image-replacement/index.html | 504 + docs/4.3/utilities/index.html | 11 + docs/4.3/utilities/overflow/index.html | 495 + docs/4.3/utilities/position/index.html | 519 + docs/4.3/utilities/screen-readers/index.html | 492 + docs/4.3/utilities/shadows/index.html | 495 + docs/4.3/utilities/sizing/index.html | 546 + docs/4.3/utilities/spacing/index.html | 594 + docs/4.3/utilities/stretched-link/index.html | 591 + docs/4.3/utilities/text/index.html | 648 + docs/4.3/utilities/vertical-align/index.html | 530 + docs/4.3/utilities/visibility/index.html | 504 + docs/getting-started/index.html | 8 +- docs/index.html | 8 +- docs/versions/index.html | 322 +- examples/index.html | 8 +- getting-started/index.html | 13 +- index.html | 101 +- migration/index.html | 12 +- redirects.json | 2 +- sitemap.xml | 185 +- 224 files changed, 86676 insertions(+), 332 deletions(-) create mode 100644 docs/4.3/about/brand/index.html create mode 100644 docs/4.3/about/index.html create mode 100644 docs/4.3/about/license/index.html create mode 100644 docs/4.3/about/overview/index.html create mode 100644 docs/4.3/about/team/index.html create mode 100644 docs/4.3/about/translations/index.html create mode 100644 docs/4.3/assets/brand/bootstrap-outline.svg create mode 100644 docs/4.3/assets/brand/bootstrap-punchout.svg create mode 100644 docs/4.3/assets/brand/bootstrap-social-logo.png create mode 100644 docs/4.3/assets/brand/bootstrap-social.png create mode 100644 docs/4.3/assets/brand/bootstrap-solid.svg create mode 100644 docs/4.3/assets/css/docs.min.css create mode 100644 docs/4.3/assets/css/docs.min.css.map create mode 100644 docs/4.3/assets/img/bootstrap-themes.png create mode 100644 docs/4.3/assets/img/bootstrap-themes@2x.png create mode 100644 docs/4.3/assets/img/examples/album.png create mode 100644 docs/4.3/assets/img/examples/album@2x.png create mode 100644 docs/4.3/assets/img/examples/blog.png create mode 100644 docs/4.3/assets/img/examples/blog@2x.png create mode 100644 docs/4.3/assets/img/examples/carousel.png create mode 100644 docs/4.3/assets/img/examples/carousel@2x.png create mode 100644 docs/4.3/assets/img/examples/checkout.png create mode 100644 docs/4.3/assets/img/examples/checkout@2x.png create mode 100644 docs/4.3/assets/img/examples/cover.png create mode 100644 docs/4.3/assets/img/examples/cover@2x.png create mode 100644 docs/4.3/assets/img/examples/dashboard.png create mode 100644 docs/4.3/assets/img/examples/dashboard@2x.png create mode 100644 docs/4.3/assets/img/examples/floating-labels.png create mode 100644 docs/4.3/assets/img/examples/floating-labels@2x.png create mode 100644 docs/4.3/assets/img/examples/grid.png create mode 100644 docs/4.3/assets/img/examples/grid@2x.png create mode 100644 docs/4.3/assets/img/examples/jumbotron.png create mode 100644 docs/4.3/assets/img/examples/jumbotron@2x.png create mode 100644 docs/4.3/assets/img/examples/navbar-bottom.png create mode 100644 docs/4.3/assets/img/examples/navbar-bottom@2x.png create mode 100644 docs/4.3/assets/img/examples/navbar-fixed.png create mode 100644 docs/4.3/assets/img/examples/navbar-fixed@2x.png create mode 100644 docs/4.3/assets/img/examples/navbar-static.png create mode 100644 docs/4.3/assets/img/examples/navbar-static@2x.png create mode 100644 docs/4.3/assets/img/examples/navbars.png create mode 100644 docs/4.3/assets/img/examples/navbars@2x.png create mode 100644 docs/4.3/assets/img/examples/offcanvas.png create mode 100644 docs/4.3/assets/img/examples/offcanvas@2x.png create mode 100644 docs/4.3/assets/img/examples/pricing.png create mode 100644 docs/4.3/assets/img/examples/pricing@2x.png create mode 100644 docs/4.3/assets/img/examples/product.png create mode 100644 docs/4.3/assets/img/examples/product@2x.png create mode 100644 docs/4.3/assets/img/examples/sign-in.png create mode 100644 docs/4.3/assets/img/examples/sign-in@2x.png create mode 100644 docs/4.3/assets/img/examples/starter-template.png create mode 100644 docs/4.3/assets/img/examples/starter-template@2x.png create mode 100644 docs/4.3/assets/img/examples/sticky-footer-navbar.png create mode 100644 docs/4.3/assets/img/examples/sticky-footer-navbar@2x.png create mode 100644 docs/4.3/assets/img/examples/sticky-footer.png create mode 100644 docs/4.3/assets/img/examples/sticky-footer@2x.png create mode 100644 docs/4.3/assets/img/favicons/android-chrome-192x192.png create mode 100644 docs/4.3/assets/img/favicons/android-chrome-512x512.png create mode 100644 docs/4.3/assets/img/favicons/apple-touch-icon.png create mode 100644 docs/4.3/assets/img/favicons/browserconfig.xml create mode 100644 docs/4.3/assets/img/favicons/favicon-16x16.png create mode 100644 docs/4.3/assets/img/favicons/favicon-32x32.png create mode 100644 docs/4.3/assets/img/favicons/manifest.json create mode 100644 docs/4.3/assets/img/favicons/mstile-144x144.png create mode 100644 docs/4.3/assets/img/favicons/mstile-150x150.png create mode 100644 docs/4.3/assets/img/favicons/mstile-310x150.png create mode 100644 docs/4.3/assets/img/favicons/mstile-310x310.png create mode 100644 docs/4.3/assets/img/favicons/mstile-70x70.png create mode 100644 docs/4.3/assets/img/favicons/safari-pinned-tab.svg create mode 100644 docs/4.3/assets/js/docs.min.js create mode 100644 docs/4.3/assets/js/src/application.js create mode 100644 docs/4.3/assets/js/src/ie-emulation-modes-warning.js create mode 100644 docs/4.3/assets/js/src/search.js create mode 100644 docs/4.3/assets/js/vendor/anchor.min.js create mode 100644 docs/4.3/assets/js/vendor/bs-custom-file-input.min.js create mode 100644 docs/4.3/assets/js/vendor/clipboard.min.js create mode 100644 docs/4.3/assets/js/vendor/jquery-slim.min.js create mode 100644 docs/4.3/browser-bugs/index.html create mode 100644 docs/4.3/components/alerts/index.html create mode 100644 docs/4.3/components/badge/index.html create mode 100644 docs/4.3/components/breadcrumb/index.html create mode 100644 docs/4.3/components/button-group/index.html create mode 100644 docs/4.3/components/buttons/index.html create mode 100644 docs/4.3/components/card/index.html create mode 100644 docs/4.3/components/carousel/index.html create mode 100644 docs/4.3/components/collapse/index.html create mode 100644 docs/4.3/components/dropdowns/index.html create mode 100644 docs/4.3/components/forms/index.html create mode 100644 docs/4.3/components/index.html create mode 100644 docs/4.3/components/input-group/index.html create mode 100644 docs/4.3/components/jumbotron/index.html create mode 100644 docs/4.3/components/list-group/index.html create mode 100644 docs/4.3/components/media-object/index.html create mode 100644 docs/4.3/components/modal/index.html create mode 100644 docs/4.3/components/navbar/index.html create mode 100644 docs/4.3/components/navs/index.html create mode 100644 docs/4.3/components/pagination/index.html create mode 100644 docs/4.3/components/popovers/index.html create mode 100644 docs/4.3/components/progress/index.html create mode 100644 docs/4.3/components/scrollspy/index.html create mode 100644 docs/4.3/components/spinners/index.html create mode 100644 docs/4.3/components/toasts/index.html create mode 100644 docs/4.3/components/tooltips/index.html create mode 100644 docs/4.3/content/code/index.html create mode 100644 docs/4.3/content/figures/index.html create mode 100644 docs/4.3/content/images/index.html create mode 100644 docs/4.3/content/index.html create mode 100644 docs/4.3/content/reboot/index.html create mode 100644 docs/4.3/content/tables/index.html create mode 100644 docs/4.3/content/typography/index.html create mode 100644 docs/4.3/dist/css/bootstrap-grid.css create mode 100644 docs/4.3/dist/css/bootstrap-grid.css.map create mode 100644 docs/4.3/dist/css/bootstrap-grid.min.css create mode 100644 docs/4.3/dist/css/bootstrap-grid.min.css.map create mode 100644 docs/4.3/dist/css/bootstrap-reboot.css create mode 100644 docs/4.3/dist/css/bootstrap-reboot.css.map create mode 100644 docs/4.3/dist/css/bootstrap-reboot.min.css create mode 100644 docs/4.3/dist/css/bootstrap-reboot.min.css.map create mode 100644 docs/4.3/dist/css/bootstrap.css create mode 100644 docs/4.3/dist/css/bootstrap.css.map create mode 100644 docs/4.3/dist/css/bootstrap.min.css create mode 100644 docs/4.3/dist/css/bootstrap.min.css.map create mode 100644 docs/4.3/dist/js/bootstrap.bundle.js create mode 100644 docs/4.3/dist/js/bootstrap.bundle.js.map create mode 100644 docs/4.3/dist/js/bootstrap.bundle.min.js create mode 100644 docs/4.3/dist/js/bootstrap.bundle.min.js.map create mode 100644 docs/4.3/dist/js/bootstrap.js create mode 100644 docs/4.3/dist/js/bootstrap.js.map create mode 100644 docs/4.3/dist/js/bootstrap.min.js create mode 100644 docs/4.3/dist/js/bootstrap.min.js.map create mode 100644 docs/4.3/examples/album/album.css create mode 100644 docs/4.3/examples/album/index.html create mode 100644 docs/4.3/examples/blog/blog.css create mode 100644 docs/4.3/examples/blog/index.html create mode 100644 docs/4.3/examples/carousel/carousel.css create mode 100644 docs/4.3/examples/carousel/index.html create mode 100644 docs/4.3/examples/checkout/form-validation.css create mode 100644 docs/4.3/examples/checkout/form-validation.js create mode 100644 docs/4.3/examples/checkout/index.html create mode 100644 docs/4.3/examples/cover/cover.css create mode 100644 docs/4.3/examples/cover/index.html create mode 100644 docs/4.3/examples/dashboard/dashboard.css create mode 100644 docs/4.3/examples/dashboard/dashboard.js create mode 100644 docs/4.3/examples/dashboard/index.html create mode 100644 docs/4.3/examples/floating-labels/floating-labels.css create mode 100644 docs/4.3/examples/floating-labels/index.html create mode 100644 docs/4.3/examples/grid/grid.css create mode 100644 docs/4.3/examples/grid/index.html create mode 100644 docs/4.3/examples/index.html create mode 100644 docs/4.3/examples/jumbotron/index.html create mode 100644 docs/4.3/examples/jumbotron/jumbotron.css create mode 100644 docs/4.3/examples/navbar-bottom/index.html create mode 100644 docs/4.3/examples/navbar-fixed/index.html create mode 100644 docs/4.3/examples/navbar-fixed/navbar-top-fixed.css create mode 100644 docs/4.3/examples/navbar-static/index.html create mode 100644 docs/4.3/examples/navbar-static/navbar-top.css create mode 100644 docs/4.3/examples/navbars/index.html create mode 100644 docs/4.3/examples/navbars/navbar.css create mode 100644 docs/4.3/examples/offcanvas/index.html create mode 100644 docs/4.3/examples/offcanvas/offcanvas.css create mode 100644 docs/4.3/examples/offcanvas/offcanvas.js create mode 100644 docs/4.3/examples/pricing/index.html create mode 100644 docs/4.3/examples/pricing/pricing.css create mode 100644 docs/4.3/examples/product/index.html create mode 100644 docs/4.3/examples/product/product.css create mode 100644 docs/4.3/examples/sign-in/index.html create mode 100644 docs/4.3/examples/sign-in/signin.css create mode 100644 docs/4.3/examples/starter-template/index.html create mode 100644 docs/4.3/examples/starter-template/starter-template.css create mode 100644 docs/4.3/examples/sticky-footer-navbar/index.html create mode 100644 docs/4.3/examples/sticky-footer-navbar/sticky-footer-navbar.css create mode 100644 docs/4.3/examples/sticky-footer/index.html create mode 100644 docs/4.3/examples/sticky-footer/sticky-footer.css create mode 100644 docs/4.3/extend/approach/index.html create mode 100644 docs/4.3/extend/icons/index.html create mode 100644 docs/4.3/extend/index.html create mode 100644 docs/4.3/getting-started/accessibility/index.html create mode 100644 docs/4.3/getting-started/best-practices/index.html create mode 100644 docs/4.3/getting-started/browsers-devices/index.html create mode 100644 docs/4.3/getting-started/build-tools/index.html create mode 100644 docs/4.3/getting-started/contents/index.html create mode 100644 docs/4.3/getting-started/download/index.html create mode 100644 docs/4.3/getting-started/index.html create mode 100644 docs/4.3/getting-started/introduction/index.html create mode 100644 docs/4.3/getting-started/javascript/index.html create mode 100644 docs/4.3/getting-started/theming/index.html create mode 100644 docs/4.3/getting-started/webpack/index.html create mode 100644 docs/4.3/index.html create mode 100644 docs/4.3/layout/grid/index.html create mode 100644 docs/4.3/layout/index.html create mode 100644 docs/4.3/layout/overview/index.html create mode 100644 docs/4.3/layout/utilities-for-layout/index.html create mode 100644 docs/4.3/migration/index.html create mode 100644 docs/4.3/utilities/borders/index.html create mode 100644 docs/4.3/utilities/clearfix/index.html create mode 100644 docs/4.3/utilities/close-icon/index.html create mode 100644 docs/4.3/utilities/colors/index.html create mode 100644 docs/4.3/utilities/display/index.html create mode 100644 docs/4.3/utilities/embed/index.html create mode 100644 docs/4.3/utilities/flex/index.html create mode 100644 docs/4.3/utilities/float/index.html create mode 100644 docs/4.3/utilities/image-replacement/index.html create mode 100644 docs/4.3/utilities/index.html create mode 100644 docs/4.3/utilities/overflow/index.html create mode 100644 docs/4.3/utilities/position/index.html create mode 100644 docs/4.3/utilities/screen-readers/index.html create mode 100644 docs/4.3/utilities/shadows/index.html create mode 100644 docs/4.3/utilities/sizing/index.html create mode 100644 docs/4.3/utilities/spacing/index.html create mode 100644 docs/4.3/utilities/stretched-link/index.html create mode 100644 docs/4.3/utilities/text/index.html create mode 100644 docs/4.3/utilities/vertical-align/index.html create mode 100644 docs/4.3/utilities/visibility/index.html diff --git a/about/index.html b/about/index.html index a172c45ee8..4dfc39694a 100644 --- a/about/index.html +++ b/about/index.html @@ -1,10 +1,11 @@ <!DOCTYPE html> <html lang="en-US"> <meta charset="utf-8"> - <title>Redirecting…</title> - <link rel="canonical" href="https://getbootstrap.com/docs/3.3/about/"> - <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/3.3/about/"> - <h1>Redirecting…</h1> - <a href="https://getbootstrap.com/docs/3.3/about/">Click here if you are not redirected.</a> - <script>location="https://getbootstrap.com/docs/3.3/about/"</script> + <title>Redirecting…</title> + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/about/overview/"> + <script>location="https://getbootstrap.com/docs/4.3/about/overview/"</script> + <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.3/about/overview/"> + <meta name="robots" content="noindex"> + <h1>Redirecting…</h1> + <a href="https://getbootstrap.com/docs/4.3/about/overview/">Click here if you are not redirected.</a> </html> diff --git a/browser-bugs/index.html b/browser-bugs/index.html index 61cad84cb0..b1145c62ff 100644 --- a/browser-bugs/index.html +++ b/browser-bugs/index.html @@ -1,10 +1,11 @@ <!DOCTYPE html> <html lang="en-US"> <meta charset="utf-8"> - <title>Redirecting…</title> - <link rel="canonical" href="https:/getbootstrap.com/docs/3.3/browser-bugs/"> - <meta http-equiv="refresh" content="0; url=https:/getbootstrap.com/docs/3.3/browser-bugs/"> - <h1>Redirecting…</h1> - <a href="https:/getbootstrap.com/docs/3.3/browser-bugs/">Click here if you are not redirected.</a> - <script>location="https:/getbootstrap.com/docs/3.3/browser-bugs/"</script> + <title>Redirecting…</title> + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/browser-bugs/"> + <script>location="https://getbootstrap.com/docs/4.3/browser-bugs/"</script> + <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.3/browser-bugs/"> + <meta name="robots" content="noindex"> + <h1>Redirecting…</h1> + <a href="https://getbootstrap.com/docs/4.3/browser-bugs/">Click here if you are not redirected.</a> </html> diff --git a/components/index.html b/components/index.html index 4509982284..78f82cf679 100644 --- a/components/index.html +++ b/components/index.html @@ -1,10 +1,11 @@ <!DOCTYPE html> <html lang="en-US"> <meta charset="utf-8"> - <title>Redirecting…</title> - <link rel="canonical" href="https://getbootstrap.com/docs/3.3/components/"> - <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/3.3/components/"> - <h1>Redirecting…</h1> - <a href="https://getbootstrap.com/docs/3.3/components/">Click here if you are not redirected.</a> - <script>location="https://getbootstrap.com/docs/3.3/components/"</script> + <title>Redirecting…</title> + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/alerts/"> + <script>location="https://getbootstrap.com/docs/4.3/components/alerts/"</script> + <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.3/components/alerts/"> + <meta name="robots" content="noindex"> + <h1>Redirecting…</h1> + <a href="https://getbootstrap.com/docs/4.3/components/alerts/">Click here if you are not redirected.</a> </html> diff --git a/docs/4.3/about/brand/index.html b/docs/4.3/about/brand/index.html new file mode 100644 index 0000000000..3fb332a040 --- /dev/null +++ b/docs/4.3/about/brand/index.html @@ -0,0 +1,559 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Documentation and examples for Bootstrap’s logo and brand usage guidelines."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Brand guidelines · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/about/brand/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Brand guidelines"> +<meta name="twitter:description" content="Documentation and examples for Bootstrap’s logo and brand usage guidelines."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/about/brand/"> +<meta property="og:title" content="Brand guidelines"> +<meta property="og:description" content="Documentation and examples for Bootstrap’s logo and brand usage guidelines."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#mark-and-logo">Mark and logo</a></li> +<li class="toc-entry toc-h2"><a href="#download-mark">Download mark</a></li> +<li class="toc-entry toc-h2"><a href="#name">Name</a></li> +<li class="toc-entry toc-h2"><a href="#colors">Colors</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Brand guidelines</h1> + <p class="bd-lead">Documentation and examples for Bootstrap’s logo and brand usage guidelines.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>Have a need for Bootstrap’s brand resources? Great! We have only a few guidelines we follow, and in turn ask you to follow as well. These guidelines were inspired by MailChimp’s <a href="https://mailchimp.com/about/brand-assets/">Brand Assets</a>.</p> + +<h2 id="mark-and-logo">Mark and logo</h2> + +<p>Use either the Bootstrap mark (a capital <strong>B</strong>) or the standard logo (just <strong>Bootstrap</strong>). It should always appear in San Francisco Display Semibold. <strong>Do not use the Twitter bird</strong> in association with Bootstrap.</p> + +<div class="bd-brand-logos"> + <div class="bd-brand-item"> + <img class="svg" src="/docs/4.3/assets/brand/bootstrap-solid.svg" alt="Bootstrap" width="144" height="144" /> + </div> + <div class="bd-brand-item inverse"> + <img class="svg" src="/docs/4.3/assets/brand/bootstrap-outline.svg" alt="Bootstrap" width="144" height="144" /> + </div> +</div> +<div class="bd-brand-logos"> + <div class="bd-brand-item"> + <span class="h1">Bootstrap</span> + </div> + <div class="bd-brand-item inverse"> + <span class="h1">Bootstrap</span> + </div> +</div> + +<h2 id="download-mark">Download mark</h2> + +<p>Download the Bootstrap mark in one of three styles, each available as an SVG file. Right click, Save as.</p> + +<div class="bd-brand-logos"> + <div class="bd-brand-item"> + <img class="svg" src="/docs/4.3/assets/brand/bootstrap-solid.svg" alt="Bootstrap" width="144" height="144" /> + </div> + <div class="bd-brand-item inverse"> + <img class="svg" src="/docs/4.3/assets/brand/bootstrap-outline.svg" alt="Bootstrap" width="144" height="144" /> + </div> + <div class="bd-brand-item inverse"> + <img class="svg" src="/docs/4.3/assets/brand/bootstrap-punchout.svg" alt="Bootstrap" width="144" height="144" /> + </div> +</div> + +<h2 id="name">Name</h2> + +<p>The project and framework should always be referred to as <strong>Bootstrap</strong>. No Twitter before it, no capital <em>s</em>, and no abbreviations except for one, a capital <strong>B</strong>.</p> + +<div class="bd-brand-logos"> + <div class="bd-brand-item"> + <span class="h3">Bootstrap</span> + <strong class="text-success">Right</strong> + </div> + <div class="bd-brand-item"> + <span class="h3 text-muted">BootStrap</span> + <strong class="text-warning">Wrong</strong> + </div> + <div class="bd-brand-item"> + <span class="h3 text-muted">Twitter Bootstrap</span> + <strong class="text-warning">Wrong</strong> + </div> +</div> + +<h2 id="colors">Colors</h2> + +<p>Our docs and branding use a handful of primary colors to differentiate what <em>is</em> Bootstrap from what <em>is in</em> Bootstrap. In other words, if it’s purple, it’s representative of Bootstrap.</p> + +<div class="bd-brand"> + <div class="color-swatches"> + <div class="color-swatch bd-purple"></div> + <div class="color-swatch bd-purple-light"></div> + <div class="color-swatch bd-purple-lighter"></div> + <div class="color-swatch bd-gray"></div> + </div> +</div> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/about/index.html b/docs/4.3/about/index.html new file mode 100644 index 0000000000..4dfc39694a --- /dev/null +++ b/docs/4.3/about/index.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<html lang="en-US"> + <meta charset="utf-8"> + <title>Redirecting…</title> + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/about/overview/"> + <script>location="https://getbootstrap.com/docs/4.3/about/overview/"</script> + <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.3/about/overview/"> + <meta name="robots" content="noindex"> + <h1>Redirecting…</h1> + <a href="https://getbootstrap.com/docs/4.3/about/overview/">Click here if you are not redirected.</a> +</html> diff --git a/docs/4.3/about/license/index.html b/docs/4.3/about/license/index.html new file mode 100644 index 0000000000..bfe229bdd1 --- /dev/null +++ b/docs/4.3/about/license/index.html @@ -0,0 +1,515 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Commonly asked questions about Bootstrap’s open source license."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>License FAQs · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/about/license/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="License FAQs"> +<meta name="twitter:description" content="Commonly asked questions about Bootstrap’s open source license."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/about/license/"> +<meta property="og:title" content="License FAQs"> +<meta property="og:description" content="Commonly asked questions about Bootstrap’s open source license."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">License FAQs</h1> + <p class="bd-lead">Commonly asked questions about Bootstrap’s open source license.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>Bootstrap is released under the MIT license and is copyright 2019 Twitter. Boiled down to smaller chunks, it can be described with the following conditions.</p> + +<h4 id="it-requires-you-to">It requires you to:</h4> + +<ul> + <li>Keep the license and copyright notice included in Bootstrap’s CSS and JavaScript files when you use them in your works</li> +</ul> + +<h4 id="it-permits-you-to">It permits you to:</h4> + +<ul> + <li>Freely download and use Bootstrap, in whole or in part, for personal, private, company internal, or commercial purposes</li> + <li>Use Bootstrap in packages or distributions that you create</li> + <li>Modify the source code</li> + <li>Grant a sublicense to modify and distribute Bootstrap to third parties not included in the license</li> +</ul> + +<h4 id="it-forbids-you-to">It forbids you to:</h4> + +<ul> + <li>Hold the authors and license owners liable for damages as Bootstrap is provided without warranty</li> + <li>Hold the creators or copyright holders of Bootstrap liable</li> + <li>Redistribute any piece of Bootstrap without proper attribution</li> + <li>Use any marks owned by Twitter in any way that might state or imply that Twitter endorses your distribution</li> + <li>Use any marks owned by Twitter in any way that might state or imply that you created the Twitter software in question</li> +</ul> + +<h4 id="it-does-not-require-you-to">It does not require you to:</h4> + +<ul> + <li>Include the source of Bootstrap itself, or of any modifications you may have made to it, in any redistribution you may assemble that includes it</li> + <li>Submit changes that you make to Bootstrap back to the Bootstrap project (though such feedback is encouraged)</li> +</ul> + +<p>The full Bootstrap license is located <a href="https://github.com/twbs/bootstrap/blob/v4.3.0/LICENSE">in the project repository</a> for more information.</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/about/overview/index.html b/docs/4.3/about/overview/index.html new file mode 100644 index 0000000000..4bcff3367a --- /dev/null +++ b/docs/4.3/about/overview/index.html @@ -0,0 +1,497 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Learn more about the team maintaining Bootstrap, how and why the project started, and how to get involved."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>About · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/about/overview/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="About"> +<meta name="twitter:description" content="Learn more about the team maintaining Bootstrap, how and why the project started, and how to get involved."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/about/overview/"> +<meta property="og:title" content="About"> +<meta property="og:description" content="Learn more about the team maintaining Bootstrap, how and why the project started, and how to get involved."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li class="active bd-sidenav-active"> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">About</h1> + <p class="bd-lead">Learn more about the team maintaining Bootstrap, how and why the project started, and how to get involved.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="team">Team</h2> + +<p>Bootstrap is maintained by a <a href="https://github.com/orgs/twbs/people">small team of developers</a> on GitHub. We’re actively looking to grow this team and would love to hear from you if you’re excited about CSS at scale, writing and maintaining vanilla JavaScript plugins, and improving build tooling processes for frontend code.</p> + +<h2 id="history">History</h2> + +<p>Originally created by a designer and a developer at Twitter, Bootstrap has become one of the most popular front-end frameworks and open source projects in the world.</p> + +<p>Bootstrap was created at Twitter in mid-2010 by <a href="https://twitter.com/mdo">@mdo</a> and <a href="https://twitter.com/fat">@fat</a>. Prior to being an open-sourced framework, Bootstrap was known as <em>Twitter Blueprint</em>. A few months into development, Twitter held its <a href="https://blog.twitter.com/engineering/en_us/a/2010/hack-week.html">first Hack Week</a> and the project exploded as developers of all skill levels jumped in without any external guidance. It served as the style guide for internal tools development at the company for over a year before its public release, and continues to do so today.</p> + +<p>Originally <a href="https://blog.twitter.com/developer/en_us/a/2011/bootstrap-twitter.html">released</a> on <time datetime="2011-08-19 11:25">Friday, August 19, 2011</time>, we’ve since had over <a href="https://github.com/twbs/bootstrap/releases">twenty releases</a>, including two major rewrites with v2 and v3. With Bootstrap 2, we added responsive functionality to the entire framework as an optional stylesheet. Building on that with Bootstrap 3, we rewrote the library once more to make it responsive by default with a mobile first approach.</p> + +<p>With Bootstrap 4, we once again rewrote the project to account for two key architectural changes: a migration to Sass and the move to CSS’s flexbox. Our intention is to help in a small way to move the web development community forward by pushing for newer CSS properties, fewer dependencies, and new technologies across more modern browsers.</p> + +<h2 id="get-involved">Get involved</h2> + +<p>Get involved with Bootstrap development by <a href="https://github.com/twbs/bootstrap/issues/new">opening an issue</a> or submitting a pull request. Read our <a href="https://github.com/twbs/bootstrap/blob/v4.3.0/.github/CONTRIBUTING.md">contributing guidelines</a> for information on how we develop.</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/about/team/index.html b/docs/4.3/about/team/index.html new file mode 100644 index 0000000000..6bed4d5481 --- /dev/null +++ b/docs/4.3/about/team/index.html @@ -0,0 +1,550 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="An overview of the founding team and core contributors to Bootstrap."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Team · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/about/team/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Team"> +<meta name="twitter:description" content="An overview of the founding team and core contributors to Bootstrap."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/about/team/"> +<meta property="og:title" content="Team"> +<meta property="og:description" content="An overview of the founding team and core contributors to Bootstrap."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Team</h1> + <p class="bd-lead">An overview of the founding team and core contributors to Bootstrap.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>Bootstrap is maintained by the founding team and a small group of invaluable core contributors, with the massive support and involvement of our community.</p> + +<div class="list-group mb-3"> + + <a class="list-group-item list-group-item-action d-flex align-items-center" href="https://github.com/mdo"> + <img src="https://github.com/mdo.png" alt="@mdo" width="32" height="32" class="rounded mr-2" /> + <span> + <strong>Mark Otto</strong> @mdo + </span> + </a> + + <a class="list-group-item list-group-item-action d-flex align-items-center" href="https://github.com/fat"> + <img src="https://github.com/fat.png" alt="@fat" width="32" height="32" class="rounded mr-2" /> + <span> + <strong>Jacob Thornton</strong> @fat + </span> + </a> + + <a class="list-group-item list-group-item-action d-flex align-items-center" href="https://github.com/cvrebert"> + <img src="https://github.com/cvrebert.png" alt="@cvrebert" width="32" height="32" class="rounded mr-2" /> + <span> + <strong>Chris Rebert</strong> @cvrebert + </span> + </a> + + <a class="list-group-item list-group-item-action d-flex align-items-center" href="https://github.com/xhmikosr"> + <img src="https://github.com/xhmikosr.png" alt="@xhmikosr" width="32" height="32" class="rounded mr-2" /> + <span> + <strong>XhmikosR</strong> @xhmikosr + </span> + </a> + + <a class="list-group-item list-group-item-action d-flex align-items-center" href="https://github.com/patrickhlauke"> + <img src="https://github.com/patrickhlauke.png" alt="@patrickhlauke" width="32" height="32" class="rounded mr-2" /> + <span> + <strong>Patrick H. Lauke</strong> @patrickhlauke + </span> + </a> + + <a class="list-group-item list-group-item-action d-flex align-items-center" href="https://github.com/glebm"> + <img src="https://github.com/glebm.png" alt="@glebm" width="32" height="32" class="rounded mr-2" /> + <span> + <strong>Gleb Mazovetskiy</strong> @glebm + </span> + </a> + + <a class="list-group-item list-group-item-action d-flex align-items-center" href="https://github.com/johann-s"> + <img src="https://github.com/johann-s.png" alt="@johann-s" width="32" height="32" class="rounded mr-2" /> + <span> + <strong>Johann-S</strong> @johann-s + </span> + </a> + + <a class="list-group-item list-group-item-action d-flex align-items-center" href="https://github.com/andresgalante"> + <img src="https://github.com/andresgalante.png" alt="@andresgalante" width="32" height="32" class="rounded mr-2" /> + <span> + <strong>Andres Galante</strong> @andresgalante + </span> + </a> + + <a class="list-group-item list-group-item-action d-flex align-items-center" href="https://github.com/martijncuppens"> + <img src="https://github.com/martijncuppens.png" alt="@martijncuppens" width="32" height="32" class="rounded mr-2" /> + <span> + <strong>Martijn Cuppens</strong> @martijncuppens + </span> + </a> + +</div> + +<p>Get involved with Bootstrap development by <a href="https://github.com/twbs/bootstrap/issues/new">opening an issue</a> or submitting a pull request. Read our <a href="https://github.com/twbs/bootstrap/blob/v4.3.0/.github/CONTRIBUTING.md">contributing guidelines</a> for information on how we develop.</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/about/translations/index.html b/docs/4.3/about/translations/index.html new file mode 100644 index 0000000000..d3b102ca8c --- /dev/null +++ b/docs/4.3/about/translations/index.html @@ -0,0 +1,497 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Links to community-translated Bootstrap documentation sites."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Translations · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/about/translations/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Translations"> +<meta name="twitter:description" content="Links to community-translated Bootstrap documentation sites."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/about/translations/"> +<meta property="og:title" content="Translations"> +<meta property="og:description" content="Links to community-translated Bootstrap documentation sites."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Translations</h1> + <p class="bd-lead">Links to community-translated Bootstrap documentation sites.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>Community members have translated Bootstrap’s documentation into various languages. None are officially supported and they may not always be up to date.</p> + +<ul> + + <li><a href="https://bootstrap.hexschool.com/" hreflang="zh-tw">Bootstrap 4 ç¹é«”䏿–‡æ‰‹å†Š (䏿–‡(ç¹é«”))</a></li> + + <li><a href="https://code.z01.com/v4/" hreflang="zh">Bootstrap 4 · å…¨çƒæœ€æµè¡Œçš„ HTMLã€CSS å’Œ JS 工具库。 (Chinese)</a></li> + + <li><a href="https://getbootstrap.com.br/v4/" hreflang="pt-BR">Bootstrap 4 Português do Brasil (Brazilian Portuguese)</a></li> + + <li><a href="https://getbootstrap.jp/" hreflang="ja">Bootstrap 4 日本語リファレンス (Japanese)</a></li> + +</ul> + +<p><strong>We don’t help organize or host translations, we just link to them.</strong></p> + +<p>Finished a new or better translation? Open a pull request to add it to our list.</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/assets/brand/bootstrap-outline.svg b/docs/4.3/assets/brand/bootstrap-outline.svg new file mode 100644 index 0000000000..6e136ca87b --- /dev/null +++ b/docs/4.3/assets/brand/bootstrap-outline.svg @@ -0,0 +1,5 @@ +<svg xmlns="http://www.w3.org/2000/svg" fill="#FFF" viewBox="0 180 612 612" focusable="false" role="img"> + <title>Bootstrap</title> + <path d="M510 186c25.5 0 49.6 10 67.8 28.2S606 256.5 606 282v408c0 25.5-10 49.6-28.2 67.8S535.5 786 510 786H102c-25.5 0-49.6-10-67.8-28.2S6 715.5 6 690V282c0-25.5 10-49.6 28.2-67.8S76.5 186 102 186h408m0-6H102C45.9 180 0 225.9 0 282v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V282c0-56.1-45.9-102-102-102z"/> + <path d="M166.3 313h173.5c32 0 57.7 7.3 77 22s29 36.8 29 66.5c0 18-4.4 33.4-13.2 46.2-8.8 12.8-21.4 22.8-37.8 29.8v1c22 4.7 38.7 15.1 50 31.2 11.3 16.2 17 36.4 17 60.8 0 14-2.5 27.1-7.5 39.2-5 12.2-12.8 22.7-23.5 31.5s-24.3 15.8-41 21-36.5 7.8-59.5 7.8h-164V313zm62.5 149.5h102c15 0 27.5-4.2 37.5-12.8s15-20.8 15-36.8c0-18-4.5-30.7-13.5-38s-22-11-39-11h-102v98.6zm0 156.5h110.5c19 0 33.8-4.9 44.2-14.8 10.5-9.8 15.8-23.8 15.8-41.8 0-17.7-5.2-31.2-15.8-40.8s-25.2-14.2-44.2-14.2H228.8V619z"/> +</svg> diff --git a/docs/4.3/assets/brand/bootstrap-punchout.svg b/docs/4.3/assets/brand/bootstrap-punchout.svg new file mode 100644 index 0000000000..81c20b0d8f --- /dev/null +++ b/docs/4.3/assets/brand/bootstrap-punchout.svg @@ -0,0 +1,5 @@ +<svg xmlns="http://www.w3.org/2000/svg" fill="#FFF" viewBox="0 180 612 612" focusable="false" role="img"> + <title>Bootstrap</title> + <path d="M383.5 521.8c-10.5-9.5-25.2-14.2-44.2-14.2H228.8V619h110.5c19 0 33.8-4.9 44.2-14.8 10.5-9.8 15.8-23.8 15.8-41.8-.1-17.6-5.3-31.2-15.8-40.6zm-15.3-72c10-8.5 15-20.8 15-36.8 0-18-4.5-30.7-13.5-38s-22-11-39-11h-102v98.5h102c15 0 27.5-4.3 37.5-12.7z"/> + <path d="M510 180H102C45.9 180 0 225.9 0 282v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V282c0-56.1-45.9-102-102-102zm-55.8 429.8c-5 12.2-12.8 22.7-23.5 31.5s-24.3 15.8-41 21-36.5 7.8-59.5 7.8h-164V313h173.5c32 0 57.7 7.3 77 22s29 36.8 29 66.5c0 18-4.4 33.4-13.2 46.2-8.8 12.8-21.4 22.8-37.8 29.8v1c22 4.7 38.7 15.1 50 31.2 11.3 16.2 17 36.4 17 60.8 0 14-2.5 27.1-7.5 39.3z"/> +</svg> diff --git a/docs/4.3/assets/brand/bootstrap-social-logo.png b/docs/4.3/assets/brand/bootstrap-social-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..fdd35e5d47d2f972897ca8a1a51529ea128730ab GIT binary patch literal 23959 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 KKUHDn9{WGT_W2nA literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/brand/bootstrap-social.png b/docs/4.3/assets/brand/bootstrap-social.png new file mode 100644 index 0000000000000000000000000000000000000000..468ab5b5956a653f29639c0f5bb2f18357470fcb GIT binary patch literal 231733 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/brand/bootstrap-solid.svg b/docs/4.3/assets/brand/bootstrap-solid.svg new file mode 100644 index 0000000000..4eed29bb72 --- /dev/null +++ b/docs/4.3/assets/brand/bootstrap-solid.svg @@ -0,0 +1,5 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 612 612" focusable="false" role="img"> + <title>Bootstrap</title> + <path fill="#563D7C" d="M612 510c0 56.1-45.9 102-102 102H102C45.9 612 0 566.1 0 510V102C0 45.9 45.9 0 102 0h408c56.1 0 102 45.9 102 102v408z"/> + <path fill="#FFF" d="M166.3 133h173.5c32 0 57.7 7.3 77 22s29 36.8 29 66.5c0 18-4.4 33.4-13.2 46.2-8.8 12.8-21.4 22.8-37.8 29.8v1c22 4.7 38.7 15.1 50 31.2 11.3 16.2 17 36.4 17 60.8 0 14-2.5 27.1-7.5 39.2-5 12.2-12.8 22.7-23.5 31.5s-24.3 15.8-41 21-36.5 7.8-59.5 7.8h-164V133zm62.5 149.5h102c15 0 27.5-4.2 37.5-12.8s15-20.8 15-36.8c0-18-4.5-30.7-13.5-38s-22-11-39-11h-102v98.6zm0 156.5h110.5c19 0 33.8-4.9 44.2-14.8 10.5-9.8 15.8-23.8 15.8-41.8 0-17.7-5.2-31.2-15.8-40.8s-25.2-14.2-44.2-14.2H228.8V439z"/> +</svg> diff --git a/docs/4.3/assets/css/docs.min.css b/docs/4.3/assets/css/docs.min.css new file mode 100644 index 0000000000..43fec22651 --- /dev/null +++ b/docs/4.3/assets/css/docs.min.css @@ -0,0 +1,8 @@ +/*! + * Bootstrap Docs (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors + * Copyright 2011-2019 Twitter, Inc. + * Licensed under the Creative Commons Attribution 3.0 Unported License. + * For details, see https://creativecommons.org/licenses/by/3.0/. + */.bd-navbar{min-height:4rem;background-color:#563d7c;box-shadow:0 .5rem 1rem rgba(0,0,0,.05),inset 0 -1px 0 rgba(0,0,0,.1)}@media (max-width:991.98px){.bd-navbar{padding-right:.5rem;padding-left:.5rem}.bd-navbar .navbar-nav-scroll{max-width:100%;height:2.5rem;margin-top:.25rem;overflow:hidden}.bd-navbar .navbar-nav-scroll .navbar-nav{padding-bottom:2rem;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}}@media (min-width:768px){@supports ((position:-webkit-sticky) or (position:sticky)){.bd-navbar{position:-webkit-sticky;position:sticky;top:0;z-index:1071}}}.bd-navbar .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem;color:#cbbde2}.bd-navbar .navbar-nav .nav-link.active,.bd-navbar .navbar-nav .nav-link:hover{color:#fff;background-color:transparent}.bd-navbar .navbar-nav .nav-link.active{font-weight:600}.bd-navbar .navbar-nav-svg{display:inline-block;width:1rem;height:1rem;vertical-align:text-top}.bd-navbar .dropdown-menu{font-size:.875rem}.bd-navbar .dropdown-item.active{font-weight:600;color:#212529;background-color:transparent;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23292b2c' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:.4rem .6rem;background-size:.75rem .75rem}.bd-masthead{position:relative;padding:3rem 15px}.bd-masthead h1{font-size:4rem;line-height:1}@media (max-width:1200px){.bd-masthead h1{font-size:calc(1.525rem + 3.3vw)}}.bd-masthead .btn{padding:.8rem 2rem;font-weight:600;font-size:1.25rem}.bd-masthead .carbonad{margin-top:0!important;margin-bottom:-3rem!important}@media (min-width:576px){.bd-masthead{padding-top:5rem;padding-bottom:5rem}.bd-masthead .carbonad{margin-bottom:0!important}}@media (min-width:768px){.bd-masthead .carbonad{margin-top:3rem!important}}.half-rule{width:6rem;margin:2.5rem 0}.masthead-followup .bd-clipboard{display:none}.masthead-followup .highlight{padding:.5rem 0;background-color:transparent}#carbonads{position:static;display:block;max-width:400px;padding:15px 15px 15px 160px;margin:2rem 0;overflow:hidden;font-size:.8125rem;line-height:1.4;text-align:left;background-color:rgba(0,0,0,.05)}#carbonads a{color:#333;text-decoration:none}@media (min-width:576px){#carbonads{max-width:330px;border-radius:4px}}.carbon-img{float:left;margin-left:-145px}.carbon-poweredby{display:block;color:#777!important}.bd-content{-ms-flex-order:1;order:1}.bd-content>h2[id],.bd-content>h3[id],.bd-content>h4[id]{pointer-events:none}.bd-content>h2[id]::before,.bd-content>h3[id]::before,.bd-content>h4[id]::before{display:block;height:6rem;margin-top:-6rem;content:""}.bd-content>table{width:100%;max-width:100%;margin-bottom:1rem}@media (max-width:991.98px){.bd-content>table{display:block;overflow-x:auto}.bd-content>table.table-bordered{border:0}}.bd-content>table>tbody>tr>td,.bd-content>table>tbody>tr>th,.bd-content>table>tfoot>tr>td,.bd-content>table>tfoot>tr>th,.bd-content>table>thead>tr>td,.bd-content>table>thead>tr>th{padding:.75rem;vertical-align:top;border:1px solid #dee2e6}.bd-content>table>tbody>tr>td>p:last-child,.bd-content>table>tbody>tr>th>p:last-child,.bd-content>table>tfoot>tr>td>p:last-child,.bd-content>table>tfoot>tr>th>p:last-child,.bd-content>table>thead>tr>td>p:last-child,.bd-content>table>thead>tr>th>p:last-child{margin-bottom:0}.bd-content>table td:first-child>code{white-space:nowrap}.bd-content-title{display:block;pointer-events:auto}.bd-content>h2{font-size:2rem}@media (max-width:1200px){.bd-content>h2{font-size:calc(1.325rem + .9vw)}}.bd-content>h3{font-size:1.75rem}@media (max-width:1200px){.bd-content>h3{font-size:calc(1.3rem + .6vw)}}.bd-content>h4{font-size:1.5rem}@media (max-width:1200px){.bd-content>h4{font-size:calc(1.275rem + .3vw)}}.bd-content>h2:not(:first-child){margin-top:3rem}.bd-content>h3{margin-top:1.5rem}.bd-content>ol li,.bd-content>ul li{margin-bottom:.25rem}@media (min-width:992px){.bd-content>ol,.bd-content>p,.bd-content>ul{max-width:80%}}.bd-title{margin-top:1rem;margin-bottom:.5rem;font-weight:300;font-size:3rem}@media (max-width:1200px){.bd-title{font-size:calc(1.425rem + 2.1vw)}}.bd-lead{font-size:1.125rem;font-weight:300}@media (min-width:992px){.bd-lead{max-width:80%}}.bd-text-purple{color:#563d7c}.bd-text-purple-bright{color:#7952b3}.skippy{display:block;padding:1em;color:#fff;text-align:center;background-color:#563d7c;outline:0}.skippy:hover{color:#fff}.skippy-text{padding:.5em;outline:1px dotted}.bd-toc{-ms-flex-order:2;order:2;padding-top:1.5rem;padding-bottom:1.5rem;font-size:.875rem}@supports ((position:-webkit-sticky) or (position:sticky)){.bd-toc{position:-webkit-sticky;position:sticky;top:4rem;height:calc(100vh - 4rem);overflow-y:auto}}.section-nav{padding-left:0;border-left:1px solid #eee}.section-nav ul{padding-left:1rem}.toc-entry{display:block}.toc-entry a{display:block;padding:.125rem 1.5rem;color:#77757a}.toc-entry a:hover{color:#007bff;text-decoration:none}.bd-sidebar{-ms-flex-order:0;order:0;border-bottom:1px solid rgba(0,0,0,.1)}@media (min-width:768px){.bd-sidebar{border-right:1px solid rgba(0,0,0,.1)}@supports ((position:-webkit-sticky) or (position:sticky)){.bd-sidebar{position:-webkit-sticky;position:sticky;top:4rem;z-index:1000;height:calc(100vh - 4rem)}}}@media (min-width:1200px){.bd-sidebar{-ms-flex:0 1 320px;flex:0 1 320px}}.bd-links{padding-top:1rem;padding-bottom:1rem;margin-right:-15px;margin-left:-15px}@media (min-width:768px){@supports ((position:-webkit-sticky) or (position:sticky)){.bd-links{max-height:calc(100vh - 9rem);overflow-y:auto}}}@media (min-width:768px){.bd-links{display:block!important}}.bd-search{position:relative;padding:1rem 15px;margin-right:-15px;margin-left:-15px;border-bottom:1px solid rgba(0,0,0,.05)}.bd-search .form-control:focus{border-color:#7952b3;box-shadow:0 0 0 3px rgba(121,82,179,.25)}.bd-search-docs-toggle{line-height:1;color:#212529}.bd-sidenav{display:none}.bd-toc-link{display:block;padding:.25rem 1.5rem;font-weight:600;color:rgba(0,0,0,.65)}.bd-toc-link:hover{color:rgba(0,0,0,.85);text-decoration:none}.bd-toc-item.active{margin-bottom:1rem}.bd-toc-item.active:not(:first-child){margin-top:1rem}.bd-toc-item.active>.bd-toc-link{color:rgba(0,0,0,.85)}.bd-toc-item.active>.bd-toc-link:hover{background-color:transparent}.bd-toc-item.active>.bd-sidenav{display:block}.bd-sidebar .nav>li>a{display:block;padding:.25rem 1.5rem;font-size:90%;color:rgba(0,0,0,.65)}.bd-sidebar .nav>li>a:hover{color:rgba(0,0,0,.85);text-decoration:none;background-color:transparent}.bd-sidebar .nav>.active:hover>a,.bd-sidebar .nav>.active>a{font-weight:600;color:rgba(0,0,0,.85);background-color:transparent}.bd-footer{font-size:.875rem;text-align:center;background-color:#f7f7f7}.bd-footer a{font-weight:600;color:#495057}.bd-footer a:focus,.bd-footer a:hover{color:#007bff}.bd-footer p{margin-bottom:0}@media (min-width:576px){.bd-footer{text-align:left}}.bd-footer-links{padding-left:0;margin-bottom:1rem}.bd-footer-links li{display:inline-block}.bd-footer-links li+li{margin-left:1rem}.bd-example-row .row>.col,.bd-example-row .row>[class^=col-]{padding-top:.75rem;padding-bottom:.75rem;background-color:rgba(86,61,124,.15);border:1px solid rgba(86,61,124,.2)}.bd-example-row .row+.row{margin-top:1rem}.bd-example-row .flex-items-bottom,.bd-example-row .flex-items-middle,.bd-example-row .flex-items-top{min-height:6rem;background-color:rgba(255,0,0,.1)}.bd-example-row-flex-cols .row{min-height:10rem;background-color:rgba(255,0,0,.1)}.bd-highlight{background-color:rgba(86,61,124,.15);border:1px solid rgba(86,61,124,.15)}.example-container{width:800px;width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.example-row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.example-content-main{position:relative;width:100%;padding-right:15px;padding-left:15px}@media (min-width:576px){.example-content-main{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}}@media (min-width:992px){.example-content-main{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}}.example-content-secondary{position:relative;width:100%;padding-right:15px;padding-left:15px}@media (min-width:576px){.example-content-secondary{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}}@media (min-width:992px){.example-content-secondary{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}}.bd-example-container{min-width:16rem;max-width:25rem;margin-right:auto;margin-left:auto}.bd-example-container-header{height:3rem;margin-bottom:.5rem;background-color:#fff;border-radius:.25rem}.bd-example-container-sidebar{float:right;width:4rem;height:8rem;background-color:#80bdff;border-radius:.25rem}.bd-example-container-body{height:8rem;margin-right:4.5rem;background-color:#957bbe;border-radius:.25rem}.bd-example-container-fluid{max-width:none}.bd-example{position:relative;padding:1rem;margin:1rem -15px 0;border:solid #f8f9fa;border-width:.2rem 0 0}.bd-example::after{display:block;clear:both;content:""}@media (min-width:576px){.bd-example{padding:1.5rem;margin-right:0;margin-left:0;border-width:.2rem}}.bd-example+.clipboard+.highlight,.bd-example+.highlight{margin-top:0}.bd-example+p{margin-top:2rem}.bd-example .pos-f-t{position:relative;margin:-1rem}@media (min-width:576px){.bd-example .pos-f-t{margin:-1.5rem}}.bd-example .custom-file-input:lang(es)~.custom-file-label::after{content:"Elegir"}.bd-example>.form-control+.form-control{margin-top:.5rem}.bd-example>.alert+.alert,.bd-example>.nav+.nav,.bd-example>.navbar+.navbar,.bd-example>.progress+.btn,.bd-example>.progress+.progress{margin-top:1rem}.bd-example>.dropdown-menu:first-child{position:static;display:block}.bd-example>.form-group:last-child{margin-bottom:0}.bd-example>.close{float:none}.bd-example-type .table td{padding:1rem 0;border-color:#eee}.bd-example-type .table tr:first-child td{border-top:0}.bd-example-type h1,.bd-example-type h2,.bd-example-type h3,.bd-example-type h4,.bd-example-type h5,.bd-example-type h6{margin-top:0;margin-bottom:0}.bd-example-bg-classes p{padding:1rem}.bd-example>img+img,.bd-example>svg+svg{margin-left:.5rem}.bd-example>.btn,.bd-example>.btn-group{margin-top:.25rem;margin-bottom:.25rem}.bd-example>.btn-toolbar+.btn-toolbar{margin-top:.5rem}.bd-example-control-sizing input[type=text]+input[type=text],.bd-example-control-sizing select{margin-top:.5rem}.bd-example-form .input-group{margin-bottom:.5rem}.bd-example>textarea.form-control{resize:vertical}.bd-example>.list-group{max-width:400px}.bd-example>[class*=list-group-horizontal]{max-width:100%}.bd-example .fixed-top,.bd-example .sticky-top{position:static;margin:-1rem -1rem 1rem}.bd-example .fixed-bottom{position:static;margin:1rem -1rem -1rem}@media (min-width:576px){.bd-example .fixed-top,.bd-example .sticky-top{margin:-1.5rem -1.5rem 1rem}.bd-example .fixed-bottom{margin:1rem -1.5rem -1.5rem}}.bd-example .pagination{margin-top:.5rem;margin-bottom:.5rem}.modal{z-index:1072}.modal .popover,.modal .tooltip{z-index:1073}.modal-backdrop{z-index:1071}.bd-example-modal{background-color:#fafafa}.bd-example-modal .modal{position:relative;top:auto;right:auto;bottom:auto;left:auto;z-index:1;display:block}.bd-example-modal .modal-dialog{left:auto;margin-right:auto;margin-left:auto}.bd-example-tabs .nav-tabs{margin-bottom:1rem}.bd-example-popover-static{padding-bottom:1.5rem;background-color:#f9f9f9}.bd-example-popover-static .popover{position:relative;display:block;float:left;width:260px;margin:1.25rem}.tooltip-demo a{white-space:nowrap}.bd-example-tooltip-static .tooltip{position:relative;display:inline-block;margin:10px 20px;opacity:1}.scrollspy-example{position:relative;height:200px;margin-top:.5rem;overflow:auto}.scrollspy-example-2{position:relative;height:350px;overflow:auto}.bd-example-border-utils [class^=border]{display:inline-block;width:5rem;height:5rem;margin:.25rem;background-color:#f5f5f5}.bd-example-border-utils-0 [class^=border]{border:1px solid #dee2e6}.highlight{padding:1rem;margin-top:1rem;margin-bottom:1rem;background-color:#f8f9fa;-ms-overflow-style:-ms-autohiding-scrollbar}@media (min-width:576px){.highlight{padding:1.5rem}}.bd-content .highlight{margin-right:-15px;margin-left:-15px}@media (min-width:576px){.bd-content .highlight{margin-right:0;margin-left:0}}.highlight pre{padding:0;margin-top:0;margin-bottom:0;background-color:transparent;border:0}.highlight pre code{font-size:inherit;color:#212529}.btn-bd-primary{font-weight:600;color:#7952b3;border-color:#7952b3}.btn-bd-primary:active,.btn-bd-primary:hover{color:#fff;background-color:#7952b3;border-color:#7952b3}.btn-bd-primary:focus{box-shadow:0 0 0 3px rgba(121,82,179,.25)}.btn-bd-download{font-weight:600;color:#ffe484;border-color:#ffe484}.btn-bd-download:active,.btn-bd-download:hover{color:#2a2730;background-color:#ffe484;border-color:#ffe484}.btn-bd-download:focus{box-shadow:0 0 0 3px rgba(255,228,132,.25)}.bd-callout{padding:1.25rem;margin-top:1.25rem;margin-bottom:1.25rem;border:1px solid #eee;border-left-width:.25rem;border-radius:.25rem}.bd-callout h4{margin-top:0;margin-bottom:.25rem}.bd-callout p:last-child{margin-bottom:0}.bd-callout code{border-radius:.25rem}.bd-callout+.bd-callout{margin-top:-.25rem}.bd-callout-info{border-left-color:#5bc0de}.bd-callout-info h4{color:#5bc0de}.bd-callout-warning{border-left-color:#f0ad4e}.bd-callout-warning h4{color:#f0ad4e}.bd-callout-danger{border-left-color:#d9534f}.bd-callout-danger h4{color:#d9534f}.bd-browser-bugs td p{margin-bottom:0}.bd-browser-bugs th:first-child{width:18%}.bd-brand-logos{display:table;width:100%;margin-bottom:1rem;overflow:hidden;color:#563d7c;background-color:#f9f9f9;border-radius:.25rem}.bd-brand-logos .inverse{color:#fff;background-color:#563d7c}.bd-brand-item{padding:4rem 0;text-align:center}.bd-brand-item+.bd-brand-item{border-top:1px solid #fff}.bd-brand-item h1,.bd-brand-item h3{margin-top:0;margin-bottom:0}@media (min-width:768px){.bd-brand-item{display:table-cell;width:1%}.bd-brand-item+.bd-brand-item{border-top:0;border-left:1px solid #fff}.bd-brand-item h1{font-size:4rem}}@media (min-width:768px) and (max-width:1200px){.bd-brand-item h1{font-size:calc(1.525rem + 3.3vw)}}.color-swatches{margin:0 -5px;overflow:hidden}.color-swatches .bd-purple{background-color:#563d7c}.color-swatches .bd-purple-light{background-color:#cbbde2}.color-swatches .bd-purple-lighter{background-color:#e5e1ea}.color-swatches .bd-gray{background-color:#f9f9f9}.color-swatch{float:left;width:4rem;height:4rem;margin-right:.25rem;margin-left:.25rem;border-radius:.25rem}@media (min-width:768px){.color-swatch{width:6rem;height:6rem}}.swatch-blue{color:#fff;background-color:#007bff}.swatch-indigo{color:#fff;background-color:#6610f2}.swatch-purple{color:#fff;background-color:#6f42c1}.swatch-pink{color:#fff;background-color:#e83e8c}.swatch-red{color:#fff;background-color:#dc3545}.swatch-orange{color:#212529;background-color:#fd7e14}.swatch-yellow{color:#212529;background-color:#ffc107}.swatch-green{color:#fff;background-color:#28a745}.swatch-teal{color:#fff;background-color:#20c997}.swatch-cyan{color:#fff;background-color:#17a2b8}.swatch-white{color:#212529;background-color:#fff}.swatch-gray{color:#fff;background-color:#6c757d}.swatch-gray-dark{color:#fff;background-color:#343a40}.swatch-primary{color:#fff;background-color:#007bff}.swatch-secondary{color:#fff;background-color:#6c757d}.swatch-success{color:#fff;background-color:#28a745}.swatch-info{color:#fff;background-color:#17a2b8}.swatch-warning{color:#212529;background-color:#ffc107}.swatch-danger{color:#fff;background-color:#dc3545}.swatch-light{color:#212529;background-color:#f8f9fa}.swatch-dark{color:#fff;background-color:#343a40}.swatch-100{color:#212529;background-color:#f8f9fa}.swatch-200{color:#212529;background-color:#e9ecef}.swatch-300{color:#212529;background-color:#dee2e6}.swatch-400{color:#212529;background-color:#ced4da}.swatch-500{color:#212529;background-color:#adb5bd}.swatch-600{color:#fff;background-color:#6c757d}.swatch-700{color:#fff;background-color:#495057}.swatch-800{color:#fff;background-color:#343a40}.swatch-900{color:#fff;background-color:#212529}.bd-clipboard{position:relative;display:none;float:right}.bd-clipboard+.highlight{margin-top:0}@media (min-width:768px){.bd-clipboard{display:block}}.btn-clipboard{position:absolute;top:.5rem;right:.5rem;z-index:10;display:block;padding:.25rem .5rem;font-size:75%;color:#818a91;background-color:transparent;border:0;border-radius:.25rem}.btn-clipboard:hover{color:#fff;background-color:#027de7}.bd-placeholder-img{font-size:1.125rem;text-anchor:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.bd-placeholder-img-lg{font-size:3.5rem}@media (max-width:1200px){.bd-placeholder-img-lg{font-size:calc(1.475rem + 2.7vw)}}.hll{background-color:#ffc}.c{color:#999}.k{color:#069}.o{color:#555}.cm{color:#999}.cp{color:#099}.c1{color:#999}.cs{color:#999}.gd{background-color:#fcc;border:1px solid #c00}.ge{font-style:italic}.gr{color:red}.gh{color:#030}.gi{background-color:#cfc;border:1px solid #0c0}.go{color:#aaa}.gp{color:#009}.gu{color:#030}.gt{color:#9c6}.kc{color:#069}.kd{color:#069}.kn{color:#069}.kp{color:#069}.kr{color:#069}.kt{color:#078}.m{color:#f60}.s{color:#d44950}.na{color:#4f9fcf}.nb{color:#366}.nc{color:#0a8}.no{color:#360}.nd{color:#99f}.ni{color:#999}.ne{color:#c00}.nf{color:#c0f}.nl{color:#99f}.nn{color:#0cf}.nt{color:#2f6f9f}.nv{color:#033}.ow{color:#000}.w{color:#bbb}.mf{color:#f60}.mh{color:#f60}.mi{color:#f60}.mo{color:#f60}.sb{color:#c30}.sc{color:#c30}.sd{font-style:italic;color:#c30}.s2{color:#c30}.se{color:#c30}.sh{color:#c30}.si{color:#a00}.sx{color:#c30}.sr{color:#3aa}.s1{color:#c30}.ss{color:#fc3}.bp{color:#366}.vc{color:#033}.vg{color:#033}.vi{color:#033}.il{color:#f60}.css .nt+.nt,.css .o,.css .o+.nt{color:#999}.language-bash::before,.language-sh::before{color:#009;content:"$ ";-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.language-powershell::before{color:#009;content:"PM> ";-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.anchorjs-link{font-weight:400;color:rgba(0,123,255,.5);transition:color .15s ease-in-out,opacity .15s ease-in-out}@media (prefers-reduced-motion:reduce){.anchorjs-link{transition:none}}.anchorjs-link:hover{color:#007bff;text-decoration:none}.algolia-autocomplete{display:block!important;-ms-flex:1;flex:1}.algolia-autocomplete .ds-dropdown-menu{width:100%;min-width:0!important;max-width:none!important;padding:.75rem 0!important;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .5rem 1rem rgba(0,0,0,.175)}@media (min-width:768px){.algolia-autocomplete .ds-dropdown-menu{width:175%}}.algolia-autocomplete .ds-dropdown-menu::before{display:none!important}.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-]{padding:0!important;overflow:visible!important;background-color:transparent!important;border:0!important}.algolia-autocomplete .ds-dropdown-menu .ds-suggestions{margin-top:0!important}.algolia-autocomplete .algolia-docsearch-suggestion{padding:0!important;overflow:visible!important}.algolia-autocomplete .algolia-docsearch-suggestion--category-header{padding:.125rem 1rem!important;margin-top:0!important;font-size:.875rem!important;font-weight:600!important;color:#7952b3!important;border-bottom:0!important}.algolia-autocomplete .algolia-docsearch-suggestion--wrapper{float:none!important;padding-top:0!important}.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column{float:none!important;width:auto!important;padding:0!important;text-align:left!important}.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-inline{display:block!important;font-size:.875rem;color:#495057}.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-inline::after{padding:0 .25rem;content:"/"}.algolia-autocomplete .algolia-docsearch-suggestion--content{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;float:none!important;width:100%!important;padding:.25rem 1rem!important}.algolia-autocomplete .algolia-docsearch-suggestion--content::before{display:none!important}.algolia-autocomplete .ds-suggestion:not(:first-child) .algolia-docsearch-suggestion--category-header{padding-top:.75rem!important;margin-top:.75rem!important;border-top:1px solid rgba(0,0,0,.1)}.algolia-autocomplete .ds-suggestion .algolia-docsearch-suggestion--subcategory-column{display:none!important}.algolia-autocomplete .algolia-docsearch-suggestion--title{display:block;margin-bottom:0!important;font-size:.875rem!important;font-weight:400!important}.algolia-autocomplete .algolia-docsearch-suggestion--text{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%;padding:.2rem 0;font-size:.8125rem!important;font-weight:400;line-height:1.25!important;color:#6c757d}.algolia-autocomplete .algolia-docsearch-footer{float:none!important;width:auto!important;height:auto!important;padding:.75rem 1rem 0;font-size:.75rem!important;line-height:1!important;color:#767676!important;border-top:1px solid rgba(0,0,0,.1)}.algolia-autocomplete .algolia-docsearch-footer--logo{display:inline!important;overflow:visible!important;color:inherit!important;text-indent:0!important;background:0 0!important}.algolia-autocomplete .algolia-docsearch-suggestion--highlight{color:#5f2dab;background-color:rgba(154,132,187,.12)}.algolia-autocomplete .algolia-docsearch-suggestion--text .algolia-docsearch-suggestion--highlight{box-shadow:inset 0 -2px 0 0 rgba(95,45,171,.5)!important}.algolia-autocomplete .ds-suggestion.ds-cursor .algolia-docsearch-suggestion--content{background-color:rgba(208,189,236,.15)!important} +/*# sourceMappingURL=docs.min.css.map */ \ No newline at end of file diff --git a/docs/4.3/assets/css/docs.min.css.map b/docs/4.3/assets/css/docs.min.css.map new file mode 100644 index 0000000000000000000000000000000000000000..c1b192f2502dbbb551916bd5cc38b4378ba3a0c6 GIT binary patch literal 83845 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/bootstrap-themes.png b/docs/4.3/assets/img/bootstrap-themes.png new file mode 100644 index 0000000000000000000000000000000000000000..15f33f3f7bc7bf803323c4003f32186e3c5332c7 GIT binary patch literal 28187 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%0DBOg_5DXZ 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 SSl|Ny0000<MNUMnLSTZg-Js$C literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/bootstrap-themes@2x.png b/docs/4.3/assets/img/bootstrap-themes@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..3876a18ee3357754d5439d80abe25c7d30f7a02d GIT binary patch literal 80588 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 CxM<n{ literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/album.png b/docs/4.3/assets/img/examples/album.png new file mode 100644 index 0000000000000000000000000000000000000000..694b3b2d203c2908ff79469f63c976e0259c2a7d GIT binary patch literal 21740 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 U+C8=em;e9(07*qoM6N<$g4s%LzW@LL literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/album@2x.png b/docs/4.3/assets/img/examples/album@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..162269c4618d8d3caedc3b9695d503d89f470d56 GIT binary patch literal 26370 zcmd?QWmKHO(=RwPxVt+94elN+KyZRP1b25EED(Y_!QCym4;~yskf4LRyD#~__nvd# z-Me3QKi*T*eNIo;(_P(F)%AO-XTGT@$)F(<BLe^cv`?~9p8)_E2mk=mMud6$=7(G$ z*IVO3MM3=|x1bo8zz1F-F(EN&5eXUbk8%Pc670Of%$)p6YTBjcl|Snn^9qXmgF@3Y zvQpB1L`KDoPfq=roh>P=*xcG`XlyDjE&nw<qM)ocI6S7MYxu?7>i5ha==#R~{{GVP zDjgH6nwIY2;nCLi&Sy=XhlhvP*VnuIhxvuSGjj_%2F8r6Tx{I@gTIEGTieVmZLDk^ zq(3QISlijyJ55dhj*U<3>mPV|dC@gAb#QhKi--&Whq$<Vx_SCc|DFj6i`d@T-P=Ft z>FaN7ZaF<YGd8ujxw(0Ke0+X>zP`Tp@b)`9J3l+W$jHhW8=ttpzdtxQ%*`)+dU_5F z4hxTr>geq18Tj={Q6(`Yb$N9yJ2!v-;IO);Zew$EWOU5Q)q{$b(azDiyt4Y`_0=~Z zsJo|kZhn4oY58q}pwO=ehet}EHSX^23W`eR|1PaU*U!(-qhjN0>*_13YL1SN)wT5& z{{FqZyc!vsz#}44QP<)T5b5lOkWkR5YG}WSesy(qe0*|pa(a7vyR*B0adDBEoqKzC zr)Ts<N8iXlFepATd0=n|1DEjT_SVbSzqP%?$3IZd&}4OO?e^~8(8TQO`bJYn|Kahm zsJQg};_~M9?(y--z}WQV<ux<EG$kuPBd?^mqPC`?rKIX-)z9X_vTEqYR(?rUQ(ISC zS8shwM_p4}O9$lc{ysV>V`O4_^7m|Hd}?BPPI5+Gd|LLx(n?%v*6hOK_|!~xVcEvk z_Vl0mirU6sqZ5}`*I%QPI(z!lvJ1y1e-DpM{>Ux5zPWvPcpMxV&n>PfuW1PW7S}g4 z(%m=c9~R{a4!3mncJT@Rd-&SF`Z~7tdUpGI_wZy^{tEB^3h;Ub_`Gt*zuLO_S-bc+ zdIsi<z5+a60lu#vQeVv-Jnh{5o$FpnzrLPazcPG(Rn2?VDSEYW_1!vq#Rz)sTzqX= zcm=q=%4WXyuDsUFye192+PeFfOuqWJyhe1r0vunTpI<d}^sjDiFRyQ`zU&zT0H%GP zq{P*|fJZZRKrlNZfZeL+RoTNu1z`?-7z1hb&07G!Q~}|-?eM+>@!;7;gjp?8#9!s4 z$1yO#zgkh62$bxU>}M#M6z45}8+S#9gDAn9D<Rdyw&Nx%_JX!cyN&jGr-20n!aWur z${aJFp1<2;vKy!1M)|LRlPf}Jc!Bar<TaDKo*{mYgn$ba#&>=}KZy`X5x<Hee$Dz# z4h-qrj*&90`{`054`ztNOU9Fs&~R7KRQDBQx3~sZ*vNU2_TmF2?G5}T3*M6}zf-$T z9?+!9%5$^^!}^EQadHP^#${0Lq=4hr%*F(P@(i>`Shatbe=p8e3)=L|{9VM8j1O7) zBe{ZTT^>@s+Vv778aJ4W@Mo&Fz@oOC%T7$MMG<-Mj^%1MI9@ecW4i7fiT)t+6RtOn z+RO)ODJp2rZ1>(R#c>JH?e)3D!pb9Nhk&!8#SD3{5}SSD5*gKC6!CpUb>kqBl%uz( zF+0AN+hu-GE0{*zpk9f@B~g01Gg+M~l5nX(jU?ZIk+5D4k|iI6k@7X!AEbHht6QVh zXA2?BH*U|75DbJX)~xd2)ZlUihTmfBv7ZRoVC%EjD?rGGXm9Lr*)tm$ZX+nZ1LcPp zRoSM?m|>U0H;$IMBncM%(^0&1ZWFaiV)IGaH}$OE!)A(BC?B_(a~P)?3ZpQy95de- zY&+&XPkCgyRnJgevBkJTqTYNEQ3_$BRKqg-Pig0Us<yWHp>q`5lp@|rFJttY!Ax=W z_>_{(iQ)K^q+e{4d+-Fm@t_t|*@FB;_`xq$S-Gon7Xep?iv<aDY93qPHa%Y4=x|f2 zIf32p_e{6b9-+g&RDn5C{Sd#gMHX1ZpVpA{22s1M9iy{GI(bYcx)m;$aeB-FjMPd- z2fz*3a*~CO7aB}62Z^F5Yd4M7Bw@eSdm<2H!8(%;l_=pIAR%iV!Mcc{AWbP4bKQdA zf&l6oS~aVyI{MHUCq6&X1-`r9i`VglEU_X|uBev<PbI_&Bw%135Eudm*8haOhOcOG z9--^mHvDz~G$jv>1Hi3)Hb4`>EOITxy-l<_T`}1*>$a0tCb4-QMY+5yxZAc!fFfHF zwhN<mUKwm0zT7a?u0DJjNQ`JJQ!)dg2wRN2A@6wm0ASD7Fbk51vQGvRN><|6lCo18 zi$TC(@wWm5!hqoa6<E}N1(6Vw{a^XV@c*3&k?{Y0q)V4;Vg%*X@h4X-zM~x$8Q3x6 zlbhAp4P#Ex*mE;K3cjPwOI~W@xig-OtmJJleFnyz9t30|5{od8Q39$?0N>x6PqJn% zj^G2LCZ*B`vK|Jyl3|ffPSh7dl|YRs^=LDBSrUCCRHV$;H~EJb-CdqO<V47g@w>Zx z*sYuo<8_cMqQ52}-k0|<yyOvw>i4|L@XPa8VJ|iAwj}mtUr?LEjSrrBdBAyIGsupg zShm=r0Ly_-B8zf??@MpD*Ce_fu~~2QiQyJl_of|RyQon~M9xR)L0z-zwFAC{bjGHY z!uO%f&d*g~ddmr&&kxyOgDlM_`*Pjxn+QdGPjno`Mt&0a*5xMk?AZM7)gfmr(i3U= zN%%uT2j!}%_ufQa?r}gP`Q~8xm%RMQfL}EWLXpB?uUK|XzRN@c=RK1<Gc?6TZzL*J ztt0Vm9mr;|OjWI$Km@~fd`kpV^4$!Mh4YW@kj#1}LNtwIpPbdB2AEVIn3-=Dsa)gn z(*||??R@Qf3Q-bOd!W*@d)D4#aA!{1T4U8xoC}3pm<7&b)9ZQwJ6m0*n;|euGn(Gb z{7mjonQ{?KcIxoX;=K>n3e*4<r#7BGK#b?{?hcXEM*z7p6AuZ`Nr&HnufTln`zK>% z=}r`g38xcE1G8m5am(Cs5&$b6$!!$>j>Bdi?6dbVP5sw{HICQ2g1m5uXAcx!s?y37 znJ~xIB^Jb5E9noQ&F@T}d7Fh}1IYj;ascKxkS}7^CW+|1&#^k>f@ef$mvN+_KK!PC zS4Sf7ycqh4L3=p&7Yu8QuQ(%yLOk-YA9(KLtiajl28hVIcks_`IrKc3E*i&zDb~$Q zi!^XF4;D<?Rcd%FT&7q>>UkniCM1zz<$`IX!xg9MV~50HG8{zXuXd8YB5*yP<4W>| zim~R<GD%toe9@?ea+^u08{Sd@LynwMu!5&7FwPDnIliG9kvB-pmRLfu5}1INfjb$K z3?7A&#@rzF)XgQI1lFi-0AGG5o|7#;>%sB(esj0|n#3m<`P;!jjL{FL)=HcNSIZ3o z_w&Rr@%N?diEHGWc3I(%ugkmN-$r!I>_XmU_Qt|JF_4}8Y>1V;rYJC%={xYq9{O1& zHig`QcP5#Xzy};9Z<zn0gYdMdl<3Jn@Fo^5b;E<S21H0n5GpFxoP2i$Hu_e1`I?L2 znF0D~LuzcL!98a5ydm+i{rLraISt?cp6ty2Z*ssI%iHcd|6X9z#L^AdmPcTAEO{k0 z9wK|j3(FBDJ+qvk9J2q~QSYNa>1>!cb^QX)QfOGq^d>ut5(#<}e3gxrWXdYR^LK{! z1UGWQG~{Es<nWs6=WGZ9Ow6c5!yOdcNg17;-WDwVh*{*m;u8pQwc0h)M|cXKPn0lW zy2R{*waaWc!Y$xvBWy_{4@z{-O4$Pue`Jx%8@n@xtk)d*CDCU?@hiV6?Opn&=IW*7 zn=Mjk!yv$`%x#HlBPfiu21_*01i#6mM0idY&Y!TElnW!e`$*TC^5r6kOc)m4%*8&j zh}rQzT*mkZbKo)E>~1%<k!1HM7m`^dqCSE7xn_!mWZx-S5RGPkj=;oD0XP{$5L(2U z-Y#J~Ei!#a{}pM0-(>PH?XgOV#${q=@NQ6*{}RD9iV>rn0<zYx9A{4nC5{94B9%5N zQrh(~S2GB$zB#$|Zj(#566&5pmiS<C5t;54y}VFAh%r?QVVM#`^=Ianh+k|j$7X+M zgM9(hQCPWq1o2pCI{E%c|Jf1zd(iKnDLGEA-Z<EGHo6|KHeR|xnv3^Z2A3>0sY65= z<J0%EO3HctG;oFX=Hvbv^BsUIcR%=%fta;HW8>Rgs*>Qw4m@dBiy;-x%O=$y)N5s6 z6syQ5b%F{hZ_En#((0_c!;)XNQLlSoG)XwSG%y-Y?RgFQ0=wY0chu`|Fq-M#SF*uC zYsl9+0iKc9&h9#81kgXQ7QA<BSV)RZi1|ja@c$?X_#YBC{*mQttN3n(g!e@tln<8L zFi%uGiz(DfHa8C-E}WStjV~xBiEe*s_De@e6S3!4X^Ks&yoQdAj_!|^XyRk<9LFoV z2Zh^%6$Q^4o<oDPKc`!4xBm0+!*E^+I4_|L&v)P0;-mokhk8ad&m$CxFIPR-Ytl)g zofjYCacVb(vxd!9{8rXLp{{_4i&d@Dgk80u_g(pzFohfEsZDag`_P)R_n*3qKU_ba zF~~f{yQqI=y^rvs!Y)5cw@MCFU)qkHHC^u9QN9x~GIZt#zLv^s$ba(LOse^e?nDB3 z!foGrFQ+KFJ${L|&p_FTZM10fJx|LoZ0ISSjR6IqF0`Ef=|y%TVeC-(;Ix>3|C~sE zoq~}!urjI8XhV4qPt-)i=?MoY<iiAh59}1zle${fOG*0OD4ENRD86Ung-JnXy(xdT zs{f!w*M<;*nqOuJfbi8i?kS$~9OCm&T@mH;ah#!%^wL1$c?3evmdNJOoyuY@<w)Y9 zVEf^P#3%)0fn2tJtqTM1S7avOJ&+?Nmjap*odoA%&Ivy>Bba!#vch-w15fRjwQs<# z1*ZYr6GuHn>@$rx#+MzbB{=DbHI$B@s%-mL#4#wj*QjzoD8``oWxPj+zQaoQ1Oa?r zbZ1V%ckdpEBSCj`y)@_V`Y|Y724(!39U6&;OfmfImi02U_;cJoLp!6|{4%$=+CMnk z=*)N5knT!TMT~piQz=1W3Z$Lj#YEJ!B4fYQYoFj(%yyg`{i#oGV75_~cWjxi+0~Wd zrV(-1F)|ZDjCL`x)(2!M)J|P{<tXDuOXgd&8cTty+}ulExjR7ARk}JXsw8*^2a%g| zKQkTeVMGh&suT|IzRL}0yIOSFg;`}a<xnJOyyI?MHi~%%vDK_7ziq5LN+l5tl4#3j zVV?l*FF4S=2OLZ5#*O)DI9$n^ZI$bQyiBh~Et2YV3@s8ez!)&{McFzu+wIrZI>cQS z<R~AhrA>URjV75tLU>cQ^)Iu<>kZY(8Ii~IuAi=4v}M#UbEWQoQ8NiMv_D36@Y(@t z7`4X9G^IsSv!@OIj6^p%mQOg7X#9<cGyGGI(S9B;XuN>NYD4{@7ij@&vK-|&KH(l2 zmjI1~_<fpmr<yS_bt2^pD`+HBq3|{-bf?;AC1^bnfgvXEh3<tFXrRa`&#u)kjp$<y zxZ+T_xWYU8@ueGebxk4ztnAS)Ht4JJwYj*VQu4H!aM1d3AAj0yjdw%E9u{1O_C7s4 zm8RT?@LNQ>fe=Qa<dr)hMeq?rurhUP2y+A;`~}k^<<m9VACwI6?KNp(l<9kv*pa%m zxZ3Z``YN1io6^X!Z3u|nA9IZYZ1sCw#Oe~&WAij`-2aleJHDg{JaHQ*VH)CeNQ#Z= zVph@qQDgYS!DQ^7{s+;`vuDHv)nwURg(jB{QN8Al<IOT)Y!^H9w19aLb<N*`i@J!> zc0zXIiZL8<O0|AT$*CDze?&D_?u4;(H3&9@XQ-hef|k15kV@K(3}&2{mrmvMg*iKh z1}XUBoLP%JKf$_AR6)!6l%f%*P)#zW3BcGZ!lU+b04$c4Uj+`;H?x|M@+V)2HyZfK z>yd<i@%a<k#BNVG(NS{%5H!t-Y3%^Ix%xh-Y~O%FOc^;}C4Zz3=|JFIKgUiR1c;#Y zw~@JXQZRT&PAg%Z#T4#uo6+9N4d@j;iVJ>@`fcx;JaPC5tagcvXyu*DZQcfRj#>>W ziJtW{v}R`t^6Z!UI`V6~ZyokY(t-d$<8OeFkMaYn3Al84r9D#_afj`+;}7|(2<bv~ zvM>Zn&3!-8yXA%6A-33Mabv6^R7MB;=;VC>%hOoD10TJ@>T6`@<mP<*aa~uGO=t;m z!>I)^9BbqAJAMKm-qSS-TY%EqP+*J=A0;4FsbGSjLAjX*D`eI&8h|)(BFY|ezdfq9 zw&Mn90+x))8y_@2oWd9aIvZAf?y;9~mpstVc;c7BTFBp);Cy=TYZ&_ziEuh)9O(2# z6omQ!_LcHL=*R%alHe$kG^Yn3re!^pvaLITUVt|sO51R0v8oFy<IXBTp2)P<r4D4% zp9i>@h)`QCHocJn4u3r0XeeRal!T;{A$l|en@^IEGP_XhK}s=~VnPCy;v4I;5+O#b z1FHzj-b?&p#x#I@XY^!J3>;Zr2ZWEgR*f^1JYTk002hKw;C3@pN@VH?HDJPF!~-(7 zImuZYyi`qyys?*y^{O!eQRBK)=gcYsv+zo9EyXZkS0pkkB0X4x+&3MCbSsIULQiV{ z>)FSiibzT#q1tAbW>D=(H-`4$+Hyz*It8eU1g4xoic|@*c4$+MIQ_IIr=D^g>CE)Q zgz#9x0ecT$Li`f!@Csdq9WmF9&q8JMg&lWxGI>E`VEYn`<w+vesKjn+Yon(=Y53#M zlbAaeu^H|KYm0h~4_a!ipA}4k&rZ6gq~s=hA@a?|di9^Q53!gwpZ7op8FDkao@hu6 zxUVOi7o`TNQ<Y9U<xRF~la0FHG;<`>IYqz^zm8P{fmHHKq|NQ-U;~ZAsJWyWved-_ z{**t5eHOIp<SPcm+Xe#94C%?~UAa{@9(2DbG0eVzpQi|d(I~>c=yA!r*>5?x6+L)8 zRwJwNK!$#U!W@M2Y=q#5Aet;aX;WJH;;xRa@{ZrFXd=z`vQ*>7&|A<1qf7r(rRW!o zE^VNO<D7Y3wxo>ClHD1Etuy9(pgjQHCeAA#l1GEDZm<R99`oGlEH`=~8x`ap6 zc9|U?CPW;_rP1<*ZO{`dodCR+e>g*u>V)Qaoz0m!UZGLiq%Olh_NhhO9Ab@zJbG8S zer@Wugz*SXQpsrNqK4|+HhSS68ZXQTeRrqwf{WLsqRVvFnFjB2SX?0Axb116v?1Dw zB7qGV!o|<NCCZ$HKVP$uqCNKb?+wTE^^OX(!mKhFlfiU(C|7@_%Ec@18efXg%zJ@P z8_Ki4MDmR_`%Cwkb?h0?Z{y<Y>iulzJ37M=bg%MGJ+Z(zOUz}=c0R7%IL}4G@!|a| zoe~7y8*nWg$mm=qskjpuE}j)gKyN%mLYrl<dO3gLKJ&Mi<yA;Z>F(AU<dJE3IWIrq z#Q*XE?#PKh6HJCqZyf%1BK(g=I8N=q#@YA4b;Tlp-j@TTJ7VBBM*`XNnmFXM@soE= zpQ!^x>EZ6Q<+dILfI`CLzwYm(Q-NI;Yke|F$N=&gi_xrIn$NFb`S{y++iA*nH{G%% z7bVqCcE=+W%`OAG{qpC1cbu)`C9Lndq$(S}*x`Ag6EKQ${kco?n>e=ZO2nx(Z455X za4aM}<LN`9u<mLHO}*9(XfpT7^k@0E$#kT0PTqwsbZ(6X^Sr26^`%U0Q#6{3-j-)9 zqJOK=S@0{T*p#<8V6-b*k~yHsi4XCs)T2J#e&h!VQSZA&sMg?IfgamNhX%VkFQ{*B zG%er3&(T5+q8+V2psk77;o-I34ANnf__`jZoLQZFB6ix@vnZfp^7VE8tX@d(wO6O+ zoUZ}&XUll$QUEfQb`T1qB07;_;#+w_yd=IODfhqthS3KpiB|RY12BauYAfKytj*=? zu}KG^4hS2pOMMo?8@#C^yrCP@#=;@1dR`iG_zF}2uhW7aY|17r4$x+aH}<<@>wri? zg8^e9Ug3uklt@hEK`_MPnUZ;-=<5;O!rGB*Ia*VVP~eo3ljCYpyRVrjc7&n-odfyx ztg|~@XEHQ=H4jrb{G;P;9_eoT+tPi;iw9&GwTMBtGrhG%Fw3zieLJKydWsFva#i<S zy0+TC#wzLm%DW3P;~S-tyY%1!$V?e56N=`3y?n|>Pxgz9KA|K7lNIqo%qt&fo_{A5 zRH7^q;!8UM%dVw;%kRPUV@@j<kyT$>ml5+a@cw#9t|cucme{~9obJqz^8_zacn}1M zafpm5j{+9|%(7+kh$sZK%cxBK=nJ^HFlU}=Zjb($6kXa{d8J2RSb%9w7m1b%i(5Y{ z*GHYK_Vur>@w55|!0YH4fsy6{Iw1D5D-Vmy-vbqc^HSXK8K%VWqFHZ-uVAh3i{)jT zycO>CXv^x^OqM;nscD9epp-&C9bylIfndaCrSE-yg9B{>W0sa??b|*yk+(`-+9zlJ zZ?4cs)i6gH#elI6X#te;@Ut57<QH<9AdaYG=kA$JL=Z8maNmaHM7QsdXwNg$EbzS3 zzFCkRBB0Vn-bPBs*=zFMKRgN@-QiFl0h?t`cOXpRV!9EVrV*T~Q^0=TDyJmo0(T<6 z8yDMM$LszfN(I9g%>-#cyH5Q0Enu*iH=QV4MbF3qK|Z7E#?hp7#BGTUI5P~Ks_Joo zuR{6Eh0Fd9tR)Q|9*tBbW}`F@1>_*F^T<(jFuB4#u{5UulQ1EzNau}djg%J4fMGhz z1Cc)?Y(Nsvd%^A>SPVvhL+a)3jLb4FhCkL-JqMt|6+e1<W0@lKbn?&)v#nX1>n+oE zFawbz;s@cHVfcQ1Np}gZj#hy0U-^3X7nl60!nR^VAYyGiI*LF{#%Fs#-fXQ&PQ?MS z58Ke=j6DRn34rG6U^;wi#Kt_lDTaKK*VlzwX91k-;VRHRsenJ0Hh~U!098E9J?t$; zQ6q&IU(n`llHaEoN~=;i*3A+DJI79eOCJIFWc=*EVuMUpX4+s|99I(R!6UUb-BE&2 zRor7jT#{<VGAo$tTsoNV43L-n(&w>GZ#eEgNO})H##J%12Zn|zQe}oX8(;-JE=OCQ zlGpqX%qb!z$v@CT18nb^FVv}Hu5bl%cLIVeU>!HT6=UHZT0hZ?<PsI@14EY|!M+(d zLTo^-aKE@4x%92tU}3CF?<%g@&C~K36c6Hu%k$qd!1@m-8TQlszDQp5D4C)N!T}U# zt*X=RvuwC;c@kG+Z5Yaq6Aw1uQ4gM?{&uO^RA1lbzGo_9Dm1STXxjUBa-;i@wkIlM z-Z1p{qvH%PQ)P{s3?S0<-=n#lPj5NWKf0HaGcaZwOJI6=UK3UiOXb-eqA3!kOFpqS zv@3euK)t&L1P6L!dMJf@O$UaT0MHGiRzIX9U^<H3)}ZgxqZC{*OcZP{?jFL5H6`Rm zIXi^6k<tSnF}ptAqrTdFGOp1S&ua06F`0BY1p&L=4#pu1baW%8SBu2&U)TjFG)`xH zNt|o=^(^G-1JD+EsuC3R4VGrT@n_WM!}(8y)OTMj*=Wd@iirUErzcctl0=d+A19wp zAw9HlO-AVfU|+5QA0)G-ikDGLa4i5Ud4moLsRbxV;t=hffbL);Dn4_;VqH3BfIrqS z_SAOYqeUg33o8K{5t3}<eA4>$fTh1EK&yTaqHnQH-rn?zvKpH=<k(LX5IXB_sfsg> zSjpM8`Wq(Qr~QIGw_QPY<fod$>Y%ifiUP1F-oDXp$Ku!8vCL@t;pPDv`+@Vr5;n4H zx2p9##gSoRPNe&s+7hP_xR8zz4;^eUvwDm!#RJSk?TZr8@?@}~wAeDuty=WyT5oO_ zYr9N~7n;>X!$fKAj*aF*R&HK+B@1!Uof^a3KDmrgolMeJ22b>T#^CK(K(p;o*%#RZ zQnH9ipy^wbXT3-yj6LW<UWF~vT`XG>$9_yo#)DyI@ZRI@9XPGE2rgHCub`zY=@gS7 z>wn-R)2NR^$_T@~kkHOR`g!~~NOQehKs}^iAPJSKLV<JtXoU53hiDx83Kd+0z56em z70x2RN0PyR#{{Pc;>}@JZLkn)*IWupY$J{I{-kbNxO4FkXG$XY5s=?#gG3&}>YyKX z9i^s)T&pY|0jW+6`ALcrrtIG0bUah0;S0!jm-l+CQ?Ejb*wo{n%Ts$lM0Eh;r@<%I zpz>)iNCb$9J@z$BNf?&W+C>Dk$}y%%4oMl^UBU`~CDwJ5gcvUARXl)|^04bZPM0qO zdP!OurC39L9>Om-vUfxw);9{@_N{vWEb+WIWFo*a^3I(p2#g)}&@Km<cLx{m;5uzs zU?IoaQVm-p91959&H(3thrNVwdI0JCwsu)Kf69CMTzaZ9n0KS9Z&>(MG+E$vo%Lt) zKL}%l+qLsyIhx=<;Kd2#!T-j9{@)vYNDFVT1|Co0XAyqAZ0D(%BGhldX9z=%1>-I% zFn$Zi9L2a~u(=FzdG$=-l|?<@&uOW1;0+1giGP{wvwYg&$k}TL#B}(PtRXd`=h%)y z<u7{1GS8piriwAzses*3I=EWyM8`5h`LOP<rz_LrNE+%OzPy6)<iidhCUDik#dq?U z<(`4YL2MVo2f9K(tFF{4l-up`g$nO$UeW@V->-ypy9sKOB_37W)a(w=(>glQA@>lD z>E2Rd$hKqu6SrAtv@)bBdqM7m*G95_k)nwSw{7&gf$bss@rkr!5Upc^0DcB450S8N z<QxCFWE5)#77M65Vf`o%97ePqcc=0dux0*QBDNaIlf(-Vu0OG4tDar1o#Pi`;D!IN zeO2+5Q(@=ga6eAxu-aCV83*!j13XOO@|&#QEunpznqe_XG{4j;)Rg63Jt@vJ1SX)x z&rrd!{17Nuq2&X06Tw_DvttVnvh}yg4AQF4zaUTmMmgk3p#3eux@YHQuwhgZ=ob$a zC45%$n9-dTa|MR5-UFUaZ?+u6CI3vkF93z}l5uj3xW`i=|MJ9aj=jNv3j1KK1-muY z$H4|9*cG!!!`*?%Nt09B77a2HGBd>v4x9paS->|Ioh^>5LGsdU5{BLEH#$r`#<f(- z4GwHk&DlFhYyUuP%QT9G-ZK0VdC$Hpgf-W&hrhV%f^`9LHp6{Oq53D9*H3%W6dZ^K zWz$&{`ciS#VUwqYegLVHWj*-^PF7LmyGVWU`Rj?LrMakJypeN}f2zMh*ESGE=SMRW zWCP~B*Fb|Bqt2t1<=$sJ&_Us*>|kKvw4=ON&{#ha0{Jmk0ucFc0|7UvSRHkJlOV%+ z!1EO?RJ)7v>_210l{e4esEX_t=2?n;#xpOl+igoQ5`mUDY!X8k2~RXHnYE6}I&YG; zFXQvE0XOw<c~kzOvw^1)BDNS~St!@o;Ehl@SA^Wmrd<o`VneZ7<x>-8{3?{|$iJne zRpzG_2T}7xv#x4F|E1Ow7oNz{(;Ro`ANbe-7v^6TGN1>%KdyGmHMXu8?Yk<G*@#<i zdLH+{1<%=?SjavT9AaZztc-2@EV^smoJl+RplK0=M4}-)$m5;)C%YGlInjVojGs~5 zEkpmzreurGjw+km^DZHOpgS$i>i(aWU#zP!^`xY2yR7gwjmDPTo<H2||H$nHpaP7s z%pR?RrE-BJSP?<2zm$-duUqw^=&1s_51mv^K#Aa$MA^|3rGNMGani<OZ}cx0{J+Tu ziy3zXCfq&}yuUrncpMf)F2_xK)$NS$usGzSMmJi_3U$wE3O;}>o_9q5JVim?KX7c7 z*>JPRQ>tW4_bg8QV@Bu5zhUSbi2+;~S`>s&91cXo{taH*I0#PK7`9pr3is&oXQl}c z4shprrb5+-jjjBM;$K=UdPIbDOmPK#>E*TWE?}feip#}BkWd4JNzhvb`=hNU94>4L z&fnM>W%7UektTY~uk@IdoT_R+B7z;h={gaHa5bD@S}Qnwj+c#$Rl(FX#6))sGZ**b zKGqh{tx@O<NrZw0plxah?d7IJF$RuI>XRP&!p@>({0=&IqL4QAg~Y#FcAVnIMgtZ5 zKQfcJ(bHgd!1TQiw*4y4df!V!OBX6kDzSx4KB>z(6*cKOAShv0z>U`O5p90@8Zg!9 zwES&S8CZ!@A$0E@pDq|2gKr6|W6E4@?L(p{*j6ox(zTJrf0#`3&QglEE0L>MGO!8g z3L!l+5}BoJgnNHxFhA5}&uv!|R1iOXZ5KsWQ&gUnvV_p4<OqeH8@_7>CNl6vxQaOW z$wb?r?i%bV1Eb^^<+w;>aaKRIdDQ2`5hi+~@U^{5SrccWW%|pVjDkcY7_1WC7;8?% zKH82Xu*$85(3&w4&3bwgt=yyhZ#VwJFCV&pn|9Q@o^V<iDyXgIM$j_kcJTNSIimqD z^1UDId|Q6}P&;1-?5seouF5S&O(MQ(UuCbJU3JRUHY0`>b(E?m7Gbb`&-YHLsgC@e zv6<D;>h0vBn^d%2UnKL1rJJkS%At#)v)n<&TI0))%nuntNkz$*GaX(x{4{tU%e)Mk z>aJzzi|}+d-{eV$UvBy#-b@h__4VLAI-tvDS*K6-uo274V2R3sWC$FctMlEW#|d{O z#^m>TvgTB6aIvQr$y~DZl#1OzX9$iO!1nX?Cuf8AHF8$Aw#~oxECh6l8r+=gf>k(D zt3LbF79=ayGuU;AbH|rBPR5rFPo)$5lvfu@2o+A=ExMxp7=AjB&!{)CUyt^td{5(c zdyJ0hUx<%=OYi_qJ8WxOO&n}%)bQhML7)P_X@+_eD~8T~x2^h%#Mj2$xhNa4WrsLT z-vdczxuTU2_4VD&tbws<{IJ7%6e+bO0(sozo1InaALF%0`+wPb2We-w^4+q<c7`&J z_9wX3k7zj=7eAN*?ym6cEasKK=j1=^A*AdG`V>4u*Hh*0en#nl8)}Fl$(<k>O1lvN z=1;p5CTvI?p$!S0y`D3uUH<Dd*@D&)MD-{TfQqd~{p?VsZkVF@sqL4VZc5WklIFZA zM71+fVQiFdQ~+R???%UFOXs5(8dIB`$3TBd@fqNkP;})5132XRkL{BUc)p;X_Nr=? zg*E2@JprX_MA}*_;@xxIFBiCi9S#B`R)zcvkZ~#n*@Y$_6U-ap#sEwYo8ze#ct~fN za$YlqeYJ>pO%AI)K8}m?`|AqIE+q@iqHBRje4ONx;jLJm^<n871d}Q`#m*-+_@1)o z(nK7L1ic#C^8o~FjY`tO-=i1P*t1&5^{D@R5pAuaqFPax<tWTx-k||?a%dC7zs^34 z<w&pKt8L3oOVLA$eCG78Z?<WrUkT>&XIYuWjz8uQnJ#642sdW8=R{2}bc=I2_9cre z50lO0r0}dxB1<#<84-P`)D{w%1S}5tl;OzGt;5C)fhj*fsm>!)Y<Y72Vbq@FV4?b{ z13&iWuS~d7JnX!PJyOwKAqLp7h~)Gjk{mt4uW@vnd+b!3qJxP)N}UAA*d=5U;v*z1 zoQspvQITQ4F#dMOS(FVy$Eg^qn{c-5K;rqG`&CgpR@wRO1PElmYoDt8$;$D<%8l^! zii*BqCd(yYjGl(@>iCZQ%>u@Nlg3VOjJKp`-K3=Kv7$W(d=Zf6hBIOD#&C49WPC3t zNIg!D#8BW}?aKQ*gIG`6`yfe$4@S@);N<5g=SQ?JR55GWB2G^eui1h1$_O6;V0Ki< zfyGzvd=uj7X_|A)x4S^`{{)5q85aKQlJI}ICj5U!jQ`R3-=F($*Nb`C5HRFl#GzzI zMEx%U!Tg6p-a7tg*Z=I?ngek*f>HlB{Qt%Mf9L;ShVm7yja?C(ir|jg;71h$!-kqw z#^%C?GSKajGXao-c#Ro8_sGVGpNjaUo}Z8%joU5Mn53s;0d7PlU(o|%!V?8V+Z^$U z=J=tqT<04ZFi#q{w%YS&J3-y13qF2sRYR|L$WOch+K1<t51PQC+Q+3FBoEH$hya!V zk9ew=FZg|P8zuBa8;+-@+8JQeg`vTlNBKkFz}7ZqtU6+&HT17{JBJvnHkI?KqZO&J zC2Om95hl?f)|H9BTdX|})j3}l<ev7Y6(jEoW*m4#H}(ZTK5f~R*y1`#B{^JPpC|__ z#tf-aYi`Iqwi9i5-pUw!+kU{_e2YAH?epW_eu>~wfEODA^wOCTs}7f<ppO)cA)`9- z*)NGxbQ0+02+-Gs)2Bg$4t*Zsgz7f^1gtW-({?2daf1tZky>IIt_3il`x``$QQ${7 zi2Dyzr!`V&L;|u?7K~w3&JIwx%DlB}P8giCdu|V69R}QfKj*=K{vdL)#&^o11wHA= ze+%Fc#ex3qeVvwJyyn7!>e$1wL(bXAp$K5$ODy060F@mAfcZbRdNp5*3Hbf%h9BIW zT28D+0FRV@^$rm!OsEuzwKD&#_cIO+K7b}@wqoKFhqm%uW}GBtbl7iZ+4UWdxW^Ga zSAPy-V*2qFyPSs+ih7t~5y{4-D!p6PA=F`kCzlCCzrcrK)kIZb1vvRt<*n9$MEaJ# z)l9~Cwa96mepAQ>YueyyZ#-|x0YDcvc~CdXq#+48u#g+F_x<c>?Rx(Q%e(Fb<h!o` zn(@GSH^G&~fG}@YUf&fAM5R}!vuOVm-|JO`1R5AA9q{>Y*$+?mI7WB;ek<YhhnACF zvpqKE<46dB3|QvC!TtJxyGH-ri@yu*_Hf@W<$(S)&-L{{d#4N07NR$aJU&eB!m;HD zu}o0Bz07DWeq*I;xtgJQ8WL?=E{2mmbLGu{WDiS*BV>iW%fy7<H@&PX4|gN7`J+=T zFQzWk^xZbA%rM+F{&?*O8UdkVzy>H|dIe01G+txr<7BrC%wKn-v*kTcIPINlek}z% z!q@iG@++FIX4lq}L?<+jK))LiY=1)^Q%90#{z%=khY&s2Yy5D+EU$tG&^0cmtkK>$ zr+zHY&?GcAlXsdvX_;9Ee3~h3((d0=^ZKUroCF7OnwG#s?W+B<LoE!@NSUe`{G2DN z{mr=z*=hbt-2@!ZW}=LM8XyBowmGFzquo<;_y+fUW)}n}Wk|<*TKw@RrsgWBkZG6# zrXV<M3Wbc7g0xaY9l{5f2Diwe1_#2ob1N7g-(>IQqLF82tf>N(oGAJTC;y4fio&2G z<k3j^oES@FoH6fLBR~EKJe2<tJ*12RNh!MnUjRneONhTm0Mh*0i51gNx%xYsMgc=^ zMdg7t>Cf($SbW^)lO?FAyl#>fmsU9H6z1rByzcb?o%|u`%W5=ro=YV-Pzok^8*(TJ zU;AePF+;7wy;rg3POOu2oC76&dp|LD0_tVc9AmJmZtWsr3d3M+5a{$%TLPPjg;@E$ z5_qsOTo>;w`h|cv<_D8l0_1C479m#0)#LdiJcO(G(`WqqId6pssfoa=YTE*lfT0n- z>|WT(<~a|W)AFOos>FSP8K8l;0}V2)LSHH|4Qhh%=PSZn*A>R&rhS8Wa)By3f>DvD zMwXL?uFdu$6&2{xTzG@(xNI&@!a<XO*XixtlaeKnkLJT;BQh-Wt2u>Nm8CUCXqxyg zM`zH4pPurSeNCbO){Zo_h@>8$CGkv~i?5DBVUv}~t#8%2DTmS5b(%@H@}|Ms$1Jx! z4}d0+uks_ey)H6Zx+a6MbLd^C@6ux3Ngr(89C>(tG#LUZdc)O?KpyN$od`V__aZ9U zAI)5vB~3x75#7}lp?{$P{v?C(i+iFk1FE(B7YDHl4r>W<4iCiV?98QvgBS@tspY|a z%bTev{$Xx4?;;rdCFf(P<M($xrz#L3zhHr5x^)vJhA?#EH509gjITGcY>4jBc<N6^ z_A2e22k5O{A>`Waea*17$Su5x>o%50D3G8;5bC@k)>CdhZlniOT9pjQfi<IXvu&DW zh+Q;|BZA}(9l(1m!EZL=2lSfQ1jF=(!jY%pOY{szgihUmH}T;mldygrKn=Zd8XzQO zTLnVU-uH}d@ZW)IYthNF1<>Jrzb|b2ADgaA?25t(!=3kr!ysPoBb3~yD8l(=C_&l# zCtpy#^5uY*fVnFmo3T1S-biN2I2IARtj|(<R9cWH@T~Jac$Xjf?hgB`HFSaAu_SF= z*uAh~93sAYY1ZTGN1y~<^aZEF5!LocUwsvYaw>S~^779h*j3hh-S!dwaS!Lvxw{SG z<!|=vI#dO&$w98h!t(M4@gQu2ME2Aq^-Cfw=qeDUW~)E11?uf;V1!ULx&~%_;4;@j z!?@zPxii;1f^fxc|3=<VcJEZcsHFqLdMk*3vb|AE3ndVKthoPg+}mn|fR5iM`}Tj$ z;<ONGBk9^+Le7b5rwk4GJa$j9q5L^UKSc1UjbQL$4QhY$5Fn?5{r@f}*`6EiY^(sI z{Dd}6AUISvJkU&IC3+Zpp*xThcl>^%0Nxo3!0*)RBfPL<K3J<++T?n3vfJGA61O%k zA1p)y_^{AM5$T~h7JX8NBlyLh$cZwBDLAgGUkMo<1J16B5xaID2TDWaL=Q9VkQ+ZE z%+1}ptApIarv#)BL55q?ohL@?1K1IF{+ZUbgzq|!^c#datMdgGf@5)!v=`!m;X<6y zRiSUBTLD;1CEm!|g<w-oC_Ef<l;f45Sqb~^Su=><v`X6Pwo!W6DTe_PT0o2V+tJ;h zOco(ZJK__1WR6~!a@-JdE~Gj`VHwwz8JB7g(VUwP;S#0PSw5luqW=OK?I87_PVHVa za!&D=bp~4t@0O4|Ma-dxrd>D4yR@d|FWHN`x570247pAg7(HT_c{jN2K>f|aJU(zi zQF7jz{zv69-vF@qTz?<{16wvmZfzlpRbDAjBl0oh*M<jP{N$+=Twt(wx)SE6iRicj zJ5zDLySTa;i4$0R%r=fUalg@u1%N`6Z3U^Kfcf9u^pAd<drzTxXT-g1M`#jG1-sDX z;Nv3PaSEe(s@`(Ne^=P!6mCOh8|p|yq<apIdEt?R@xwah<jZ==L^ALIqqn|KU4PU8 z(na7CtOxmUh4={N{nrOs8?F-c^5M}9T&99K;Os@B3UAfK&HzA)3&nQ|0=?@{e3y0% z+fW8&F_t!t^X;PGcRCwF`0s#-l>EQ9|Br=A|67pQ@$hC*4GSJXHp!@N=5}!Ncg)QX z6#_5;YkX><<hyzpXZr$hd)^1Yt}F_*P~O|yC}8*JnCWX35(p2OYeY;LFZgi%hiQ^w zJ$%O`)uKDF#x-Kj0MbsHF9KPEAv6X9;s1YBtm8bDoOjm3(1fJ`w<j;i_K*iI`1Nmd zLAKPX|N7%6t*mP)e*hsV+Al)YE*?>N0A>w<5*3+JQ#G^{eI#1Xn24RGl+!ta8n?m* z`IkyX)g$c{+A@MjMpvo(MbeVUxAaQhimc&@w)SW8ml~A5(}#P3_PcpNMgIog^zTw% z6iU_bM~OPs0G3@?u`T$3_ElP_Kid^;PHIPEZ?~>MU*&V3NWl8GiCR}INdJd5nh{|e zKz3l%DW~zf(V-OVlrOM5>-|y4E!^hg3w5y6bq&lF_55y7_%r)J-$+j^DDy9NPG&@b z%p9i5Z;BrO_g@047U>}Ivy+ayjY=1y3$iM>n4LRDEb3c&od=T1AA=C!y1ijhA?319 z>1x7l<}eG2E)=hS+sA7f-+rjPI_Ma_baxgM`@mMEK<;o^!#gu!#zvveb;+J_wF$_H zSUlS3FT&2{KiPc_m3h)F*8-Tz1qcz(6R(D|pV;#o^AC6HD)!zMP(e+GnJ{p6MbXcq z_oiqjc+i2|1w<{5jXgCye6Y1Xgd5Gio_A+JI?oaX;tk!G*&DJunNCQboO2L@JBtV? zAV&gDkL2*0gIM?TT$m0xhQ@}(f(NqLTa3C8fR8PRARE=LCi}YPU6&ZSfNx^cDgPNZ zVPf2{_~R^#;^Dgmr^tC0vBK18(!}HY%#j7&KtDX^$WFjd#geEjU~vvIPJzWP=jOL- z8`zlC3Hs8?T~@=A+Xh!Mw`j9IwkfwcnpS~0U;Jj34ExlrIh86IQ9h4ARAUG?ys5N( zXUHZgTRjODxEFJ!$q9ziT!aF~Z<0yMJgQA*-ikkUP7zjU((_58ddCe2li<p?ZRzf8 z7%^ArI)weHsw`;UL7mSkTSHLOUODBWEvC|pK#aU8S~c-}MeTH9ajZ3I_M5Ex%4B<T zbV-+rItlqKQMQJMQ|vc_&v6yfwu}oNPaiAKCo(-bip^bY3uW@22_ay2a&=2My%M$- zHP*-jAyH$GQ2*UvT<Ck(PI*AS3pSEwdkW2w1#P@Z_mp$MXK9kU5wQKabT~9;;TL(M z($|qMCBAn8SMD60pDlLH&2*jyTS@kC9lJnj`sJQTwx*aO2ktfVGzz=YycS*b4fRw^ zzwzqi__8A|r^}{$=LU&e4lhsUp`%?$6pu@jjuOKjetN%mHtJ;{w{SJLd7V|JLr|u) z;u{x(2W+P~-!j5ciy#40t?E}o&dAx+*EKXj>&C<6b?ZNvH+rntT45WB(XyDIMU>}# zx89?eK2&WaUj9<m<#x6Q?eNt#-lL@K_Z1xdU2LGzzf21vKv*P`zrW(CK%iQg4Q1%; zyfmw@t%F|5Hdr3EJ7yxa4%dC~4U;iiVy9BIsSlLzxhb}stH@x~pR7hZ8FU>D*_n-n zwTlwFO|-=M+Bn!KO)s~X0`ygKk4vk0pu|~<Bs~hrr9koT`o==fxmG-YGcR4a>+p<h z?Jol-=bQg6`|ppH&h^5fKN=U>jSrF(@2<vPKNM|O{FJz<93m5T{X^<O>Dq?JaiY0& zPF~vgecD4Z=PKGu!dZexWkz1&YucQ7XJXs$-W_9m>#6PlevZp#L^BKYLBHABr9{1B z9W<jBx7oZ{*rQC~J&v<|?ek&CKHP5FKDKs(0-A?gT9dewVap^oxIVFh?)~40fn8@C zMG?FGl_ofaXCXEyN<n>b#7I;at;oaSp2JH1%AG#iD00tpx7li^z1lmIy$eC%#v>if zi1d}gBnH&+>DPMK+ht45D(fIxgJWTQo9rF<9beWG^z5|;cVVuiIegb+Whv+>r&YJ% z&-P=2<d?rU;Kky^i!K>R?KU9sku&8~C;ssXOrNgJtndhEQmgSz0M~1}+9~;R&qgqy znpD`FUzheLeP95l^-VQDu0X6>0({vOxzUfMbCvnFYfDlVFC!KDd)yu(uxOpkybdmq z$QfNe{%S#Ywx2*0c)VjD%WgyOh!YV%5GPo#=p2T@BbG$|#WIzZ5;J!=R@i4uw2lMl z>Igpj_QdK%zd!RthUmtFN@kM-z)dac)6G@OY!E7TV;jhiAfIzzW5t(lM(45Q1ZN^` z!Q}0BW|4POe^Upput1V60%qd(;+$@oibB_QwtU4IFjzY;kgmx(B3GOU-w|wvgEspv zu7t8nc3-B!%K|dKy~Pm}H~MmXnX`a0tX2~<b-zendkpH<H+eL#t+Z=waF;aNnQ=h< zI~!kipFfD}&^EFGPs#=Hh0w>O%O9U9kI#=AW9Jql>sZ0(BK#*fe>m+QcJE->d@fp0 zU7_>CY#_a#gy;S3Tx=<1U4(AHhs)<&qa-+k(>C(_o7MpXkD2Notvd|$LD;DG_v=0m z704s1OTzs9kjn~{TFWoo&3hyt)K7jpY@5V_vy9pFb-lKQ>(@Z!jA08V^ix)I_4c1A zspDl2$#&Ik6Y%y>M@3U*-?bVH@IrQk!8!zUSz5Twm3F~Pu%R0`f4||$6cjSpk|{97 z=*$3*mT*ZNlRv}bQq2%D3y<4NG;^2)f0c08gdbKwsda{(uRU}ksJ;zyCuwY|l;RXW z2(+d;dBFt_T^VP`=ODN56uSTrrQ$UoX+;_KkN<vTi9^kl>czoNkvilh<T`HBp-q@j z;DTfC2AmyD*xZIHJu(oQcx%I`3*pcG)a3JwE=0&nHxpBZ*H2KJxspyAV*?ABj0)I< z1|6Pr1(o&9stFwZ(F12q{?hNXiIMDpuO#~GC~{e%{?Y_HH=zvD#-i4GRjtcNpJp@z z^N(Kaq!%Fe_~^g=-GNrE!IjpA$@Z`&Ik)ZR#!mL#MwvFySOF=H&`^7CS{wW78U?q; z2(VLfU8vabQTV**3yE*^SR-j^M6zcE*A70^gI=H5Ad=GPYV;;%UC!bFzAWK107wcy zb0~%&+Yf>0ShU-#QKvK36NZq`-<~6S)xdcHzjOm8=n;w9f_Cn@q8vgnl$h;E5+KXg z!taQWs8tT9kf@3plUU;ulB-LA9&Q2M+HIxOB&GUVgaUp;!RW@;Y!??yCt60Swmx(< zo;qrv1CC-*BVPA7cEmx&j_?8jNjTeuMt&K~qp)5S>`Pxr<j?BMp}OvCppeJsaC0BE zfSKWB;?A2y0I!7RyARK00MALV*hz(hexNtfw}8EQka(x%Pg|A#1g|IKNJZsRqd~2e zmkNJyV~DUGO`k)4-%AB<`9MwD={az^&wGuH;>w8U1`ni2baBY3fCr_F=Sh6<`@C_E zG)VRr2XFG~z5%s4->V5(h$H49Y~0dpqHEEuOR<v?P_Lyx{!8_fj&_^;7ra1bs3KPB z%Q}tjv+DWptX;oEeCU^8w#C9Jt4k9d5dQ}f;%-A@YW8M+NHlO0_9I^kA_S73`3-3Z z`LiU7lPC-AxfGh)X&91zNd)}`LVJIM+07Ov6YRH~tuG4A!};I6GZQxHSE5jTP8+VS zlcHE4$N>u(OFx4HZU(i5ImZCiAstRUz2~&l6{5ZMfH!5`F~Ln%LS>^CI(<x+15ozN zHW6-ikmCfS*ho=<41C_tg9C$7bgQU@^~(&*zV%BbGXV4OlCm81_Xj?f+YJ&{;_DFt z0BO;TO@-ixEBgEVdN-f3ALI-?iVtmcUm`S=pYb~->llwn;iD{Bm2l7Nw|6}a32oc= zd9Y7+D%vTGyp#Th_*0rA(sV_>e`vCcm<*d}>XiY-5I}#!61;~Yk3MECCIRra#o*!_ z@WUPmZT1?%LiSCd<IG<;GP<KIN@@uXb1;P&0pgsMB%+Ighzp7V$`ldkUo^Ho!3X2~ z8aSfLYf01r74n=;x?iJKOgR)s@Hcm#i;fH+rcB+2sA=dv>3hvrMh_V-dt9<z#Q2rU z!`$16__5dJ@T3@vJY@5AFY?XtNCxcZ_j59!rfTrPADM}p&HV<eNoPLvF?}!h!IlC< zbNQLMOrV#|ng2>tNYjYIBDobZ=SKyOkWK((Jo|+*eXmYyGT4L9?OL0+dKX;Q#A@Lq z(T^?hWLK?A<H`dF-WofxF2#s$>M?U;Hzv(~ET=c#|Hj@<a2oqXH{^G&>4W;S0_Yqo z=lD-?4v>3r=VbB27hj>W3P<z#B7eyntTX>!SF|np+Q;!*8;Q=Jm=OK1!#a3?qG>rs zM0RiaJ;az2#9{cZY}i(}j4712%sK5d;;?k_mSa}!+SC!~E+$vqZe{S?Wp7|@xD*&% z@Cm4CZr+$nVSCgU?drLVQW>MP?n?!Lf$0(WW7I6V*e-be9E2>^iOOV+rS&yVKR541 z7GlGeG|O&q-WmEl%?WYFs^Nx%{3&hYgu7MVW9Yx(Jz{H?R-5b!6+i<p$6Dq(GSrXC zqfIT$m%@qhU#O)^rOm`C-|uum!{^KphtJuJ9XeV_TpU`>sHCrw&p$zn8bZ%{5lTtA z2$C+|GPh;w**mmiwAY?pKSV4}@V7*_U?`AU)bp+@(*^Mj@4R{1(Nxk0=igt#JS_{I z9rHrwUC%CLx>mxpB#C*{3oB|L(E;#<&1c=dqc$eZs4ZsV?ugKjm^H+IPQBV+pX&(L z?=b-Wzp4EM1O<qef1bnyh8)<n-6AfKKO_Gk(sg|>482IqWyQGKL0SeR-Et)rvKD*x zT*tHy(m(?f4{QMfT-}ClPCYc|uS7;g`isE0|ErO&42m;|vi)XocL_2`2m}iRcMldM zxWfR!J-81E9wfMHLU0QboC!&Q;1Fbx0fIY&J1p<*`>|W^$L_DLzE!un`&QTOy7!zu z`d4RdM8c;D#|1}v16vqy7<+$hbI^Vrr|(r71oR-TdkRADyj84>VY=i8pW6aKuR=bH zUX&F`KVANA4uqO7&s3V$++m}zFOT~06QymJHK!k!dVqkW!6E3k*q0=zr^`z4L>R;W zHS9g)`CdPu!yZtm_oz+aRy>L%JaqeB2`;<)dQnN}&!MKy+E3fxu!ZY?e|<$UV1-h@ zZ{F+NrYJlGoR|x`m~_#>)<M*oY*HA|lMi7AxVQIm--8g22qI}0eLre7WWgIAR2ReX zZOS_>AWZ=~&V#n+Hje0N{V_Y>D@AP>c%mete;YJb-2gV!3wqN6g8!yGJTbU`GU7@i z^ZSW_bV*r}<X}`ik3aft;qfAH_>;fq(Cuv)QRVNjyZgs5IgSxA_J^zl$M8O|1QN<P zk-S}x{nPg*hUh29H90H|*^#(I(A_;n&5$mE_roXP;%9A&K3ZM(;LY{kZOV%wK>laX z8=OHB0xAZ@z-1j^(XaO=b9U{*V7hztLjuthyeW=I`xK0Fgk3aI-dOUIpj{rjxBXiQ zqBK}7pmsYhRDus18x}{_w236v<g9JHPt76KVqX=6n$Q_u<rk^XI{_JAXwJ~&&Gx6T z?`s?p-c@em?8wWl>N`X}UPemJ*-Pe^jNYu+<JWN+6WWFR{U7TT0@tyioqYPlZv8;U zL|spP>mrDeWhaMyt8A0bjKyW88ra?WC_IA1p{R8kVbb>;cf^t_I@o&}^cd6}pBF;3 zytXM4ednp5KZ@b@9~8o;=nI3$S~7c|mCv9<wdpcPftoD^Z!@T~HB))L<jahF^`}cD zK8-n}X336N^23zN_oNY?Coh+LFw<Sx9}#r&i+60ge`2aDX!{KcOoI;d%3U!)ic~^v zmQ`KPjI7`s+uFEhmAh_q@q=30`t#U-cbfuAiOTnb($C^GL4G=3-<U9Fzw-Z%P1`To zA;e(s+;w(~C~PwG-}Sl^FYKUbL14!2#&~LB8aWNG2seLT;7Fr=P;lWFy&KFHOsQsX zRb@7-t3a(+BtH$xqfPpX533*F95)qYlj*;;^&D9;r!W9$rYk7l3VGPUVrPw72HI_6 zy0>goaLnKCl7&x`;l0*5HL4_;PJO)fr_Ft&9vt$!y@T!mvPuG(zpK)VThuHzq5%!D z{Ka>&51k2jph4fASl2_(^h@5g4@{eExAR)Ecy4R(_sMjnj;3>jOJE>#XLbwLP|)qW zACdiH#Y@M?2&ZcSpr^=mf-FmAlZnScbuiy~Z3oj(P;r{#M?#~|y1GIqLeyh<xloJO zzO(JMk)~2$fXwxbPqn44E0;v)v5FK96sf1~^@-t$Pk~=h^Le?GmP_3y$seAIrDSEZ zJbAPsqp|Y{Kto7rg-zx#XJoF}q<UuKym=<DmjmlvTh3`FYpljN;!JrJ;{I}ij%+uW zJ|W4IjWBTS_74l7=sS~AQzna%J#t!7Ys~$tTILxfo{lb_=AC%KM*&<<^>Uf*bnZnp z*OAJ<CT81$XS5z`jGKbqlZ1)Bk2~A6Qfe<MYP+{d&@P>-^;MMM94E*PJu=(D*t)Z6 zS1qD}#Q35a->iQncq9Fiiu|Mt5x|V3=Jz6(e2PzZsW#KPYBBBH;qOZ%BIrf$AYG}f zZv8soMK;OFQY7G>kAHWTH9bZkH(bcgvyGeM!4ST~X?-`b`O$=IdndHFGD&9M7w@Fv z9&cv4C((dP@OQ%42G{dpbTQ<IZ{tdEiRUShsQb5`>)u7`E_Bi!@0FAJOZU#%t<f$u zUZjb{O0sbj06|DU`gVZzlz3MTS-C&nvX5_ShY;m~sL8)<`r6{Pghoiv+&$f_{?H-j z)I@NHW*ewnRYfjB`^gk;&cLf>caE<}0e+Jl&)pV>VNW@YR!1sdlnohy2Ds#f4W}*g z8)j}AZkXo|g^<Dr2*;>KsvDdlzwqw}$^8=8eLidL=`BnwMuTj_&5OL~K0(W#GK!(! z>cl)DP5Cnjnc^g(iO8K1`^SZ|zCQC+V@h(lyv5(=i;MJHa{luvN&f_VitT|QtfP8D zye&MKTAzUf&(3Lvj7|5=8%GLRGnP)Y@8HgyueiI{0Tj(UeUh@x&bpCpL;;=!=yk*R z(^>w1_x2Wl@y9q4YX=gn>%y7Hyuor#?O8I;602AtS=LU}Z%SW#AxxaQe6U72w%R<{ zgVJ$~6Z`zlyRdFKb~E$#W3W9}>9M{?1&34W#HWp%7d*@RvrB2c>?g7+ZqG>f1#nx+ zelcerl>#@|W~`;`uJf^KefyekK0L{`%r1?DesMCJZRQ3$6Dy749m<rWVz$a}Uc{AB zwoz=^uw12Wg^Bn@DrqNLnl~ap3M!Z{X##EozscK@ns0nzi~AC@=7YlMNi43T8NB1t z0v0v+vDsN)cW8&DZP=Aw;Cw4t`Caax1~zOv_QKDqvP2a>7z!^2(gphu1AdT@*vL95 z70v0by{y*rWbC3Ae(%jG+VM#+h#B5XQg(nio860W;-AsNaA>ff%Q`eo%z&MVJDtU@ z;w4UCgfwUr69KCb;*YeYn?@fhYT0l7_T?(bG;~tw)AtsqLqRpqxo7t#26Jo?mbzvS z@X3GYB`ou^;119cHgClj&3}D?D6r{3#VjMi8dOC$TK>2O<I?NN?zI|aBV`kF|KH)w z{I*%f8vz(q{tq=Dm87)H6cf@cEOSVZ({{3gLKqXYstIXj`@8HD@&VBrf-%JInuVQe z?Bt`#o-khR@dfpp^zxZv%*gox#NE0mYdBjc!m^ZKQuvZIGAh}q;j;RR&R6t5_$WCo zE=buwNAlzJ%qvDVK6!&CO;Abb+p4@@NM{vXN`%4Nn(pFx!?^k3?F1!w2;_7cg+En1 zcc1EuAuDWrav5Ds+$~;19}7CPiv4KV1smnXt7v9S$15BJh0V2Qn#;2meV$ykD$4F& zWG!Y)g?O64Qo+GgX}=mRVeWS&KYqu809mGtA;#z0G6r;0D<mf#GT&g8`&X?`&Nd^G zcH@?#J*qiMUT@8a?b~OQl#}M}8*x@NtNa-%1r{2$RoF6m-i#r9w6|Tp2~nQE{o_On zHwsVKRa1xh(RT@!@%F)vY+ujDqIu6(u7|`wTnpwIn3f=fZ($zh-ZNl{E$<iqcv5e8 z9J)`=hqV24!1kb;CA6;wOt-0!XC8ML3OR2nOY&Y0+^tOg7X1~)4WHr5)#MrF)BU~E z$v9d?FV^w#o9SH&Fntw*vTtH_*Bp)dPGv!&$1FCfvA8V=``m=w?&0?4<lSPuAc7vW z^(Y{b#-7EwQp{Zm^UL4K?W<>vA2tH0s9h!SWSAJ1iUVIF;=Vo1FabR$d_>`PfcJH# zEmp9kBeg~N#z@JE64OTJPSVSx)=|+!^TBlQCZ%`;(`h^Pc;Y$Sy=LYF`%-o(aHrmj zE!e;#;!;|zHkcNY_e}FVfl9Lt#MEvOKi?6M$NnZf?(V>p9o*<GQtN&3OK2qIy24KW z6CL`>zgshmv-0t;)K5Hta@IfmgJ-cz6=m7ELv+6?ARrlg!pu#QY<8KZ7M0B=hZZ7g z%|0qjvtuXgyBgNXQ92)5UyjfqzY!@un{mO>P(K&&A04B)Z)4I9=2zsfeZm{_%w(;l z#)#Zq)7)*z7sZi7qme$aQimw{!v>_$sS=~IaU%HB6Im8Vx?Y#N_@O+Ho!MffB}pp# zK>CLNNx3T3`vKIsXUVnzUADA4VpZ+*moWJSZ2zel9+U@2Yw#1DU|6CBVUC>Q1v>fX zl{%8wdr?>J)W?w=sALu3<oJsHZQd2=Z#!$1>mDoEGrlB;J@e>u*mJ3?n9PbbA)UTZ zi#7jJ(26nyEmZFZ{0=;~C2dg=2P?`18_1dzI9JccTaOCb)=eJDC7{bW4NtorB!EV{ zgl%=_29qFxcLQwdIYQTmAUn6@fc_eQX>j&ran~=D{P|8=b0vMKH-e;rWWPSw0^^ym zb5s1QpV8#kI(l0>oYO0>^4?kc$$bq)zh(S~$Vf(8Jkmo1;|1S<)zsgMq03Z|<g%oy zU4!KK3|hf{uX(rEmDAa;vRq|U)3PWhLr~}G$4hpqFinErM<A#LMJ~GDz;`@gXDq}2 z%?+Sh3x9S3uH!t>xXw&=q3Vv9tZ@70ty#yTb4~LQ!q9<?*q3meZBKp}ye$Pxk2{Sq zgT6^+=7Q6>uz#2#hJiv=j6|j>T6D&#Y&3y(cN5ER7o`pai&6}=+S2Lv@vABH{wLL~ zN26Cb12i&EDY$-UY3m%Lx#u2f^msghR`C3CJrn@07WW4(E|Wbi43_nli2CU4P&}KQ zuM8o$B-(h@O}YV`^RkC)rGUg;gwqnym*kM+dG|?^@b1wcUL?yQ?PZE5K!>VBLfEId zrMa%}zI+xN?Onbt$rcQFCC7K!hYwh9oKQsjXf<nzeIcrRhmDx9{o;*~D4Dv$K-WME z02SfvT7k{pYD;P=-(_vtj$L7WD9~?X6W&TJeL%XW_i$QmdqIL)txOHwfLN3Sq2ID? z{r8IK|0|LH(*W&;A99~+5@CdJ|9CjWMI1h$|9m)KB9VJ=g-NgEM1&j$NZVd2!7c8G zehN?=RN7?x+W5GAg$}o+>RxP4jKXjO1*kJgDX)JqhKh%~(dJfmxH%9&*@j$*mmT^- z8J4XgqavDH-M9mp+IVXn3&7C|w*gn*C5A4Z!INB*i7F65uTQFR?*4+QYW<f2uw=d? zrOycA+>ih6Z(U=faOOh*<*d*rQsQDEpu(o3UH|TN%X=4)pOe~=Y|n=2i=kAiW_hBE z-F%Rt;G%6TP|n-kt^_}4Au^d??y66TAKeu1UNFQm)IZrZqLFZRCMy(SLCNxAl#{ZG z4pJg$SAvgd;DeaWuCThxZlXGc!Jn8b3p0VqcWRA%?#v+SPba&gWD?Gzn1w3WmxZgR z`xSWe*sqX8nT;Kq%$S$&7{<lmZL8fx?(LaTol{gGnI`6IuE1ojUm%~G%QG<pKSQkt zO5$X5DP_d#a@y$p_lsxl-Qs#MHBuK!=y~eW0SRwf2|ONiwntHT=e!1<9=gJR$2Gn) z!A%ykr)aJH(2D2_uJwk$H#AKvqVF+7s)5w9(e{}XT{g87<~+kn<qqO)QkBj4lrl`L zQYyV&n588wl-8>h(PdnGhOolc*v;a%Xm6tT`91F)3l2OtIf1@uZ8ODM@gu5HYDSVH zQ|*1|ad~q<v8A>)y%Wz(Gnnm3F<JAZ5<obD^~-<lUq$-R-~L|huk-HuPql~`JdDUN zY~}F^B1&5iw~S#a!x~XJNhATI!qdP28{s&4ZPgT5XVlTV-gfV#9lfD>Sc;Uyqv^us zOr;t7k)xT=kl@YmM#95X7q)uOezAqHcx1a+2v42Uu$Q`!!*k8b6YA##yF@b4d@9y{ zhiSyuN_x1C=unC}it}t$WS7Qxi7H8fQK4(#<P0@)^!!LeO_A!9;J}ajar2btDn5_6 z4RLpQO_y-}1(^BBp0V#9y>diG{jmcOw)dia1D+rgXr-gA0{P-==#xLnCpNyV?0(dH zPJylY`cNSug<YoM0Gk2SV<eyc=?vees=J;i=V3Gi4;bIkVC*{&Sjw}6d<wYq=d9CZ z+G!R`M17y1Y1fW(F<h@&|3;q(`(bD7&Z)U3DNZK&`MA4=d}40>bm*k?+EoR(G3$}Y zCE>KaTM*s=QI6oUVY%&_4Q?mdc}v@S{riP%P}HpXY$tv8y}HMWdFrpIK?`lx_?@#h zD@%UuaOr38sku{4e!?~uQ2%z=&y&cIVb&r@tZuP^vcou?ePP!wMaH?#r=iSs$xzR< z-vLBu&P@?HvnfUPjL;YTPOkW#>hKk`n&V%E=*ue-Sha^QT)#CxX3zU7UwJ`&JgM($ zAlSQgWt@v!F`rvwBcPXW;i4iGcY|Oq*YcnzSGvq$^*bZN>cFtYON2o*PA%9cNo1F< zCAlm)RzdfugvBiL@Xz;BC4s^Ne>-8{z7m<5E?dtDFkNHp8g9dYOLWJ_SCg?d{ZNLw z$@E>`(=Ppy-<9Qo@RugcFOHs6;e19fm9o6A<S5-0G6|2*FWY?zxaB?jCRV$cJ;v>^ z>@HqmF|Gb*())|`q2bLJ>tgOE+pX*5n-Ch^up6H7XiHPtlO?3-jzL(KEwl5rewMm` zreRe(H(ts);(ozM$?^@wT~P677w@6M;SUecDY{GoH2|4TQg3b#GB;a7+}ZSeDGC<j z#N`m@p|F;ju@g=@{dID0R_S^Ran~;}tP9uR#xcpQ-t8G!>iuG8E$o|>#-@3*Oya&2 zR#2?E7XGA^lbaFuGwrMT2{Wf0{Kk{N%lpw75b&a5n3KQRJnvqM9IT3g<DDnvi*NDr zEiHwuniBKDSN;W^A19!7%fKh3!w8GK6lhGK%?0lQ#*I-!gD+_5CrGz-U>*k?al7w% zaS?l>DeEg9LYvv8pEuZe(_b3y`{yV498&YOy}Vq7ac*Z^UN<T}-+C|Usi1}^MpPr8 zy2uyv<`VwNK@p?k2u`0Cm)x$XJ!OHrjtXS2mtnN6=zN^_LU`CGA==vmajB>Z{iaIM z5&NNb-xF=o8CgQP^%v37bBQ^5J1+z&eNSuJ+u6b2au^8{X<ya?d(LHlE!<P{cMUuo zP9ZJ*UoyN`4&>$+<k)UK;2{y@+MRcGLDbsH+wHcmdXmfA1KpX6v2GN$s(#7CF`gN^ z;SxURiCpCYUH2?sY$+J$Z*Kk(f3y7cC@$me%W2oPSLoX<euIPJyuXOB`|=#<@pL$4 zd;|g}70=Nl^_2Ak0u|dTL5vk2vhS~+jAH=he3|Jd7iej&_*dR2F9Ho7VHYG4(_xbp z{&abq6NsTM4hyrC=Cn+0pmWX~E)Ht?7;80g2ZGLv-COE)qGh>^?tCC2dW6dsxC9Pl zoHsNg*=&V)%J(sRC>G}=mvwx2BnF<MOwNputcRe2l21)Q<w#n05G%$nM`H7BLwhp} zmXiaK)4Wa^!ifWC)1ODux|o%-5(O{2?y2ECL?7V+z!%@ePHR$Dq3Q9yVcVl5Kb%y) zsXQVGctq}2+bfJi!g=)P4wN|40`?lYZ=R1Me*VH4(r{%p8zfgYE4<c<Wy)1cO(73g z)ma%kg48{G-_{-d8|m+E*|mlF&C0Mgkv1t8*vqXXcMog{ST8ntunC~G^xNV<4TdyR zO-p0exw$>@Lx#70ILzTo9~DU=h6v^GL^guTd^+`pj)>h^Fq22#f0#(_TYZ1L4DfzM zzp_L*w>FKG;BEY+vTbO@;MH%@Q~L|<7)n?lBe0LE9`U-8g#N*=c1pfVYPOKlK`YkF zbb;jI>^@*zp1YHdBwripM|H+BMYp3VHu$S_C1d!Zn;NGUnbit@cwgcv^KbK)D!*)1 zo)x+hR@&~L^toP^4y>TXga<Xff=`J|ZaE(|KL&fPiFtK>3MoCrO&`jwCJ|b#b>PDA zsqG|Lm4wz()`&yrmaR_cl+8(a#-vr>jg4kGaso*zj0eOWcTQTgM})wi7^fp_t!3q; zf3q8jSV;vN(zSl1L(j&lU(R0sgazYrYkRo0Dfs*lZh8GfAvnUB+A+HX57oaGWxl3# z0mCYlVJX7!b7=2PjMVDKZ+jw|C0Vtc8YFI5G^kOPXXg{WplXYqcV2QH1V31QTOEzW zzyC?nd;nYhQTR5}FJU#`j4S4VHSQ1S#Cz5)K&(RE3KLOo8_-*BMnQoVM}60pR^Cs0 z)r-4s>_oQoHC!4uGZQ=QZBuC?{j*ZOYw}!YVnJEUcRipm!r>nrj*lIbpOnx+NoYLf zNHMG{rK`%(BaNFZR_d(*m(i0}QfklYdAN3_YIh6Po=^Q-(CKK4=@6{Y5Lw^EN{(q$ zeFs@fVhu|W613dSl|#gUlqGw%(f{N-Af5Cn?jwfF7ln~*cy9)Cl~Man5D@=(t+?O* zcfqv!as!BTo{<K=b%jof+^=5r@55$ivS(N}<S-J+<+zoLD%a_RNOed9L-fHmW?-;h zA{)v_8Hf4h%I_w#ynBv4A{G(X4Kqn0X%_G70Dg!xX7^beO$KnIN{2HfIZ;rvLSa)d zQ*(m;73SG)RxdND8kj@LTfkd8wp86F@x-S}Su>t0cBPED>$`kVIz5sBb7(h|`mb5^ zXxzYOx0(cx`SPZHwVilhjc#T1fGovwt{0i0H)iTTVxR0GIg8mlM+`5(8G*fC=qGjK zE#kpxN+!={rnP*wB+kG2=YM)}cA!xZwW@PC(e!E-YluOF?q#7DMMtJxrwcPVZHN{( z)P*LV2b3f=Cg5+!ZQ5K7h|)Gm{yp0pRi{Ey>WY;ZCDGVtkE9#t_yu1MGhkMU2||X5 zk$*YgK2H&l=*NGZ)u!#hKD`6YDGU)Ad(w^-)P#$Jm09pi=yucBBZWqpfR;$izpa!( zW8C?ZF5f&WDU14N?YxGGxoR^etWX_@WL%yPT9cRaXCurX4Re+@UtBO$M!PP<)A;YE zq<H_8@6;qDNM!d~QBzMn)yq6*jeeaJC@}w06QT3GH-6Z2sUs^4BAN)BO<NCBRE7KE z>rfcxec_^oZS(bbM0e~+f8__zU&EWJ66EJ?76)_zUbY-?`i+by{%?sY*VWe*P`(eL zGou+C|L%<~Ca`2wYs!JH)oJ?o74I+74iQnGcF>?=0(JO{JeJGUE!;f@fAFR0@Ve=6 zGd#Pxez>)y4a>4C+g>N4ZRj`S;p02l2agW1&~>gw6=ANOyqWmq5Pqx!g!^DzZd0;; z_$_f?L=HF)vW86sGu)en9SgKfep3Chuj#(GnxlwqJfm-O0n?2yC@u1yY_o<^sXyhv z6YQYD1+9J9NiBflm_tB|E+Xm3W}$JhTs;g<EVQ@D?~HR$^e0iE6qPo>`yFnA;AMiP zFL14WVeK3$zoplD`wZxD#pX+K7f;KIT)&aj)_{OUQx5IbuTNf<nHAC;H>J<aRo5N~ zHr7Zo6ksktFUcZ@t-je!Xnl&VS8s@(QH8&J79yI;<i*9?ifga>M(sdu`{T6byD~2P z+J8$Hkt;4vHi@tY9<{16&gqBJF4ZjBswK1A&4)1qb|p--wt!DqlHmL9`rhb|59KhA zc&?uhZ{T!^EDRQFmk+b8Xhg5>r4v>|m6V+WssT7aKD$BQ$EXP7sq*;xvmRCx5(uUY zaVj~kc5%!upR3*vL<$Y>AseTJkY1sGN9nuyEry_k4cm7LC@_ORP%t`X9r-jG!cPnZ ztHE%1L4=I|IkLjhGXb*yXZ#-~47TVZq8Dnu1(Z>b&F`bY%btH|A)iM(v(-#XpF|mu zf)bnp=PR*hL`$m(>D_htU240^YW~)Y(upjm3V!P}rm0DpRA2R0fUT2DIPtshPCC+w zK+A#AwkIvD-O}#xRtgDz|3@j^e`yLZPLx{LIYNVot}ZFcE)tmWDM7<pp!#PNx>5fM zrOFI9=mPO$5w+w<Siv_whr*xc|JOrYZh<`UVJC__`<NnT<+{{BJt^(Rd(5CT_eWuY z2V&kqFtqh|8tt-TiMA!EuE*kIz!<DDh5*$*xk3cuU#KmxnkL}&H7oZ780%t;$6#55 z*(VGyfNo}ZF>bE!@rT+Mu-(_{I(z`>JMYUEZP?`QjSkNRZ(VyIn3ju=gn98VPF!K@ zO(opGf&lGjZGXz=%W*dL8JA{q5Atxgxl*|KlHvkDWUS9m2n^S@%Do~YM|t;+*<K=V zC{UbW)0@%+^Ar+8uG5C@7f0F(X6`^&rmML*HOoo|{=X{j0(6{~r_2Ii-keN1`=#f& ze_BM9oW)fy(H0DG`|owGh~-0)W$S;iWGaq>GF_foSaC^h#h4tdIZmoRdKSokK`SIa zv>3U`8Db_Ioh9(8Ilc$vNs?UC_-Nm<s$hGQTerNWhjG`_thyKB4I4Z1hhSsj_`N8a zT!Ser;D2;%?QvVt+@Mg<vrC}k^%29=G_<H)>pGvR81C|1?LtHKIUKP>TzY+BUvMdJ z-NV2^WH#Ke!kY4K_!>_4{VI>X<Cv^?#__;;)g=g^>rb=&P564&8Ol+F8t~gFQnI{? zyzM3Z#y}oS9K>G3Q6MF6<VjS^TSeWFf$wbmC3d~HplJdW?jxVlLFng3<_)CWK?6R} z;*~toj5+aBeB0x}1;PUD^vu8X0qs#7SvDQ!dWGNg!zGN)hdx?kN$lp<IxVyb<#A1? zbY(i7M|Pm0hJ{~m3pIkh;!PTw;~7C2HlN$k7()jJ{F?hl=PA@WOUwN)(YOSRY(Sjl zYn1Kd3)61if$PAK+RVGn_(nOa0mJpIa7NHf{KzsJZ#jVXk4ZYVEHl%_3GqQ1erDq= z62($6QCxc(*|}k^`w!sKw0Xurv%GgNJ;7DNs0`1Y)6ZZCTcF<Gdu4)H7mxPY-LL7V z6JO3ecP<Pt={h{TPzezso-#v%E{idMT_VHh3)zF~U<^8qFD_)TT#iBNsNPXc&diiK zHjnFR257%$M8vyR$ic+}_Y=prP;5f@-Z5AvFf!3;nj_{1ScB5aib@(J%vFO5h1+E< zZYE2^scRYuSjO!SFOGIc?1kuta$#w_up|O5;fcLpxa98o66zd#Jn(lMCuAtX&I2>i z*_A|k-XRA5jz*#VP1<(TRtAACYIkr~;s%C~NWYg`tNu^dB@CRFI)T(gAnt-4?PMy5 zFGTS`OP3|>1jp~#8qfYp>%p-J>P9hb+@JyfYb3>h_ow_0?XN@(m)m=Et||g<92o*( zF;hQX-YY4u8*N&e!yvHvEj7@)8stk!Wf`=Ad10UdpHBI-Fl7AfF7P+8js>4ASn4l+ zJQi{G&;GXrvZO2uSVm3=4SGpvkq*X8q7A`dmE8Jxs24b7UMuyyw9<9Hc{W6>a!VH6 z`<s~npopw4q^Z=mFn7;ZWF@*p?{KgK@q0_wVG7sv8AdDvaYd}0F`jz$>b*mY`+JO_ z&x`F~m=mG5yYGU@0ry1drQzB#8LyK<SSiHX_)#8|m6;<Kc9HEIQ`dC2wXc(^HTCFI zUj~w?ipBk@i@-JcaV0+au~dW)?v?c6#k;Xrg#Rrm2WV`e@k+9tVzoRt0%XfH5>5^7 zoGvAgIdSrX9g^HMg&&L1?_uvjwwt_nHyY4P-A7d3e478}I4|N3w;YB9p3QpYwQ+bZ z!(PvY>`hg#iIulgn=7GHe{`|m9UpMPcJZeZgRU9e6Lu5Ca1qk+ezQLODcuS&Cz{{^ zeH|T`u(Lsn{;zrUfB8~e9$3Iq`oJP8um=OzCr}xDG_6xsSyyci-B@s)a9QzlH2Zf^ z6l=ttJ%HqlPg`6SxGwX-4He|JVM1=`_>1H+l`@eMq72Pr2<XzF3!_*ph9lo=Sr2`O zOQS3`s8J4tnqi*5U>0JZ!3-C1bjWOALY$DJuIDd=OlC#n)pDZ#GQ36;FhZ80BGISC zO)Cm&I`B7pPO|3tt5A&~xF+o*U3BYmWe>C*toMkYIK`v!Yc<g^TirKbMt-OTOH0&b jbSyKY(9s@hg8<^m=)C&;Jiq@V0Il*$L!m|v`u;xvF5}c! literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/blog.png b/docs/4.3/assets/img/examples/blog.png new file mode 100644 index 0000000000000000000000000000000000000000..6d6c8356bc95a04d8f454642bdf2b01222f6f8c1 GIT binary patch literal 32843 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 OM_OD#tXjk{=zjs~K9Yn0 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/blog@2x.png b/docs/4.3/assets/img/examples/blog@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..f5480314b4be5882138dad695bdbcaa6c37a4179 GIT binary patch literal 36944 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/carousel.png b/docs/4.3/assets/img/examples/carousel.png new file mode 100644 index 0000000000000000000000000000000000000000..abca5b3db691b5e99466f1eb182a2cd95a0b6b94 GIT binary patch literal 21450 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 Q)&Kwi07*qoM6N<$f_MR*^Z)<= literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/carousel@2x.png b/docs/4.3/assets/img/examples/carousel@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..39df35930cec6965f5442987bc4fc19e862c9e7a GIT binary patch literal 31465 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/checkout.png b/docs/4.3/assets/img/examples/checkout.png new file mode 100644 index 0000000000000000000000000000000000000000..7af2e2efa82642c17060f01884a69ad3e48255e5 GIT binary patch literal 25151 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/checkout@2x.png b/docs/4.3/assets/img/examples/checkout@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..3e3c5af4b0678ffb5256071a76b02329f19ddb85 GIT binary patch literal 28180 zcmaHSV{m0b6X?BhvdPBU*tTukwr$(?#@aZ$v7OwFZQHh;x8L{U)vKqeshM-S=k(0! z?&+@Xnu$`Bmq38~0S5p85TqnUl>q>75C8zC2?PEQk|iC$@(%z|lvNdbetCU)ef#|S z{QUa5yMG+%T`WjxNeC>Da4&p)eSQD<^fpgd=JHZx_o(>Qt;*x0&ga|LG4uZZetL9i zDi`tm@B6p6i_2Rb;Xo6aa5Y{Z1Bu|Tudj>Ko9WTD!=sa({o~u~hx>=e$ETOBhKc5i zp|$nR_qUJ5<<*am&)3(t)bJ`h&A5lh=eM`_?Y*N|-_ob2r}xj#_3eXyYkGNm-`d%2 z>*y-`U0GROJ32mjdw0LSxivL2cYJa>IyOEuJbHO`y}P&X>fuepz>0}OfQpGrL`Eek zqoAo{keZRDuBDrioy)|=i9<;Gw{Kv1WmQ;AN?KmY%GN<g-zYLB4haoQSxqw_ILz40 zYH$BAF(vi(_D)4zyQZ$e-qEGDzLA?>NKR4p;P7~0Xt-}+=;HEfbYi-z8#F#SeRXs5 z@c49gesOtydwy{>zp%tFB$l0<zq7k{dUiIyxI8&Mv%I#hZ)7SaC7buFkd2G4sHDux z$Df><-p1bP`Q^pk%eSDYq~~w%pUUd`#wJG>cQZ>HMHTg-(Fwo65N9{f=C;n5xWtaG z?wR?;@Tl0Cx%tJV<*<n8>e{-~vkM>pz_+)zknqU;gQK9(a0_d@l+=v4#N?CHvyH9o zlCs~1CgwM{w~fuM_x}X&^48qa_V)UIb9?`<Twh;*{FBth#pC1S<>lqo&E56webMh~ zpO9#Kj{qB2UkfKM7w@3xr1bXg-kQc%TQ|SZnB;=8%Bk6f-_;E*9X<6e9q#^Np#EWF zTi33?0}=75>3K!{!(#`>XQdUjnZHUB({n59nh#ITM<-{_F0TV4;!`s7V^cDZPcO!& z=f);y;(lhQ<`m=<mgN=yKEJwod3o78Jl)zm+TK4tIlnqMIX^zT3<!<7yuLd)KL33G znm$=>-0JS$8#=kWNS-O^KNxrD3l^x=wCM3xYqODQH2M1c`n6Pb^LQUUnK^niyL)|j z|MYnIa8tR~qTlJ_F&MRUz8O54ELN}2Ri*Oz@g;2k=Li6>o{|z3QuPF$Z>Xh(NMZ#l z5jQHKM>Zm_ZrFYK;H(Z>B*!Wrt-lR^eeNh?|Jy<T&jQ*KuMs$AU_E|f{^j!8=WFL@ z67<mIyF3+Wzp_3WgOrXG?Q6pV-fn868g5NhfNN(a7;!&TP?@G0?i4Xu7&PLF@uwtg z#WfkI$AmRt4e7)>92kFWhgqO4MA_VN%Lu!?lAF2!H@b2u|2PE(0S^}6gEndk1_ivb zdsnU_FwPYP5pH{Tuf6x~6K<7{vHrslu=X(JrT>P42eZHZBTr_C<mjFez|CvTUpb`u zAM|)%nYF{-FRKHh+(04F!;(4P(%Z$hXN^3yA=0%*bzg!Im7yfVwl}{W^jsSWBdHez zzZG;uiOqk2+|_O05Ue11H)0G<ALiWOrd<prDYhH#Vib<jFBa9h3I33RLpc~fF#OSk z#hQh0<?7gs1PeC>>*jiPU+wJZiuw0)DLi#(a2ew?=iQ1p0s)UtlKN1Fv?n	{C#* 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 F{{cwZM(O|n literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/cover.png b/docs/4.3/assets/img/examples/cover.png new file mode 100644 index 0000000000000000000000000000000000000000..5458ff11d389674ee1b40cdc3be3c9af5218e70d GIT binary patch literal 7240 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/cover@2x.png b/docs/4.3/assets/img/examples/cover@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9d20fb2ed65b990f3789f5720783be2dec2930e7 GIT binary patch literal 17953 zcmeFXWl&vB5GZ&JcZcBa?m-jW6I=pZJUGFfi$k#B5+o2TxVv0DK|*kM2=4BWe6Mz^ zw(7loKljhhIj3v7XIiSK$4}%tRXGgQSEv9007F4uS{(oY!vO%0F7gWj5b^wH2>_7U zQILM4=?OfT2>m1lM3;W!wmv!=;3tdV@HdaE^U&nGb;eam>yBd>pSXY@3INwpKE1Z} zW94rz+Gls2@tJ7?UYG~#D@Nu;!>!e(NA^2s!kdZ_nYD%0lYjwf!&TC>9)G8w#)k%r zhT`}z(`x+bF6sc4m17??t~vaaE|ces4kddnfTGd}p+K<Ilg)~-UzavOjU%P|wUGX; z!L^|TIjp7%)8YG5saN}<3Lq&`LrmzR^7#JJ3@Cp8Qfb)u@ZQh`NTFmRC<NYrQMA3Z zf-ae*i?+Xt{^7}RLZ=AfXIr7OQ&Z>sweg5ySVzt^B~Ub_+uaFqy0hW<D08+Htx}*t z6t?j|u-{6+<Ia!riVfu{DDm}C3VYv@R3c5VsK@_I*Vo0@M-UWY7eu`k^0RWTnb<R7 ziTp}Bjvo~pm5eAfs8^IM#FL6Dx=K})Rd1{jI_Ev(Rq?)aJVtW6pD=v=_URS+-Sd4T zg2|T})apX$GcxAs{nn&E|1AwUQg@E|N~VPGZ^i?a(vYAZJq*#<@1G2K56}=0rR!q9 zne$0~o5$1YbfuB>R{dI~$hA#W2GG9Mid(sy?Q4k;iE2;mn5yExQgE+_Re$^<4NiL& z4j814_M~tUy*dP{!aSw=blRHbR`*vH8B7&Ih{4Fx=zhk7uhzDpb~=tLP>fz=niX6s z^u#RjKZ79Vuh<A=2#_9|#pP+pH{Ula<JVx><IgbS5l1H5kVsw<s9_yNUkP;?;Q`q0 z-S|oAdZ|>+9&~YLfK|#*^Zake=kV@^s2tCWN$EFxEfxA}%BrmldcB7pVt!FdZ%r56 zRF7%<K+E!<RLVZ19h%EzZq8CL|Ec?l&ls_YQzZF&k%GY_fa{IBu*Ylch=z2kFhU;) z+-><IE<tQ@-^XZ%Q%mM<LQMQjcZ6+cr{m3v;ivao-XBE6Cf}NFU=L@zVMFWsO+wz4 zC4+_n^*_52s~5b{rJwy)2T0R+G4>bHzCdn5y9&-#awlu1<72Ylsn~sQb90s$ohfsa zA8u@gm5U>#MNw3)PBr7~n%`nSXz^zWq#}_ZBK7&<5vi3%+<&#*Y+J(nrd`wZ(!;nd zfdc{bd(jTtq-*B{MxNxgcr>{fdD?Z8ZA0yFkbf~&c$&|4{U<_daf{+)Gib}>)EUUx z+c-PSPN7yhxA((M4PRe&pndK%*g*|k$Wd7|FfPhH4XAdQperLJ;|h`jA)TQ5&jhDF zJP%-0iy*9{DbdK^uE|$2?|rzUiF{fwlK$y6OA>Horbd@{;1Ne;-;(6Fq4>GmoVHJ} zCeA3}k+)%~FDzljOZcjlh=;<Yf@1p6bZT175$C7+&(~w>Mp;Q*>2d}lF|7$I?d5g; zd|jfttPDRf2bAr7%NmJwu)^b7<h2PIlmer7@#V3T2K(_2H!Myy>f=WoG&(Y+G~ClN zCr)oQVw<wXxbOFAxNe^v#UgaD$%KNW>X4jZD^r)akG<qjL6oP^)Fs@{uw8QPrd!47 z{@{T)`;8po?0cdoEb@bH3FAT46$tm-N0?(;dPkJKh%JZZL^@J!r^s_7<MYS5Y+~`p zSu?DFE3&R3*nrO~gK_7r>B5dT8a964Tcy}M@V;Z6<o8fBo-ikps~Fy!4ffxan&Rl8 zzAl^qcHw(80DqJ(G31ytoup}4wBqY6&Wc-CQuHF5oPSK0cb(h|14C@%R<Wl5+V@j` zl`e=^2C@@=`T|a7s!W1wJZSe9G=Dqr=MT3><Vi?eO`64tow4}XO<0tr(wg@GIi7}c zGUgh7nf(Z8x(cs5=DeBsAt6hbMVx>|V1a*-2gK9;y%m^5E5asVoA=?>!W^?!3kr!V z32qTttU{@IYNHGzUAhX27j1hl<>&Nbg3w9eeTO)*&)2e=V9txQi9+1aztr~vb4D#I zbOrMx-?v1^EapS_5zZC;;hE#F{4cF_l68B<8>#X_$c1<Ayz(BjKAWB2uY|dAJAQo7 z38(Bh?zlf{ws#*2gDei0AXJ1C2>JW}efUl!N6~Q+XGIY!Z;8a?-`;os6y1bACeVt3 zO(wj!eo#?2c-h)+IG&xZf4&@9@^>yenuIhztNoT;#e_U2{n0+{Cb(cCCK;*4y6}TB zqm{lD@6Gxt*MeqIy|t^sgk6HYsqxf>`{eN_)4YWfXItdINq>R&kEpCShH*xB&y=xu zUz!_n6>se&{9d^uiY!P*UO-$T7t_nmrh71<{>N4JrEpTfUrsYW(Isf0q2Lzq$4((z z$I0}7xl3>IVeWkedQ@xm^gH)$yxOrej!<?C<_PtqcPmDOk!N4sk2$(==qs3%{9I(q zN2Z}&LM<ij41^5L^Q_?I_ir2OT~lOCGp8n#Fw98psA?Iag{}+r_V#M`*57!W?F$4Y z?4xl%zQl5v4mR5j0xPT@v8uuNv001$z-mQXsV(i6r`6N;SLEpUTdC4GU)vt&!q|O> zKjhshk2}LaC}#Uyqctt4Fro+T8TbYlc`Fd-B+2QEA_yC#g2UC>js50rE~f<=wnYqp z0rpNYiMGv?nk%Bp5s6*23m<HO1x2R@NzciCVeyIBW6q0Dfga+J<#EIKANO!7Sl(8c z9Q@j+$S@o2r*Xx&KWJm!o{cCb6CKq}l{A?zIxxDGy{b3c-zv)~>I!;Xpt42Pj)4+D z-z#kCByvvKr=hpIhh*LCD5K@i`p$13+$@N7cu`0DKE`6aXW3c~_%gDT$ckbWu*C5P z+V#|DjjN49m<$5A1j6VGrXJM|<)mxPtW=X=F_ZGWX_>=L@pnA>G?B+h(!ZMBAu)X2 zxU#_r_kwjTPz7deE}}esn3n&{wC$t{{u^ncP89v84|nj0VPg$}AcXrO{e>#Us%d1* z_gJf))wVP8iDYlc<Q!{-CdEuG=S-a-g&$7srFF0k5@^phqtesMww7XxXBD+DFXWDw z)`*^e|M+oD>gogFl6aNDKCAmHIVc>310?RNXaS4z$FgY|t_avD|Jgo3wEs>0q>u5& zwR#&Ii_|o%(~dNGafO#V5X+%EA%h#s=!x7!wwh;riF%VV8W17sZP#^YgOG~%0V4Vk zLU7$$yf?djS6UhQp=Re}WASG+3jhAslqX#9DOithD>%rj*Z^qKJq7!x{P*R8J>UyR z6ZdNIih~)fc-0Qx1DLrx6hJQ~6jgR&U(H=Hs|RXxM$b6e2ZgWXhQo$9cbs9DXd>!P z++ACO7rQW9<3Gv%t?VEcgqe=quONq=MkL%<sH%_;ned5;`TN5O*i}$b5rNzZwv!h~ z2T8YOAw0Si?*myE25{i<3O*kc^enNu3gJN1?bwj)?t>u7IgvP>1FlKIb;>8+z#$Jd zc~4&8=;)v0-;!PDyz?Lqqxc};Q6m7Ep~+W{1x$gc3vVR=Q7{OhHVFk@ioC{uk^LUN z#i}j@e@p?aK~j(9>tRKpWk2i_*Gt%?h&aBeDSXHh{u8+G@qx)R7&rhfTM_-3u^I-$ z3I~#|W`&?&g2mf%VW|pmZBRBkkchDgNP))CBoq`5W3&g3sslMEV4CpSFjyQTc$%}! zq#hPm1U~vbag6we*eMn5MpqpA*sZUPelvRqtX$#bvVq@)a-;r6TD(ASd-Q$N-6eG* z3pN6gR{6vGD60o`=pMUg5njyfGp?S0ku#^-Daq9Z!i2$qz++}As3hF$AArF${sADc z=pO)sRQ~})NG9k7pd$+*yZ~ZsC)5|fMYW3m0$zCj<Np5{|6iTs^3SWgtrf;cZ;;dc zdD;)|NI7ySj#GWmL6+{n@G5;DmauX<ZVw11wz7j@>5I2rkuKuCPBn{C*jy7n9m1d1 zJ3WlOpAIF|GH<rl#Ok_`(~kBM59YzCWFr&<r;X0dtrLb*hFZ^B)3SC80u&3Db_-tE z3k~*W{Ij=9yV+Tb%B~|n)HKT#vnIA%d%nZR+*3@d5Eo$Qb3D!>yP?^yug-XlW!pCo zcJ52FT}leU)6txPXflPo<|IfkP7E6L==TX+c8pFvtDEa#YrX8~BJso;_@*R<>x5I# zT=u-5{A+r+J+)tWFl6Hc?*(-V^Ivsy*{v%pOr*2b0Ia188<Y!(85g*uJuy`yQ+&LX zCxEsrmwa4{QXJojoHUtnYgX3%1{z{)hm)3^PxImyV{dGu2pg*-wgc)<ce=KMld0An z*)qP)nO&~Eaj3A?AR77g36C?qbH_(U07Jj!c{XM2G7HLU#eOII<7Cw!A=gEsu+qbB zDA6IOoREEQeYf3ir6RpNorXrlx>pTJ?I3f!JI3fV*5&HJV4OC0J5OfBo<?LVCOJH= z?2)U7Mg@s%p-dZ?siw85Uf)6X=v9KN$GYZy6G^W)_({wV_ebx>$uvRPzD1L^1u_p| z?w%j#N&2p8J&^bS->MBuS>Ukk(rGCmHIeOP{hOwA&7UYKMN2XG-LB*}>30#r_%~2G zvg90Rn)p_diqCOPyr<XVLLHCjJEK2Y<}hZe`!o5-os@Z3Kq={(Qt1q|$xReZuWyG4 zwBQR22A`oGs^<LHru2;&i!zscqjK3Ge?s$NncFFN?xED;msuz@o|nKF$q_BPjl4<d zwA9$In4-)434GuV=J14x<-#0SYmTofFc8KKd#Ruj93vUtkYb8n`3F=o(%ZgD{~Hk( z(@Nm1gx8T48Q_j9-5q=O`cP*9#w(m)nvSW<+X43H%KPe%C#1j1EebAmYW*`I81Vx! z{*<3<xNbV{&Trx*-x0yv#f-zLGj($_K~LwCuv7w5Ta@464f1R%Ud9%IM8)6PQN(EW z&_&gJdH8I~7WYR6C(+PGh<kx|bjUFbp-@o-Nf|qg(Ss-xHc}bbJh)NK2>h<{+2S>H zBn{d36+snlEB4OD!5JG+{3PGF_lLQRDN)7tiEOg&Ms=wC$M>NH!zeccLYJNub4S7T z!ss`PiJr(E91QV1I-p9gY>cM7_xa+2t7nDL^7+P+RkiQ0H{vp!3Oqm2H_Vq2Inn50 zr?a!d#4QIEJ}8^LJxMwjO3Y&l+lBF);h(r^!t+)+eov`OZ|2u_^A%G6Nm;lY;$Go1 z2K)bHen}Mp1Oo|TE`dhTG`cf3+g<Y?KG%4cUD1-MsjFs5!MspL5q$+@#7IsUjySA9 zC+W;$opCzMyUpc;)rQ0?00~c~kYm6d9p9O$p@V|_k!+G+74tvc=XlVt(@n#=ui7R> z3o@R)A`q@YE(yshq?a~fp-dKrk*1@#;2iWazopN4aY?)z!B@6YdjRR8)X`5*fz=*` z_rP!>lMW1Jp8SJa=<)5>Yt}W0C^>Q0V#_wrZ@mR*<be_gk`#$DO~cgP5DS`REDpn0 zpJVr(-9+3F-8+hBIc36R=>S@3By+!Nayw1f=nnPMQ-x;<ixIv)aKu|-jSy5RmEzaV zIAR-Vn;oV=%A`cOk#~h}^Z?@kg^c-Z;MLZEOJ6vOrvTTNW~3sp-_tCqr&F#a3X%Rk z%<MH(Wpm|?78=FeY?ZBy`VtQr!&dK-ctlKe^zr*Creg{QVsl@_Hl^Lzx;p(xSy%Xx z$dtsBJK_-`a_bMGR)o;1BRD5TkpUz0z53MyER`g_GCBHTNf4gB>~=P;L@5l61BzqL zv?K1|QR+{w|HK_nkdJ!tYXi2fy}~tSe*m~lKx1_6jp5e_(VP~nX!k_LHVHt-G~uZc zJl~VPphjb2f{6thz8LKHtEf6Cez5KHf=qY%me1;a$fA$X*RlxRfxT@cUyczy@CpE( z|0=J|Kj=$YJk~;}Fq!T^r2M8K(w!&ju~{R17Cl`-5hE_M(ig%~psn_V9NhfO$)O5o ztN3VeWEXznsq`wH=-pC0UL^T!6B$yHvjlUC-d;RU?rAeA+AS}TG-q|pKpfqCjS_uh z-OhT`Fu0Pw(halY_a{O#){_U=sZ6HD!1cw(o9fp=;i1a<C>pTCZjKhDfM+4gR~mo| zldIP^cYP?o)EicW(hBkUS*sMHrd}dU3UI%2Jh^r0280&MxVN{Ss1@g|d_t;H59!p~ zDn|`an18?(S`=ff9A$<g`!GP?-&0qtDHhVzWQc}%XtqCa+{5Szt8d|3GZ`Lwf3L+Q zR#{edEMp{^FovOa!Y3L_(TEcdziGLuPvODwhW8b4KSt>CT)06ck$IyYlCp)lT3O4a zE)iKP&~}=UAR_H6Q{*h1=i3<v4D6-)D(?pPZVXPsqK~>7>ta`P*uhRlz;#*=u$*e6 z)B<V>Sse}InhQ2zPyv)hV%lFuy7iB)@Y*=4RfH-DCEaog5P_gynkS}6NCNZz+MQbo z9#{2fN#K2BX(0Qq`cw<Z*EHc@b9}CU>idCav4A)~j!`ml$3x|5uU<&-+u2K|PyZ`f zg186~;9<b1k${AkWl%&G!44Da^=S96uGbD6NI^RN`68)j4L%R>@_6e3mWD7;$Gd95 z*Q<^$Iw|1mzuWWDZ9_l_r?sp}JOa`X8j;)m#H}qWe{8cQSR~f$HbPLUzcPXJ6(q+W z5_<^aA7a_zIY>5gqx;Uqv3E)KhdNxr`A78ny0R9pz=Zzw{)%WiGflGLhs;-QM7nX` z?%UakQZIclKjzqnSykg2T<ojEHQ#)qcyDU*Nqj637#Cf;f4!sK9qMDDJ|u2Gp~B)i zs-j@3P*6}md{e-Wb;DNu={V4ycPWy9e`Myd-xHp(S-9JPM=exKC&NUYJzGUwt98Re ztvM-kssy8q-X6`f>o0JL$v;^c1Cr7S5d}O+lx4VBTxIhv)NZgZXt*xj!b&Vzu01{3 z6kcZiXD+SADfyiHwXqcj+!Hk2sKBKqw9ofshz#6!sefGI8TA~<kQJU?M+;1Z{thl^ zd^<V3JshB2sCY*-<_doeT?t+aX1n`3$8I@tWZQn@v_~|+isM^%Opbd|nfua}wOXxB zXufv_^Qqih;C=mdIp4rSuMz*UqIuE^VJCQ0VlvTt`w!()L3*GpvVIwHCSJ6@5P-HB zn7R{u<W+^cFt`6nL7RXk7!7J)9MhH)k*z-Ll7G(r*1Ms^UI1y2_;SIfG(PkYnRV_P zVLC_nxZ<ppw)<{MtKPeiv4=`nUbZiS3OPdfTbc_dg!c_P{EG>$o-<EY`Te4&J0@r6 z^{JolQZQLhhxc;(QR2N-afw#xG)vE@9d}#Wg#sObhRxlQX;KA5Zn!Ez!*qIZNb3N} zp_%CS-zq%Vc;XnPeeM`6SXhy;V5#ZAgW~+4a|ffS2+Fjm?+)x$M%--?>JdFN3tO9u zgTIlki^qpBGwCtlx(J2B5Ninr0er$bg1SUEaS=@$mxr|1#uXFjmM548*Wlp4d}qHo zg0ZX)f}0TUd#R3{sv1kLi<+SF5NNKBX;eX@!Fq19{Xx5}Ue3U~EA4M>uPgYdLR`rV znx811WM)E1N|<FRuOPWTjnfxqsj1EbD6rLq*jdhNBC5VqPp?)(igG1=?6iLIS}yE3 z?<V7Hz05t(J}7{J?zD6Yak*-%K9NR&@P{%nKnrOsgbs=;5Qu6)6{KLE+x#&PnXirv zT@oi*22mLhw2Fam+Xs*?v=4kOlN1<Imj@Vr;L8rth7fmIDt|%2`zF0G@HL1A?~Pb^ z1Nw=ij8`t(OpVo?DFXj{JWl~!YeV8Gjvite`gTx6^r@6BHUf)+r5hl6N}O*~=zX0K zILMsF<Qs9CfDBdLG5(K_>SnJX=>>nZnIxt0a(I>bhLkYoli!T=dUD5bxDwq(Ny{oM zqNflZNts&m1!9TmmuQVSP$z_D=qs_)q(e&3%FrJ4PWV-10g^--x9XkG{vqGHe&=Vh zQ2*LE9L63m*?V1vK3fjaT%K_2%l~y)c7A=_4WOd;d01-x`Jwr{Z82_f^E@eXA23Zl zeP+yKRB`uIvTCq5UkV(!WaSc4=k91w15xg{T)ChAw0pQbO=oi1H}p7ylNz*4_vCq6 z4)u6dgyQ=eyG=1+pwqER@5uA902$zTZ~4@gHnn#AQ}Sw$wTC%Gj}dL*&bHjNiv%)$ zIhi?xs0DR4g?E-aTKuNp*foqp%%EkO$3`}quSWvPe{B)jqwTFFwbKd*J^m1RP(y7F z>KOn%7RVE%c})5E-O9Ug=Jp-0{3OV3dbMM~9=|o>ht-Jn5#&M9MsT2<^3nYJOe;=e zzIJCo)+adxkUQ(&pK*yI<sKhKp6f-*55B!>CT|s`a|+#dg*wspdl?02kbN!}CA=7* zyud0?bb3=+*(Ku^=oTn}#NA{(DNFZP!tk(z2X?Q7ZR}%|J-e|eU~7D7?9pri5XfqA z=INhudkc|_b8M|Kwp5TbbU~u|Y?NQMA}}zZMuFLBysetU@)oy0jma2N^PQrR*j-G) z>3%fq&?^N;<8i}#z%|`vB|i%o<<l@t#@{~G9PoDe!R$xr)0FtY<x`bh<q!=^w!!&b zHzs;N2c;0h0jWEVnu__=fj9c_q|5xPdtaa4SgRrXl@C$c#I<c_7IOSv-B=B$u&`-- z#BN3JRPro+9FOhr3)AO>?A@}Taw`1<o$RrqH?6Foch`%GN?Sb^<UV#QMo#1pjkZS# zGlSX3qfImI`b5he8awSf`XV{>z^cHF*lwcfGs=dRL1W!nCyULy$oDF%u|)JZ1Kaj| zPSf>k)+{9A2TcABElzPrud_@jmaSs_E%h$h-naOMBMBtFBEa=rxn7`Y=yW&l7>*JZ zw^qH|Ej}Oa%#517202^080z>$a8z-eY{QV0#)5vei^OOW|5_UBHeguv5tGN6$23=C zZ#xu7sqq(3e5YP76J}0hk0gVQ<<o6_Gxc>xFrB7x2#?!LP@%Qm)WK-EaO<oS-#KB+ z%PvSNsC_AHjmGWLu{3s(h+wQy31XS?nK#?!ozBy^ikcAjJxSk?Rb&x&=Bt*girozj zyAX04L+u?jwXb|%Pv2u<!TFC3otw4o^*nxG@Zf^Eh9rI%mW|S0^Pj`+oYB0s0&jou zgWUa-jV5b*eR^SdMSU4x*CvHrwE(ZqdC+o|yK0A?Lh-&D6;iD!^dAvL5XX9@)TLU8 znSAzaPC<Id1F03w&^Qu&_es=m1d<m<%bNjTUa<MGIz1&NjZ^BNxEo|jp(f$>73p<~ z$pyj581LUE<~h$(1}r<@z92Y(pX?yU)^rxnJG0}4*;F3)4tKNH<Sx%lJYWCv&>2Dv zS4SmxUU%8jn&6S(I$^O6<28(ADOI-n9$5R=NEA^@$*-cjo<%+<MFQpL*vnO(Ym6aJ zzr85lSvT?#sJ*xL=@%R+r*PzLUzi%plH1;3UhS$+F(_xp%kmU>V~DZ2>^Z+_O)&w{ zF2swjKi{)y<Li`5at>p5Q>#ru1%|NdxZL0TY%L#|U^kI@Iti-$s&DXsfedq;YplD4 zWqdlxwVsy&rn!l0@7FlTF*tG2ImL-mDg=uDV%gK1*9!Z1P&e6O0O|Of0f04PB9+iY zXB);clh!NuYKW%QS0;noOsLw*^EX#08XGQFuz@FkuclKRYX(WZB&GCx#K`1r<@f@9 z+#}#CLhXmf6h8WhEEooLb(3G<-$^n%-@QXnO%rgT4jfoU_T9lj%HteO4G%1B!{_Cg z_{q#@frrwS`*%8Jm+U`3z7geP;DQ!&{NPlBR5Y@cRoA)8&Cb1EubSJe2S<U1@`P(^ zjUaoOtaWHA;nLU~i`)Q@8(_BLw~w|y>-naQ1_v<d_esN*wcOt)6yjL3%nh&vJ6>_$ znNAhhloy9ug9b=TONx7J%nV+FN{%TeqcEFQmWz*U6yw!vPT_*~LlXnvHCtJW)+L*8 zgg{4QzMxa*7;A>Nc(Z4UhuxOASDw)@SwcvE?Jr#ZM+OZ%Ptv?k6HQNL`t>S!y73>+ zV%``Lc+RV`C!%D)eZsx48?HI*S2BpqF<ZT<zl>*FE{vU&oFR#RTRZ5cLh7DYP+48p zAS3>I?RcdgK2l=-+iJdGELy`usK0PR`1$V&ns1aD*Vi-I)qxB+slGc3)K?crFc($y zP#qz5f0kLK%$?U4u?5}&S5EKjmTnSaCPxD_uB9t2a?NhTf2eK56kcU6b|C}~BzjD` zJXiH_f@1u3xq6>%n~~`bEpWFp=ah@I0*6}q;<Ly+)-s6)1)tB&`jg`}a>p&48$IR- zD8D^EvkICC41PQuq=PG;?>_A5HIB_^eb~`L@XtdPm7;8qT}v>gw?E*GC1T@6nD050 zLpbjx{Qk~M6S69Hk71k5v7MJwUek_qlS9dU1cw-%FAkPJF&Du}wbu>x?~zfEo~-oW zACDg$mcV)0j<=jmwyuc~zBqet75qAHa%(h`CGb=v@MN;Rf1drBE{DaoKWmb0XeI4& zP4#73&CKiwYYvIxY(5Tcn&>vOz)>HB-ICoLLsGes<x(2c)M37q|MA1Mnd}<hhQM=O z_s)uSbT&WZa9UrDLO;P{5;1=%if>aScq~VU$6<@dsGm-y1T<O<QtLlHN{xwJM*eRB zAS_?)w;{ICK^(b6vPZlEgNe1X1Lj4JNXojK+tEPR1^W6v6qx2pfSbLhq6W80WSF~J zLtJ*>-(1hnpT+v?avdB!@G-Uw`Z?~s8F+6Vnp09TWCQudPmPX;1Swu!qZ`uzV5K=* zByq*1QEyF3nJf^P+^}l<TMrLikfKRjF#25BM;dLsW<o|29`h$=j`9I-H#l&}(?5O{ zqI(@q<d1SFa(tXM4BuRK9aw@7woRYpY5!gpo7I@gN?&OyYle)?n#c%=AKJGC$N>5s zAf#b~-IR8<SPR7#T-m0M{n^<q71gbpo^2ylCS_tLKL-J;YgOA}f<B{Sz^VZLM(c(N zkBUT4M2t?0$X^fIB#C7T-*1u=--`Mh6>VM}H%;XX9tOC<g-v5A1$difqUf4mhJ>Mg zFUiB(hbhKGyaL}rm@=)bW+0Nf)8!W{J1oTidVA29Nel&CVAw`Y88S?m9Uai@Y>K1t z0h^{<S;3|OAsAJ4m|L$5y)N^BDc>Ojrk6>T&NI#wh!9wmmsg9g(2v7Po1VCtFY^75 z>#H~M!edNHa9l&SI(0Q3u2#S%a;|k;=ArC2fxdWF!&URi1iSvf!vrBg?wqV({B-ij z$q!y@`s$hU2x&=~^a~@Oqx3#Rk5BTgbFu#ZliGv-#!OImz56SxG$3q4N0y48Lr!vM zel-D89KQyaOCuOouJ=o5GBV$it95P<Y7<8CMNH&#Q(cojFC!>0B|U_M)|zB8_gxK5 zqVTY!X^K?H{K<${5%XlIwN{#v2@}ImV4eNpmA*%qsmljs*MDmvq9CHS?;)XKf414o zF+#EV=w1i+@%67hlJ(aS1R|taFsRZTs3<U$`}mhNJp#v4T&o#<YEhF>lh+I|k#mtB z{jg-0nOncyF4q%QmKAc@=Tu`6CABb?qLs>J=F)1K=Dv2VE_yfC8*l6nBvb;hA*)Ey zR{e3Mu1ULc|CU?U7t_aVhL*$r;nLnpH{t;y53P*0vYN{i&FIr*KL_;0`lBUVs4?aG zYp?UBMBjWXyZ&%7w->{?e2i({NTNSsk5dlNvmk>WcM2h|Ti~x>{|7o>{omRD@BqjQ zOV!H`>q%~9lzP0AC=umxb<+y|NAAh#LxOlwNyLhm3{sad{|j5)$z=M51qXyuio?Ci zxTVFE{Z@v}4MR1uz|%yET$x_rY8UCat}L$WgAAoC>XPPuVwTjZ1RC!#a{+dc-DfRD z<rAXM995Y27gYcX+g8ts`x5-npw2S*<}LnN)WrI!Tz9yAhz3@Q(c;jSl_G$Oz}$4p zOVsa}Oo1(V*_M`|Ffq<B)m)i#m?StfFuF3OPJG6Z<Lc?cz{t_dK&FW&L5(_unCX*v zBRBM5!qJHP<i}Vh^%99XgC2Ed@YV2JMDLGK5VMRGWgR^8@QmL>qTYT_aI=@PJHU z25u-iG7oR><}Y&^Y6RPQ`C`I;#hcuF>d3dD@q~#<Ro^c`xxVM0?86<!`&oJ4_p<Q- z;?wJZ@2ookntU1%hDcz+Tc5tXC<wDnnl%`a9i<=|2tMqeH#xL?IAK9i`dc-m1%h|) z8v}$UbKWB_WkO}b{(K60yP%2M$DCmCscT+EmK`%XQp_NeSAd0O9usBhvw|kDK2+Ys z1ldqN;a^Zb_eKzilm-X#>*{Y@Ugs+bEfBRCcq?i;+}sUT*Oip^B+4%%x1oTE9R!^R zV<b<6Vmqu7#=Y(7j`|0OtUziFG+I#ZcHTdUQKz!T-&oUEr=Fmf&0z@VPVT9dv@+ez zfzYYjd5ZxwrB3fpAn@|#RFs*WsqyxSA#Wlk!h;qA;`rxZ$E0jmuZ^psjSc1UL+*Nv zB}AeLA7boJuZdi|wmFf)1Wnc*j?V2UQ%JaO6|0VU%q|w8P`PIo2aSLe^(i-?ybU?H z?y}6JT<}l4<)SwT*qprHro~Gv2a^^+3~CJ-wm~7N<Fek;(is6hCnn;;Tu%mm(H`li zN8VqD*@6tVY?s=@QS_c>DVexaKI}I$<KOtkEkYcp5jzf~RjLB$rxB(Ro+i3i9%iy) z%PUQ@Tx6!fcx-1;?XlxCaotBNF7$D!3BP<bWL6CW->)T|o`OBr|9s-hwh_Gzm?pUr z*L^g;7C8?f9bmwt%|3J`Y?pT$-PVi4+St(%A+vb?K#H3tJ&HefrL1piWbb14oGPO9 zN)6SX2!Eut;oS0kU+&X;DWaY$tX?^RCH%l@Kd}3}|46)WtLlL`;j{*|Tb6brf5h?2 zc;iSj<iBjm>9dt^=h&hhJIsT)u23mrlP`KO>1leAMLCh!!RC5&e^&z-7X8W`*-?JV zDJbGG%F0M_LKRaUeRG<$fR27w*}}8kFk5K2*q(!jp;IXo(DqmLk%khi5$5q#<F9$Y zj<Ine$}pyf{`Y~i{CKpAgYCKSj=_4%(TbWJv~OhgCoYT~%vCy~{Jb}bFQW{aZ{-lY z`#2|@uItt1q+79yA-_Pgr6FMptz<Ugdyb`xSh(ks=0)4v-e~5vD{8Z$sX_V}i+xLo z%?^7{BKH7gSnWv(i$>7L7@v|%FMQRWuaqGW!rzl-rT9$ZbH)Aoq$!h>&*A+&q5vl> z%uj<+%JD0>o3a8h;iu*-;QTtqXr^Y_X2<|GzjN#R&5SEF?Czw`Y=wa_7E-c<SmnPm zsVAHE5xBnnviveCa5f=K<L;OIL5o~9#%~4z@O0-U^#E!1QfZ&xctj%g{1WCuW2{dP zX!BRj|DZtCW`^gwD1?7xu=O;~K~kZE3JB_isikWobog7mSxq!*<?hZBq<P0})pt6u z_MwN_lz$|DI(ssVfN{QuIbD(dq)3M7<-iAov>tyS7Hn8<|NOV<QzX*qyA9OCt<q&n zlbFs<j`!YjP!p@?L28^dzv+%!6LTxqIBR&;F<zkKQVe72ipY=b<+0!7hZn9-iOp*e ztnNrz>d8V?pI5eZRaa@RM6@bV+cvv!-Yj@}rs-IkGB4xjSGI~}PvZz8Xda-kKD7MW zI9=)K4}P9uKONbk3Hfp+qW`r+zjLG~7+cqPya)U%6M#rpSY2*i@tg11RB}Ll!TmE_ z$A%%H4rlG=kbY@l624mk&VWk^A2G9nv9EoEsD34`k13_c?8Y5R70xn;o^Csy0!*Q` z*tj?IL2zx2k$2bP8}Z>}08|OLIHF+Mk?fR6Wyg>5BL3k>JSogwIr#q;5cA$(V%Eyd zm_DYzw-FN<h+LWypR=^fwEG+o@m)-pRX@tFiuNK4da{^g@G!f}e!5IDMzLKU`(=L> z1#dj;P8>^hD6UssVj<Uea2KurprI3HfCZreo=nYDt5hpYY1#B=A*!r~hf9GZUgx8d z$$j$A5lS~{NGIn3u$+cfl9~uyqE1foznpUzyhy|bDEKyv4<ZTL+fG52t1P7<)lefm zA<tn33crYLT>6qW#UEn!5UJXi9nQ*Nh1MEYtP8ZsucmDb*_>xVtQ;jeDoFI3o0O^d zP`dLEvr#{@#iY<vB8LtfA+HSXjYEV$d&1=wo3^%}L%>h7s*`7L7sPEe4%F|B3Nden z4gWbr0{jqDseMx2`D=E?7TZ1GSoMxaN%{6r%Kuv?9!F*zaRj<chm%MiF^o@>ikUmk zlFfXl3Px%pbGml$swa25s2debb8^^vs`++4icZ|df2w-g>GaRcRhdqt@3_PisfISr z7wr*Q7feURX`)l#Gl>}vYoY4=HQb`h&VaGvVH?mjXQ_2>|44Z>a9Nav1+TBo^W156 z#D=F?{NR)%R`}fFOHIyTf9CPDqvOUK<i9-+0!F)DzcnqVLl@*oQ>Vqc*W;hlTh^Mt zjy_y{W~h2caiBRg+I*Wtq(GX(@=%z=yI7k69~L+69qP~kUBnKMR*J3k52%!ajL{#_ z$rjn>0}^drJ6oE{8fS&kl8Z2&ol3_aXyQ^I5#;tg>->66l`j?=F>HgkF2pE)HvKyf z$svBS^wZcL<{mr3XfQ_UJuBc9SK9(hIR{i$4#lXx+y?0ot1c4&osJ(?Zw`8p6%-Gy zFY9NEJy(<U6rTj5RwiR5J>P}hCx(dOWo^jyMSSagtdUR`;#-*VzwA%AI|l(uh;2#5 zrT(m?S2Wm8DLHC~IC}e$fLB#2IjeJZKMT5}rVRLH^)%xGTw?B%%GQn~YinAJan3-l z=lkdV3E~jR<LHK^9bKJqCfIEJKza7wWzJCo$+w!h>48QYA)lEq*ETws0S+alyZv4` zfZ~m9GterYSr(oMPI=B=%hqT#SsfPu-u!(@$^(YNPfNVzM^4{|shj4sm*Kt=t3rI} zzkGYs^`j~UH1I`O{Ll3AE}>wo2gcM%xGjWAM|NKJ8fs6xK<;0r7z3I3cX0PycjBR@ zNa6rVDxg=yjF>fz#jGsDr;}HqhP=~EA>}U30>Wq+IQkjh0Z_E*<o7;0a{(A(>j0=b zLMDS`>;*CeGLA<Vj?To>0}@~+_Qoe^=9v=ESB^g%wglqhd{3s29~)){r;$q*+_>^0 z5|q%TRWY+G&|s2kX$-5I^93Ac0^s@iu9p0)?uf%Ch<3l6lvLk!#p?-Ff$4w!N?02H zbB3PytG}*4rCGOxU)6&Os&4wKHr<>t1pc><co?QPsXX^fGK$xBCr!%4W<<I4*C5&F zgCvyv0v;MOC2uy=0xtaIT}j8VP$^Zshsd#)8D4xSv5zR1SR*J-u|l~ozAyaya)%W{ zwEEo<sUF<_S)DM%`EAdFe(pr{`vrDZA0HNcv)lx}I>eSQt)2jAwSdnxJG<gosNL>k zc-icNc2p?Q^@?7_*%J2h0Vf3(x!-YA_wsXIan&`){S|Y0W8=6xQFtHPqxC=Ch0LcH zO9fs5mp`^}A4<4xw7xuRxaF^-CUT^3oUE{gz+1WAV>3Ol2g)oN8$!v+$zMR0G0Fdx zeZf~H5dK?{NBD`}PzDU4RvRBPgapNMRQ)bucH_Ch_9_kTdZrwHZ{yv{lRP&oN7*;7 zodf@1X>nX&)%#9)_502aXrC)hjo!{=kWfn5KjZCk+~XN{iD0<=c-z_i`S6)&cAMDS zghqv^B8d;|zn8P?J9Sl8*kf3fn#MJEQ&pZ%f_1-rM|-%YIWebcph8vVV@AW$*Tar4 zN<hiAWEix}kCbP#`GCV*CHR}0&UQ|-PM$mQGvPORU@sf*`^h|VoHr_R7LR!X{85^C z&IT(YtWaWnI&Su_k(T@)b7Jyv(fA4UetNQ89Z3PGY>|q|=DqGY1?X*n1Z;X=Ad>aI z>}bd}>gX@KkN`?hoP+JYqZ^)kMdxuv_eocv<o93|`g4VBPgk3!WB69|fx!s7a#U+b zj1JDXk`EK*&MWf#Um^;hVh_Kgg4>Q3$2!(f&C_2lwtr}(x#mmELKU*_);cgK53wdi znB;$GtO)9!RzE?rvOwQl<QDp4i`=3Y<A3<JS9T`MS$@AMvlJ93N7o)i2N=#*ZMWVA zBmc?mp;=vMUf+FMB`@`KDUjaS|MPdRLcbrdbqhA!?KfM%Y4OvPwn9byt%VdmvyZqB zdd@-?l}NLw+}-fNlAUYi3_HwFsMc|t_>q?X%e1F!E<d7FqH_7hCD7~Gyry=1^!R{4 z5*dH!S$jV=n?vyK==J!WQ3lDk^_)?WiR|PAPD*LHD`QL%p_HArxzMW%gZF(O^Uk%4 zAd=UYdSh#hD8CoT_dXv}#Hx7isYPZkQ@Ym-Y`qd?8lA5x5+IJdO=%TPrh)yb#`41Y zN-V$6$P}5bql($zy!W*y9F<EU2Y0Y@#0?-%!YMfGE?#f%xM5$3$VIL&_w1MJwyi`8 zehJY|q(I}NO{T1&h=!nowgoOtxJL6VkG4Qfd}{XQdBUx+_BIyD>4|LM`mf3IED&<L z%o!0%TB#?t1Xc*AcR9+3Gx~x>_s$C%FpA6@2iF+M9oKP7PPqYRgl^06h>VGzu~V&i zmSn(+#&43n3X-OY>n2F8g75-zV!?M|P;{j>+mBH;bjav(fxQR<;2Uizy4-%~u4{bS zcHYBnT7C=)!QmRZWRnkbW~d-}O&q)sQO)<^i&Op#y!Vt0#nm<NnF5lny@cD|cXiiL zSj{1tC>eNqa$zjTt@U^P->L3xd(hPf%#*A>`V6?3OyMpQ%aK=IhZ-P3w46)Q!k<EZ z8t>e7$B<2+@q^0CmGiyl{Re!6u0{kP%i$KeOZ?uTafIZ~Z0wCl5yF~hIrWjr%iqc1 z$HUG$&%K)g)wrVaQ5;-Py?YKEz>N#P$y5E6Fh3J!#aRics01Xj3Y0up`V5os5h)Wn zR6L!_vbav6XdVSq7=8bD%XLkCQtOLz;;B7Ek2XI)6jLrMi8p*+dd!FH>dT*ZBID4Z zll2#h9j=q&>OzH%pHY~q@#*;cqyoyH`9GYwO550YXow$o49mU=rH27yED626yjZkA zq7CXJi}O9{g*x)+wh|Jk<RaJs*U?m&#rzlK)hBWkHK{*Tv@&_J=nTxm(WwJP+&_XQ zLINj&CBywn(W>+}=QzL9@mVNrKxkNTpP)@1?z`z4>_>~Ojfy?7d^VtMMaVz5V?zAb z>QP&*cHyy3Q8TRvZEAlT5w><AKaOW>qWn;WA0%`LZ=_G(HnJULhD7VUe<;ZjNVn7q zy!Psi1P6`Z6)-rBJ<oGwAjKsLYpn(aTFlI+S2-%P5cj>cAjKP!vp_69K_M&=Qx-je z5F=-a-~=3(QDv5G6rOdHe~+>IZB4O2?%t@q-XMqv$aPy8Z`cqm{x;xO<aK%^MMFWl zy0?$ud@UTX6W<VezMU6xk;-g3{a}_48CY5zLlRwOY^Hk;%<6oZSko3i@vMIR`FCd2 z)w4nX+4=C@=sSj8HR&Tpy`7`tXH%!8Fv8wVAF1UobT-5E!;Xn`tG&3qk8<tQev_0! zV=qxu@bv0fms|tUlxg`7b=p3XADH#adE|;iOQi}uVDHuCoN`QX#}mFAy*Qi9+pYKS z%ZgDrv+V;uXdnbTBnf2{^Icw|o7<3JEMW9is?q|mm7YDwa;FEtPm-da{l`~a>NOT! z<NyS|c4a<o=-i&((%5_6@w)y>fW<_65>@JN=YpJ7v4)>@P5OBniiC?Xh+~bYm7s#a zYJKf(CU<KA1iNp28k0h+JDTr?p{YQ8Qu#sx2RkHy=CrkPY!_RdNdvf#`xh0Ezb|81 zS*uvjppSvqzR%7QQ9G17ilB;hWUy>r&$JPT*#UvgoQX=Ni3AXm>LmkU>0@}Wz)(e_ zUlVL<@h$KJYnl9z08qnBIm-6h<LAGLrx6P*n<jvJb@it79iY<7-`(n1Y&W>*JM>dd zyWbFMvKz`CzPK+@)L0`Ukq%#-w?Pp5l~FX?-|)ZllXb^)uhDaB0Z}S*Z^ygWJZwV; zcb>_Vh;)${Gu!pwl029^QQo`SB>}KyfK^nYTTfQ~fiP~K2Cz~!0!<4oRrpWPZ$dgx zshWkJ>4BMpwCkMX8Gme0?UJ4B^N{cUH=+OpL<lAz5cu+(OF|`~p5iY#YUP)ljf0sb zKPXXS<AlVOcnVor{_uC|%C{jeofx=z^aQF%j4YJKCcw~S#_y#TSKKv$yTor<C{Lgx z>j6U*961_}oJq?C`u93z|A#*C{fAY-0}keSzw;tvhptJ~#Af+6*e^7U*uMOI`tSYu zw=Cw$X4!qOD1-N%gfa|;3usgf8@UySc;?E&P^wNnC~j;&hl0{*;E>snH59<kq>zt@ zI#7C9_%aW9&LdcyIIg26y4hO<5m0j^O_C)@%GdmD5^OFec3uOh^2YnbZ#8{8C{tQ3 zjG&AI1&O-a^tGY|0YZ4NIt^Nzc|)o#YE@TC+~iavwPye)W(UHJdakFv6#YK=KLsR= zJ6W(AAqE~6d*?@Dcpb@jF9K3=pb}x1$^*YQc!iCY{+QCq)K+2*whB0uJwAbHktM12 z3q<ui-Af#%s(%>dvGsn+SpyDyYVq%j8T&=F&H_?~ZS#Q2`d0i_SNBGOANz^o95x1I zc!vWk+^ja89&RaqR>{_1@XIz(>@GF>q5JKt{iKvH`9d@Ad;-^gBMM}IyWj(_zyR7< zDgQU_SDS|M_Wg|74~{UaRrtvrNfkXy0Vj9e*3Z>3jK_}#UPhmc^#kpmYJ(oy>L~sx zX8;X95#!+KXZ86_>9`-B?_^_Wl@rZ9gKz$ny`HGk+83dHfHVcnbj%-(5-q&6M|L7| z6?N2rWk3Ov*)GekLh0Fv0wj(ABGTIelt0buH|Tbqu1KrT1tcstYTR`W$FA4>UCv$Y zz{T}c@ab1`Ryqdfe|qUai%BW*@$vHzO+-0&AQQUnp7PPLiUVR{?PvUtN=J}CS&Ko{ z7c9e;+e6&RIB8<wq@p<B$2iQgJP9sf;YYMb@V)Chup~0%&7aYD7y&vIh29Fn=?Ngf z6W2l&5V3|t!*X!BK(g>QEMg!n^aTaKd^rCo+%F$8G4QKbR#mb-Ay8vL{JqcQ<RNm} z{5B<@Pn9u5nbr86wYcwGkrW630EE4HH0Xqnh`RpkA;qBodJ7&l@yjFhuj2p%{}%`` z?tdlJIRC2suaN%*&;MT9|FPtMujl{6lK-RC{|_HX5c{}8*SXLk@9Q#{s^wSjDv!9} zuynSAEMj{2vzVx*1^7k|hNFysUb@+caq|ht)&+`QEywXk(Dko`QI^7}mGM_wk(*AD zF|iqf9Jf*0AVQpJ$enNCZ@Q#!3<18bfFcOqS|irY4){urD=5;`|B+Oi^281x%k>`a z_%Gu>^&&s%%mD1q515e%5>(~F0e^T#!~_^&D~GJ`!+U`DRv!rvlzRcJx8=Y%1}H<? z$7=u*zzP9xO%O9J0@MdMCVHv)4EFb@gwg;cSmD>#u*0z5XbjzzhJTKME4FZfuGW{@ zGaNgwPMAFvPp*LspsI)86O}-5vZ|#&dfn0|^=R`zN-?;2m)DEkmp~&BTbIcTIe7&E z?k|PL6_SYKi!jT%13GB}IVf|5fN^|D!M;FIZ<rxh2rZ89h$C8+KST|9MXDcUk{R)h zwbTC%+R3CN6j(voRS!i+qPb{UxkFh*unUT0`f_Uz=pcbE{ox?)K1J^Mt3y-=?8t(J z0~R2(H{Wsm{a^^5$S-z@ci~2_>4q5HUIMSsS^x)lY+b~vay!Y!l&hUU_by^gxgEDo zd$@fU7pC-|!`pViv`(2#5WQ~5C$fkytQ}_t=v5siC{+$S##ei9n?D_5f^S^#1<jRS z+bIrT&D**Qafh6~wiH%QO@B$Z9K5{A&3>_p^FOTkO4AcGCaqovoOU~Qbkd~N^vh!P z-B7+(vZbXdA(4t;x)%xFy~Ofdk^xv6;EG*T-XfHMw87e1Rbi|Bq|?DmzqmA-HA3GV zjvUc79|3Ge+y@QzUF<yTM#~Drs=YrM%6FIhzshYd9pEUY1ZyR<tg=s(uIU)UZQwOf zRl_d*Ae1Q#$2TXd-m3WaNiWeCJsxgK^K5F}Ev2fS!%dsUg7z7YpqDET9ZRHwoC+a2 zX-SjWHO~$xqUP)F)EUmj^mFkGjM$i!lmrK`u^lD*85^30ltc{zJVuQ`z8rU_o#pQI zt7ZEfMu~7s5d#nrtZ517J4%u9<!!|bzNg}<be4er(siP)cB*&TbYWPOh2J>3f`mi@ z<*OEg+b|WyI5zh%vH!Zzi7;I{q6;Ubdmo%)qq^xu&Je0(yl;c(<qw25I$DzbTx!qa zk~LJ?;FugEu;|^2xMK?TDf-$>OG=im8!Hv2&idH)+{$_X#z}a<SEO^t%^mCSJ72ey zH6yiL^Y(rmf{m__bOe=XgyCouk9K?N%*Vs<rp?$zHe#bIvozh$zWVES2xBq2-@i|2 z-9OqQlp&TGcBOs9o~9S1`{;_wW8<D1A9^|^??Dl-&s4?N^5t#RIj^c>LgQxp8*7Tq z^Qp09QidU|G$KYNEnLpPUwgA92Cw0G379(r(IJARCNqPY!f~>K&L-Wf*%|y7_9;Hr z&*$5P=#4p^R~OFflc$P1Clf28D_(oL-1n`cj;dK+?lZOJD+k`E3zZ|9UU_fr+cYiC zsfl&Xqap6q^_9ln{Vg-6XI+eH{tx4f13N#bQkQQmVh<l~Vm7FUFZh0zBN_+Qqv>Mk z)&@-lasLPx;PIApz*dx)ZMIx{i<Tl2WgDo8`={N(C>kY+NB0!S4HP5IPqR_tK(QP7 zkhvO2j71cm*qzR&a|zQ&_nx8mf6L*Jru4~)T8L-FOtvdKs@4ArVPDvBNqcVM6LU-X zwW#M!2PHm7>$~og*>(vs5l0^H#-5Ja6F99(cXg&@0sM>@%Qn8ldPA2`o%%Uxqe)HF z#JBc2xu`?J4fsuCtWqGr?zV5U+rwUERKhVIBbGuPOZ#?;4T|FQ)g8eW&7sOf3~CB_ z_jwEx2X_HAEAk4Xr`}ndb6%P=#X<)xovz}7LTv;nv``X{h3m3t;@=Ird}XG(+m&TD zF4jj0b;$}M?uE8kF(EJ~1EL7;qc}(W&7|Wu9tTLOv)v?~zKmVmjAdz*tBK9>oU%*) zij%ni%k$)*$kpaWS_I&b#UWEO*iPS}OR5yZpIgFTS~zn*NFGV4cBB@Y^(e-A)sgAH z`5w&a{{y`Is{NIJJz7&armj|(TbE6DjBFW_%rw)g$i$Ua|9$E^Pln^bbCW<Jg^?lv z;UiR>ZiFibe_aNps#$3Gbj!T>PxaXEQA^1YTK)>jtmr{l^IJ;Bh_$r~et6=7zvjY< zO9tNvnUmoezYNDXBc+}5LdXN>t_IeFlPM#g|EZ+GC_>xwZ~HK?1qCxk=GKiOQGk>{ zcs}!aZq<DU5$ECq$Mu~G`-TX$SkfZ1gH$TxjJWOc)odwZNzs_+l&_ZmK0+C&tOAPB z#nO!tT81>raS>+^S#|YtY9<}i!pZGDgD;{RT@1nASNx3_s(rVIk4pg6uiez<nNVUg zvSj`KV+1{i=<wH8-~)cjP^|%SnWbgvM;cZzA*SEuj*`yb7)oFN?PkUO4I~E<Z^!e& zQOjB@N3S(j|H~rYjeF|rom|qDXXdA)&2~r1I{l*Ir0#KbOUp43tp_7^^4X>4{Ydbf z&x8H(^1Ns><v3net<JIklbXx)cTREV4!oJ5v^{I$5B$a$oqHf{fUQoIe$~9w2Hifj zka)Hm)mz+jsyv~c9(?;zcW&GUT(8FR6|_wfgu_`5lgL$H9cOshfyg&r@@vm8<tt#& zoT_ZGYeO)VN6SF8FNMtWW{hB^2iQ)(i4lyP-Rgme`#%D-0!#g~m>075t#=@EE$5lQ z#I$&4auR%7S-Qm~1gnTr9B_0E*f4D0u*eSp;=Aul^`&`)G6~?Hz;xOr4Bb7H4hf!{ z?u-B$Z6{Puqui?Xs{Lvgumo6L!J2{*RvB(&^gsZx@`L1W`3nIktuT>;0jkef{t@yC z4k&ABGeY$Pq$uYg`Em#;GjA{$0U?+(2+G9EYn})OBa#<LnT?P)?woEiBG8)#%0(c+ z$SY<6kt1}hJn__`ynsYLfydJMf;<?F^~Y>j^k5ZVm0yhlRsbs%{8t1ctP1&eMGtn{ zFllg5j~fw!o$a{3#g`<1Znxf18wP+d2<Iq%l=l74m#jbxctBM)X=W;+Qt0E~ql5Sl z`ubD5!}rqfIlu>CCfI^aILiOqd*PeU`p*x<oA-<7{bEbzYrhQe0QLkU7{VA1a@7u8 z^uiav8sGu^)C5Z~gh9MeRlVsYzaHS{0A_+EScF#{S0z_`<(B~-z~=-@Fob3Jw>eiu zR(jzpzvloSfF+m_hA@gZsw(Wlm-&_76EH`#1dDKrSF7xrul#aAAAmWcB^bgWj`CI& zTkyhHemS54Y{3ww*K$>bH~8A`3HV{bB8=f2?^el0ulU;U<LhxH7{VA1^HvpF^uqVb z?+I9fMHs}JRTbjkYriL82^L`t=XkeDuJpp!eh2V}U=cRrJTFv<6<+h5@H>F-7lJVi z;=QU0yy(5~dmq3OY{C@esy(=5zV<tSKLkS<!&aQ>s^8UWyXb}Qhu;A#!6J;}&8iB! z=4-zL*n%N!#7VB&bZflumEQr3U=hYJikGV@?4lRG_#MDE3x+U;VO&-FbkPf6`@MbL z5NyIWoaU-cv({_A_#MC_m=T6BhGD#1RY4cM@MV6-@9i6p{fKM#IJ@-#0000<MNUMn GLSTZj`mK@x literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/dashboard.png b/docs/4.3/assets/img/examples/dashboard.png new file mode 100644 index 0000000000000000000000000000000000000000..1ef0c39250b6348ed9c15fdb2718cd5c4f0814b7 GIT binary patch literal 24376 zcmaHSWmH^Evo7xL!3pl}4#5HhcXxMpf=h7s!QCB#TY?S{+}+*%Oy2kV&bhzto;7RF zOz*C)>Uz4ms=6jp@tYJf0zLv57#OmQ^cQ6?Fz`*#n*k02^h<K~12Pzx{)fyLQB_ay z)2!e`(=p8O2k7^<mSOvq7L=9Tb>fwl=KaofgK@2u@d#!*1m3fEKI+QJ(0Qh(1#uUt zxHU|qK^}t;FKRR>(Z|B7>2tMXJL|%?HL)NnxS&S}X!*Z)Qc*|@4pB6U!_;q|NJTNB zM194A>`&A=THM}dXQuzG$EYXXc_Esj4!#9VLh7Tz5JUO;iiTsZzZgD#E(+8LB!$Ch z(zQsin)uqKW>(i76^;IcA<Et2F*f%cTAXs$73`S(c6LF9hg@QBd6t|UbAPe#F0G5- zUnhSkz!r=Wqyy-`Cw9%e2<Kckczb!3th-f^Ep^>_RD0A63QK-tjU7uK)aC7u$W_$6 zZvG>*+^4Mj>nkg>f8}4+E0MSyXmU3b-4%L|Z^t;O+UKi)TENj}99oe~aJnw+>h)vq zNI-ytWk!1L83AEEZ<jGu-tRQ`dz8;kEv-UzE%lu2tvsD|gHcC&bIqZ9YK;SW7bN&u z*^z9oqszm)<GOdoJxlxj2DBV7No&nNTi_RTa@M!%Bl{9q)upSe9448W$kQ=rStT{s z7NZ&=2;Zimh@zz0RZCWJac8zd;?dZQYp~1{<=CbyqLjEO_bZ*q$W5c=Dtax(GL&P+ zu=Fp5(4j<wB$;fTJx_uM>dZ(XrUv_+a<SQKM3QCA3x7m_<qT04Irq`*+=j}z*D_<( zqQ>(08ilSu>xzC%0~@-VPwvCtU)B`(8vQ;tf0?=v6Xu)}5vqHiMAKJx-Myc1+t0y< zd9rrZH^*$n=(NTuFq^>Go}EriFi$cwkdNUgFJ(LpY5N&kyZakj-tJfPhmVw^y*<yn zck8Y#ul4vHFl}ora2I2}kk1251b*tGHx$biD=^$5v?FAVmyX@39)12fUV@1CT)>b= zFFya<mvTH}sxlk|xghmVr}#<a{cuOVkqUdG&Hk=rhhO~y6%N=!qt=hVUDAdr6gPxA zJFH<x7&a(YY)i OiYxSA>1pVr<6wv={%?zlwLtFXKL%A~e1H$gHuAqh!Sm}EL5 zB9{L)RbyvMV&wQl*Ko>1zb~s6hPicO-SyFF@GcVjgMZk7Z2NNe_H=YErkW@OIVLvT zWPJQ}=6V1Aeo}~dV`LmK;Iydz3oBHPR;w)X2?4``NlzNr=E&HgK{Fa&Yj?Wbmoj1e zYDt-b%<<^6vMp$d2#{bjO&Gel7*lCfm`AJeWMVfKTMHW0ctIrKrEx3^=8AA=R9zkk z<cUcmZ-*l3b^nTHvkaVZr0ByQokPj^TFhPQGGt#YX;=5_k9YI>%yc1*nhkyB$+`#> ze|R6>4zlDO6+PVoTgv3NBf0#1MwMfYZlT7JT>1h&Lq1+~m99mLQ5mZyT6ursaNtOs zj-<?UVeYo{;1dVA`84Wq8&6)p4UyRp4SC46z~`-PytF7s+A0`h26ME_ZI5VDxC&97 zHSkjADz3#Qb162R(=Hyv8>l%+g0Nq;N_%zfklufC<WV}g%h>sW+>5KsqX0@pz++)O zHq*f5dR|O58V%P2%a_vp>PnsRGj&VWjn$=KY0_%3QT(o@<6A>Wv=@J60qv^y(7GF< z{u`s#KU`})S8@L1lP=w`5wQ;mu_3O`kV!LWZyLXI;DZ1vgrhgr!f?2xW?ajw=}I}B zFQS1>6~MKVz}7BB3APLNIDJE6c%GbKkconNqhYC?F)XBqmjQz8lPGQl>DimN$kWjF zZNA(V%J4colqgzR(Dq`s9C?n7f10jH{q{+IvH1QaOt2GikLLwc5NU+Sk47F}Y0qY= zk<PvTp3^_j*n=!!y};)*_i-NV9cRiPydM(cObaXK9T#z>BR6+1QX3mRwGk2Pc^4;d z=Ym_UgW3n+hGbu8=Oh!qQp?a4-!g)M1)BrGdI4!LV8Kj9&XQglKE6oagkX404|H`N zD6a{&I#?e#Q}@lBEoUe7b}KD0i|*v08yk1-YVvyKpG~XRZ0(+5-p<ML3eh*82R<1) zg~a$LX%12@X^e**+g+dD8v4no&(ooScd$-B8~%h5yIn<rqrqB!%jR+N{v;CIG79FU zE1iR*q{W9X0Iez0FpE$5EjnEna&G;*J#KCJx1dwGW>@uPn#|7-$T_~aqAJo|B#Hzk zq)3oy@DNT&q+PTSPAEVHbn0)}nVFd;SEd39-s@6qDRP_?iO80K7copHQq%Zxan98@ zrd&hRw+qif3>lXDb};0`4vfKfzGW=R)2m5YwuWC{8X{d<Vmm4TGaRZVsTK7qX?w0+ zSprl=p-k3#@P6uYY3b$I61Q%Y)$oadKKThvgJ9m;o1dAb%az%^^kf)EEs%^7^WO=; z?L2rK15{VLP+Q@2TbyGgD@}66V`AiOxNV&~bmKm6aB|gXO-bsj<tyTup>1D54MeJV zU_{WWSTk~!PHcIvhtEz_ru|aYZZfzvYFM1(gOrtNU8tSMuZsBSB$kXumXcz6u@!;L zIR;B8Ca<L}J4<=U$g1`MJ0uiTGb=UqH#T7OlNX&D%kMj!*t_+j_0t!FTwSTmkagzM zQSeI{#>zOv6g#d8(bgNUqAQq+EO$kAQ;{Iqo;}_Spapmd^wkDDEbq}T*ssaxG?@-v zyx*26YEB7=a>zHvXfnLt`;Z*n!R+UMu3yx#-TmE|TQOqtQ-8z8q3ht@6YpDgM-qd( z#p%!uM(Id2MWz?+r}37OeRB?1DjOXi{+o-GK2tk;doL!D6Y)V-a17J^f@D5AfR@Ot zEA{oB{2mgUv05NszXi(8r(8tHGDM7yVbO9()s9qNx-WF{YAe!m<G>m2<lR`h<HR2o zZt>k%USiTDWrc#YiJw2{!6$J2mm5h$(QG~Tj@`&den^QIt54;&8eTWmP8$3~>NkG= zJ!{eZ>iyh+UAbznprSI{n@^5H!p~}Q|5MB5AY6=$%lZ0tiT4KQTOQ}ama8#!q^a}S zbIcC)H_@d!Rl3lK345utAlljPFJ4fmvs<ob>poy6HM(8I(IZN^=Fj6xrBk^hXF7iV z!hhA8xV9HLyv@uvw(nZss4pfN-PK;a=d_bgL!tKJ{b_;=aI_Q{rn0&yNh-RoAxl(N zh;l`1^Mh0-)&Akk91mERsKd{<()rm#$B0H)6Eb9(k5A{^2+ZACI6{8n0nNPH&bHrm z@Iw|C{t04hB=63u&F4W0x3x9)OMwe6gOJaAfi#2H#ejm%u_v$B6N&%wtR=_UVwcBF z3(>^H1YVf3e*05saCn>;@5uZ-7gD;w+1Srlh~&mkT+VVfHuTal(q0mjQLA!!oTvfR zl?(QZ-8QYd`Ny*Xzd~g-n)%*P1D-1<bUg5Wl$0Cza{6C4{R|Sr8W4pcLJIv01WG^x z26T{7<yuC6%F^O(c3=t3=+?EN`iKf{wg@AIsR9ItXgpgnRZrW`Z=`f|<$<g*hAf0i zCoy%R#J(87ahLs5#}2194QLKxG`KNERN}Y>y;GvzP@s7zT;EK4<wV#LINq;ecy|f{ z-@3a1NMOJB^b3g}jQG;YjoHEO+E2fO9b&(ljkaRN3Pp1Bi}zrGZm^H|a#hF<wsr`W z2IuRrSUk*_VWIQs&e#zt3c^U=OPSh&?HL8{`)2;^2+gYb*7X-Or=s6a(4npNrTG-d z6^9jbnN!|(1A(3b@6Rh2{2eehP0OttAHNPzS+aTDWJS2SIMdYU)9p|?XZ5t`9oxF3 zBMsrcn7~6p_Q8###W91$eoz8*v{$~;*(@=|<Hru?FxAc*_U|E0;dVw*DyRR#l}XVa zNCHDHTK_$|15at3!N%UISfJQ=5<avym+$z6CY1~$au_n7<r_HlxP2&lFr3ggM|JO{ z;_`NA5^Ul;14PuJBXe3*t?HH)t0VL1yHN0nhDUJs&ROOPFkl@IvEQ!!S~p@dW`by3 z76&qz{MfJ4H3wk(O<J8y^>lA6o`CJ2=NO$$4S;RCcA<m-J3p)n*v6FiL(=GO1Vs`p zfR~^9V^;qS%=?S3{lg2%L!D;TrFd$!t{*=mB=oTR`Fg2x`O7VdTml85h34Wr6HV~` zMZl|8D>Mf+3h>ueuZn2{T{UsY+_AiOVY@mhU1d!YJ!b?~s@lz$nb_Ei4;Y}Cnj3K~ z$%2o%e!_2K$SBd@{fP(wG}GF$eWO+w_IZdk5ONfC)U_Zhf{xOelq}Ig99Mmah@4Yk zqJ4bp<*GS@HpR+=D1MvLsZC&}YAhHvHvozt4u03BZ9-8xo2gZk3R3qppMCEnQlMaK zaIOow`x&_JpHvr1{WxIbfQ^NtrnX?aQvb5h6A;6Ug)eXZ=XU1ENFe?FahPADX1%Pe zO1s%y@Eu->1((->1utZ%&m7o#UW7`>M)--tH`1YGD#)wL`YcS}50-;tl}OlXxu0^Z zifiR3w5;NV03MQ&17-1EuTz}R8@JsWQyRVSW1EzZ4}Z65Z+{pp@?jzV^OXOaPXOsJ z$L&9i;4$=Kh1`)v2<2i#v0sAoBNPin=ory{uM(3a>NfRl^h^R+PxKiLprCeqDx~RP zWo$g}*g~}n+3DuIizREP39j^(aN&-S_Nl?~!w2$7-Z%9Mb*oJnaZih?tJjR1cMj>Q z`;1){Prsp&tW!x$|MZUhS}3Jk%|0)StsfAm!94V7TZuX01)?vliHAodYdrNTspJPS zx6|q4Zv%xqc-Y{({JIEk*WL89&ig9u#+srgq>q~DwCZ$@Gug*6<4CLzRhDu_bpjZT zh52f|9(XNw96VGKUYJg=$Fh2c&NX}PVbo8o_-?*Ss?W#G1cwF2&n1j2_NzbbnzeBm zw3p}S!{k}oMt<Z8xc4WEOT{v3wXk8tIBA^bE%Cyh!UeIwZG7n0+wp&58hKn-wYB;1 zwqvUFsbEcK2}&K^g3eDii#Pk!A)0DFt|_xiQZ0|$3a@=6_v2aVOWVo`>+E%KAPYy- zcZ;myug5|Xz$UO4)HsD0xk)sUX)2{`5jXEr|M|8YdyNlW02aa~bd2RUT#jNgil`(H zj3#sr-~#G-@yV<PIP_vdVI9oe378@rb*za*?RQ^yetd}pgfiOx2j|M~A$@fn^?qAz z4%N-|U4_~gy)(yQElc^>4@1i_y%;SkKVbFnHtG8$Pc`fsJE<BNnDGiu8;UN%`wSOX zgufUFdGJg=Xz#QUv%!7s4?Pi7?sdZU<Ur&!G4}qZ@;N8=`{7*4$rGFP)=kU~F=y9^ z(<?#{PPCg3+-{qe()y$_G=lC%c`_~~6<ZJ&9#S4`E|u1-Ng=e2Yb^)O<gY$evbuY& z#-WD%ohOag)X#Nw-qQ1}>5TeZ{YRCt-r`1_J{Ened>Bw$!v5p8cmuX!g9z;G?CC++ z=EE<e6^E=l>uw8@S_$IUr4!aA2bYKGhc(~(`YMj`?MV+7e(ZlZ7^Cv>cM>YEOnuI{ z^<n}?VTHm42rDL1$V@?I(t3TyNk5`WY^|!w_OjpS3uMl~vO4+{%9N(29i{;N9hu>L zwQFH{`D-3cxaVh?Q<m`NrWV$*NiB#b3YnP^C=T}R0djI`ivs~)sGp54E=UEulV?|K zH6<=5_jYZ%%F4>ByVuXJR#sL4uXi5W+I;Xpbt@}>(Y^_tR`^|^o;D1Ca0!JB2EfZY zaykxq&r{$#I+Wi&HypHocB;~@GpsmSP^g7@L3_Jb#?n%#1d}IG{Z~PK0}lL?!^79} z7ZN-bmng6|R!W&fF!@9za<hGg;o;%Vj?RoQs)ArWuq;zEwnUlbEp%!pVqn(eM(_YR z&9?v-muN?k)gb8+!_Qf1Y>2?{5$cz4DOhXJl~@0rh+62mx`2l#Jllzw0pmleXxK%G zP>yLu0fo6n!-yNwo@cWC)cLdEIK(Y9IxQ|}BJ<P^e2eOyP@I7A^Y&4}sT4BGY7XGq zpq4<;XEu?)la)vt7-kG5iU<V#YM__Crau}RHxhh%b}tD_>0Yn*_rd3oK$yNZR1a78 z#I2YKx;lSv=Di#^M=HorO+NnI$=FJhh4c6CF%J0rkA}>$_?711%k^M>({RaC26BlM zR#Cz7MP-WQZmzCKCdi}wOQL`D)&w8UH$2(}qoZY2{{(NcPt)*}e5Pypnk)|OtLYd& z%*Ndl7(;xg#(LPh6s)EKh8$5^QtIRFvvcLC;6UQ0P^OC=Bl+?ID>*WJIel?<;;~vF z-1=8tpDwAA8nGD7nj*qo4Gi-1N@^QA`1q;Q?s*smxtTXe;P!X-p@WSC_=ttPZx5aD zzsZOY1|970b8~RLyX?3-4Q_7+^^1+h20D`?y<8of93RJO;<T16cXWIaFw(+twYRmk zbvP*D9DakBy!qVbP2$4O_LXP7;k9Vy!PnQd3UNmzdgBtETxu4|NC*oUkJUqweGI@D z`|>%Go?}EQ`XWyFBQrZY>PyvqEK1s#o{G-HR1Cq=5-%nC$@_qmeJgA!%8#VF<MhnT zYtNsg1T$~XD<rBI<Z8na=&m|CIwa<P;^NhIcF4%c<M&M*+^wx19IZ`tp_B9TICJ)f zx6i{cKT2GzBic$H96xb<^__b0@qu|ud{Qs(HkuFp-p1l-fOjjqAKU+NZvK|oUI;*i zXflDH7>8L}$GR@~$&nF3;UQ&mH8dpgEj>3<85cW^KT4CCfx+3dtj&`OAJRaRs=lkB z0zbY!6r2+iS}st;ms}EPX=dhTW)><eO!WRLci{NCyo}$-y~5A$noUj{4_P|FCdz#d zPP=haZ?(bhAknFtE9%^96onUs@4=dvqvy*ZVlsfLY{Y>hy;>Jrw<|69TxhalU-yN< zZYeKsN$f!T=br%PC=&~d@Re4rg{H`h0rJ^y3nrEUVpX0!)(P}hksT)U{!P$)e+wRB z=xHMg2V)dL1VS`{+4*Avpe@0*19AR8H!d;I9CV8M7+qxi+wT@P9_%b+iLtgy`2v9% zMV%-MB~}v3lc&g>-e=L$!?Ik%bH<}(R_K?C%zp{P3}Rv?na(N=XNB<LO;F*l%WQ2Y z_7{9^P-Uu>MNjk{wDfVd#?Mr#h)?;$)Pc*@rnM~5$D2s}JHz*XS=*S64yNeM-`c9b zf^X<LdtNP9y{Isx35in{H^JN&bv-^lW^Zf=4+{%;-di|cUN)qWo8*29`IMmr4ITOv zDiJI`(C+268=+HdM)3&-LNtK1uC?c5a_4{L$9FZ3hf3RGAh*2!c~xveJ`yTsG#>m2 z5hE|JpNG1M)2`ckvC3FmcKQ5DT$={TP<eV_;6Efq%iKeXhvfINhPvpndw{#z;fMP` zS-TOiGd%GW3LW+b;<ocY^N_j4{!TEh`GYpv^YeEbG~^3hw$8LP4LoKGQ?o{Ba*F4+ zZt(4jisR?7;ml0!xCLB<@S}&@JCJ4A9#B%ziN4U2wXyN@8+ab3@)v(N7wq-B&522Z z`mX?JVIMG!_;Q4etE<Z;M8rf(rzOE>=m&M*%TdiU>(TmC$?qsGlesZgc*p(mekBU? zbn6pZjf8-Cch>SAdZhjb6qp`cSPcb&UD5ll%CNe1O<9dsNB45BBkZ+Q|AK~5gkDMF zzl!}wJI|_t?}U6k9a#UO$lt>0J3KH?{S6UU(8U7c_5%g@hkki=xnRIZ09wz$;2@9I zy4(?(gpd%34uC#fpm}HZu>hZ!yl-~u?&<u`wbG&C-YS`c)2iImHoJXJ(FTinu1^|b zy8ou{oHsG>)nh5uihV2h!2W)6BIk&5>T+yrT<{`eAP0AjC72GpI#laSvtctEd}=A! zVm-PH2L5mj%CfVd?$B7t>FV~DqY~ZS-OVYEv=wQl!luH8aQLew22g{oeg7hKU}xj9 z4YAdXtOg!h&=P+H2vHA_6%?K|N(KHFF(s;0Z#;DQ8Gj_+LaYc~D*Ebz<CO&>?|Oj$ z+a_oD(^dbDyXR`q#>j=bh_E*IK>5&B2->b(4urOvn!1*)y}fw_h0Tt$!owy|QBu;} z!UA{JMfxyyaxx(ST}d_lu1Cu{i71*$?iISOjpDgO`=&qwwZv9a^WcqfWYY;#;JkMX zbrT!*D%;Q2a~jff&FJR=me5HYiNy9rxhIPOa+xwl)>*OO$=S|)0`Ez`S@eYUcVqAt zjyVYaY5RHy+wRVKd!q?QMth!hyetA^kN!3RCg%a`dL71!iF*ILE#c&eh6d}5^o`fP zr=1b*B|o}kpT@b3;hmHGM*!}+Bh>5QpwvSH?A3hXV;Oh17fMgG#zkk7Q_b+PihaP2 zljkbJ1_D7cC(+tCe~Ec(UE5$oNE8C=_M=HaO+&-XpV>nFe7O9>_(|0>$5A@1TNq38 z+4xCB#AuM!9``STm8T&<f`M%&usJz?M0dd#><k@}(EmCecl8@P03I7zuIAICEq5{9 z)N=4eh;aaM3A2gsC&nF`Q)oS_jjyX|!5frl9FOVT>+VRk6x|OyOFn-NPE`!v0ng?N zdxaJ$wc#{9v1;ePl)t6XPTzgi$0e^G?agkeE77z=sEa9~`ze@LbtP_2<B*l)<yWRq zhqQd$!PZg65l0J6MLAlQ&7fvKs_2hj?K^4Uwcxa;2Fn$2X>q2O*Gf{$8{(1EYw>!O zWVxCcsbUskC1QlSOvO@<GzQa>-qy|Mru7C$d-Fl3L%lOz&Hc$9sIDgW?OTh7D_^|B z9$a95!FDeoesgm(bw4#~lukv#K*#4`NOq~v#N;eTuiXoJ2Q#VIY)|!=$8SFCS|(dq zh*h-VgdT>GuEU`kh}3J}3h#SEmCAZJ!tp7%n>I#>$T+LzF5Yo1tX=JPvcMfqD~HFS zx88U)`Fq~*rVF^|hLv}ME3u5DcY<f%8w%`ekz?;woGKy17f0loWkoB=1CA0V#3;S4 zY4M&Y&uG2AYrgTDG6G3+STUO`L-6<H5Qoq$^7UKas~OlU+i>#NMA$2H1>ZvkKhsw- z^p_j-UCn?AwC965%f2uog&EtcyAxuM0iKQ*47JqMR4GYG+SI|}9-m*Fuz+Y3Vm?9) ze0+3lzsq=Pm+rS$h-(CdZ#hCl#ON~0d3<MX=e|5Cmyha3Mq69tx$+Z?bfg|mZGr$w zz{dgLCX@<@l{M#Yw{i;CjZHtC3gr8~tv|>;P>b<$O}aSJ^RVGWSSu89uz}ie(f$y; zmE1}Qo$)w__DYB2p&z8dTR_l@Xa7b6v!9n97)^f?=v{n);Sb)VP|$?xB)^&RN&mwO zsT(cgAs3>DSO1q8C{K4jQi&3T_>#=*j~Dq-vh#)Z^GU)=ObP1`CZmZcq94w)TE;Yc zYo(W!h@D8lAF{4)S<6Sl9_}h>1Mr85Gc&u%e+G++{@l7U*Rt<6=j90(a}}7-WMbiB zV-NUiX??1#qn$NkA?Ei_{1es*sSTkG@!Ug;veEwZOj!X3`_lo(P5jrnSO|L2mVCye z7E(7>2&(6nd@cZzslScc7pzt=#3L7sq~Yq*zCq%Zh!8|&!fMbpc+<DdeWafkJb0R< zGR$t<x<n}0+YYpk=Ux$(NIhV=CvAVCNqPxTf)_rlS^P1>eVjK9LX*{1k$O2GnSNXM z_(#(9KJ!B6I-|<Xc8&*^)J>0{uAZ(E8iWQlMtrTU(Rv)MHh+7AR8dh;t!Bq3c;qT& zEfFn7wpTPk^0oyzf3~ZCW@U#ck^kgTf)uBhHdzxdQ&y(gZ0rl~>NED7uo@Leck02j zX?jlWOXNd_@;w35_~Db!mJ@-%In;v$OF@6cB|XaK*~le4N&NnYT(AW?-uK@}FgaIS z(7O5ucY2?b6q~DS?KkJbFMDo5*1pejy5)St(BMa1IhesO8#QRyrGp3;p$&Jr?=YhT z7(fglle~pqk+;s7rY2-?4|1X5>u$<w+r6;wIBuxmVdn5Sf}krAsGW#A%mO~Q9d}38 zndG)``EIKgstKwI<*>?vF?OF7N^MaRH(!b|Hbaf?-S?OVy!wL*oDsYlJm(I@(#R%I ze<<<%7lcP7gEj?7?!T{ApjO3FI|N|j#&fyrvL-oj-YzLHHE=#~vIfGEmixIB>gN#+ zLyI1gCH&vl;fHO0;|Z8HM28t6)?tLzDp6nyFPFKaEQ~?xOw5EA%`;Q=7}>u=?&#<$ z)fph%2M9xqtE#Gcz;dXlNwZQxadEfGO^w?MKpBsjPqwNl^-<l=!9P(bPkH@n&Ca^~ z5`_>Q#NWCa>B4Iu2jXO%0?-U-qz56dV|9FORc^(}MkFb#(FGAYRN@VCKO-ZfpkRBw zTS#=V;y81(;y5z$cYVE6MW>lw#}`u<e1(E43>6KU2u>c3aUobOoqJ{XZ#jLy<>g@~ zs%phq6H7}|N5_ar#_Zlz9Au9p84+0#8<B%H^E4(eN?CnBDzH3MXB!dB%&KEMmU$J) zU}t*@hC41^n!&`+g#}{b<*n$ytL#4lMa=z4?gj91Nv2dCP{MK%Z&2Z^Z5$4CR1Yrs zT)4>DqqTGDovxBEBBB-GP*8YDh!YYLh8lm|A>X!A0ytUVEzf){(qNjPT+Lw*zi6Pg zx5Ek=*s%QJ=HTGqQY!1-u-zvO$<%X{_V)+BJ7&_2ke8Q7Mnbqpgo}udwwUzrmfWvT zDjgl8$HU`wJdAIRV^-t8Mnnh}|8;hGnw^bFt#DOW))tcF_x4)8nO}hc#7~E6Qg?NC z1BttW_49$lAOEa7kgC6Ie|2TWf(75k`eb=|+2Q~<!cK^TkeJx&<d6jwg*}$lkhrRn zo#k0{m+deiKE3JU9hN3$P)Lo(`Q}<@Wx0H^j~)pLMHz$nW}7nCtb|)gK#Y<qcW!+; z|2szcU!+R9f>bJ{cHv0=eqrzWt>Z>qEUO@>K-#yPI+>eCT7n-vvZa!a|CEpOWy!(L z!9t5BtSCnTrL~*h_GDJ#ss={;{qJhg25NDGV5+~;dm?xhXX>#5d!{P1{4IFEGm79e z*uCQV#$)`cViB8~*%b_gTjawkM3AJjWm(TZ1o5<7nMKCFV2fHL{T}R4PaZHw3a6}n zOaqs~OE_>(PEExroTjm^0;Z;=opn45?kZ6GyZcpVWbr$I<v56o(br6RhNF=HQ;x2( zUcPeQtm4yr_cN$L^e?Bu04_jTN+^|-lz^hqadQ`08~QveX9GiXb)0Bio~U8<#(|24 zSL9s@b8`y~b&cw0R&N>Ev9Z%bn~AXnn~93Gip8oA8JIB%sZZQsCv%@<;ZIJ60re3W zOGa~XN`C%cPuC{h&{Z1=W&wSW>ADTH_ikw&8I%AIfTgXt3Av7&o4kVq^Fy(!y4u{I zKdP$NA9HGRbF1@q9$4%-Sy?9K^6p%&GxNV=Q?REO7BXuG!mAeTdWVHE?XnVL%)toT zGf#k;zmq~s>^h#apNjk2O7zub$&b}*98E-;GY*nVH^O%)5jMYav&%y~<C_3u`Ph6j zvNChc&v!v?tnkv)Q|MfZ+WO$l%?+4o!~ml>;fIXd7cT8h4#6-U(+KfJVddV^P#Xd! z?BG-~l=f(GA&Nhn<$zdXjM4Cre!kM)%nc>vYqET(rdY>TGVm^Bz7rCVvYSYxw%+vX z=>IC-n?+42RUKrvq%7V*+fj!%-1zI{X*>uE?p_31gRKLX-!a?%K*L*>zWLDSPy*Hv zfnd!^WdI8BGw+FWv_`4~N<b*|LhnwG;nhBBPG5&S#B%$F7ElXfSr9yD7MX7v+x!8d zsi5L>OnmLDg7h6?y9F_ZudQ*(A!4;fw<Chj34yULw${$}=g)}Q@;2!FBNZuEzsvIz zSl>%7MIbWWWm6%651Sw7eXt7T#S$NZ^L!2Y0U+=t36t;ylYD8z1xO7KmzG#WHa<z% z8yaY7HCNSCPmNEg97h-z749UN>?A?>?qI55Ce5zi^K!8939`#Rp>#`xxcIvI24RLt zNgnLumd8uYQCN$pct@`8#(JI|$_Xvt;eVyKsX#^sRlQKKNxAa^AZ<j2x98<J3kURP zP}ge(UI(?p4sKB`&ps18!!|*2Fm`~iPEK=e;RLFyx;a`>2vIh6jd5^u=Ot#Wty@`J zU7Q}C|7K*Em}F+VyFb85K@Sjo3s#ltNY+U=&{bF0N=nFCm~~*HDgQ-FQ&YyOIya{= zk8g8)?1C62^ZT2MgP3({xx=Qhy^)Lr^4=>a#<`+ebLo_>mWk;a*bUH8r?h;2v8-Zo zB9JO99lw>DAP}M|x^D*Dml2QHW3#dQ*ZI0$;JXIf5yL&dtVpLYfRVuShV_+qTJIKc zM4P5IhtV+Sc4stw6*in2wB2w`*WW^0TUON?P&d4|=s>*NnVpyIPkUypFX5)A?!JEb zs4D3$Y9_CzWEC2D6DBpwyia9eih1H%KURs1#b#$~)swEl!6jt0Km`QvU0ht|X3^Bt zCMHVb;N={+!0^89!~uFyd9Hq=h%A&k51u^f!-eRDH$eDeRC^9qEtqqM3bHfHOJ7;) z9WB?1!0f02@VXEk<;8Y}j_H%k{A+?)y^KtiyV6z?oO<SxjCc=+hiq;Sx16nRIB6Pp zC`eqbZY*orq*OR#mB-#MupM$;XE|%pvSUPgYpOJs)<-lnw76m=+F+ThB*a9eQ$n2V zveX@ui;Jtv^)`Zs%SHkx_OEpK$2(LNx~GGsz9J6KItPkI^SFTK(#ChthTK&bhASAs z&)gAB%t55z9R=$>K4lT-7h9zjVNfZqVirseacG;}*kZq@Wt^$FeITcVpFJYhll-B@ zpdM>OCpXIJ;rf7+qL!knI(xE#HuTGb1i)W<x$XDp%`$JdGD;z5Ga&U-MDBwJBMiL@ zOxx!_YqzW2bKQTu>W~BoVQQ;^k9)>C(&`26&S6)9;C=POwUPY2eGSI)MnK;MjO4B_ zaqoAr_XzhEWa(v7=Vg{AN8AYnaCuhi1GK=2b^06cw>8UGVbAdG2I_N6Jg6$<^oMog z>g!!NwF$YP(ItPL;N^O8zh{al=)wlhr%wKZ^D|*9&pV?kO-g_n)mBWS1ftM!%mU$H z?<;2{Wwjk?8H@vOki|yyM@fN$I;dCtKfPQZINCOtnkJFKx;Rbq^QgeP><1RaFAKU{ zeLN&5?3be0_dM6Y1uleEQ$iCYh`_Wl|0A!#;ARfBk&5ekeEb!-b?nU@x(}mg+uNDb z%2p@4loG`AvOF}m?dFn4p}A%Fp5%eLQxP0<4+-;n^jrIn>_aeMTuI~KjnW8;*n_NE zz9-OKvAM7?7&?!Rj?Ti|JSSs`uD9B4X9x4MmCmkj;|H)3LS)xBT683*qYoXd!X(}o z%fShUm@h#E2M1@%Qv>2zyK%=}%0Eus8;F@!FC5M<E^ST7G<aGe3;8?^+Kp2KOZ+IY z@-F8X0o7bD*Lx{pVZ-fDPsf>=RaFf3M(%Z*MsD2zP%sz|93G}RPuS#9X?=Ny9j2ms zh8;KcFfb4v$w0B^Le2E{#!O6vH=d_AKAP*x&tLEM*Dq~tjnkqlGPTg)u1qr3|2deb ztTfFkpy4^oO$e+?>UXB|{l&w{DZwZAP5vq^CJ*N1gu$SDyj2$y=+gil$ANolk-Rg> zAP|76?*pc9rm5{AA@cEp@DJBahxwD>Q7^afmY;tF+FRS(+gu!;oUr4cfa1AO{_OO0 zRXsiAz|G0Asap1VSQuz238~WJ;_w_)YE!{D;+U9dL}Wp!h?~p7^4X{YRW-F70k`Fq zkp*E=7A_{C{r=F9kdVs=Y2q8;$@o&0?9%DW<1;50CwSYIgo(VMAZ2m!-rio-@dRB+ zbF-V8Z}p1r9_r-h4F<I%sHU>Z>UAE-MaL#6Vs7#>90AkL#H-wWp?jOxgD)ppY7XB< zT+Wp?T=Cx3G}i)IzA1Uk3}!N}=&h@7v|}5WFDyX;a=63ve~_>__^VOFlyON#_Ef&a z3vb6bgo>tn6UEr9e-dHu7OiB*TUlO~8X1NHjE#;K6coT$t*-uz`1PwS9kH})($U<> zDYDOy2Ny^3*Dy7Osi}ENa;jcLOmt*Bfaa@_lar)5m5!+B*0jmU6VpNV)jjL{0yPz- zi?+SK5Nx#U*XwIUu+__g`hkIgSIqB2MzAn2ZDP;wAcy<M6Ua-tekt$j3f|EC2_bBW z!)Tf!=FY(V>ya4}XM--(RY=v+V&l2Z#)wr#{pZ^EfCc046A)Fcan)~>`d<5jo-ayJ z3uQKhBbgJ{OT3si`m2+2@0|==uW?^eTw`lm!F3OiS=Lcs$;Z7+4u>Ae8X+1asE6ZH z1Ey!hJEBlO9cwpD4@);0{epRMdrR<QzW@VdpjoouXJuvS=&T&Fev^|!*ivli-^S=q zPC({MDsr^Yz$KID;w!O_Q;@^K!pVXSUj*%>k7CJ5cSx2<Na?WS!TX}I$g{kZ?~4Qk z1Q*;{pWs>Nxi8~!$sX}!+P4DDug+WU-D}z#Dmr?4@`}#6G9KOf9T?t?j9BozI*wV^ zX9-R>6oo(MOBAEc_$~G8tb#kZzQAzVw#>u7GT|t6VO|L44|A5eOZ+g<K-GSY{*Y6a zFb(!A;~syMl}6Q`OG%jIy9R`Ed%JP7tGca~bf59Oqt!xGObS?vvce>DNAmJX^0Bk8 z@S=oAO8NE=cB5P&1Tx#6-lPnxeA!qE;XNqRL0Mv8x{L>EF{WEOb~~e?>{RGc!{jUk ze_)D9GbwV+^91EdZhf4acJnCf)CM4BIvr5g{AM%(vcWKp*CHr%;`%i{ufj40(r1<o zCcgkYMBsj>RCsG-YH3CX5kD58a;Ddi03=p<>#<i@|3-t9i2DBV2uEy5iV)faWJS1V z0}CN&iS*#wno1<ygyVt%k3WU4<(46y=?)n{dyqW8V&K8)$RD%6v7}u{JkA1m+h;)N zUgjllfHA%SvZPFpdSEvnpDf5-QefKAdU31+5r)vFC!+wxMs-yvzB5^(sJ;gR6)+x9 zKz<R6zjT%-K6&nu>FTF}EZMp!SrMcdoD4}IPU=h)s?QbrXMg<2=V@wWOU8dVSmTZ^ zU5^gL?*d<Lzw39qO{4%U*gX#8kWu)7XO@&j*zKwdM9J?w)LZ6wVg$|yP5$*cn>L2G z&ZrHWPhf$`Q=5|e_p#sXUG|CjOT75YC+-#ZY$dQ{j0|jBFn5dxm$Ji8;jmGrJ#y*6 zyCB7+`M{f4Dv6BTJUgj}O0FI#=tS%hf%wx}f5Ta)AJ;O{w$lm~-1M+)%qGUpY|P9( zpkzz~)3FZi7q0w?N&HHbnkooG9F(Lup2_2Y?0y-6wAzAEEDdool!A0!eJ#D>M;La^ z^r-$u)j;Z+Ds3Kl2=7iY=~j4<K#<yt$1tySeH>Q@>(M$hpX!%j0Gxoon+wNT*1_X1 zqKXP?#@N*EcYg#jR!ARL)go_lergR<6M`7zZvXc=&gMU>Wi>Utr$<_fnne|K8z}I| zveI(q_e70oykwk=jI_Lz>?fa9y2^(|zsE+WHHc4zVq>R4L5KfPkfVvB`$v9n$R-!& z<0Iv;KUYD5Z8{P12H?Quf5mT$yOz22zlA*9pHB@NmZb7+^>F<W8^aHtlbi87S&_}- zqWkTD{PSdJPMm`DkBErV<8yOLEo&z%>@;O^TE2aVd_pWjZy|y0%`NiMZ+S*c+|4}7 z$}=b=yrYf39-3}{P^+)U2jYlHbCcDf1a^XJFP_qcejzlTeF<5-#RjWJ289Qd0IR&) zfdw(Q&)lOdp?#VPoc!K>$+>98G8Iw#sq>BN>$l~zGc)}I<cFjxX~CpS^rgm@*cQnt zDS21-D7?6m8ZW+{p7#2=z>YCy8eL6YV~UV-cE8I%w?FuT^V{1c)F=UYy%09EDzH-+ zVD^ZXMwnxZvh_z@6r2LlEIlv>75P;*U;pCxa93Tjz=&`<7<NL^h@5W-Yke2dOWr#A z)!~`#2Wip*7jYS&0!w@bWm20Ly!Un-Ng|bJn1v${c|?F%n<#N67FU086y1G~DRzV# z!CZ(UWcNJ~hwBtA%iN1GN<NQqWE95pVVt4%gFl7Lv-+RK&}C#n%kX*}<lnMXpHLFF zXw~YL6m}C&bU+B(x|ME-yHjA7-_y9*0t)t=7^Zfy#Fixj-Os<7WoYA6`h8gWQbIZK zR0(;+h5hSAg#Ov0edy(2#8lfAvP2GvUxf$u^HE)~8hE~@k$L*E!ewTHuy-4UUCS5p zQT%s}JBY&_oru9%;X-DrFGiQHP0$G3@5zYR*kAxTri=w#n5k0#swhtcPUg?^%2{AZ z%3USx#62>96W8AvJHi$S*NMEo`y1gasehBh>2WBa3UUwhZ$e9i;sAi*SUUW(eEAzL z6CpL5+PDBugbIITmO=x~&1zCp=M$!t<_%4eovGGX0uo<PvUIdHtD@&{y*e7-Ti482 zw8)AUhzB<zIM~$GhPK^Ib#FS>=f`W^w?Xx1Ykn@#qf*+IPeN}(kE&vb<Z2#Zz#{fm zM%1|2$?@^T>5xnpLKGj0J3^nMmI{V5&pkT*`wnn#XXl3Q?%X-&#)bxGXBUvC(zce> zK~ZdG#&9g}mpDDG^bT|V8C07g=hdp;*w@|NWd7m}hk5*GADv#cQc{xH%F1i0f_^76 zEzPyXT>Xccmttj&9F}48@re4uyk^!y$E@VfHzswjF;<3J`^Dcsh&auk&g7;SpP$2W zbJtI^3C%GuVuL0_lqAe3XA#fbExro@)4di~7N{jPUz-DZUnAf-u={%}1-*T3MxJUq z_8g6z5)eCu0;$mDs4!246MwnpRaR7J@um@R?Kj_~#5NYtxF+l$>@(WnyfkNkGA={+ zjc|KfSz^+3hK)Anulo5kQF>BT^FIq3Icux!--(yq%wD?|Ri~!o5^}Ux@f7VQOc0XP z3y!hxJv=8)=80tPy2r2Ql2m4IaT=NQO~diP6?K)pA0sTBoLCW^OH0gvBc`0^MMb9X zPgA3-<LnHK^d5(9yO5T4HdB+6WL1qWH=dt&V2(a%$q5nS5sv@rkdD<*TPU$Gzq?0e zK}?7Y%~>mH`Z2CcMTCQ+<b9;<ZZBnl%bb;)@VmFaZy+2tJPb=>4j(uv!rsmzEIjqT zx=QFI_aUY#ZvoqziZ(Jl2}ic}ZdwdVaESkt)TrbPU?wEtLzHmSVni9%$;yP&;*vCx z5b!oN<)Gw@*(Q+Nnf(2`xM=wIto|J+JeL?^#WiL&I}q^PG&EFnG*iP~aJmGd*RrpJ ze;38w23?q-GYC0Gl#gCOK_bSK$q2|@jaHB*ZCDcaeuZM*BSFJM|AdW??@q=w$-2b@ z3kd;<iILRbPhK|4!7V(+c^H5@!WA07E8cIXs+xcbzb7tcS7jT>85qBImZ(iQHb(EN z{b?0IvbOk#0j#==E-z);fGTKqhOKN!^mh^HKwz=W^XpQ=vS?qQzP<%0%Xy5H#Ts9C zv!(j=^9X%q1%0KBCmwFv=Gh4@`X~8!NlA&)l44jW=%oJS=0Zs+b8~eyHRL&Y&^S*_ zZfTxc)|*b?T4@c1g(lCiFl|U{5ZaJr6n}Sac*}`XcJN2#I$3WZQnDgd<Tp^=1VLy% zD8KRLD|dhb%|zcLWZ-x3o0)4fl>6H|Mkc1}sv3FusY^x_<<8)nqp+-r;8SJ;{WXDU zQ@)ck@e-Ho#YdiCDc@^J*zBm1pYM-@6jG0-p%$!{Q_x7r$WxOOH?CaWoZQ?~R<8%3 z^FEN30%e!E{~D89ckB29^Ivx@OYkTNJjz)Cm5E`EbWs&S;IOP>gpE$RPDlvl$nHE+ zKZne&*os(csY<R=dUG;zOr$uztt@A!VaVUE(JE1P50Ql=L-y{0F@hW(MsPco%k|ku ztELlBWyAQAyLCVopw1;^gm5V*BLtLAI1L1uDp0fs)f9$fKd5ppd5}C#;c6jbLmEN> zUfuOK8(ph?)j|HKQ32KT0{MS47jtI%DYqTAFd74BkMge^e@$g`?a2M>OFi|1nhD5p z;fMNvT3US?uKHnFdiK9|@>I<u2gwPH`h4L{nOLB1&+n%_ygD2S>x2S|!9||4=U5`k zfxNE22LZ(T0AGxsbh=Q$te2eXvn*^AZk5*3^n>aOLh6Qcz?U-TN<xnfa6<#=ML2CR z_1we28co;{t1rBPq0shm`ddC?n&RVIC_+)JSBlvu!-4v(TLfgD)A}%g{O^CI17+K7 z0_6J%1nOJ1@H0Y+XxZU2wDoi}MxcZdu;Fo3WXPGB<H(7Ka>g~uj55}^4T&k*K;<ft zZeRjw`1pfPJxi-gOTRH+o}WS9$KCB6eZ^OKN^?M69fO*XW@2jOj;!q1DS|7gm|4wn z0ESRZ8rVw#;QUA9_cETVF=a4m)7yrL+<U9uFVD0Z90F{gTUZ)%AB?67r&)0m6O&L0 z`H~Zckj_p)HRNGZU)Yj5^Xu!2n>nAwPV)z(3XF}##l*$Mra*C(8PlUxE&JOzUUrtS z<0aZqGEL1FE0lc~>f)l%u$%)!y&UjB0tju8`3U<-Y-#p)Yr+67uf!Ez`ZF(Lr=iPQ zTiF#hSlWOBn8kEB97t&ynab*F{s5uXg#~6x#ux-CsaRqY6mAQZ@?cF=IJnEZ8wI(q zlj9xIX5Y5?83l7@<pjHao<2oLJCNjUZYqjBRkbpQ#{ZnON1$WP-UfNcN#bM_gCD{^ z4`6%JEyLgfQ!Su>gV?=v1vi84XKQ`ltqF27MlPjJ=9w~lDUxdP$~7-twS2QS3o=t( zogW``LLL|GPsRHUamyrN$N+Fxf~3p{b^i@E3UHwO*yP@IF$Vow-lVCyg-vySKPeow zXY`NuCoTET*1|^Jn#*R#ZpGcns7&?J;^a!T^$SaDZ*ynwOtXW4^dnQcAwHehtgjZH z;c<QWFC9tc2?^5~&Y?cipvps}+1&!+fk2_-b<4^ac6JI;FpfYNpwmrE<DrekC~LHd zkrJ~8-QL%fy{-?Zl{;;5-z@I6g8=4mlBP6+-mQREuGO{=%4&)ATi_+)U~sM)o+Uh} zln4lhFVf0s6J8j7xZB2IfiW7uke@ALu-4OrJ_D+}1LN}tje`Q^cm3sgPeKRFvWnuz zWU>uM5b0(&QMVpb+S5j+I=8&af}8v-G0EYI)FCf@4>|^jGq8@g_9is>1H3YOUH~`; z$?&gmq|04lA=<ET!FJs4&d#iG$<CzLOTO+g<>=zWur04#O_T&sM08s!%e9fhxLQ(p zVU!ij#$Q9giB#O5LKv2>NZozG?oO{Ko9p?IaGPfnad?#WNn`{f^KFlpVJ%^VRw&VF z=aEO@Z66Zv;_OhmSlKsN;cj1HGpfc4KTn~TyUhtxtJvy+^JV5?5+~IzG?&pRbE2f? z#GOBw&BcdB&PAots0_2lbgbb|xoPLLC0<y4e~O$b(Z*JfAv1m@U;c+HK6_v+V$)8W zoMW*vEmjl(m+hvFxxRr44Nl=)3MAx{@78;C;Y%$ba&WM~bFA-nDM_X^^6--<XB68G z0=@?Di}7^90^yg=+O3tgp!I^_kbE>on>@#OM|aGwk3&oHqGPH=-os!?5{_rUj>X2x z;ogf%7nuhMhq=>XnCR}O$^DpkE~fZhaNrdr2z*Nb+zVMLH!#cg?<I<@x(Y!t@&Dk0 zKGV*=sFhe!9#v!v!F8g@CTiV*8KZW!^NoNE+%f|K0DfC1IklF=^b2&t`F-B*`S{bc zb@Je(s~d?7(Z8_19vM3v7)d07uzU(6u2eBr_<D*pp?y&+aPn8X_#zgi1t}ZcC}5yw z6lfwx{;nO;`a5LP7Yd($II#QWF_q7pLq`w9qsX3@L-0)$26ciw<l2o@`g;16hybi9 zS!4y7{I<)2`Y$<1OR|DyE8%u9k;;GyZqN`7&>|yKYF){TIo@OcwEqTi-LxZB8S&wS z{g(yp1~5yo30_8tsf}o^Nk~f&+mwi)hA?>to)GtLXb?#-MlBFC`-HC4U9JHYcK@JV z76<g8g}nD~f7ive|0T>}@sf2YAD(ywqWK>>CU=%EMU6A`h#Z0TYL+K~NW(!6|FnYN zlHV-Q9|n)a6M!AMLkJ47CQR%_&=}DCh>N36n&u5@*R4@xz(EL=Q;6H?c*xVoqq!5r z5^H+jn4@bf)Xor`G7*w4FMAwg)G=X7EtH^NxD}j?`w9oxfvC39X39I5h100kUYlFu z<mGf5t55?apK@|?j$FOpp6_Pa*>exB!Y#GCrXz$VlqgconkScb%hb#llu8oY1=IJb zn(<+zxRF*`uq$@W8-F8<=YHJ}Qatp%$li1*MccSplX4gb<6{D@%7uqZjqW*XXn5pn zex*uUvgOK|EMm`aJ94#N<9ojjHNu1Hd+mqlNq2aRdOh>jFI@UzU#V^$N|#}xg`<K? zqc-&#z5UcJmU3D*&Blp@61iE!ny?sSPlEF0@z=r^Gmvrmjw2?}wj;LSh8{KFX}hxJ zE;q(1Pi`4N!qLHFd)L9E3wqn?^f94??~WZP<dfuv3t5hD_mYyqz_Uuz7}T7^c^BNU z|D&V7N{Pk=hQ}87=%Rq^$v*(-&Q6Nl{}MO<?^k>g+0-yu2chJaPWZpN2N~xkU*7Fp zOOMzJ`2TikutfG=@^{@N`Y+YJv6{+5H`pYje|vBQrZVgx-Uf9Y{=xb?#$RAQUDs9~ z`AH@0{NE#fDVEctDP8|ZWQqx(koP4Y?B5<B-0^WM8*6CuBmH;aZr>x0=X>5kbh7`F z&2XM2rF1VG$3h4Hhgs0jwEog0{JHOrR;tz;(ElZ+!Za?iLXE8Ei}By#%)ZVRdl1Wf zbW)KzgS#>SG9YI;p3Ff11Oq`MBP7*Kqq4E1W@?IAwQ>#?ym~#7E;f<6f`>=R3_7sH z9Y%v-#C_(*qx8%HOAS+G1kBsj^@jpELmK_s+V9Dl8eO4{>FK4U33uwG->P&uN7HWN z3}#MB2UPvYl!_F&2U@AvG}ufo>~xK6DdT6~>vy<H6bCjrvg9`&K#)^6Q7=er|M9wj z!W}vIEqO81T@Mmq0%n(KUf$ZOT#gf6Y|F(hz}8?rSMmP-?sIVlveKX`751@G?}ZZ= zmz$doJ}phnvN>ySkWD5C%ePu(+kXtJk;ZZJb8l&BYb%qZlnThsS>TY5{JQ^{Z(_)< z)&+9~<HN5v2aFE}_{!h`%48z30avYOGsYhuJ<C-)9NsQL#eMav9X&qNT72zVWtdEM zf94kV0pqbJ-nrDt2pZ0KVPZLt-4{HuiWFaryJ_#+8CO4Adh5VlkpLG8G-BSXi?VM7 z6ag&K5u##97+=xz4r#BD049T|5Xy{fsQRpEi7C92l(OG*USoJA$<dXh%Oey+6!LSy zZ&li<j!#YwP!3-LnsjE#d^hs4vl|%3baE%jWD2)}_HIH+ABA7c>-V@Yp|>6a5=i>Z z>ob;chH%nZv->V_PfT0ZCC*$*Aj!3pYbs8*eIePKhv3|y64PDlH5ILKk=gfF#OkFX z16#g^U>d%X5Gg(fyqxEdrl(cTIk#WG8TJVKzQ6K{@#jtP4*yAbBSAv(GQZ)a*fRdP zxg}mJ3|KqsV47PAKfx0?Msps|p1Jb;@s(rSF}Qi<%yQa+ivTe5^8J%9bQ>dn3^|)- z%i7U>I!ttC2A1qc#O+1rY4?!xZ$?{xoYz8;JcHY|n^5D{m7#NB>$ENF&iCXxRe5%K zS#G3n8DRMiG}5VW7Xcr^2T##y6Y8A{C;1C<rC^I3@)ByDUHaXMct~Nn2aVLw@B$eb zR;~P&8>VbVmL*HJti0lD8x6KBt;=W1<%5u-XiRBic=^{uoC83PoOvfGTLI#M5H?2} zw+`GP<MP=voG8i>Co4{u%9RswvIRfEjBiVMPGqS4Xly_gaIPO~wyjXaDb~oVIp0QF z>?D+UH=EQQJi8SjCDG;zA(OvakiwvZ;exePm7&3qlZW!i>b8+8Dy@(H4gx?hn#N;8 z4{z&@V#6sP5RZckv@Qm|nhiwJ1Gf=x=jO2UEz5Ni%%B^)eebM~y-qvSD~BvtuAkCs zF?``A=FW%kIEJmngR&`hq+Q7s9`oc%hD&~L8Wv6iZfJkAIed4QP4xBiql9ZD8tF?g zl)2acoB_ehrBFPZ@IL{P9Bt!RXLC{_nZ)3Lr->gUPSU2FB%#aLFrCTda#FL|B)&5Y zBMfIaMKEJ(O*b$*Z^VnhjdUi<=45BaShPWrZO8F_A4j38Donu6gW+gA8YdD-TnI0v z>3TYyEtbk0h$GOz9t?*#Z{!%*2p|UME4)f1IgliYXj&YBwk(Sc2vIYz7ST8@OiEOQ zfZ)8j3V7Th4Ce|lw73E-zCg31!WnB03Gm_D-3|pLe<4rdIz!Wb5D;7woC-n_(m*N( z3<3g}IUmpSP_)liSLEQharP(S2AGNF2&Kg-(h*vM5a-7P71MPjhM0Q2UhfZw>C{`T z*PajRkg;@zOXE#YNR>c~d9f$I!9)TMY=#0M1{ddx1;;Rk$M_%SEKZ9u8EH+d&A>Zg zlM!BBUxO2S64`;7ypV(An<JFqU0?`iZ#0@bF9<gv2JK>q{qfT$0w#z7tD&*y2cSj% z#3^x{DspS$Vyp^Zaf%Qa^9Dh{X2jZX08fK2UvD;$dAHvSUxOCENqD{ta&vLL`<vSv ztZ{KO5(59)+j*6_l*u33S?J(JK)pMy%caEMXc9gO^e=YmSO5S30AP^6^(1x{L;yQM z0|;8s0D=}YAZS4Y2wKp9pal&eXh8!ATF`)?1q~o*K?8!0y>sxD?uw%LUs2n5wr$(C zZQB~#wrktA!^Yn<sBybq&!?!0GiN>CefA()+1Ycmet}`o@4ffI(8zdwQ|t2DCL&{) zf1|&!Oe6&M;OGRwTK_L7T_~1%yuPdR>D3w?BG4ErDk^Hw)SwYl7ZsN@x43LDnJcR6 zvT_U2{Ld+fAAi!-J3xZ8_(Ji23Wr0|Tw7-k3G-HK^+>iw;u0#zzCxw4rfz+6hoPdP zq6SS3+GMue^FYYuaab&sBaac;fX8R-&hCCpxa0`#xw^j9+1+O_nt%B5$FYg&8*aIC zeQOudUlyw!0qyAV`X27-8=RV*|NM(Dafw0LVzqI&d^`%7u$MCl_YRJ(z4^Amkuii) zA_4i;*WNf|bFaJk_TkY9q=R<%4qzll=kqVT)Q_f#>5o4Cgb6@VQBi}Y290di^z6LU z%pBO_>u<bCisO?rO>LbHr@OeU`tbM^QQQ^P^>t0H5}7<UF$J#87l?wwqjY)`tUM(> z+u`&)@#NFN;ZZo6o}Euh%e-*Gzq!44$Gr~<L=u>6Xk_fSmk1_Wz488#@Z(b!B6=H| zTX*&jJidqT4-P*$JFj&0^l|yZk3RV{F*Q@GGoG?I8QJ;BL}mg;R8&;dpsxtF$ma5^ zY8&o-AarJa2}%6n(eVdI$6#TMj8COy<^YHg5u51$&X4BLKKuOjH{Jq7DlID)mry}* znceBexV^cvM=I%Ax!`LY9-p<gcM;S=Onmb5FT6lbk&m8~nt|wU{NK{v$>Q+v-V)O? zk(G{0Ye$zzB0W4g&CDqPw!`Ld-g$43MrUBCsHmtx2bw_>x&-+j*tUBg48>j|Atil# zcV8%$VB>)g@$j9HlJVQ`zmYcJOhGon;QaH?zu>a4q}*b&*EhC^Br?)aR#Br;YY$J( zMkgk530_EQMm8QoPQen5PfGjh>u-o1!=N#4$0etMz=29zM>ods)s5}EqEe|`fdO11 zQ-IFLP*G7)gAO!<*6Ixp1c$%)(ko!<=nSUd@aPXd_^`C1hRYLRUu?BG;gaC1hDF7} zD6uu}8ysPA_<$G%g+_sQg|&4?PQKgY<M4#(S$SaIfbe#IaM;J6d<v88=^rHE>X`T> zu&XaGRf58zKqmuM87q#XlQX=%ps+|l%+4!Ktz5pq>GEI<2UH0ZsO8lSAfFg2Dyo1H zHRvngoQ<uW#FUJjf|B&?e7nPiBKX0@WtD{`6{VFmWHs^dqmQ8@JHH5)3ep@nX}IsA zv8CPb_xJP<<MTi~&+ynpR$gI7cAi|R!b48Z*tj2qz-Q|kTYzf4Ob)~%CBLW?yOibC zb(!M48I`;%6(uSwYa7}5#b{eu-~8c+KiRtn<O*T{0K;ePk;-G$#<Q(BnKZT1ah3kx zJab3?dRIoEbRf`qqw)CWrXr<!eU9FGz47{dgR7NjG@9|1ROb+a*82HltyX*Tbedsf z?DL;0rM(YtzdQ5Z8)K8tUg>mugW)ii4*-EK0006_paFnD6KDV+&^gvQW4UnQ!sVMU z);b@v2=p^;tW-v6E?l^9`M!%(S{oZP2=wm)00jCM0{{Y@CxmFX+w=J%{u<7?haCtj z)vC@7{A4mcJUWVh&0sL>_xsk^O0^nuj!)12^VZ+i+M7xxJxI4Mw~TT$9335>#L{{1 zudi<&4vip$h##zk*xTPPKhOj^gs`!-vv$kgJ?O|8g<%}O&01sI`na}j+Y0M;ZQDlN zu>ZSQj_r94lJ|Es`uc}t65Zb3di;Tn&CPH$zPPl~*FX6C&p51ILu2#K&d&JwL^L7f z6&BAgEK>c*kGQqHgVPWHm)G0ZpI1=$=g+vBlD4+K-qg}|dUnQ&2Y^%LGS?a{cBs|C zp%E_R9W}SKQNr_l0vdAG?G2Dk!ANXzX}PPrXKsFBdwYi;=kf9J@85s8yr`s{3(*$0 zcXpdw+n1jrNK5ss+w0%h*o+I()btDx!nf}~AR+M>*4H;?X6HmD34s#n7YPT)2A*tU zYWgLhpI|`qm(ZK6X#HK(c|Vv91>)~Men|+D)?fye<}@frcTcauY{l5)G%=SD6|3EC zb+~0U#cFq=d_4SL-q7&K>-V4h!3aSE&C0q5RW)^ujZN=AYFyqxc1~VWYFa{+KWcOo z%6kGKFey5f&nKYoKxp565=05e1t0PKCk<{bG0ll^EFp+;PF{Xolr0Xo-RY4O)$a1L z_`_2iN&Ne)HN*vx!-Ap`5V3G1&gWorx-1S?FcOFSML|FYHd!5Na*D}f-`U-J3Fs#n z(8tFoeAAIwVjE%Z!EER@@;_uA1J1v(sm0;;HMh3q<`rmkMmZ@3DlZZfa`Fr5MbH&( zYHq2hta%i_yn&%%I)jYgQKB-ka<NB-N5&W>@HfNAM#rY@sjRATd;F}8Kst|4V3<6k z4eCH#P*4Q2vU9-{$=~+QF1m{36iQb{R(2$sV8F)*m6DdhaH_hto_jsX9&}6)udlE3 zi;5eYTWGvNcUiqiYcPT5q-JD;)xh1PXXXg9+S=a!pS`ottsn%V=>LCU-CbcBV@Lwq zPQ9_Z_uibR8{Nqs5;QLT%`OfIdY)%9b8kPYLSyul(oJ9U7$bUY<Ge&wjaDSy;{je> zTX%P6US3&MvqE(78=|Tr(t9VOT77Y8DN1v6bR7Gf#Jte$o%r0F$GpA06AdSe{I`vw zdcUsw-A*s7YiptGQYh-~-g3UGduxq|R<7$#QTM-?F~;qED5a0Fv%44ldsb`g)62|6 z6#ZkWre@L05uc?L2pY3E{&^4tfuJF11VJEZ2znwp&m~O+003V`Xs3`s(9Z~(h*O?2 z004X;DP?8|`Z+;YGrfvDAdkO%JOBV7!tND<en!w{CL(dw-I=+$_uf@C{)x4Gsv7e# zYpu*IUmI0z?((;C$=+S~Hj;E(0ROum2_Ek-W0;v^hnbmSCNMk`SjaME_5I>nMfsSW zvAeEHR>kf}UDdZvLEm$aZq%8f&!hc`UNUr<O7O`f_n3YNK9iSY;m-qf1ZYsWw!SXD z3n60v#fyQ#Vc|QQTU%ojlYXTkODa%TW*MDDS-BZ?Ge;2Ca(kI+<45+x_cXN5EX*P~ zG}!j{Ux*hBoMuha1WgNgq;<d7s3clY78Y+9VnD@{(GFJ8KfwnQ(huB#=Sz4X;4%z~ zBm#64jTH=k?fOl^udc!Pzz0Da#SW;hsT~>_xq0jM=-4>a$mYX?S1(__tgNawAWaX= zt!>-So=;8BOwTB@D&~*QRJyN!fQWbw`K}&DU!Itn>h9^&5V5`8-91}dTTt5sxwN!Q z?7XjkP`k`e30yXMj#@o4J4e}lXn2I<&CM^gwRg<nI`{OhtgQNJd~(vj&ij7wIXXHv zJ3F_!wuX#@t7U460G-4YG!Psc9|v{1thTORHXqE<fuZ5;?d_i4{>iDS;gJ!Od6rk2 z0J^58&K)*1HTMk+mX=pMdh#^g-SdB+Tzy(tgg1p=Ra{c;``z7LYtWo<%F~~J20Axy z-!Z$iw6>L3RNi~=u%)ftL?g=t5_8pAqsmIltCp5m!hlSa@luI3YHI6Ksr2nTcYFK# zTiZGci;4>hiw1^<OxXW_^}5|&IQz<DGb)KM-+%as^S5<$aCq|*=ZOHFM1TgqQ`6J3 zvB=C)-_Tf4RMOkm*U;ExRLEH~F*!9pF`0dUMy>-`rj6Ftw(8nixsZU`^POFMUm1m3 zTHECkvdFUVmpkUW906z>5zGGv4<8p473=D;@rk?l?%S!z_#-1nS$U-`f<1u=Nj97x zk_XVveC#ADs;bJ$D|8DdY-nuuDF=m(oxD-Cbq(JB=l$Noxg-2CIo-MUu(7$Ny`xhW z8vbBm9RWItXV93VU~X`5NcfA5q;rqguU}iss2m@EYDl;y`};h%w6wf@e0;pNwtjSU z>`uPPtgLr-cij{7mG6;U-CnM2UD?FsWJhO8(os!V-`L=(i0nAcvf1fs&D1VO9HCJO z#AvzM9AT;J6OUU~7XG=uv1!iMW9kVx?Xf(Prt#CyKGSN4VEiPZ03D+^0!)Xu=U&68 z8z=rH{KPJ6!^^zDKKo>u+c0OaZ!TDF0a@rwt<l5k&M|!2vul(u)q^EDZXx)d9?&PD zmzZz9%Q!)D=B<mat{-9)M-l<rOns6u{l!kA{qrq$HH#L_T>Ga1Is!CZhHt+_Ny%b~ zC6-uX0Xx7a0(4B46fIh`9J2_}(V|6*76CdJ0Q#qlg^F+q6)z<aSX9JgURF-@Xwke! z5?Q1Yj8Fc)c5t4n=>GJRI3@21BS0q<phXZoeEb9<MO`#BUVtE6qNQjQqMbTA(}ab@ zer5Ryq4p9QKRP;c=XiE+-@T_O;d{yw-YvMRpg@?5Cf*#-7;?lxL`IWPdH??XPe1=8 z*iK``R2>`~x=heF(hv<p;bjMhhmxTPNT+~>@BIDuKS+*(edsNJo{db;{q>tSq9?JO zg;zGWw9szneqzqNUESQ;7K13}%&#&5xRRcTKu`gB^k{S)Vzkc5kFKDlLT*u$Q|a#I z<rO>t?hyexaR3b?P_{7KT!Z9oFpw_AEi@!BkNG{OfDqlROCO!`$R|$=F@4cG3X4mq z7Yo<NUO`&9efK^BVJ>>!?A&}+P3`pTTx)wrQ%h@IeFOF&Rw4Gy!$(gR7MIY*G`2I{ zrMZaC_>*QMghRxQ(lT>pExNPl=~5iZs_Og`#IlF;#2-H`&>{FKg~i2~JLQ$t4b3f{ z{_yZw9i?z$a+(m|_{7BE&=7yn6~x^UI;<+j#>VrYAI#rR3yN`?Iy+PP0W*tqtbJ_+ z=p-I-p#1mu4~YGO7ih<@061E^p}iRlVA_Hu%TGvt9BcVockfkHR=Ew7!pW(b8#iw~ zeDru|Xc$z}Xv;;<GZ*&v4@$70ldXu&G*EbI>Ws-*R9pge@7;gcnM&2v)(s60TO?+X zy6M*KyEv1I#T0@WsCw}5k)>t+jZE7Gv$6~@6l3*IX;~Sheo{~<F$Y&fD&z^^TTgLR zT&jkK#=3?kN_`lxUERGHKzOiu&<`j}*KgeN=sAX2r>(<7Z%gP3Is&w9BLbl@V3(ch z>NZi!>0{*rvVn!~vwsBk{SQA(O-)%*I^VG6e`nx+IB*nz9{uj!yXQMQWL0zYP*q+9 zxu1~4fVEUmb|=h+U}SVu-m>-ejm4!UYM|X%>^nQQ^O%!!^NV)z`oXT>0hB9uc6M;g z@^57FJ-94yl%7F(Ut3$#C-xlnc055MKwEyhJ!eFcDa|h|zIpRjPdW{F{rXKuN9TY2 z&;QNM&F9Ba&(_xV%*-tJaM;EBrDyr#^DiPmCp3z~L5KH&D$$~S6!zD@36z+0etsdm z?v9qL76Ce1v}ieC5uhVLdk2`gCYD%Yi6wgl>;Rt#(0>M?MQeTbxudO<SYnAKmaG-9 zgY6vw`Y%a0`YSy?RM^D|3zh7a^IM7vwh1lq(FgnMnjfyuiPrt)+3aGvQJak*8jJXF zditwqENMIyKdD?wK3q3*F@?X+q**jRz>=97+uKemDt}etSr@Z>OE(%5_Ajrjiduuk zdwY9gn{*#4gkUB=ohboMPY1-zCOV6wax+0U(}P43Gf;!Xs<v?4AR&6LB%3Qv88mR+ zb7+n~HQ}O4Y&5;W^v^G+r`S@fYwH3EgJ`T1xrAivXH+YNy7GK6cQRw^lZ$S1@lU^6 zMX8WB2>KNfpz}&J_WF%qMPn<g2*NeiH#8BArNcy1O1XRQ!Sm<O`9d~DV_&^`g~}nO zHN%&grsF5_7ZYK3Z_jjsdWYl7g9%?zU2*dvz3j)o9)vh(CSsX2MAHQMV!owPU4L*~ zB~vt3+`R~KG4D7UXgioGTie@+mn*AlkSGcLK)69l9DE$EQc+c73~GD-;1E4V;qYDE z-Gsq<`v-6rL>B5L^aVqJQV-4{f~hG#0(72<#!dv$SOm6=XzVBcBpQpC1vp47^Neh2 zn0j(Fw-Bhx%F7YSFzm3R%POj_T)%-}h8sOFF!;%pYd3D)#WsZ9I1AxC<RdrBK)h`d zi|CP8uiro;eE9fjLsJv_$%li3usKb#SrL-9qFjt6_}~BgfA~1yhB`1093CAjDJ!>} z)JsVKXf5U6TpdHFsJPT}1fBBg^;<V?-M)S2p7oO)0G28KymR-yTnPB?Ev>C|M9pos zXn6(D5uhzm(_KAgWBDHn3XA&(25?Ntm`+Sg;TH3c#l<C;WfPz=#0*p{b8Cknn(3CL zq=3b3?d`Bzf+smELdFIua&iKoZ9=Vv78VvQg4{fIvelwN*qKfvjKy<yJ9mUYi8buu z=mc|s;?gn{XXqmdi7#D~gnfoliCl{Jk2z@|n68jZKe>AS(bEFySa^;<>*^a}bZJ?6 zNokqov#q3249%go!JbzD9bXcXVRDE;G?qZ8)trl^j@#OP2KBbLpQ&UYI~-ZSEF5$! zG8D(N%y!2|WMr-A`v(WFT)U3uYq9U3;4@d`$oYVqbewu_K^oOw!504f{v$@edi5H+ zo$u)u`Ra}{Lb1|raEIi~VepIdYp=G;U*=O1#Ej4|x7nsCY%JJyiIBwz|J1h`Q*rv? ze<MKWp=fMay1G&rjByeUosAP4&r88FHxq8mr+T<IHztpgF&wm3mE6*eb+^GnbAmqa z#pQpr&>?!}cSK{8w!;YR4gT*l^nfuD+~!<m*q=VnO^@YI6h{Q;Am+{VSm?En-?*zs z>t=J-qD6~#VmgTc{pVG^zc~3amRMqmCCkO$;LiYb1n6Hv`6ZTEVu>ZI<##LsbPiaw zXwjlYfc^ss!b9boZ@=-0@a<KNicfYaDa&!CoHYwg%QNRYd%gL4kK+$CGg`C=&=H{h zR90R=cu9SDc%-1HNLX=CUtf7;)ytQ!@RaCa9pjs3*8~#v_6>+7asxp;MIg3tz#yjS zp2c$HqUQ-9)3F+5<`Xg)pm}w54Od7#T6l5I-%c~8b3!n~m);2rBtH%I3zyD&v3U*j zDosTUokh~z!XjNE6;T}#pc4epfUl*k9c#-q6yAXHoqP8s0U&wT*FV4~@VLb4X88$; z{iG5*K0bj!g~}mTpAI3SRC8-<O<ldnd<3(J$*G+4JeehsA?N1jr>19b-@BhqccFd} zip4MRYc#VjMoMpQe{X+3sV6H2d<~BqFNqY^@aX8->Y-PU6%Pyzg>7HHnt1=Bl2T)^ zu&5-JPCt55fHfu=gSO)<M1W4v5eK1Y+-?z+uuq*sSmF(hjKB`+e+X}wOW6l#c|n?i za#0CR%A?0mP@@qY@uno`@I4J#BRS_hkD%iC#1urnaqEs`3#ecE9G_6duhDjP_iE}I z^b$5RRYoj-d_udWs_I%(vc96|=o7irPa%*tFU{Jyvby^E%{!7AaQN=tUfB-P>F(<{ zZ)-jVR|Mz;0kmcE?A-j=_#~}Z2O9WD@(@wK$4x@}#<#Yv$-cO%#U_3u0;|;}VbJB} zm64ILXU}$cr|dA8-{>kis9OELskwDzZ2Z;h*XiyaOgYUo@n9ADHJbAaY<^z1x3}Ni z+Gdj^JrK0AfRI?xSr9TaU0uv(o4h<exObFc?W~Q4q~W=@|APO^u{AL@t?ha#SpXeh z61qTUHI-=5qD9NPMS#vBixw?f1n3CResxVOvBVNf_Ms^P^j|0%8%r#)#FD)Nc7V^H z0q6+O-~K_-SS3_0y?m|w{+B*;ynOwKnik8S@V(^r)p^_V%4b;2X7{&=#-4^8hF+0} zY==QH@3ImSGL_#+M;S6M=A{;DG~S4z!U=z0K{$aHhCrxaek#$JZuC+_V}&{I@4qlG z@Z1ES>b}*rwV~l*zv{=CnVCyb%tJ$X^XAR|{(cY)rMVRZWH&Z9NpJ<ZRi7cTa*!F# z713A>Nj)rzQC;3`4f&a6nh<8A#F|9e;>j>m4h{~9#s*Q~j1<<!x$I;TEG	JRnse z#xw-pZEbC#sQ4)Ybh1QaZ`{0nE*dK)x3&(WunA9uJS%;sfBm=rAiV<!vn(De-jm*% zXiyX~VcO^_B8Wu|qtZNh^q9J>5K%mumzfah&UDwt=GI5P#Nd(dKYT#4K+YT-9@*H~ z5Mxd&M7V3ZtBV4pZ<3t6U;l^`r|l#LU-+}<K0ZEa=|J9zdL!a9uSf_wpL}s544M#~ z#nZyVg8J<299dYSH3D?9R?sHu@retfu?L4iG!~~8(-i0J=B+!#hq9^aomnhwQ}yml zr4eUf@wFQ_f%53s_|t+S-xFt(yn^a#duM89c9t?5dV2rB&_|AL*2_pY_?gmiR8&?& zWU{f>GTgATa#DP#k&PZll2yGelMz)c5vptI$O0qxo1{JWCj~_(CrJV5pvj3tYofxT zHKR)pfT2@aRYeC&Cq#fwnrQ3{ZZ|SpV{<b^9vB+7j;0lh#|5eX|C6hfTeGP|X(5d4 zTUk|IdM4~$c~2sSg2FrZ9?*(yY;5XGrQ93hFR%k?Po5TZ_w<yMmP5TCK5l@{%!QL$ zfw11ukt!@M#oT@H=;`SA#OUal-cEOS2Z6C<8gInvHgA=dRhX~1B5YE4f+y|*=Wz)E zXeS%pJ-sU{E5)UyW~|1h7K+LCwN}u{0_X_Pp|f^&b_q^fzc?sxF?=NQt>PT;%S#fb zBV6mQzWCxqHoJqv!&FzdV-9yH(VYXzAhhZ}otsPdWk;M7iwkErZuRZkcUnQY**3+e zdeFwzkN`nR#%LsO?-=+V9=zjMPnmM@hYtsddZ%hg%DBKW4v&t3vJ@rn-+$mFziIER zkpP4NAo%~^;#BxeuBM6a4(=|oeTH`$Nr*Id3DQ_~IJiJ#bIC)WwM!nVsQmRqn<ufX zr>R0J8eFKG_d@DVGk1?u>FggCq|W_dSFF^@x&^)tQgL)BjTL1}W3_or0086oOB#zb zcKrm7bIOW}ii)a4X)J{$0RWtp6qdvT8UTO?bPWIi+-<RS!5SQKdjJ3c07*qoM6N<$ Ef^${&E&u=k literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/dashboard@2x.png b/docs/4.3/assets/img/examples/dashboard@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..52b23dff6939d25e75027fd15fae5a92e4841520 GIT binary patch literal 26556 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 OVC1FWOI1slhWtNRd|rtF literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/floating-labels.png b/docs/4.3/assets/img/examples/floating-labels.png new file mode 100644 index 0000000000000000000000000000000000000000..c836eadbb86a5554a2bda4c9324283a0f75a054c GIT binary patch literal 10516 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 KB`d{^0{<TsgWgL3 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/floating-labels@2x.png b/docs/4.3/assets/img/examples/floating-labels@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..5d284bfe04d996ed7dfb03a95b77879f09f93718 GIT binary patch literal 11053 zcmch7byOVRv**m<?l4HuAR&Cw1PM+cgy8P(ZozGEx8Uv&+}#F3g1ZHGcNqp}`Mo{A z_uih}v;XbZ>2vDV?N4`ASJk~$-KWD9<Rr1s$<P4+0G8BOaU}o%0SW+sG*A&<XVSm< zalH!n3Nk7ZFc=IDhu`1dJw83&-oiIm_x^NG)s^&C=5-|mmFr6eDDry9e{?mL30C3v zQWNx^8Cy9&zi>B6dU$wfuI#_Lxq;Ya9v_@rDn}e0oLpVr9PFIrCpEvkyj)ydK0Q6& z-`{sPjcSSc-N0_6eM+96pY1ebHg^t6v)b=o>GtmE<ox91baiztAvw*!*i6^Jcwlg- z<Y%dcmF>>X?$y;*T1HkyRn5fYWN+W^y!=9IJIDQlgW-|U-+%f^$f+g1N`I48g!cUM z3kag5WmsNbnVXxhYiQiw-eF>4Z}05HBO-Hl^Q2>7-rU-1X>H@;`E+=A7!VvfHa_0j z4K1svbo2CXZSSbAt(%#dU0Yv2K0cnBp5EQtySly(jfgovKZjjk|NXnLxU?iBCZVdK zZDnI09u<3ed3knr=H=tZ%JI?G!C6jG#l+ldV`Gz-U$~&CL{mrK-pNHtRU<1WFC;7? zE+P5l`PuQiTT@f>4GiW53A(z5MaRb9+`!<k@+*7w4jguW3wykSU7udSF0Mw`;f>RG zb35?D;rqSQn~N)0{nYJ`-Us#kr-fbk&E4(w!p>=E(}_pb4IF;aGIiNKck_6EUijw} zQg@!wbC%e7eRy{Hd-0-Xv||n~p7!*74-0I2K=FOqJc3tG+{tD=y*$Cve&5?wJzieH z23Fz6=di2M)$6^JgEN>;(GyqPvrp4wc;|yl-DB?}ynO5~Z|LFW88*2E?_Rh)yM$#8 zJe)<f9vSDIIF(&ZZQQ&(Uaub*l{~H=!WDC#`j+8*3C~+cFuL%Um3{cvjHi~_Tan}^ z^RlO7t3s9Br<rXyS@28A$UR&1bKBf4bL4Bvz?!Dva2Tv~@}+9}W$xgmzPT;Cpd>LZ zJ2gAMsI1aIBr+m4(aqc6#L8j+@c8WJrGMjPa{py*YY*V^0`PbNc)kGKUjSY&*#0jd z?-!BOm&M~3nXDJKn3v7-7yX|vD)}$1e_!^mUb+_UQ${Ss0RYBRDREI1ci{0#u+!x? z0Aw-_-=ba`KeNs2;knxFs+|Pf-p;ibCDGsALb#3cx_JJ-5Jc3YMwO2Va*a7`^+9Oa zNT6)U5csyZBIXdc86BpmN-Ux@H2IeM1UsFV^d0zzlB<h_8{wf`Ph4EjcjCpY;DzrB zg`iY6qxR62RFYCaa{0t5O+~T<Eo8@Yy1~nW+Zw3^l-!^21j?qs;8jFzxr>Hy1weSZ zQ)gst5HnE_muF@N$BRo=78pK&#t=YyIWMQ16_$vZjEKwpn4mFaP?wIMi=)Hy;0`k? zFA1u9XKDA}5$x(QuX#|2H>fJ3T1<fdOqEAg2p9-is_xyrSqfSPAp_wAm)Ky$<wjCu zOi+v){3)pZ?=C(&>MeusmBV7Juw1&%D=3Fz#mBLM_drtKJWXf-nBCXbU1gkM38h}Q z>ZnBtkwJKN#mtg?6%VX#W>=J9t?N<=ve0$r@3#zdD;{U>c1hS<aF#<tm+Wyq?-8@3 zwqWTB@7&S!LqwsD-&eJRSrCxD*1Zvs_n?eVi6o&Daq`f-JKDaCNe?-aS`lb<{pc@s zw-pby=6De(ym^fx(@)LxK}^^^vCi|HiQWY7{QA-DsN_>@3aJQm<zT$b&XFga?@<d0 zak<>j)p=T6m?zN2k1hTB#ovEtsmpKQkAVHHaVz=>W$(A{xR^WICa<ta4`87YdseWk zxgqx(LJ`iPQ?tE*U$W}NB4R^|Z!%m_WGf`^gZmQC++4!6gYQpuyW=u9oLvNc7md7i z1#vK_1%F){lq+@pZ@KuG6Ed#P64~Q?;XmwgAwTSULWMlOlni(_9v^E{l3YZJ5jH)< zxE?ASu5<b&(F#J06Mc&bq8*~XD%{7T#ieEn=vaK1c<{dZoPV=y-mqrq_LRvf<ap0k zJnk>37rJZw45hhW`TQ327K~1Jiy*Km_+ulGLNEsJmR@3h6CE|+e2~zdHf>QVd*VAo z<VN#^CF_?7O(D{^=MURg7{Y-#6$&g*Z7!wWcxLAZh@yzznu_PxhO_zP2)I=S4%A)d zp<e~VQ4yS!K11-<V>@p^J$+~`*%mca<0hkzq`T;#e*bz|EBZxDz=<PbjufsqlmoG; z8M0#_dDbN{-yWeeT&UkVm`Qa*qek;&C*gWz$1hgc0;_O3>Y^7$u6SJ19UZNG<A7OZ zB}fY3rQAn|T0=;FAOBu8L^zx}46;+8!jZt%$IcXOSnGZu`tYSTRsN5iGF-`qw{6h; z@_<8>z`1$CMt<v368f!gfaI#)dL(^1!GnWqWDvTtYE*0SPYVG%TzLEHS0*S&^3^=S zH0PKsNLsd^yMR1nhv<PoElYDpcnH4VP|)E+0!s96){=6E1+QAO2oJ*~^3u?eK}l#; zeW>)ypz~&Uz1fA~oToPvrBtVf(D#NxuyGScDy3<Rb(d-JjV2OCK(5B`qGHQoX2%my za)nXQx9^DqlRsT#E$zwTESRSA#NR9e^^^D4j8ddswRG^mNaLgx#6n8D1o9HKrokWC z^uPs;`SV1w9ZKKk+s9p@88XRA%{R=y%<&NM9L%~BI44=x?Mx4o0Jpl6CaGeU3SJsc zyMr@{&5#megn;O6(OcSMQ0_rrERahq>B#1Ww>x(<N*+0`vD8WyHa)iDQGAH_n2x$H z_yx_IRup$!?8TkLGkzrr1H#;{G&_0j^l8+h8}&B02kr``DbZ<q)`ap3ti93CJOz!p zaR97|>%W*;4HF(iNH1i#aQY=F5JhjfvilCRcXGf0)*bUIv*N`|iIDCNBwtUQ+l%}W zfKEmZsQ4s^hosx9&fY)LjRNv!Z#)^tvrsKEll3jXL2&lYR7zSVW&rgg8nB&)uVW`D znIP|CCLcdqHVZ;`$%eqt)khM+%grf_M3H*)Q@pbsG8!rQt>u%9Q+;X?I>uc62sW>8 zFX`y+8R=`bn<L81lb8jIhfLc!q_S-Ml@{A#Nw=VS<XnGxX1@B%FGCV3jAUbW_{}dX z=M*F-KoOtqv61KbMVoq7CX+YTe>%L4<$+TbIp;GjqG?*UFV3wr?eK${(I*zU;kx5- znY|SGK_d04%QO#DC(D|n&CWOH-nUuHQVhj+Ca@>s7MG2ZtWX)N7Efl^gW;JG95w=f z?YGsDcQdADfeS|xxAsLIj;7nnx|sh`kf<$>`uA4xrx<RTI!3lXCUk4o>|yPfEuzMn z9Yaq)MNWk_1*G9gbe-r$_WFhcPaOa-7ktx|vO*|EBsjALvp8S=@XHu8cjilQWfiW# z-%O*`tBm6Aeo@?@aoTp&4#nf5GgF3I1oI@0@UK7W1Mv*-aZ@n)@jsW%CcgVUY>C!` zT?_`ayYjb0{v|MdSZ=2IA$`XSs(pj_8V=)k89}vr<Y=*&FII@6)Hmf_DdiNj=hc$9 zh-lcxUqk$)0;q9=L~s#B|F6f!bi97GFY)CAxzLsq;&U6Ks9BVu`@G+{Kd(M7TJH-k zjbFnh2N)M{2VAA5M7+!Z`rHy-KJ||YQ#?o3$JIYnf5yE(88yq=G1yY~A8h&qOuW<r z{*AP@MS7O}dUoS=OC9=jS?wx+YTYuGBFKpT*TJ%>)9ds_Kw33vOTI^cuEb_Dg6q8Y zX-niz;5u^ScB~B7T^(&`G85B}C_p5@*?C2#m59_pzI4A&Tm44o!=ee`L(M6{!f#wA z&d(9O;2%12ia{J-030cZ;;Xid4O+z-X6VP*{WcFHEyKTofI$&3Fm1mx{9|6f;h|0O zk*2=>O}q(?TgaqBqTZ1K&SwZ%*#tzb$tSgnWi(E1rJq{Aa=8_GWYA0n2t$O>&+`0< zl0t+)eZq@BkI@s7{Gvu(^M(F-Q#9-}_~KISi+@FM)VIU+IhzgB{dVJTNl?ZT7hj6> z(azk}&7$(TBcQIEHHhKSbJ_-XR-aq&sUT17?1O-!tDO+ezL~hSz6=%evLzEoY{XOG zd9QPt5KEANStvsFXtb*=!lu2Qk%lgbKy&;|Stn}j6YRPvz<9}Qr5Zo(R9~|^?Q~+2 zX;DDYy(E3Ev|B{JeDo7?g9Zu?ax8~mcf&uo4~P@@b#a{wA?csg<wnfmK-Au5Du)l0 zS*1b<^%*D7eeDZT&c(0Aq`8aU$`P!?<7C-IkF{xY=p*ELDzT6s*qKx%@kw@;G_Z|g z)1bEDhIT<L39YM4^Vut#_gAiT6Lhy@kgI(AIw$hRE0f#y6jKkAV*-`79NmNT%}FhN zP{)OnihB%Fw%pdD@05+E>OqTwolxHd>$=mNXEd1!|Mf#c<Bv(y>b7VGa4es-f7qwk z3ERdGRI%By4Izm8Or$3(BhGn=WIS3lvh=Th_k_N;7i|}w{y5T<-BV|OCt&%_UItmb z$@|Af!H|;Qg|g>yi76Y_SUvbn@z{Rh78h<MY0(S~7S*&^DmN$*nJjU2Pi*O%(+MRU z80OOEfi@e{&04KeAZZ?Z-QG%$u;Tf%s<iw)dO4ZnynvpU^s-m`lGC=!xN5rWCt&xt z(D<vFje)}NUR(3ubt6MEdhX0>)=&(Vq6=q<%Lh+%D>Yq!q-^yKZAC+M#>FoBm*U8x zx4ZWKbnUz&>3?2sC>=hE>nidaY)AjHf@<cjVoFz)u={kHA2LTex)#v}XM52f>tU&J zsM~$fCu_Lq#qMxPOOMUNJMrc~X9mu@u2g*dOk?Vys;N6&!mS()Y?@v|qR2?8$^TuT z<+58u$7o;--Bjz}zxw;Q*oqXxGHP{c(>x8c2-z*zGuJN=sh{0>vg3(Gv?3lOvs!G^ zTm+U6^J`&o6wYQ>Wb9>3Bi!zy(HiLXSYFvxG0$m34Y7>Rw4stLHN`6`a8r_V8xjX7 zTIzB2n5DqB9M*n8<NMKBp<;Q(MRy|>-J-)G5;9dS71?`2h0XG^WgUqD)^(NevEDOa zY*RbL@0@#Icc}AI-X#5-6<*+4ZHpTxTf$Fgl1~a$MF$4%+?@B9KG(~`7Ecpv6x~C- zs>y%}Y3gtFe^%JPWLT2K4IU1mxszTL9*FXNSzls6EwrzwDB>33Dku%ETlHQ4>DS?n zrg8$Q<Zb6XjmG__fqq^(BiUR=w~d1drb<m@HaXj=SPq`ATE?)&bZ!Ox!l-WaP8L`S zpGPNTKn(k2Goio?zSg@)o3w3mL#P9%`j9LRyKMQw1_Z8pk5gwutpy#*7n-3;%QbeH z+UpA*|9s?94<$d6sQ2ufVX?0;eD1G>uXZ6J&$(+1EEFy3aCg!nLq}&0EJowh&oq<O zZeyU$a=2|-W7O^<e>|H=$k}oWHx2&b=X(oKNC%wVA$x6CNFL)fir+_a0GL9%ep51O z>dT<H1{S(~8OSZq#)CHBzxz^a-BCS%j|vztGRi@Y)c)>OM0vA{9H$Yr%qkLow~Q{D zHL#5t$M2<m$aXVWI1}sEALtPacvm{qJI_z9UvB3^6<@7>FH}X5?<-4X>~(9K0(BP+ zxEJYU0GN2IwpQV4$ee4$##Nt>5+Hg*IDpg?bckTwT9WWLIh~mLd`%>oI9~6O$rtN! zpvw#AO>g-2aQ7S#gPcL!GLZFVwoK|vApp(ZTN5g*M<^)-%_+pNi$lh^65=e|hXxXl z;~Jy<=1X=egZ#L~^XP~se*D=N(k(2C>kCz{<i~!kYSx>aA>E%|OV)<)0w2cihdIHh z7rt{W&M14sZB(wLmK>SwnU6~IvRg3jK|%TyD9G^WlC|Ar!8EUk*aD+eVcf`Ne%yI& z#bM=1@BVomX6|;KCVV48jf)!e;-2n?i5gUm(EMPp*0RwZ2{gNKcgz4dY}}MM0{qWa zMIJP6-`B9{PCQGm{1v*E>`tkRnb+JHSDJ0Ho$Hp2@f7Hf2|Vh%NHAs}?kk-pPykS6 z@*M#|c@~D?&N@yAukbjUdzI~er*9Z2ftIU%qd4$KRD&&dAv?4Mrd#nYxAYgDZY9;G z@e{}U8m(yJ^5-=w2KJ)`-Nz4!kRCDH)%u~_v!m2#;>ZP!+8&E~jV_>a_+-H6KVJal z#WhLmAL<N`^cDf&v(_uzPKOJn>r0|o9x~Xvl>i4(q@<(bTna$FS{Lrgc%CT2^krEn z7)Yi;1xioGM@7`aTZU+K!tdh1QGoXl0D54sp)ja9_x83BLP+dC&d7wmZ_r2^228s^ zgR-NevQ)057F$X<*W3EcKN9JxP2UsQM%p;<Rr4CGa!lDBu{Jlx;w*TjXq+5<a$WrX zVprbJXDt28$Vz%iA+4yQ*mGqp{j)XJTw7jD)}K18+4pU^ezHppqo-pBSLU5Oc6!-u zE?$Q^0xoYo_ilsR;hS)(Ojm(EX&hdvQJrq@Yq3Y5ql2QDh*i1-njaH^2=zU|*MV;x zm`o#AoY9~kgab%VRtz+|^n=yx8sPvFp+qTkQK@fX{xa+ZoTzlUQc~y<z;}shghZ-8 zekAx;9AeNvX^a6hzGTc-*`6LRE2|5dkXczT@^jXhXPau4UQBG59^H(uuy=U+o~h}C zNPqLKZAaS!ksl{@evAy=d$V5~3s+gnu=YFFRr7O@^BE7h+zq}l^J*t$Cx~Se=Hp6; z5bC@+zFYZwMN*qmThCRhUcHv-<Mn-aWtL<9dP(|XUXm@d`!HxTP(&m_)Mg$o#JXi1 zXSZJQW3c^><sZg`G!vm;$WKi9yE9=-C=#Pkrg+2Fh95f%?BiiH?*^GS9NanIUjn(K zK%}2W_5$j_Xr?<N40-ocnQRH>HU3LXR^AOwt!7Ei`d5c_cbyqtJeqCHH;oO-SLr-w zx-yDhBrh7ey7eCN9-6Y_BERY`r|Rma;xB)xm=5cd8M^eh)fMl~A%woO5><aVr$Dff z>9f<7>%4WiiJ<fKv|^@={Cy@rs^j5fcepj0rj8Amzdn+_n1)y9`0e=9zBZZ8fBR_g zZoPY;R;b!B=A?LzmV9sT0^)Ug*}i#jRM3t>ji}#Fb#UJ4VV72b(Zj^_l1&8|+%1(b z2U-PUXKDtdBFHe2>CojPmDHff*)J!}C~69_M<M;~USA|1j>x^>K1*7Yf&vCsYxRu{ zr9oPXdZEqlGnSg*<7;y@HYVe@7Jdu<G*)X456$iBTNRTx&%v<nhQ#BOGKy?#?zC(9 zTDv|rNvgFN`IQ#(=+&+_(h>!5J)v$27^PH}Jl~)12vo6h-3(NwcoF!b)zFTgCWMJs z=FXTo2AmXGgOR|>$0<!w9)~fiF$oin6jf&<jUoEA_l9V9b#WNM&d@NhxN{5p1E?+x zi$&7Ou={67Z(2}q{nyP82ynH9n>jX{B4XGGc~w!Hc6rF~&$}Xit#qb`=bpUD9CCQ# z(_`gt3q6C9<O<dU?KLf{qPFCjak3Ue*ubYDvo#LRLQ;2Y=>pqnF$8Gp*3cEn<aCbE zTKAJ(uj5X%*}BHz-%&dGnAd1IjTDgI>eZ5^ir~(EcptJh?5(gZX8A54pyM%{fUaY0 zoL2KPG|tR`C`FxUem^%6+p*zoFeiFtnG&x4I|=Xvo{5xdyqQ7xps@=r<M7{osc;G3 zQRov2PKw&`{;4g~8@5_FH|Ekmv;Tx*pFB4e7a8i>Z*@&|c5X31H5wrfojY+Wi^cSQ z!%IJXP?ov{JKW`{<lw#j*wRw^DW#k1Kb~pm0OHE#9jkO~<DMn<-Yq{a|JX?saFsr| zRSUR#ZUyT3=X8DDK!0qo&=(^ZD4DQOl6Ar?aPVL~LuRe6q28|luw~Z5!X6Q8m;m{q zDFI+vKj+L)u?QL4wEjVn5~}&(<LLU*q!ezV4Sp*T)mvcovJ^3NO0l!CX~<wvXU-OM zR8~i?#?G?XQh;BPVYR2Cw&42xl%)@$dlI2H$r&poI*a$NeO9N@id-+fY1WQ|{Cujz zq{`4?%fPFE!A&m5Az%v)((kzKKOC$+cEp&OtsYCM>$UC#;$`KN({cNxr-KB_0~>-x z7IK*YEl8pU0K|~VCM2Hq)?AF`sHQwO(5l-JezWgSeI*h8X*qN&TRjaR#PQkR-gZ|^ z4UEZ+KseQHP`A-lQ*F#t7~7bz(06V>-MQPlY%*sCPQh@aT>c}_;?`!CVLnp&4~#BF z`3Nm2KNxR)ZG2hu)-PCuI(774#SRhVFGB526!qj~)NI^sG>++}5`4k*>}M~wSZEs% zfglu+7zIE;!-T}F^N54-HY+^M;ik!lW<N4?-0bW0AEa&Mrkxk%8U65c_8BR6UOZ%J z<C$)o|M@~K66Fl?L)plraTl58xfLBS4@2SgXz{CKeni3#7Z(lxa+*KmN1m?8)KqvK zVlphI-+$hnyJT~|yPwB67SxN7uFia);Frb;jW=A9%2q!&&U?T2Wy3!1>-KVGN+O4x z`$oG_h!Vsxa>e8~FwW}F(X}AzL$b2~WlbnjEb*s5aep~mJ`+dRetHOU_(P~yoz$-I zN2ag`fw?XyMl(-%jsvCc=>sMm>PJJB)0Anu;F`aN$YC^bU*C>n*br}XnqUY%CzVZ) zbSs*2zqNHd(L=3~4sC6h9=1DSR6IDTyL?ZsW>dSQa_96_dXeE*Is`JBY0s11W08t? zR*(MOi+yHbiGB$S1RQ+Y=))#4PQ@j=E#(LUY0tPUeCLLnbyb-@`;+Dbsuc$U{Y7^V zC<Dc5J@nRfA~CA5mET)rjSf!fwLzPfK4}`P`wjuwgU+Pz7<bIoD7=iPx-D`t7CyFW z^4pNL*5|W}6`wu7`%c5<bktxgASer(j(m<Ml16z4faD)?9>6p7j}{&_|GJlV;Un2K z91z;M+zDkit$3Qs2AY+qKXc0Mt_+gbgnfG}A5V~aigUyu@O#a=e8Bi&rb25L#zp~A zUu~f!`zYDWD;a${#ysDtq9s{M;7uMrw|vR6OPxF2=czxfFf1E5udQb1ycU~2F*=?P z&F>MN+}lKUZY9^52M2B+)eB`rF0)h~G^_8m8nc@_9!m>7H#}Dm+}eMA>jYwJe{0z* z^;m1IwDim<jMce;&4mn2h(gG2j&C#%Ce{4J<2`0)=I}=WrOI$meW_`FTZlorckr;S zx@?B?XTju1!zfFg7&q~)J{Uq_E$lOHzJ+x$`juCIjnRRsjQO9DI_>iYs<m-d^D-Ba z{4RRg5g>tkh&U~VH}>N-e@h5KC>6_Wrw>x-neu0pKm>)8GLG#MXT^2rnWKt*x@>x_ z=pIsx%#NFr{tc09CE)H|5Q^;N&kkawn5zER5kEq3%DqJ@pWVVXx#IftD6<sN8itP1 zjxdsM>AM`3nbY?+*r#pAmiYSa?GopR;o`)+LWDj$Zi-6}WhbdHjv8k3{`q+<q}&XK z(@m!DdYY7yF)_6(X~mR%;1MXyX8vfCRbgBk)FQ~Q$`v?tVI7-JCd(o$N6Sc&;GM!j z?bSch_KSY2B3)sPj9K4X%#9wTrDEDi9miL^(3RDFI}}m*YwlgM+6Mxvb-ypP@eTAV z)<so6EYMBzM$y6p=#adZ=>WMWN}t7TRf}x;i4rF-zYMvKj4Fa@JTb+Z9CpzGih)bn zn>;6tm`N9ewj@{k@!Jbgz&M4-e9oEp{1mV~iTx)~YICe`UY-wvc-M!dC>{jcz_2f$ zdaColtMad_N&_fHD1Z(s5EH`%)B92==SP*N&Ke;Z5^HVa5^Kv`CH91g9e~9V>E6l_ ziQ)Rbm1?4<X8odpmzOh*SNrICr)wCnvGK_B@ZBbm8W#z0&9+%cvYGU^<=00wBWrs4 zyb`(r7Q5Uev=lG<&=jXfoH)H|!ZpFoT*&trsxjby|C~=DE4R{VsXGL0OuxTdXlTs= z9VR9#vCbFke$!ME3BIhX*t)S><gVIDE)Zi+bQJz*M>UK~6kw;<tbEnvatcBuPM!1l z+Z+p?#Y2eNqIOQfb-E92)rjX2nVZJ6=Ro<gK8cDYwjSj{DC|#5J(~We)*?=yzX)z} z>YQ@Z=2LypdXi@5rMKZLd)C<>cD8r=u(pDk3M6>K07?fygyY&6B`)~UkRZ6G&<$}+ zjg|T+R9_UAM!jEW*O379kH|8FV-WLyXlUGqEA__wQ-_O;f&-A&v-RQ~la;T2@_efQ ztNA{CZk)Qoi5B@@@D&~dv2Glr=6I(?5?!DuDQHV<=7JCxiB<0G5Z|sW&@nv`CDx?K zuDvT-TkOVcRy6<#7sIb9+Ep?eDm8SSQZwJJM);Fvm3;ZnhlnKn%!MAztZ=KcCqdZ6 z!uuvtcEzutE{p*)7Uf?ft^3Ul`iM5bP)U@#;<EfiwsD18Y_p%KQj9CoB(jdnZ3#wD zLUha)kA6<<=+tTPlU%bAGuX5%*4MO;mF_L-OUeYrd0DRVd0;NCl}XGM4(k$pgkl8) z=n$`9vQb^GNc^@d3;nwvAnHjqC55SQ#2{B@`gaf&5`RZB@GKBnrVob?%#Md(2JM58 z{s(V(1Fm7=FhHk5)=9Je&GcL~6aZBI%WmM<IyKw4w|+MH>Yo>NOpUoV+z~yu10Ka1 zfNp=UNO#<r2M6Jk>BfZw{?#`X@~Wv+k`gocz<6${{3G#q^3BD0CBQ`5Jr?zuIhTTT zq~-kOH_X)i?l<ge)|dhAE~{wiX@C|DxQz#gu4?=V&$8&WDsj1!gTB7moU%%+R@IVb z`+0fvlr$_PdWV)v7lFy|%WQR<RpWF=M0I&(<Wh(4k}34XwhuDQ%DRh%GvHxLqG6pj z>q7k&VPU3TTDP<E?eQ>h+wL=li5tK=z!l(!ZDO6Z0h5+pX(NRECi@!cig$jsOJ)vS zZv>zFk#iU<y!SeoA_TVt8XHvdEvQT!=}Bq!!#|EP8C+gaV!CxY(eof!`-=gDaabzG z*ge|k8k9g9WPtS@NP)BL=RZl{^A`Yz!Au8B<}l-wk!m-^yMD8g$gvf=rEZ8vkodd! z`bL&z+H}>0QIQ81sB4+J?T*d6{dE~h2F>r)1?34YY7y#O*2s^-pD}r#o$yjo`d7h{ zvj-E9_|6y%-gw6~ctG$zmPvJi9#+cdg|5guGI;?L+ZO@?J{}4BbI=<-z3diIwbnB# z6tWKpG5_?Oajn06GJ-PBQbOF-krlvb=mvi=M!x|?nz8awnDC;GE<aLYDCj{5{q<#p zfcUhyf_FPCz=k7$0vLgfDUK2$9}0O{3IoE+=^slKh23bk>@_~%f-qCT4j;n(^u&yy z;`}f!1Ox^n=xbyjgni)eT$iWa{O+Fyh-p2qM>FQv+;6-~1iiLk8TLXEHZ=LwzAwAh zXFeV!o$$ttGrx~@(P5NbSHaEpuFFgM?t6wN@9_kqI_{IGP8+H_$PBxeA}NIy9Y<2a z{)_h6x=`i*xM?{>>LU=)^H8lgW|)|0<JqqE#CVw#EGUVGk{@@B8g2^*gaNq>Xpu)C z;s54f_Wx<>zxlraMo^_|N5Yp}yL6!PPxkdO^JS=CfZu@C804J_*kP5Qf=wXz84=<{ z4N~F>|BDePK}}1o2M9{NM0BFzHiQy#V!ER?RR55k&l-r?L#kYzz_@IsQ(>(pI&+|; zSSmo6*JH5dIm+fTKqo;y4i7C(VHpx@?9!lBwrq3HZ_<@&KQXu2tNW*dcxBwQu#v6M zo|HWp13^vS6`>l#CFyB-#c5VZo=8XjXwcP+uX!x`k#L`ipLP8J>hx-%jXRDvl|rCz z^CyvfQ*#=eWY&s7W}z%I6><xA^QtIAwDbSC8>>fmI?B#e<e0akQ~Yd++-TBpjzIr8 zSE)O!13z&LM0!^)_xzjebsI5+2J!(48#Y=MyLm`izbHDl9E+t9=8{1YVDcAzKm4!q zW{=qo&~cC-tBs-J|Jso`43K61&Hufl{G0y=z_u&+4ZKp;L>e#rU^F52q=7M`0sI=K z&HX@m*F_Y`W4Da>mMz+)|BCQ`A3ZOy1>9Y*E4qgr^s>!Lb{})np#H$W%b<)&z@tS+ znY6_6EnOpvG`df+f+Y>Dv1*WMi3Np;(eQm;S3i`y-aDREv`<$6hhC8EV6X%YleAt0 zh)0Sgso4g8Brw91W3-yj@AI&s2~*}ku1`JA!1=IL$7WzZ#>U5Zx2Ge_7u8zBZ!a6U zqoEkE9i|kr19;B3n?$C^rlw<%$LzlVr0|3j`R{>akRtM{`Z|AOFkrdQiY$}0%7O*9 ztsYKKs~TtD784`uCy?ea-q-tANEx+KF1B7~_zeJ>*ZME4t@$^Wm3g(M1Ku6p1GO!o z&S$EA+}q=Vn}3|Va)o1HDd9Q-_%x_X|2)-}cnN3hcs=#Jm3O}U`(Q-qF;H%`G(Rl4 z!hfgcGWY^|wScOoo_f0<*{!ycWrz+blvAz%R+TXlS{0Cm`#%0)jd~2bKdExCzBYnI zL};R>Bp=r&R_?}EwA&!!K9#Cvft7o><=D=uiK{NbsGjvsP2Rk~dP`%}v+o)n7CLQG zbezObHvkf0O<i|Pdmndqs8VjpCg6=2kq^{vp;7vnoLPqZo>vYOGdHX8z3hyi+{<t- zQYPm^rp2<JX2qq=%s6oV<A)g?nz}ZgJJ(7vgf9FDe3=eFf??)_36h7#h4eNxcGTlj z7{N^bxw%j@uX?9ogX?4z3D1(!#C}7|hjleJ;p=*&*@hYX$+s=|5&0usaZZ&W9A!83 z$M*iOW}ml%(N%<iEz^F=UrV5b6yYef_O&t+keM}}WPK9x7UGEfVxPT{tprD*!QYQ& zXV_W<D80N<<_G<H5y6K=gx78A2h=uRQw`J;dJ-n0Z6GA8Q)aHKv8c(^mYU*<lv5um z?r}E5^XfemRNTkQJ!cQU^pc|w1(z)52ano!I|qRC*u>GKA)EiDmHN-NN@Z-;r9f8# zhSadw%p**GyxX)A0ZF&g{lhhDQGZ)kg@lk*#oaU+b?Qo+o2-RH=ZM8v5UPeaqj+>T z+7iNLKaPkAVlaR}(7@CNuRp2~u!}$uF(280+SX{`pXN}tN7^uFqm{KjHQrZH<r%}E z8LQPY2|SI=zNig|fXKpjVCVN@YjIlqhZOJqST=U8>GGl7TdIPH*ON9r-1GTcjA^VD z$2i*ESdj;taSxn}?65t>9taTB^xKoHfm`V0;Mc{xXWCD_w%7LvO>>{N;qd~i*Nb)j zC{_G8Rq;-LIF>5k1YbsmuU5NW;+=0BxseGM2D~DU`;O1%%k{o8E^YPh8xnh#a?<ea z$3m{Ie(FI1z=t%V%C&i#v}-PV`f(Mu3vQb+AmdQkH)KrQnlw}XN>~f3RF{TqgD+pm zA|mEF=CZC!&T4FX92RWr!m&f@7yA`=;T7k)&HQkp>O#kVJkH5^=dBPCQEZfO$MRk& z+3%qccjmD&cj1U%{XcbHRi=pNu<kXW4Y#jH7J*NO4u+<)B^wct-N~hzjz-P+xITKP z0jUibH*C$K%8g&~{M!EBXkbJgpZ_HWT8cT{Y6p^tI?DT)nZ(lu`75~uvxF0r9Wi7l zE)y|U7#8~a+>0Nd=E%Fa7td}EA@%-TF<ZCJ%_sn7O2~~ti<X$?2m0WtrU=gA@0J<b z^l=boCK33zvs1a%{vTLT!1cd-2+w{1?<dfIX3_t7@YtM4B0>60tgKobH&)JqLBpT9 zpa^EB?$XzN7Lq=2XKioFE-tgn2(9q8T9wPFI!f0?hf@DmRj*F*>6WF@K1sQ{+3oLl z?Xsv}*p8LxSc$T~Q3W8ErH!7Q?YU%8fu28R&-w^y#!i`BHMQvwa>S%Z3IGBL?S;$j zJao_6;Dkz~`tXc|CxM;O-}|Ayib0olN<{!nCBAY$yRnF~va}N1I@@L@-%p4-6t2y@ z$Q128*zCAGPYvYNBxftE!G!6aiL%{xSG=u}{gB}zU<k0h4K}=EPZjxad49ceXs9<c zdUJpDf#}Kj!rU5S2;G$Sf^k%3=%O!7ciA$!cudJJ%3|(Z{kC}IlLdk+Zik)M^lj@M z;(8S$s#PEN%9YTe5TCsZffu)ucmHP}{=c4uzWmY`BBpKX(F3vnOP7>{oOqR(LBRh2 D^|w|z literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/grid.png b/docs/4.3/assets/img/examples/grid.png new file mode 100644 index 0000000000000000000000000000000000000000..b3b5b35650c3c713416b053fb449410b463a6733 GIT binary patch literal 37960 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/grid@2x.png b/docs/4.3/assets/img/examples/grid@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..e95c363658257cea8e1dab4e6cb34e8cdd893833 GIT binary patch literal 34834 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/jumbotron.png b/docs/4.3/assets/img/examples/jumbotron.png new file mode 100644 index 0000000000000000000000000000000000000000..afca61a7c5f2ba1b69ad049881af8f2e78d4827e GIT binary patch literal 31403 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 I%sB9W0B11A^8f$< literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/jumbotron@2x.png b/docs/4.3/assets/img/examples/jumbotron@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..4d83dffa6f1a354b9e3ea95809448169c68e0230 GIT binary patch literal 38408 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%0Dvq4ooYO3%bF7d&W4lD@c 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 YKmt|>jH#SQ`k#rl9_v4<RJDuv7yJV0<NyEw literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/navbar-bottom.png b/docs/4.3/assets/img/examples/navbar-bottom.png new file mode 100644 index 0000000000000000000000000000000000000000..e9f0abc95233698316d864ca2e10582daa51061c GIT binary patch literal 9774 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 PfdOPB6veAW4Fmrd2~<td literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/navbar-bottom@2x.png b/docs/4.3/assets/img/examples/navbar-bottom@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..a62faa182e234601d3637d8a6985529ff7484f48 GIT binary patch literal 11316 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 WSw96#86y5`nU<AQlBoIw{`z0n?p!GV literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/navbar-fixed.png b/docs/4.3/assets/img/examples/navbar-fixed.png new file mode 100644 index 0000000000000000000000000000000000000000..c839602a7f62afb59483a3192f7294f6c5e5b2e1 GIT binary patch literal 11569 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/navbar-fixed@2x.png b/docs/4.3/assets/img/examples/navbar-fixed@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..1ce8ca576c6c629358b913bf2ebbdb91b6979826 GIT binary patch literal 13616 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/navbar-static.png b/docs/4.3/assets/img/examples/navbar-static.png new file mode 100644 index 0000000000000000000000000000000000000000..faebe34511a59d441b24de0b1ae0ed7642f5aa3f GIT binary patch literal 12523 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/navbar-static@2x.png b/docs/4.3/assets/img/examples/navbar-static@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..758aa61e8acb061432c4f79b64e768d19742333d GIT binary patch literal 14893 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%0A2v{ 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/navbars.png b/docs/4.3/assets/img/examples/navbars.png new file mode 100644 index 0000000000000000000000000000000000000000..874f6d7525c87e5cf458ad3e2d85c23f5591b6bd GIT binary patch literal 24748 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/navbars@2x.png b/docs/4.3/assets/img/examples/navbars@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..ce11b8d2cdc75a81b001d0b941a04c4a47c91853 GIT binary patch literal 27187 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/offcanvas.png b/docs/4.3/assets/img/examples/offcanvas.png new file mode 100644 index 0000000000000000000000000000000000000000..b5073eba40b89ac58e6b555f130b52e16fcd41e7 GIT binary patch literal 20148 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±+E*_xI#|a@UrRGUBUpi? zrQO!h+@nRP`))l-PJ1AM@c%Ok<=f40dtL+#tO`24>|Y$e(;!5`(3^p64?Sipr#f-q z2&W27?ZAbxYx*zn__{&$*Ht|ce!axT)CzxoAA_BeoM^cZV&JW1#>O4<`A?kcyR63U zU7Ekd1eVUvxmI>+|1A~r!<sX8@_sUV^a&fCGHFww^?o%cnT8pRhiO~7Fgx^*Te#st zwJ9lB10)Jt<y6!FNZtnY@OQxB_*TnSp#qXkDh1f=NcI$Hoy_Fd!#~cXHka&(vsZQB z*VQ-$?0o8xV~9u+Kri_VHw*Gs77_2#1g+EZHD*;Ly))m-MBhu3QSTJ)Fn+?hYL+?J zalG4|SH7(3hk(Tmqjn77dj*Jm<9%y-CI|Q!I9{N$1+(x)qbkWp=~jgWT%#@pk|pNS zvng6x<EfV@4#6QC_Eu*GG+dS&PRFn5Ql6On6k41oHQd=XxaxWZmI0SgOY_u|16Ba+ zm@He2%gr8t?flfH2+2}Buw7Z)a8cbA)!)ad?BP~$E<@s)DDJqU(ku9s$;V^r07SHe zPfIrF-o@))@-OO7`$((`xCnSgmVzd8EFL0W>RUk^@;wl)lNw9LJDG(}-#rm0z`X6v zDO&PYY2?(-d9yjLU}<`9l~gA@lb=}o&R%*|G)`rJA(NX8bnZfmfZXGD8?i>o>kmjj z-})&j^0I1*u<r%xjpFsssfA?f%C<+BCSzFY)YD;nwOH)AKw*ToFe3icuS>irZSfE1 zg^0Mv*z2{9c5-Er+?%<Jx);z6-VR>oEYS+uFiq@6W28U3Rnfw|p+))iP`36`d9AWa zgF^O5aU(1TSvN$K2GKrv`}()HmoAq=kMZ3($I7L{a*R)g1RR71($$Oqy=T4yG5{$v i<G(30<NqyqImGMak`!_G5cnG%i=~;(`8Osv68-}^;%MIh literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/offcanvas@2x.png b/docs/4.3/assets/img/examples/offcanvas@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..e5287dde8893bd15b056457ce77cf8ebe68c2e20 GIT binary patch literal 23975 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/pricing.png b/docs/4.3/assets/img/examples/pricing.png new file mode 100644 index 0000000000000000000000000000000000000000..3638c9ef3d0553f264fa0bd32fc2aa133d9c2706 GIT binary patch literal 25033 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/pricing@2x.png b/docs/4.3/assets/img/examples/pricing@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9ddac54ea86103735e97c79e79502c4c9600d8f1 GIT binary patch literal 29128 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 TX8Z0xQ#rDdN?$5Ig9H8t3W;lr literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/product.png b/docs/4.3/assets/img/examples/product.png new file mode 100644 index 0000000000000000000000000000000000000000..a8d3dcb8d49913723ad6e9588301303ea9f179ab GIT binary patch literal 24977 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/product@2x.png b/docs/4.3/assets/img/examples/product@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..1dfe454821782b4ca6917d7b546333b70de99eeb GIT binary patch literal 27953 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 VMmo25Wj23pQd8DeY5+rD{|^PF3E=<$ literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/sign-in.png b/docs/4.3/assets/img/examples/sign-in.png new file mode 100644 index 0000000000000000000000000000000000000000..53aed97247d433c18ba788f9d58bdb7aa8d55cf3 GIT binary patch literal 5704 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/sign-in@2x.png b/docs/4.3/assets/img/examples/sign-in@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..8b3431de9c7c5c7408219aed21a8a273620ab738 GIT binary patch literal 5680 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 VdRhioDEdoEEe$>OGBw1T{{U9{pq&5! literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/starter-template.png b/docs/4.3/assets/img/examples/starter-template.png new file mode 100644 index 0000000000000000000000000000000000000000..0cbcaa1eb01a818eaf1813141bc723f5bc90fd25 GIT binary patch literal 9761 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/starter-template@2x.png b/docs/4.3/assets/img/examples/starter-template@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..436c452de1aaa732d146cb002c05ac64acf0f2c6 GIT binary patch literal 11334 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 aP`FE>48<n>c<=veRFYGdZFpxI`o92Xp{K(D literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/sticky-footer-navbar.png b/docs/4.3/assets/img/examples/sticky-footer-navbar.png new file mode 100644 index 0000000000000000000000000000000000000000..f64d666387e52cee3d89941f87a7f57fdf8656c4 GIT binary patch literal 14167 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 TL$JRt%mE}t<wUB541)d#(G<Dm literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/sticky-footer-navbar@2x.png b/docs/4.3/assets/img/examples/sticky-footer-navbar@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9478901f6f780e54791fa83c6d5210ae6b77bed8 GIT binary patch literal 15836 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 F{{;d`_0a$T literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/sticky-footer.png b/docs/4.3/assets/img/examples/sticky-footer.png new file mode 100644 index 0000000000000000000000000000000000000000..203ed62f501bbf652560117255004075101a3dd7 GIT binary patch literal 8170 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 H9Q?lk6!&1_ literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/examples/sticky-footer@2x.png b/docs/4.3/assets/img/examples/sticky-footer@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..5a008a0ac3a5c7dc1181d0522a3ed68e43016265 GIT binary patch literal 9665 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 bWASd}eZZa2z*+bYfqsxxk*Sh0{qa8le((WO literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/favicons/android-chrome-192x192.png b/docs/4.3/assets/img/favicons/android-chrome-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..547386f3714c7b0a58c5fe519863f4a11e039b91 GIT binary patch literal 1935 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 aUnL;$nB=BNU<n?~8Za?5Hz?J66!|X%TjVkT literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/favicons/android-chrome-512x512.png b/docs/4.3/assets/img/favicons/android-chrome-512x512.png new file mode 100644 index 0000000000000000000000000000000000000000..eae76488dcc9aeb77ea2f9183c3872527deb2738 GIT binary patch literal 4269 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/favicons/apple-touch-icon.png b/docs/4.3/assets/img/favicons/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..447cec2c47da7a30359729a36d3c5096dbde5a15 GIT binary patch literal 1738 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/favicons/browserconfig.xml b/docs/4.3/assets/img/favicons/browserconfig.xml new file mode 100644 index 0000000000..5f12a3e7dd --- /dev/null +++ b/docs/4.3/assets/img/favicons/browserconfig.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<browserconfig> + <msapplication> + <tile> + <square150x150logo src="/docs/4.3/assets/img/favicons/mstile-150x150.png"/> + <TileColor>#563d7c</TileColor> + </tile> + </msapplication> +</browserconfig> diff --git a/docs/4.3/assets/img/favicons/favicon-16x16.png b/docs/4.3/assets/img/favicons/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..5f7d11880f60757cd3f1de2681def0e59e6b81b2 GIT binary patch literal 310 zcmV-60m=S}P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0002}Nkl<ZcmZRG zvZ)XZx2tIhv#ogv#Q%xJFF|@hdKsXa|C573dKvKBOxPt1=z<d)SN-3x<PaRMUvdyE zmgv=r)esB=j_$qm|KGoV{~z3b4#tn~z5M_8@8AD_e*gKO8Qe{r0l$9zMiHw>o&FyL z)-F6io&ouh{a^zYPu)SJ7ykbHe_;DLFh0EN!vA-#Km9*_<of>@mqwxt0Q-6C>SJ(x z{o;fF-@pC*Kecr&sa`<ftLN|kfARDk1qPhE_y5nIzyBj0>WK0JN?N#d`VKg1kM6ld z&;=k3p!kR5dpDo{KYjSx|M?TQ{*QKUz%YQ~q)c&UqBuJP06X(p%mL%EV*mgE07*qo IM6N<$f{ZYjO#lD@ literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/favicons/favicon-32x32.png b/docs/4.3/assets/img/favicons/favicon-32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..d752fd5d71545548fb0baf3f3a1b500e13e520b9 GIT binary patch literal 491 zcmV<H0Tlj;P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F800059Nkl<Zcmc$g zgOcn(7=`Cm?t5I@wr$(Cy|%rDwQbwBt@NBtr^aUIRDI*g|D`PfAh2)w(<S?tJ@w?N z<{><=F+_H4Pg+Y}S9mzE{ONA~iwPbuVuIEb1gH(;;tB~`TOw<Ah=eB<s1{M6nhFpR z1&GAhj}EMOh9hfU8fNuNizSQ-e0l5#Q!+I<gSN&VMEIoP?6wcA1+-;u9{Fi|0V$Cp zHKtgL!ps_>sA@Wz`)n^TKfj>&cZXI!M|@;HRC8(fXLbUVhvyuinpfA|*b2})mWL36 zQ=8wh6$tT2hCH?9ZMGi+3-cVFTy)an^CLfG#Ft`jb{;gHZT<F{1*T+tbP6{P{SbE@ z;1)ReJI33m3$E<@s>QVf-|+WcC<-!bguy4z?^nTW2O%ZQD;4r|w)V3ZczE_dRC8?I zYqkP(Mrf~w3<dJisvytg#0(BBe`Zqwo#%mL>t5mgT`#0W7lY#n<jF~{5N8_Fj0{cS z-1ZOb1?ZNYkx+)~2fy299e8l&Ki%^ULbqW*$2fd{9*D)|LM$d44|t<=z?<a*-Z2^Q huGxThP6xbu4ge7hh~d=wl@kB}002ovPDHLkV1f@j-Y)<E literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/favicons/manifest.json b/docs/4.3/assets/img/favicons/manifest.json new file mode 100644 index 0000000000..1d22e99213 --- /dev/null +++ b/docs/4.3/assets/img/favicons/manifest.json @@ -0,0 +1,20 @@ +{ + "name": "Bootstrap", + "short_name": "Bootstrap", + "icons": [ + { + "src": "/docs/4.3/assets/img/favicons/android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "/docs/4.3/assets/img/favicons/android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ], + "start_url": "/?utm_source=a2hs", + "theme_color": "#563d7c", + "background_color": "#563d7c", + "display": "standalone" +} diff --git a/docs/4.3/assets/img/favicons/mstile-144x144.png b/docs/4.3/assets/img/favicons/mstile-144x144.png new file mode 100644 index 0000000000000000000000000000000000000000..262a3c2e143d781bbe36dcaded90c4b2656f74bf GIT binary patch literal 1479 zcmb_b_ct2|9FOgygw{S+s;abot#jJyFrr3LqcIYkSyYQU^HD2_t;DP?!kKBJs8OMa z8Db<xLQzC(R&65I@ju*qpYcBL^WOKT?<daGSdSkl2?PKD{Q6I|A!nX^PF{{PrDR=< z2LRY5OrM$SoJC8ukpBzBh9OGt<Phm=FLA83ZlJcJt0J!%om`6wE%SsXt}L#fo}TV( z?G2Nss*2l@|Dd57p{q+9_`<d~FqD^75{q?+MSro;f-f*u{p{1WHg^M@-Uqs5?(Xal z^-RPEmHe%Z__?wf?N^wJ{7{zD)KuL!KeK#vc$9*`{+L^RZT{|%b=28JJvlzH(hSRa zR|S8QUx)2_@hp0O@1U`=x2c*;Y8x#`siRY8qy38(=6@a?9aH-zm%gtNs``pEKEHy* zCx(<2XEt^;QPD}C+$|DV2Zx*MJKZfK<+;s!yG%!eC@XMyX*S{b_&6cB^yK6uJqqV) z5*z7VFfuTmkNUK|xkvmwG)bFZ{Js_&@Go=!pfrnMtrhMDiEqG@Y@WcG`>cWP@j&Mc zsCuZAVbt8zqP<=O(hHp(U)9q(Iy<@8fa~$GO>M3rj}3mKlBaBSkb65!8fAvuN%yu% zfqUkqBCtMosYU4x_`=qgrg6S@X&(w&@=!IwZrQdvi1oGYjA(po{h*6+3``>o6;>YR zo|_R<`LUSj2}8|%U8pJR*xJ~2cp8}=i5uyk-r3&IjIFFL?MQ}K;4rOI^zTu=7)Sj` z+0kIlv*(cXgBY6uxb<U-zKn03@>^Au!+3nx*llM;J8qk7ALl09jspN3PxQ6H=7DVe z#IeFIC1DOFu_Uti*KkTtf_+1Eq*r_mHkTIof_Bf}LX@dT2X*sJsQNRfn{mxkgns5k zy>vfg{Ql9bUw?N#vs=1<X@e=N?JB~d{##sj2^<vS96+5P2r_N+W^^qm5IqCy%{o!n zx4}X^33_}kw*o2n^y&b>Ti`O=1z}}C)bm&o1;r9=9YvAX1{G9OgNO`>wRnlR!U8%p zm^32C+pg4-c(eAP-gELCck9*E)aN|@dY!=1xz)1Bd8({D!ZytA1DBF{nK?rq8<_4G zAy4)MB;Pr?rEv;xlL->Mqbg^9*}3=bGYQ@~p_DBdJM&s)K_{p8h*`0+3z1Ay7a2J> zjw{c9C*AM0Gxg~M85kLwkVu^kE)#rxr3LTP(0uMe>@vE2JVPHf0nV1ZhC1ysH@Jt) zB+Vf}%WRd{J|b3-#{y|_O#sV%(?Cj?+cHtL93$%L&yc~!SVcT0fm{<A82PH4I$M`& z21YdNKr}YO+L5L^jM)<q_m_{0AUM#BhR=%K9bg2D<#<o&X$_`RGK-%-P0r2P??SV8 z%^xa48xitl3`e{@eI{vHVwf{0Kli#3rkP9D2s71{el1AQt5Mci%GuM!LW1`I?Y?q? z!QbR?d|@WRdz-5sS(Fh58>9ua4gM0ut@XBm)};O5_iJweoQiEXu#sSu0-kRerPu`! z@nI@Al_1@}m0JuR1<~?UmzbQcWek~z5mqM2s^$DRUvCN*4B82X5()AGl5DF4)g^9N zFawk8@WB011-T16?=XFlrxD?ABdManX8B2_oWJ=|JEm#BZDsiq_YVXVT!Z0-5$*s9 zhk%Ue%RuC1wLy3t@FIKS;~-YQ*i8E2lr9BF1_eKlU*Ct&8`SK+(75_=@)j6`D}+n( z?Gvmf*+gGt2@iV3ZrgGd!nqQnp%t$gBfSt;3%{MDj=p3FR2fY>s_<Zj4181E5L0X& zS-ehtV2_j{D>#D%D0J6f=Q9BSNT+rDS3G9%R}p{Y9Kl}kcs<IQnp;CPgtKWv<^1A0 z=^olbz1DSp*#q?BkSoJb-Ovge9TocLB$OW2I75+USIi2`;1HHuJ3pqcW2{}N<$(MT DH&yu# literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/favicons/mstile-150x150.png b/docs/4.3/assets/img/favicons/mstile-150x150.png new file mode 100644 index 0000000000000000000000000000000000000000..bb87faf74f15ea00e1a38555dc6162fb117a4fbe GIT binary patch literal 1428 zcmbW0X;2af6vuJR%{8UdHi^ourctxf#!5C1EYB=-%~jMi(<IXh1!KJp4?H7OR8m9| za|!am3(v}1F|SNRElol3zym=syw+xC`mi7O&F{_p|L?tT|9SDYFbfqWkP-j@P_eQ! zwF3a;fZtnDetTkr{3T=CEZAPRH`}%jhN1tPd{Xs0cGugAuIge=ab83I^J?<b62g;L zXtz|jad?0C=+@TOw^iBT$8q-S)<`79(I{+cVxFE=>ur}HldZj`zID0!WQsqB3wW`) zxk<*CPzYt|v4s+`)C(3XoDt0k7M4WIfnFI1n>bgqNR(>|?s0B5zI1eGvg}oJV(?1= ze~y*k=zlA@y}sYig|M-)(cd*v!|JGEaX1YFxkUCr&uDyLUdx+4f0yJUT0O=ijTB#$ z8pZUnPwZ^re(W0Yyp9u#R=y4ksLACiSVlr%-kNN^qj3P`meR`^{?PH+<;oLx%jn>H zBx20#y0Z6!ePa`2vy1cM`PrqENT!>4WJ6WYeY=FJqV{{X@uCGuUPe_`5{p5ptFP={ zUt3R$DG*LC-ZI7BznRDzonDp7ykK#@e<l$kUX6VgFtY2OhW<@Wsi<JKbTob9jZBYy znOa$1^|Z!?`(|Y(vW5qE<;)g*INifKrn0cj$s_{lOo+qK*adA1bK;)%VNzU?qjA{0 za0%)3EWn-E-8PhtD_E9Dhx>W1X4s~h-hkVw&2=AGFB@Kxs_Goe?6)IV4X}gV1ZV}) z>bOf=NyCYU$?H3!R`$Qu9wG6P9{~XJ##W{#_JMN3dO4Ntb2%MZ#z5ny0JN=t6x8BK z=pl7wd0haJsTf})%}LW-JpGqZ6Y<+lNb}btZcSllHwTv=2ga^x8c+=`N%{wZERm|? zEqoI+bZE%H=bWO;^VkUmCr@#up*jNwBB^GAZs=K7U%nwZoNyErq~4|q(gX$@>4{?~ ziHNgp{(5|BOCKRN6M9w7=eUX)-Aa#0J=JH6138aB%MO7npH#}#sjWS?r_^J(;^8)z z)j}ps?uAr0K89_~I)^<xkJ5<!7g`?^Qd3!76%rV%>lfJJA{H%+ciRHBbu{3RVnUD3 z#Jh$QMES%dJD_zh=Z>a1q?oHe@s6yfKfa%$A!`3}f1jL1Nf3khu}q@OO0#OkD%>4} zmS{o%CoQxm&ZFFeBCAT#{9hFhaJud&DQM*iG!D|EDKvZP`CvQ>t2G7DQefl?=m+UI z3e7=1A{gk1otc8n+$pOsM(bUy_ugT+vk=^g%chx89WeL`%pu|8_~evuAHAk^5hYn! z-hDt(kL01DUlL34hCc|BmKeuGnVYM$boS2wj^IM5{x&o){K{lB%6%^NCI@?C?etCu zTLw7YLs1`r$a(N6+z<ZXjNhorVHfaTYwM0sF#H<*nL9cO%;hkkzO#HV!V^xl!vIS) zdkz{}KylDCAsFF8)egoV!D6N%OA13Y!J-mY6c!9b19-6<U1gqy1l$^VrW8$9<a=@< zFokPW0qMY0QZ`LwNj1RW(e=4)kh8}Xn7qk0=l#MS9rP`?_;Ph;{A|{6%>@?5cx42l zMWzUUtA!qwnjE`q(s^tUQf!l>V&0{j?W2Rj=b!uegkZJWL+25mi~N~4xf*`KOUDO) zOxIY&{QcfdUnv_qa-uaS`V&Ydvi(CMz1_sxyxX1mJ?~<_b>xDP(w>B$0Jse{JEBJM zE9cbS57&%$MRl}fDZycfQn>vjH78fK7lZsdN_=i}z8urAD5$iYEm~VE2pif(t}9&F wBlEVoh^TyH8K;>sM4_gWJt}{^!hgh*kV{n)N<e?YEb{xt$_!>&c*Q;PAM!lYqW}N^ literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/favicons/mstile-310x150.png b/docs/4.3/assets/img/favicons/mstile-310x150.png new file mode 100644 index 0000000000000000000000000000000000000000..2fc36a726824e23d17fff5efeada0b71128ea3cd GIT binary patch literal 1746 zcmbVMdsvcJ82?5ldCfbRx@_y>rcrLgwX!)>Dx=gXrcR{7rL%0}C9|G1K_QjAL>I_R z%cKETg!A%wTX?}rLz#&UDaB0jim4%rn)`hA_x8umInQ&>@BO{!Jn!$k@AGE)`|dX} z++YX*fQiom?*IURp#b0$({*bg%S~y_J_t<tAHriHcx3N||Gn<BYem%^PpUd<AGbX& zZMuK6wlJqWKaH0_yc*(>D(mcDSy@?_*U7uzRzG-3jV%iPK4oM`&AnCsOF*_xxA@@B zlQ6Hek$02y#Je9qek{x_FUqgDap}>AS?vkmOA}+$W2&i{X-)D8R-|8MIF=e8&ZM6y zxt;rafA4SwPs}*aQN5cK-fxa0TzTFoBZuWLFE7hF`s#%3b;7o`rk;{()jiVwtmM+x zKVHU#T@l=COd?%pX9=#Rmz~5jB&~mScl1RZqR&pxDHW<aS1Oqles*%{qHd|ZxhI~; z{IgBb)&4rnGws-cjPp_KYqSRq6))s32Zjd5->YZU<1<WZ8F3%AsYV(dkX<8q9_61k zJ@uiKRdegIkYCi$2zD+lE?uWRoEUvi@TNouG6wrc=e4>MzL}?jF6Uq54ZK$IZ#U#z z`0Wm}s;aEDz2((l-{`=bkvYwL1dg71>Q(_msOTB2ENjh8<&tnT@X@nS%*EKB@-vg} zRX=<-H90GNu3%>hf<02y6Em@)d5Ooabw2C8L4T<EpjF5Q!?Bc>x<3<-UKKZV2{}z1 zc1=TY1s+PdRbqf|An;}Ky@tPLE-M&zg-d$rbCyqB`u4XjtOWqQR3C2)KAAWna{UDI zZgO1w&8>wP0v-Qth~%8S&o5CN_0y0A*4S8b-@A>&H1du~EBpv@cR|&-(Z)L;!WDW& zbn$6rx`|fw_2amL&_?$h|ETs_A@g*&qhv1K+F?(I{G5<Kp5d~`$l1C4Xv~w4H<ez@ z?QlzbBP)5Em9w54bQQaK<{dut6((2wVspX|Id9m*rf9dF62R5wkd>5VVu_ZLwp&(8 zNe-50q@=x;8YzjEWmtg>+(fBi)ZkzVh}C&cJu{;dRBQ7(1yjXG&&IJllGLR<p3}PK z#~z<?u%Vv&Ew3P{m^Jz)m`$cXlJ&cH-6ieJ{>5Ij%Wv19`}&Kr)7$zKvQSmZtNs~Y z9T=3dyCp19QxIa0B2QOWB{&e2Zw1c6Pa(vbpc@gEIOmlx*4ADC0e<siZzoOJRcF5H z2}6<P*9^FRu!EXvcLW$?TKF@(Dn{btl}@JMMqG+wfv@!tAhLPhjdyAfK}kZp)LthG zsqF_acmq%*j=985Y7!fx>bxuMP?6*>vQMrjyik@0<L{AO)7#nHxkiXw#GU~l@;fI! z5+b{{^1W8c<LJF4)Bub%ZGfJH0(`xZ<&$850PU@1u3$*xP_mDSUq$m4cd*cX3;$)5 zXC#@@-Yrj18I=@t>{G%JwzX#dp&Q27Z?nx&9g(QrLeW|jrz#s^L{P>@2kEWqwyift zfb-50A_dYf5kr?Q(mo?7ySztls9>zJSFkc-F$(APEs1Q9gG+0Z*z(4E+zCnxqMNyO zxHXC_{0ZF7?{$D=j{O>n$3pu=5m(&|DVi?iwnESS4lik2h3m1Jb&x<?b6Et)ZsauJ zB*joPNq({=Tf&4g;K(c%G7r^^3=fdjvJfTN1%aSwh{OGA^&1{=iH%}I)F7i|1D#<_ zATl1oQTxc}u3D&O6QLCRvGuJE2S<SQ;Y{7`0ShFduVLlAaH}STU*U!TFQe8^B$PX@ zXlXd0qwDqIR89OQ@WP^cFYa^jg-LQA(Ew%XQNK;2$0{~5--w{%rUaQg0MU?^IXmeD z#o(tCzzqpX=F(HtZ9BA?HwKuLM^tF#(Z?*-*u>?-Z48tF1d0XKMIx|SCM6dOj&5Fw zL!4bmtsfp5TwWMeX$NwGxo2JJp1c03>g_jdoxB*8#@(I_v~l+j44E<BixFgu$1t|& zA2f?_XioHxK+s3;wsy5R22$<qY=6%9)b0p91ir4Ew#mk+{9II83VpM}*XHc6W+(PX z9$!dv+2d<-=3uPwbQES$KiX}Fvr#C^b}R<D&1PrL8a0K3dulhX%cwif<KJ?d)sI(n u2kB11a}A&_VWuzls6;1;PX1fR_z$}&(kC4kmg|mQ_3^>_dOz|!M*SOx#zU?E literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/favicons/mstile-310x310.png b/docs/4.3/assets/img/favicons/mstile-310x310.png new file mode 100644 index 0000000000000000000000000000000000000000..7f00d0c66a700d890ecf356f9ba2eb348b33283b GIT binary patch literal 3085 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/favicons/mstile-70x70.png b/docs/4.3/assets/img/favicons/mstile-70x70.png new file mode 100644 index 0000000000000000000000000000000000000000..4da2de9e366dac645b2f46c292c930c60964d4f0 GIT binary patch literal 1104 zcmb7C`8V4K0RKkDFlo)I!?U>R)zNib`-AZwNsS6NG%?Ycv#yqy5Xah)psvs~NHrzM zh$Cp~YEnf--7}OqYe|D-u23Y7gv9hu*n6MjeSY}-^!em^dAL9{4Kx7&fVd)@kf%=g zNOkb3N(BWn005PH{ow6<8hz}4|Gx-!eLyBKAEnk2Ftn(j@_k{ci6M_qPEL-G73(V> zrpNf*>@i01%e&rrN`-QA<e%(>%Hf{rNF-6Rv!5JVER`JG3#V?0cLNa_ZOs06Q%g;Z zH~e`~PEr+bR#=+fTup5s8=OZwq)d;$$M}+dcEoRO?A}2Vv3>;|%_IKK=`R`vc0Nd_ z#`p^}%ey;!oW?<gLV-a)^!uK$$Xo5}n0Uz=lFN?b1B#B1j&l;LI$K6asdY?R=bvw8 z$av<eXzTDmR$J2H=SaW>QA+Zf_xBFdV#>C+q=JPN>Fz!$rS`Ua*1ZVoQ)1JqaI=!a z>F=DB%a0gO+R?BSf9JIN@~*gm!ZK28h<j#BZSQYkPx`wiDVdF3ZGSyy^sp+qE5glk zavQs0ApO^JrBW$g+itDv<2)OBfUVfxlE@C_qQ#AWm&FYguZ4p3&>yoSZsyjNcHX*< z$No~ln-h)n&DNE6D4L>4rwi%ekRB*N6G`vqADkFh?rS}i8BN%%&u@lB0)UFAtJ8Jw zWRQ3)`}1C7?N7L7Q2hyfD~k(mk>z&lUZNn~EURB%n~`bDD)c&A)nJJB?c%~O0_vYh zYWP-sy&}$NTKxD@%0>^f*&-N1V-{Tv?=QGv3Au=@rIg1SqdW%6Eh#81_9gRM(Y9`J zbGsB_v#y0@kTnw7cRuWnpz04XU=mD&JDr2)+XuPoINj89AnBfqnP+37q8Hfq3($e6 zB%^R1UNz7(lC5{PX^9@4nEkgX9CYE)tP2>S1oR0(Ia=`V9My~s%)r_<24qCcH(Q>n z9LO-ChroE}Z<jIJ5~Yf;MGT>UOjE`cRk|D5s|N5^MLq_{!t1d>0s?Y|uHo;F1u(02 z7vNvMf_@s5$%4^=EVI=Cq6!smQ}!(|V~UexUNvZH#EieP!_9%qR@9T+6Q^pagxiCj z7FJw*Vd~`}8W9WPu3ZZSY8<LS5#yVYIH+G~pznzjZf8<tO@0d-rV>Zcy<`@)czHfy zRc@{c=Mmb3KujXNBQ;OOi(|rD1boQn4Y^vA{$~VG#*rZxj5upca3MqE0Z(K5Y9Piw zLrPOg25I=H2}IV2=Nc%ic+^mb&(in0(jDJ57;aRbrIK!xBwYiu51!sf5#u431tVx@ zRoYPvm9X(1Z(%BsA70#v+`o(4GhK;}+)(<2+;@q1p^d5C?8}S=l}<4I>g|BHtgk*h zJrAI@%Yoh)Um8+^U>3(FJ9$|!QwQduxuleYcZ6BVEcY5_x<g<Mim%ZfsS9j~`bvBm T$Rmzk^0Djc?BT?63`+kGOAj(} literal 0 HcmV?d00001 diff --git a/docs/4.3/assets/img/favicons/safari-pinned-tab.svg b/docs/4.3/assets/img/favicons/safari-pinned-tab.svg new file mode 100644 index 0000000000..ddeeb53c91 --- /dev/null +++ b/docs/4.3/assets/img/favicons/safari-pinned-tab.svg @@ -0,0 +1,4 @@ +<svg xmlns="http://www.w3.org/2000/svg" width="933.333" height="933.333" version="1" viewBox="0 0 700 700"> + <path d="M104.5.7C89.2 2.6 77.4 6.2 63.8 13.2 41.7 24.5 24.5 41.7 13.2 63.8 7.5 75.1 4.8 82.3 2.3 94 .6 102.1.5 114.3.5 350s.1 247.9 1.8 256c2.5 11.7 5.2 18.9 10.9 30.2 11.3 22.1 28.5 39.3 50.6 50.6 11.3 5.7 18.5 8.4 30.2 10.9 8.1 1.7 20.3 1.8 256 1.8s247.9-.1 256-1.8c11.7-2.5 18.9-5.2 30.2-10.9 22.1-11.3 39.3-28.5 50.6-50.6 5.7-11.3 8.4-18.5 10.9-30.2 1.7-8.1 1.8-20.3 1.8-256s-.1-247.9-1.8-256c-2.5-11.7-5.2-18.9-10.9-30.2C670.9 32.6 642.9 11 607 2.4 599.9.7 587.2.6 353.5.4 218.2.3 106.2.5 104.5.7zm315.3 153.6c47.4 9 75.3 30.5 85.6 65.9 5.1 17.8 5.6 43.1 1.1 60.3-2 7.5-7.9 20.3-12.2 26.4-8 11.3-21.9 22.8-36 30-3.5 1.7-6.3 3.5-6.3 3.9 0 .5 2.3 1.4 5.1 2 2.8.7 8.5 2.6 12.7 4.3 37.2 14.8 58.1 50.4 58.2 99 0 28.6-9 53.9-25.7 71.8-18.8 20.3-45.2 32.9-83.3 39.8-8.5 1.5-20.9 1.7-119.2 2l-109.8.4V151.9l110.8.4c95.5.3 111.8.6 119 2z"/> + <path d="M262 266.5v56.6l65.3-.4c57.2-.3 65.9-.5 70.7-2 15.8-4.8 28.7-14.9 34.4-27.1 4.4-9.2 5.6-15.3 5.6-28.4-.1-25.1-7.5-39.8-24.3-47.7-14.1-6.7-14.2-6.7-86.4-7.2l-65.3-.5v56.7zm0 171.5v64.1l71.3-.3c69.8-.3 71.4-.4 79-2.6 11.4-3.2 19.2-7.7 27.2-15.7 12.1-12 16.8-24.9 16.8-46 0-20.8-5.1-34.3-17.3-45.9-7.9-7.4-15.8-11.6-28.1-14.7-8.1-2.1-10.5-2.2-78.6-2.6l-70.3-.5V438z"/> +</svg> diff --git a/docs/4.3/assets/js/docs.min.js b/docs/4.3/assets/js/docs.min.js new file mode 100644 index 0000000000..8f0874459c --- /dev/null +++ b/docs/4.3/assets/js/docs.min.js @@ -0,0 +1,22 @@ +!function(t,e){"use strict";"function"==typeof define&&define.amd?define([],e):"object"==typeof module&&module.exports?module.exports=e():(t.AnchorJS=e(),t.anchors=new t.AnchorJS)}(this,function(){"use strict";return function(t){function h(t){t.icon=t.hasOwnProperty("icon")?t.icon:"î§‹",t.visible=t.hasOwnProperty("visible")?t.visible:"hover",t.placement=t.hasOwnProperty("placement")?t.placement:"right",t.ariaLabel=t.hasOwnProperty("ariaLabel")?t.ariaLabel:"Anchor",t.class=t.hasOwnProperty("class")?t.class:"",t.truncate=t.hasOwnProperty("truncate")?Math.floor(t.truncate):64}function d(t){var e;if("string"==typeof t||t instanceof String)e=[].slice.call(document.querySelectorAll(t));else{if(!(Array.isArray(t)||t instanceof NodeList))throw new Error("The selector provided to AnchorJS was invalid.");e=[].slice.call(t)}return e}this.options=t||{},this.elements=[],h(this.options),this.isTouchDevice=function(){return!!("ontouchstart"in window||window.DocumentTouch&&document instanceof DocumentTouch)},this.add=function(t){var e,n,o,i,r,A,a,l,c,s,u,f=[];if(h(this.options),"touch"===(u=this.options.visible)&&(u=this.isTouchDevice()?"always":"hover"),t||(t="h2, h3, h4, h5, h6"),0===(e=d(t)).length)return this;for(function(){if(null===document.head.querySelector("style.anchorjs")){var t,e=document.createElement("style");e.className="anchorjs",e.appendChild(document.createTextNode("")),void 0===(t=document.head.querySelector('[rel="stylesheet"], style'))?document.head.appendChild(e):document.head.insertBefore(e,t),e.sheet.insertRule(" .anchorjs-link { opacity: 0; text-decoration: none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }",e.sheet.cssRules.length),e.sheet.insertRule(" *:hover > .anchorjs-link, .anchorjs-link:focus { opacity: 1; }",e.sheet.cssRules.length),e.sheet.insertRule(" [data-anchorjs-icon]::after { content: attr(data-anchorjs-icon); }",e.sheet.cssRules.length),e.sheet.insertRule(' @font-face { font-family: "anchorjs-icons"; src: url(data:n/a;base64,AAEAAAALAIAAAwAwT1MvMg8yG2cAAAE4AAAAYGNtYXDp3gC3AAABpAAAAExnYXNwAAAAEAAAA9wAAAAIZ2x5ZlQCcfwAAAH4AAABCGhlYWQHFvHyAAAAvAAAADZoaGVhBnACFwAAAPQAAAAkaG10eASAADEAAAGYAAAADGxvY2EACACEAAAB8AAAAAhtYXhwAAYAVwAAARgAAAAgbmFtZQGOH9cAAAMAAAAAunBvc3QAAwAAAAADvAAAACAAAQAAAAEAAHzE2p9fDzz1AAkEAAAAAADRecUWAAAAANQA6R8AAAAAAoACwAAAAAgAAgAAAAAAAAABAAADwP/AAAACgAAA/9MCrQABAAAAAAAAAAAAAAAAAAAAAwABAAAAAwBVAAIAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAMCQAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAg//0DwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAAAAIAAAACgAAxAAAAAwAAAAMAAAAcAAEAAwAAABwAAwABAAAAHAAEADAAAAAIAAgAAgAAACDpy//9//8AAAAg6cv//f///+EWNwADAAEAAAAAAAAAAAAAAAAACACEAAEAAAAAAAAAAAAAAAAxAAACAAQARAKAAsAAKwBUAAABIiYnJjQ3NzY2MzIWFxYUBwcGIicmNDc3NjQnJiYjIgYHBwYUFxYUBwYGIwciJicmNDc3NjIXFhQHBwYUFxYWMzI2Nzc2NCcmNDc2MhcWFAcHBgYjARQGDAUtLXoWOR8fORYtLTgKGwoKCjgaGg0gEhIgDXoaGgkJBQwHdR85Fi0tOAobCgoKOBoaDSASEiANehoaCQkKGwotLXoWOR8BMwUFLYEuehYXFxYugC44CQkKGwo4GkoaDQ0NDXoaShoKGwoFBe8XFi6ALjgJCQobCjgaShoNDQ0NehpKGgobCgoKLYEuehYXAAAADACWAAEAAAAAAAEACAAAAAEAAAAAAAIAAwAIAAEAAAAAAAMACAAAAAEAAAAAAAQACAAAAAEAAAAAAAUAAQALAAEAAAAAAAYACAAAAAMAAQQJAAEAEAAMAAMAAQQJAAIABgAcAAMAAQQJAAMAEAAMAAMAAQQJAAQAEAAMAAMAAQQJAAUAAgAiAAMAAQQJAAYAEAAMYW5jaG9yanM0MDBAAGEAbgBjAGgAbwByAGoAcwA0ADAAMABAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAH//wAP) format("truetype"); }',e.sheet.cssRules.length)}}(),n=document.querySelectorAll("[id]"),o=[].map.call(n,function(t){return t.id}),r=0;r<e.length;r++)if(this.hasAnchorJSLink(e[r]))f.push(r);else{if(e[r].hasAttribute("id"))i=e[r].getAttribute("id");else if(e[r].hasAttribute("data-anchor-id"))i=e[r].getAttribute("data-anchor-id");else{for(c=l=this.urlify(e[r].textContent),a=0;void 0!==A&&(c=l+"-"+a),a+=1,-1!==(A=o.indexOf(c)););A=void 0,o.push(c),e[r].setAttribute("id",c),i=c}i.replace(/-/g," "),(s=document.createElement("a")).className="anchorjs-link "+this.options.class,s.href="#"+i,s.setAttribute("aria-label",this.options.ariaLabel),s.setAttribute("data-anchorjs-icon",this.options.icon),"always"===u&&(s.style.opacity="1"),"î§‹"===this.options.icon&&(s.style.font="1em/1 anchorjs-icons","left"===this.options.placement&&(s.style.lineHeight="inherit")),"left"===this.options.placement?(s.style.position="absolute",s.style.marginLeft="-1em",s.style.paddingRight="0.5em",e[r].insertBefore(s,e[r].firstChild)):(s.style.paddingLeft="0.375em",e[r].appendChild(s))}for(r=0;r<f.length;r++)e.splice(f[r]-r,1);return this.elements=this.elements.concat(e),this},this.remove=function(t){for(var e,n,o=d(t),i=0;i<o.length;i++)(n=o[i].querySelector(".anchorjs-link"))&&(-1!==(e=this.elements.indexOf(o[i]))&&this.elements.splice(e,1),o[i].removeChild(n));return this},this.removeAll=function(){this.remove(this.elements)},this.urlify=function(t){return this.options.truncate||h(this.options),t.trim().replace(/\'/gi,"").replace(/[& +$,:;=?@"#{}|^~[`%!'<>\]\.\/\(\)\*\\\n\t\b\v]/g,"-").replace(/-{2,}/g,"-").substring(0,this.options.truncate).replace(/^-+|-+$/gm,"").toLowerCase()},this.hasAnchorJSLink=function(t){var e=t.firstChild&&-1<(" "+t.firstChild.className+" ").indexOf(" anchorjs-link "),n=t.lastChild&&-1<(" "+t.lastChild.className+" ").indexOf(" anchorjs-link ");return e||n||!1}}}); +/*! + * clipboard.js v2.0.4 + * https://zenorocha.github.io/clipboard.js + * + * Licensed MIT © Zeno Rocha + */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return function(n){var o={};function i(t){if(o[t])return o[t].exports;var e=o[t]={i:t,l:!1,exports:{}};return n[t].call(e.exports,e,e.exports,i),e.l=!0,e.exports}return i.m=n,i.c=o,i.d=function(t,e,n){i.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},i.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)i.d(n,o,function(t){return e[t]}.bind(null,o));return n},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,"a",e),e},i.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},i.p="",i(i.s=0)}([function(t,e,n){"use strict";var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r=function(){function o(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}return function(t,e,n){return e&&o(t.prototype,e),n&&o(t,n),t}}(),A=o(n(1)),a=o(n(3)),l=o(n(4));function o(t){return t&&t.__esModule?t:{default:t}}var c=function(t){function o(t,e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,o);var n=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,(o.__proto__||Object.getPrototypeOf(o)).call(this));return n.resolveOptions(e),n.listenClick(t),n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(o,a.default),r(o,[{key:"resolveOptions",value:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};this.action="function"==typeof t.action?t.action:this.defaultAction,this.target="function"==typeof t.target?t.target:this.defaultTarget,this.text="function"==typeof t.text?t.text:this.defaultText,this.container="object"===i(t.container)?t.container:document.body}},{key:"listenClick",value:function(t){var e=this;this.listener=(0,l.default)(t,"click",function(t){return e.onClick(t)})}},{key:"onClick",value:function(t){var e=t.delegateTarget||t.currentTarget;this.clipboardAction&&(this.clipboardAction=null),this.clipboardAction=new A.default({action:this.action(e),target:this.target(e),text:this.text(e),container:this.container,trigger:e,emitter:this})}},{key:"defaultAction",value:function(t){return s("action",t)}},{key:"defaultTarget",value:function(t){var e=s("target",t);if(e)return document.querySelector(e)}},{key:"defaultText",value:function(t){return s("text",t)}},{key:"destroy",value:function(){this.listener.destroy(),this.clipboardAction&&(this.clipboardAction.destroy(),this.clipboardAction=null)}}],[{key:"isSupported",value:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:["copy","cut"],e="string"==typeof t?[t]:t,n=!!document.queryCommandSupported;return e.forEach(function(t){n=n&&!!document.queryCommandSupported(t)}),n}}]),o}();function s(t,e){var n="data-clipboard-"+t;if(e.hasAttribute(n))return e.getAttribute(n)}t.exports=c},function(t,e,n){"use strict";var o,i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r=function(){function o(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}return function(t,e,n){return e&&o(t.prototype,e),n&&o(t,n),t}}(),A=n(2),a=(o=A)&&o.__esModule?o:{default:o};var l=function(){function e(t){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),this.resolveOptions(t),this.initSelection()}return r(e,[{key:"resolveOptions",value:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};this.action=t.action,this.container=t.container,this.emitter=t.emitter,this.target=t.target,this.text=t.text,this.trigger=t.trigger,this.selectedText=""}},{key:"initSelection",value:function(){this.text?this.selectFake():this.target&&this.selectTarget()}},{key:"selectFake",value:function(){var t=this,e="rtl"==document.documentElement.getAttribute("dir");this.removeFake(),this.fakeHandlerCallback=function(){return t.removeFake()},this.fakeHandler=this.container.addEventListener("click",this.fakeHandlerCallback)||!0,this.fakeElem=document.createElement("textarea"),this.fakeElem.style.fontSize="12pt",this.fakeElem.style.border="0",this.fakeElem.style.padding="0",this.fakeElem.style.margin="0",this.fakeElem.style.position="absolute",this.fakeElem.style[e?"right":"left"]="-9999px";var n=window.pageYOffset||document.documentElement.scrollTop;this.fakeElem.style.top=n+"px",this.fakeElem.setAttribute("readonly",""),this.fakeElem.value=this.text,this.container.appendChild(this.fakeElem),this.selectedText=(0,a.default)(this.fakeElem),this.copyText()}},{key:"removeFake",value:function(){this.fakeHandler&&(this.container.removeEventListener("click",this.fakeHandlerCallback),this.fakeHandler=null,this.fakeHandlerCallback=null),this.fakeElem&&(this.container.removeChild(this.fakeElem),this.fakeElem=null)}},{key:"selectTarget",value:function(){this.selectedText=(0,a.default)(this.target),this.copyText()}},{key:"copyText",value:function(){var e=void 0;try{e=document.execCommand(this.action)}catch(t){e=!1}this.handleResult(e)}},{key:"handleResult",value:function(t){this.emitter.emit(t?"success":"error",{action:this.action,text:this.selectedText,trigger:this.trigger,clearSelection:this.clearSelection.bind(this)})}},{key:"clearSelection",value:function(){this.trigger&&this.trigger.focus(),window.getSelection().removeAllRanges()}},{key:"destroy",value:function(){this.removeFake()}},{key:"action",set:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:"copy";if(this._action=t,"copy"!==this._action&&"cut"!==this._action)throw new Error('Invalid "action" value, use either "copy" or "cut"')},get:function(){return this._action}},{key:"target",set:function(t){if(void 0!==t){if(!t||"object"!==(void 0===t?"undefined":i(t))||1!==t.nodeType)throw new Error('Invalid "target" value, use a valid Element');if("copy"===this.action&&t.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if("cut"===this.action&&(t.hasAttribute("readonly")||t.hasAttribute("disabled")))throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes');this._target=t}},get:function(){return this._target}}]),e}();t.exports=l},function(t,e){t.exports=function(t){var e;if("SELECT"===t.nodeName)t.focus(),e=t.value;else if("INPUT"===t.nodeName||"TEXTAREA"===t.nodeName){var n=t.hasAttribute("readonly");n||t.setAttribute("readonly",""),t.select(),t.setSelectionRange(0,t.value.length),n||t.removeAttribute("readonly"),e=t.value}else{t.hasAttribute("contenteditable")&&t.focus();var o=window.getSelection(),i=document.createRange();i.selectNodeContents(t),o.removeAllRanges(),o.addRange(i),e=o.toString()}return e}},function(t,e){function n(){}n.prototype={on:function(t,e,n){var o=this.e||(this.e={});return(o[t]||(o[t]=[])).push({fn:e,ctx:n}),this},once:function(t,e,n){var o=this;function i(){o.off(t,i),e.apply(n,arguments)}return i._=e,this.on(t,i,n)},emit:function(t){for(var e=[].slice.call(arguments,1),n=((this.e||(this.e={}))[t]||[]).slice(),o=0,i=n.length;o<i;o++)n[o].fn.apply(n[o].ctx,e);return this},off:function(t,e){var n=this.e||(this.e={}),o=n[t],i=[];if(o&&e)for(var r=0,A=o.length;r<A;r++)o[r].fn!==e&&o[r].fn._!==e&&i.push(o[r]);return i.length?n[t]=i:delete n[t],this}},t.exports=n},function(t,e,n){var f=n(5),h=n(6);t.exports=function(t,e,n){if(!t&&!e&&!n)throw new Error("Missing required arguments");if(!f.string(e))throw new TypeError("Second argument must be a String");if(!f.fn(n))throw new TypeError("Third argument must be a Function");if(f.node(t))return s=e,u=n,(c=t).addEventListener(s,u),{destroy:function(){c.removeEventListener(s,u)}};if(f.nodeList(t))return A=t,a=e,l=n,Array.prototype.forEach.call(A,function(t){t.addEventListener(a,l)}),{destroy:function(){Array.prototype.forEach.call(A,function(t){t.removeEventListener(a,l)})}};if(f.string(t))return o=t,i=e,r=n,h(document.body,o,i,r);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList");var o,i,r,A,a,l,c,s,u}},function(t,n){n.node=function(t){return void 0!==t&&t instanceof HTMLElement&&1===t.nodeType},n.nodeList=function(t){var e=Object.prototype.toString.call(t);return void 0!==t&&("[object NodeList]"===e||"[object HTMLCollection]"===e)&&"length"in t&&(0===t.length||n.node(t[0]))},n.string=function(t){return"string"==typeof t||t instanceof String},n.fn=function(t){return"[object Function]"===Object.prototype.toString.call(t)}},function(t,e,n){var A=n(7);function r(t,e,n,o,i){var r=function(e,n,t,o){return function(t){t.delegateTarget=A(t.target,n),t.delegateTarget&&o.call(e,t)}}.apply(this,arguments);return t.addEventListener(n,r,i),{destroy:function(){t.removeEventListener(n,r,i)}}}t.exports=function(t,e,n,o,i){return"function"==typeof t.addEventListener?r.apply(null,arguments):"function"==typeof n?r.bind(null,document).apply(null,arguments):("string"==typeof t&&(t=document.querySelectorAll(t)),Array.prototype.map.call(t,function(t){return r(t,e,n,o,i)}))}},function(t,e){if("undefined"!=typeof Element&&!Element.prototype.matches){var n=Element.prototype;n.matches=n.matchesSelector||n.mozMatchesSelector||n.msMatchesSelector||n.oMatchesSelector||n.webkitMatchesSelector}t.exports=function(t,e){for(;t&&9!==t.nodeType;){if("function"==typeof t.matches&&t.matches(e))return t;t=t.parentNode}}}])}); +/*! + * bsCustomFileInput v1.3.1 (https://github.com/Johann-S/bs-custom-file-input) + * Copyright 2018 Johann-S <johann.servoire@gmail.com> + * Licensed under MIT (https://github.com/Johann-S/bs-custom-file-input/blob/master/LICENSE) + */ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):t.bsCustomFileInput=e()}(this,function(){"use strict";var f={CUSTOMFILE:'.custom-file input[type="file"]',CUSTOMFILELABEL:".custom-file-label",FORM:"form",INPUT:"input"},o=function(t){if(0<t.childNodes.length)for(var e=[].slice.call(t.childNodes),n=0;n<e.length;n++){var o=e[n];if(3!==o.nodeType)return o}return t},a=function(t){var e=t.bsCustomFileInput.defaultText,n=t.parentNode.querySelector(f.CUSTOMFILELABEL);n&&(o(n).innerHTML=e)},n=!!window.File,i=function(t){if(t.hasAttribute("multiple")&&n)return[].slice.call(t.files).map(function(t){return t.name}).join(", ");if(-1===t.value.indexOf("fakepath"))return t.value;var e=t.value.split("\\");return e[e.length-1]};function h(){var t=this.parentNode.querySelector(f.CUSTOMFILELABEL);if(t){var e=o(t),n=i(this);n.length?e.innerHTML=n:a(this)}}function d(){for(var t=[].slice.call(this.querySelectorAll(f.INPUT)).filter(function(t){return!!t.bsCustomFileInput}),e=0,n=t.length;e<n;e++)a(t[e])}var p="bsCustomFileInput",y="reset",m="change";return{init:function(t,e){void 0===t&&(t=f.CUSTOMFILE),void 0===e&&(e=f.FORM);for(var n,o,i,r=[].slice.call(document.querySelectorAll(t)),A=[].slice.call(document.querySelectorAll(e)),a=0,l=r.length;a<l;a++){var c=r[a];Object.defineProperty(c,p,{value:{defaultText:(n=c,o=void 0,void 0,o="",i=n.parentNode.querySelector(f.CUSTOMFILELABEL),i&&(o=i.innerHTML),o)},writable:!0}),c.addEventListener(m,h)}for(var s=0,u=A.length;s<u;s++)A[s].addEventListener(y,d),Object.defineProperty(A[s],p,{value:!0,writable:!0})},destroy:function(){for(var t=[].slice.call(document.querySelectorAll(f.FORM)).filter(function(t){return!!t.bsCustomFileInput}),e=[].slice.call(document.querySelectorAll(f.INPUT)).filter(function(t){return!!t.bsCustomFileInput}),n=0,o=e.length;n<o;n++){var i=e[n];a(i),i[p]=void 0,i.removeEventListener(m,h)}for(var r=0,A=t.length;r<A;r++)t[r].removeEventListener(y,d),t[r][p]=void 0}}}); +/*! + * JavaScript for Bootstrap's docs (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors + * Copyright 2011-2019 Twitter, Inc. + * Licensed under the Creative Commons Attribution 3.0 Unported License. + * For details, see https://creativecommons.org/licenses/by/3.0/. + */ +(function(i){"use strict";i(function(){i(".tooltip-demo").tooltip({selector:'[data-toggle="tooltip"]',container:"body"});i('[data-toggle="popover"]').popover();i(".toast").toast({autohide:false}).toast("show");i(".tooltip-test").tooltip();i(".popover-test").popover();i('.bd-example-indeterminate [type="checkbox"]').prop("indeterminate",true);i('.bd-content [href="#"]').click(function(t){t.preventDefault()});i("#exampleModal").on("show.bs.modal",function(t){var e=i(t.relatedTarget);var n=e.data("whatever");var o=i(this);o.find(".modal-title").text("New message to "+n);o.find(".modal-body input").val(n)});i(".bd-toggle-animated-progress").on("click",function(){i(this).siblings(".progress").find(".progress-bar-striped").toggleClass("progress-bar-animated")});i("figure.highlight, div.highlight").each(function(){var t='<div class="bd-clipboard"><button type="button" class="btn-clipboard" title="Copy to clipboard">Copy</button></div>';i(this).before(t);i(".btn-clipboard").tooltip().on("mouseleave",function(){i(this).tooltip("hide")})});var t=new ClipboardJS(".btn-clipboard",{target:function(t){return t.parentNode.nextElementSibling}});t.on("success",function(t){i(t.trigger).attr("title","Copied!").tooltip("_fixTitle").tooltip("show").attr("title","Copy to clipboard").tooltip("_fixTitle");t.clearSelection()});t.on("error",function(t){var e=/Mac/i.test(navigator.userAgent)?"⌘":"Ctrl-";var n="Press "+e+"C to copy";i(t.trigger).attr("title",n).tooltip("_fixTitle").tooltip("show").attr("title","Copy to clipboard").tooltip("_fixTitle")});anchors.options={icon:"#"};anchors.add(".bd-content > h2, .bd-content > h3, .bd-content > h4, .bd-content > h5");i(".bd-content").children("h2, h3, h4, h5").wrapInner('<span class="bd-content-title"></span>');bsCustomFileInput.init()})})(jQuery);(function(){"use strict";function t(){var t=/MSIE ([0-9.]+)/.exec(window.navigator.userAgent);if(t===null){return null}var e=parseInt(t[1],10);var n=Math.floor(e);return n}function e(){var t=new Function("/*@cc_on return @_jscript_version; @*/")();if(typeof t==="undefined"){return 11}if(t<9){return 8}return t}var n=window.navigator.userAgent;if(n.indexOf("Opera")>-1||n.indexOf("Presto")>-1){return}var o=t();if(o===null){return}var i=e();if(o!==i){window.alert("WARNING: You appear to be using IE"+i+" in IE"+o+" emulation mode.\nIE emulation modes can behave significantly differently from ACTUAL older versions of IE.\nPLEASE DON'T FILE BOOTSTRAP BUGS based on testing in IE emulation modes!")}})();(function(){"use strict";if(!window.docsearch){return}var t=document.getElementById("search-input");var e=t.getAttribute("data-docs-version");function o(){var t=window.location;var e=t.origin;if(!e){var n=t.port?":"+t.port:"";e=t.protocol+"//"+t.hostname+n}return e}window.docsearch({apiKey:"5990ad008512000bba2cf951ccf0332f",indexName:"bootstrap",inputSelector:"#search-input",algoliaOptions:{facetFilters:["version:"+e]},transformData:function(t){return t.map(function(t){var e=o();var n=/^https?:\/\/getbootstrap\.com/;t.url=e.match(n)?t.url:t.url.replace(n,"");if(t.anchor==="content"){t.url=t.url.replace(/#content$/,"");t.anchor=null}return t})},debug:false})})(); \ No newline at end of file diff --git a/docs/4.3/assets/js/src/application.js b/docs/4.3/assets/js/src/application.js new file mode 100644 index 0000000000..863af68286 --- /dev/null +++ b/docs/4.3/assets/js/src/application.js @@ -0,0 +1,112 @@ +// NOTICE!! DO NOT USE ANY OF THIS JAVASCRIPT +// IT'S ALL JUST JUNK FOR OUR DOCS! +// ++++++++++++++++++++++++++++++++++++++++++ + +/*! + * JavaScript for Bootstrap's docs (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors + * Copyright 2011-2019 Twitter, Inc. + * Licensed under the Creative Commons Attribution 3.0 Unported License. + * For details, see https://creativecommons.org/licenses/by/3.0/. + */ + +/* global ClipboardJS: false, anchors: false, bsCustomFileInput: false */ + +(function ($) { + 'use strict' + + $(function () { + // Tooltip and popover demos + $('.tooltip-demo').tooltip({ + selector: '[data-toggle="tooltip"]', + container: 'body' + }) + + $('[data-toggle="popover"]').popover() + + $('.toast') + .toast({ + autohide: false + }) + .toast('show') + + // Demos within modals + $('.tooltip-test').tooltip() + $('.popover-test').popover() + + // Indeterminate checkbox example + $('.bd-example-indeterminate [type="checkbox"]').prop('indeterminate', true) + + // Disable empty links in docs examples + $('.bd-content [href="#"]').click(function (e) { + e.preventDefault() + }) + + // Modal relatedTarget demo + $('#exampleModal').on('show.bs.modal', function (event) { + var $button = $(event.relatedTarget) // Button that triggered the modal + var recipient = $button.data('whatever') // Extract info from data-* attributes + // If necessary, you could initiate an AJAX request here (and then do the updating in a callback). + // Update the modal's content. We'll use jQuery here, but you could use a data binding library or other methods instead. + var $modal = $(this) + $modal.find('.modal-title').text('New message to ' + recipient) + $modal.find('.modal-body input').val(recipient) + }) + + // Activate animated progress bar + $('.bd-toggle-animated-progress').on('click', function () { + $(this).siblings('.progress').find('.progress-bar-striped').toggleClass('progress-bar-animated') + }) + + // Insert copy to clipboard button before .highlight + $('figure.highlight, div.highlight').each(function () { + var btnHtml = '<div class="bd-clipboard"><button type="button" class="btn-clipboard" title="Copy to clipboard">Copy</button></div>' + $(this).before(btnHtml) + $('.btn-clipboard') + .tooltip() + .on('mouseleave', function () { + // Explicitly hide tooltip, since after clicking it remains + // focused (as it's a button), so tooltip would otherwise + // remain visible until focus is moved away + $(this).tooltip('hide') + }) + }) + + var clipboard = new ClipboardJS('.btn-clipboard', { + target: function (trigger) { + return trigger.parentNode.nextElementSibling + } + }) + + clipboard.on('success', function (e) { + $(e.trigger) + .attr('title', 'Copied!') + .tooltip('_fixTitle') + .tooltip('show') + .attr('title', 'Copy to clipboard') + .tooltip('_fixTitle') + + e.clearSelection() + }) + + clipboard.on('error', function (e) { + var modifierKey = /Mac/i.test(navigator.userAgent) ? '\u2318' : 'Ctrl-' + var fallbackMsg = 'Press ' + modifierKey + 'C to copy' + + $(e.trigger) + .attr('title', fallbackMsg) + .tooltip('_fixTitle') + .tooltip('show') + .attr('title', 'Copy to clipboard') + .tooltip('_fixTitle') + }) + + anchors.options = { + icon: '#' + } + anchors.add('.bd-content > h2, .bd-content > h3, .bd-content > h4, .bd-content > h5') + $('.bd-content').children('h2, h3, h4, h5').wrapInner('<span class="bd-content-title"></span>') + + bsCustomFileInput.init() + }) +}(jQuery)) diff --git a/docs/4.3/assets/js/src/ie-emulation-modes-warning.js b/docs/4.3/assets/js/src/ie-emulation-modes-warning.js new file mode 100644 index 0000000000..610128e273 --- /dev/null +++ b/docs/4.3/assets/js/src/ie-emulation-modes-warning.js @@ -0,0 +1,47 @@ +// NOTICE!! DO NOT USE ANY OF THIS JAVASCRIPT +// IT'S ALL JUST JUNK FOR OUR DOCS! +// ++++++++++++++++++++++++++++++++++++++++++ + +// Intended to prevent false-positive bug reports about Bootstrap not working properly in old versions of IE due to folks testing using IE's unreliable emulation modes. +(function () { + 'use strict' + + function emulatedIEMajorVersion() { + var groups = /MSIE ([0-9.]+)/.exec(window.navigator.userAgent) + if (groups === null) { + return null + } + var ieVersionNum = parseInt(groups[1], 10) + var ieMajorVersion = Math.floor(ieVersionNum) + return ieMajorVersion + } + + function actualNonEmulatedIEMajorVersion() { + // Detects the actual version of IE in use, even if it's in an older-IE emulation mode. + // IE JavaScript conditional compilation docs: https://msdn.microsoft.com/library/121hztk3%28v=vs.94%29.aspx + // @cc_on docs: https://msdn.microsoft.com/library/8ka90k2e%28v=vs.94%29.aspx + var jscriptVersion = new Function('/*@cc_on return @_jscript_version; @*/')() // eslint-disable-line no-new-func + if (typeof jscriptVersion === 'undefined') { + return 11 // IE11+ not in emulation mode + } + if (jscriptVersion < 9) { + return 8 // IE8 (or lower; haven't tested on IE<8) + } + return jscriptVersion // IE9 or IE10 in any mode, or IE11 in non-IE11 mode + } + + var ua = window.navigator.userAgent + if (ua.indexOf('Opera') > -1 || ua.indexOf('Presto') > -1) { + return // Opera, which might pretend to be IE + } + var emulated = emulatedIEMajorVersion() + if (emulated === null) { + return // Not IE + } + var nonEmulated = actualNonEmulatedIEMajorVersion() + + if (emulated !== nonEmulated) { + // eslint-disable-next-line no-alert + window.alert('WARNING: You appear to be using IE' + nonEmulated + ' in IE' + emulated + ' emulation mode.\nIE emulation modes can behave significantly differently from ACTUAL older versions of IE.\nPLEASE DON\'T FILE BOOTSTRAP BUGS based on testing in IE emulation modes!') + } +}()) diff --git a/docs/4.3/assets/js/src/search.js b/docs/4.3/assets/js/src/search.js new file mode 100644 index 0000000000..459d412df9 --- /dev/null +++ b/docs/4.3/assets/js/src/search.js @@ -0,0 +1,55 @@ +// NOTICE!! DO NOT USE ANY OF THIS JAVASCRIPT +// IT'S ALL JUST JUNK FOR OUR DOCS! +// ++++++++++++++++++++++++++++++++++++++++++ + +(function () { + 'use strict' + + if (!window.docsearch) { + return + } + + var inputElement = document.getElementById('search-input') + var siteDocsVersion = inputElement.getAttribute('data-docs-version') + + function getOrigin() { + var location = window.location + var origin = location.origin + + if (!origin) { + var port = location.port ? ':' + location.port : '' + + origin = location.protocol + '//' + location.hostname + port + } + + return origin + } + + window.docsearch({ + apiKey: '5990ad008512000bba2cf951ccf0332f', + indexName: 'bootstrap', + inputSelector: '#search-input', + algoliaOptions: { + facetFilters: ['version:' + siteDocsVersion] + }, + transformData: function (hits) { + return hits.map(function (hit) { + var siteurl = getOrigin() + var urlRE = /^https?:\/\/getbootstrap\.com/ + + // When in production, return the result as is, + // otherwise remove our url from it. + hit.url = siteurl.match(urlRE) ? hit.url : hit.url.replace(urlRE, '') + + // Prevent jumping to first header + if (hit.anchor === 'content') { + hit.url = hit.url.replace(/#content$/, '') + hit.anchor = null + } + + return hit + }) + }, + debug: false // Set debug to true if you want to inspect the dropdown + }) +}()) diff --git a/docs/4.3/assets/js/vendor/anchor.min.js b/docs/4.3/assets/js/vendor/anchor.min.js new file mode 100644 index 0000000000..29a64acae6 --- /dev/null +++ b/docs/4.3/assets/js/vendor/anchor.min.js @@ -0,0 +1,6 @@ +/** + * AnchorJS - v4.1.1 - 2018-07-01 + * https://github.com/bryanbraun/anchorjs + * Copyright (c) 2018 Bryan Braun; Licensed MIT + */ +!function(A,e){"use strict";"function"==typeof define&&define.amd?define([],e):"object"==typeof module&&module.exports?module.exports=e():(A.AnchorJS=e(),A.anchors=new A.AnchorJS)}(this,function(){"use strict";return function(A){function d(A){A.icon=A.hasOwnProperty("icon")?A.icon:"î§‹",A.visible=A.hasOwnProperty("visible")?A.visible:"hover",A.placement=A.hasOwnProperty("placement")?A.placement:"right",A.ariaLabel=A.hasOwnProperty("ariaLabel")?A.ariaLabel:"Anchor",A.class=A.hasOwnProperty("class")?A.class:"",A.truncate=A.hasOwnProperty("truncate")?Math.floor(A.truncate):64}function f(A){var e;if("string"==typeof A||A instanceof String)e=[].slice.call(document.querySelectorAll(A));else{if(!(Array.isArray(A)||A instanceof NodeList))throw new Error("The selector provided to AnchorJS was invalid.");e=[].slice.call(A)}return e}this.options=A||{},this.elements=[],d(this.options),this.isTouchDevice=function(){return!!("ontouchstart"in window||window.DocumentTouch&&document instanceof DocumentTouch)},this.add=function(A){var e,t,i,n,o,s,r,a,c,h,l,u=[];if(d(this.options),"touch"===(l=this.options.visible)&&(l=this.isTouchDevice()?"always":"hover"),A||(A="h2, h3, h4, h5, h6"),0===(e=f(A)).length)return this;for(function(){if(null===document.head.querySelector("style.anchorjs")){var A,e=document.createElement("style");e.className="anchorjs",e.appendChild(document.createTextNode("")),void 0===(A=document.head.querySelector('[rel="stylesheet"], style'))?document.head.appendChild(e):document.head.insertBefore(e,A),e.sheet.insertRule(" .anchorjs-link { opacity: 0; text-decoration: none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }",e.sheet.cssRules.length),e.sheet.insertRule(" *:hover > .anchorjs-link, .anchorjs-link:focus { opacity: 1; }",e.sheet.cssRules.length),e.sheet.insertRule(" [data-anchorjs-icon]::after { content: attr(data-anchorjs-icon); }",e.sheet.cssRules.length),e.sheet.insertRule(' @font-face { font-family: "anchorjs-icons"; src: url(data:n/a;base64,AAEAAAALAIAAAwAwT1MvMg8yG2cAAAE4AAAAYGNtYXDp3gC3AAABpAAAAExnYXNwAAAAEAAAA9wAAAAIZ2x5ZlQCcfwAAAH4AAABCGhlYWQHFvHyAAAAvAAAADZoaGVhBnACFwAAAPQAAAAkaG10eASAADEAAAGYAAAADGxvY2EACACEAAAB8AAAAAhtYXhwAAYAVwAAARgAAAAgbmFtZQGOH9cAAAMAAAAAunBvc3QAAwAAAAADvAAAACAAAQAAAAEAAHzE2p9fDzz1AAkEAAAAAADRecUWAAAAANQA6R8AAAAAAoACwAAAAAgAAgAAAAAAAAABAAADwP/AAAACgAAA/9MCrQABAAAAAAAAAAAAAAAAAAAAAwABAAAAAwBVAAIAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAMCQAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAg//0DwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAAAAIAAAACgAAxAAAAAwAAAAMAAAAcAAEAAwAAABwAAwABAAAAHAAEADAAAAAIAAgAAgAAACDpy//9//8AAAAg6cv//f///+EWNwADAAEAAAAAAAAAAAAAAAAACACEAAEAAAAAAAAAAAAAAAAxAAACAAQARAKAAsAAKwBUAAABIiYnJjQ3NzY2MzIWFxYUBwcGIicmNDc3NjQnJiYjIgYHBwYUFxYUBwYGIwciJicmNDc3NjIXFhQHBwYUFxYWMzI2Nzc2NCcmNDc2MhcWFAcHBgYjARQGDAUtLXoWOR8fORYtLTgKGwoKCjgaGg0gEhIgDXoaGgkJBQwHdR85Fi0tOAobCgoKOBoaDSASEiANehoaCQkKGwotLXoWOR8BMwUFLYEuehYXFxYugC44CQkKGwo4GkoaDQ0NDXoaShoKGwoFBe8XFi6ALjgJCQobCjgaShoNDQ0NehpKGgobCgoKLYEuehYXAAAADACWAAEAAAAAAAEACAAAAAEAAAAAAAIAAwAIAAEAAAAAAAMACAAAAAEAAAAAAAQACAAAAAEAAAAAAAUAAQALAAEAAAAAAAYACAAAAAMAAQQJAAEAEAAMAAMAAQQJAAIABgAcAAMAAQQJAAMAEAAMAAMAAQQJAAQAEAAMAAMAAQQJAAUAAgAiAAMAAQQJAAYAEAAMYW5jaG9yanM0MDBAAGEAbgBjAGgAbwByAGoAcwA0ADAAMABAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAH//wAP) format("truetype"); }',e.sheet.cssRules.length)}}(),t=document.querySelectorAll("[id]"),i=[].map.call(t,function(A){return A.id}),o=0;o<e.length;o++)if(this.hasAnchorJSLink(e[o]))u.push(o);else{if(e[o].hasAttribute("id"))n=e[o].getAttribute("id");else if(e[o].hasAttribute("data-anchor-id"))n=e[o].getAttribute("data-anchor-id");else{for(c=a=this.urlify(e[o].textContent),r=0;void 0!==s&&(c=a+"-"+r),r+=1,-1!==(s=i.indexOf(c)););s=void 0,i.push(c),e[o].setAttribute("id",c),n=c}n.replace(/-/g," "),(h=document.createElement("a")).className="anchorjs-link "+this.options.class,h.href="#"+n,h.setAttribute("aria-label",this.options.ariaLabel),h.setAttribute("data-anchorjs-icon",this.options.icon),"always"===l&&(h.style.opacity="1"),"î§‹"===this.options.icon&&(h.style.font="1em/1 anchorjs-icons","left"===this.options.placement&&(h.style.lineHeight="inherit")),"left"===this.options.placement?(h.style.position="absolute",h.style.marginLeft="-1em",h.style.paddingRight="0.5em",e[o].insertBefore(h,e[o].firstChild)):(h.style.paddingLeft="0.375em",e[o].appendChild(h))}for(o=0;o<u.length;o++)e.splice(u[o]-o,1);return this.elements=this.elements.concat(e),this},this.remove=function(A){for(var e,t,i=f(A),n=0;n<i.length;n++)(t=i[n].querySelector(".anchorjs-link"))&&(-1!==(e=this.elements.indexOf(i[n]))&&this.elements.splice(e,1),i[n].removeChild(t));return this},this.removeAll=function(){this.remove(this.elements)},this.urlify=function(A){return this.options.truncate||d(this.options),A.trim().replace(/\'/gi,"").replace(/[& +$,:;=?@"#{}|^~[`%!'<>\]\.\/\(\)\*\\\n\t\b\v]/g,"-").replace(/-{2,}/g,"-").substring(0,this.options.truncate).replace(/^-+|-+$/gm,"").toLowerCase()},this.hasAnchorJSLink=function(A){var e=A.firstChild&&-1<(" "+A.firstChild.className+" ").indexOf(" anchorjs-link "),t=A.lastChild&&-1<(" "+A.lastChild.className+" ").indexOf(" anchorjs-link ");return e||t||!1}}}); \ No newline at end of file diff --git a/docs/4.3/assets/js/vendor/bs-custom-file-input.min.js b/docs/4.3/assets/js/vendor/bs-custom-file-input.min.js new file mode 100644 index 0000000000..bdf7024911 --- /dev/null +++ b/docs/4.3/assets/js/vendor/bs-custom-file-input.min.js @@ -0,0 +1,7 @@ +/*! + * bsCustomFileInput v1.3.1 (https://github.com/Johann-S/bs-custom-file-input) + * Copyright 2018 Johann-S <johann.servoire@gmail.com> + * Licensed under MIT (https://github.com/Johann-S/bs-custom-file-input/blob/master/LICENSE) + */ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.bsCustomFileInput=t()}(this,function(){"use strict";var d={CUSTOMFILE:'.custom-file input[type="file"]',CUSTOMFILELABEL:".custom-file-label",FORM:"form",INPUT:"input"},r=function(e){if(0<e.childNodes.length)for(var t=[].slice.call(e.childNodes),n=0;n<t.length;n++){var r=t[n];if(3!==r.nodeType)return r}return e},u=function(e){var t=e.bsCustomFileInput.defaultText,n=e.parentNode.querySelector(d.CUSTOMFILELABEL);n&&(r(n).innerHTML=t)},n=!!window.File,l=function(e){if(e.hasAttribute("multiple")&&n)return[].slice.call(e.files).map(function(e){return e.name}).join(", ");if(-1===e.value.indexOf("fakepath"))return e.value;var t=e.value.split("\\");return t[t.length-1]};function v(){var e=this.parentNode.querySelector(d.CUSTOMFILELABEL);if(e){var t=r(e),n=l(this);n.length?t.innerHTML=n:u(this)}}function p(){for(var e=[].slice.call(this.querySelectorAll(d.INPUT)).filter(function(e){return!!e.bsCustomFileInput}),t=0,n=e.length;t<n;t++)u(e[t])}var m="bsCustomFileInput",L="reset",h="change";return{init:function(e,t){void 0===e&&(e=d.CUSTOMFILE),void 0===t&&(t=d.FORM);for(var n,r,l,i=[].slice.call(document.querySelectorAll(e)),o=[].slice.call(document.querySelectorAll(t)),u=0,c=i.length;u<c;u++){var f=i[u];Object.defineProperty(f,m,{value:{defaultText:(n=f,r=void 0,void 0,r="",l=n.parentNode.querySelector(d.CUSTOMFILELABEL),l&&(r=l.innerHTML),r)},writable:!0}),f.addEventListener(h,v)}for(var a=0,s=o.length;a<s;a++)o[a].addEventListener(L,p),Object.defineProperty(o[a],m,{value:!0,writable:!0})},destroy:function(){for(var e=[].slice.call(document.querySelectorAll(d.FORM)).filter(function(e){return!!e.bsCustomFileInput}),t=[].slice.call(document.querySelectorAll(d.INPUT)).filter(function(e){return!!e.bsCustomFileInput}),n=0,r=t.length;n<r;n++){var l=t[n];u(l),l[m]=void 0,l.removeEventListener(h,v)}for(var i=0,o=e.length;i<o;i++)e[i].removeEventListener(L,p),e[i][m]=void 0}}}); +//# sourceMappingURL=bs-custom-file-input.min.js.map diff --git a/docs/4.3/assets/js/vendor/clipboard.min.js b/docs/4.3/assets/js/vendor/clipboard.min.js new file mode 100644 index 0000000000..02c549e35c --- /dev/null +++ b/docs/4.3/assets/js/vendor/clipboard.min.js @@ -0,0 +1,7 @@ +/*! + * clipboard.js v2.0.4 + * https://zenorocha.github.io/clipboard.js + * + * Licensed MIT © Zeno Rocha + */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return function(n){var o={};function r(t){if(o[t])return o[t].exports;var e=o[t]={i:t,l:!1,exports:{}};return n[t].call(e.exports,e,e.exports,r),e.l=!0,e.exports}return r.m=n,r.c=o,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=0)}([function(t,e,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i=function(){function o(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}return function(t,e,n){return e&&o(t.prototype,e),n&&o(t,n),t}}(),a=o(n(1)),c=o(n(3)),u=o(n(4));function o(t){return t&&t.__esModule?t:{default:t}}var l=function(t){function o(t,e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,o);var n=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,(o.__proto__||Object.getPrototypeOf(o)).call(this));return n.resolveOptions(e),n.listenClick(t),n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(o,c.default),i(o,[{key:"resolveOptions",value:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};this.action="function"==typeof t.action?t.action:this.defaultAction,this.target="function"==typeof t.target?t.target:this.defaultTarget,this.text="function"==typeof t.text?t.text:this.defaultText,this.container="object"===r(t.container)?t.container:document.body}},{key:"listenClick",value:function(t){var e=this;this.listener=(0,u.default)(t,"click",function(t){return e.onClick(t)})}},{key:"onClick",value:function(t){var e=t.delegateTarget||t.currentTarget;this.clipboardAction&&(this.clipboardAction=null),this.clipboardAction=new a.default({action:this.action(e),target:this.target(e),text:this.text(e),container:this.container,trigger:e,emitter:this})}},{key:"defaultAction",value:function(t){return s("action",t)}},{key:"defaultTarget",value:function(t){var e=s("target",t);if(e)return document.querySelector(e)}},{key:"defaultText",value:function(t){return s("text",t)}},{key:"destroy",value:function(){this.listener.destroy(),this.clipboardAction&&(this.clipboardAction.destroy(),this.clipboardAction=null)}}],[{key:"isSupported",value:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:["copy","cut"],e="string"==typeof t?[t]:t,n=!!document.queryCommandSupported;return e.forEach(function(t){n=n&&!!document.queryCommandSupported(t)}),n}}]),o}();function s(t,e){var n="data-clipboard-"+t;if(e.hasAttribute(n))return e.getAttribute(n)}t.exports=l},function(t,e,n){"use strict";var o,r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i=function(){function o(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}return function(t,e,n){return e&&o(t.prototype,e),n&&o(t,n),t}}(),a=n(2),c=(o=a)&&o.__esModule?o:{default:o};var u=function(){function e(t){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),this.resolveOptions(t),this.initSelection()}return i(e,[{key:"resolveOptions",value:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};this.action=t.action,this.container=t.container,this.emitter=t.emitter,this.target=t.target,this.text=t.text,this.trigger=t.trigger,this.selectedText=""}},{key:"initSelection",value:function(){this.text?this.selectFake():this.target&&this.selectTarget()}},{key:"selectFake",value:function(){var t=this,e="rtl"==document.documentElement.getAttribute("dir");this.removeFake(),this.fakeHandlerCallback=function(){return t.removeFake()},this.fakeHandler=this.container.addEventListener("click",this.fakeHandlerCallback)||!0,this.fakeElem=document.createElement("textarea"),this.fakeElem.style.fontSize="12pt",this.fakeElem.style.border="0",this.fakeElem.style.padding="0",this.fakeElem.style.margin="0",this.fakeElem.style.position="absolute",this.fakeElem.style[e?"right":"left"]="-9999px";var n=window.pageYOffset||document.documentElement.scrollTop;this.fakeElem.style.top=n+"px",this.fakeElem.setAttribute("readonly",""),this.fakeElem.value=this.text,this.container.appendChild(this.fakeElem),this.selectedText=(0,c.default)(this.fakeElem),this.copyText()}},{key:"removeFake",value:function(){this.fakeHandler&&(this.container.removeEventListener("click",this.fakeHandlerCallback),this.fakeHandler=null,this.fakeHandlerCallback=null),this.fakeElem&&(this.container.removeChild(this.fakeElem),this.fakeElem=null)}},{key:"selectTarget",value:function(){this.selectedText=(0,c.default)(this.target),this.copyText()}},{key:"copyText",value:function(){var e=void 0;try{e=document.execCommand(this.action)}catch(t){e=!1}this.handleResult(e)}},{key:"handleResult",value:function(t){this.emitter.emit(t?"success":"error",{action:this.action,text:this.selectedText,trigger:this.trigger,clearSelection:this.clearSelection.bind(this)})}},{key:"clearSelection",value:function(){this.trigger&&this.trigger.focus(),window.getSelection().removeAllRanges()}},{key:"destroy",value:function(){this.removeFake()}},{key:"action",set:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:"copy";if(this._action=t,"copy"!==this._action&&"cut"!==this._action)throw new Error('Invalid "action" value, use either "copy" or "cut"')},get:function(){return this._action}},{key:"target",set:function(t){if(void 0!==t){if(!t||"object"!==(void 0===t?"undefined":r(t))||1!==t.nodeType)throw new Error('Invalid "target" value, use a valid Element');if("copy"===this.action&&t.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if("cut"===this.action&&(t.hasAttribute("readonly")||t.hasAttribute("disabled")))throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes');this._target=t}},get:function(){return this._target}}]),e}();t.exports=u},function(t,e){t.exports=function(t){var e;if("SELECT"===t.nodeName)t.focus(),e=t.value;else if("INPUT"===t.nodeName||"TEXTAREA"===t.nodeName){var n=t.hasAttribute("readonly");n||t.setAttribute("readonly",""),t.select(),t.setSelectionRange(0,t.value.length),n||t.removeAttribute("readonly"),e=t.value}else{t.hasAttribute("contenteditable")&&t.focus();var o=window.getSelection(),r=document.createRange();r.selectNodeContents(t),o.removeAllRanges(),o.addRange(r),e=o.toString()}return e}},function(t,e){function n(){}n.prototype={on:function(t,e,n){var o=this.e||(this.e={});return(o[t]||(o[t]=[])).push({fn:e,ctx:n}),this},once:function(t,e,n){var o=this;function r(){o.off(t,r),e.apply(n,arguments)}return r._=e,this.on(t,r,n)},emit:function(t){for(var e=[].slice.call(arguments,1),n=((this.e||(this.e={}))[t]||[]).slice(),o=0,r=n.length;o<r;o++)n[o].fn.apply(n[o].ctx,e);return this},off:function(t,e){var n=this.e||(this.e={}),o=n[t],r=[];if(o&&e)for(var i=0,a=o.length;i<a;i++)o[i].fn!==e&&o[i].fn._!==e&&r.push(o[i]);return r.length?n[t]=r:delete n[t],this}},t.exports=n},function(t,e,n){var d=n(5),h=n(6);t.exports=function(t,e,n){if(!t&&!e&&!n)throw new Error("Missing required arguments");if(!d.string(e))throw new TypeError("Second argument must be a String");if(!d.fn(n))throw new TypeError("Third argument must be a Function");if(d.node(t))return s=e,f=n,(l=t).addEventListener(s,f),{destroy:function(){l.removeEventListener(s,f)}};if(d.nodeList(t))return a=t,c=e,u=n,Array.prototype.forEach.call(a,function(t){t.addEventListener(c,u)}),{destroy:function(){Array.prototype.forEach.call(a,function(t){t.removeEventListener(c,u)})}};if(d.string(t))return o=t,r=e,i=n,h(document.body,o,r,i);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList");var o,r,i,a,c,u,l,s,f}},function(t,n){n.node=function(t){return void 0!==t&&t instanceof HTMLElement&&1===t.nodeType},n.nodeList=function(t){var e=Object.prototype.toString.call(t);return void 0!==t&&("[object NodeList]"===e||"[object HTMLCollection]"===e)&&"length"in t&&(0===t.length||n.node(t[0]))},n.string=function(t){return"string"==typeof t||t instanceof String},n.fn=function(t){return"[object Function]"===Object.prototype.toString.call(t)}},function(t,e,n){var a=n(7);function i(t,e,n,o,r){var i=function(e,n,t,o){return function(t){t.delegateTarget=a(t.target,n),t.delegateTarget&&o.call(e,t)}}.apply(this,arguments);return t.addEventListener(n,i,r),{destroy:function(){t.removeEventListener(n,i,r)}}}t.exports=function(t,e,n,o,r){return"function"==typeof t.addEventListener?i.apply(null,arguments):"function"==typeof n?i.bind(null,document).apply(null,arguments):("string"==typeof t&&(t=document.querySelectorAll(t)),Array.prototype.map.call(t,function(t){return i(t,e,n,o,r)}))}},function(t,e){if("undefined"!=typeof Element&&!Element.prototype.matches){var n=Element.prototype;n.matches=n.matchesSelector||n.mozMatchesSelector||n.msMatchesSelector||n.oMatchesSelector||n.webkitMatchesSelector}t.exports=function(t,e){for(;t&&9!==t.nodeType;){if("function"==typeof t.matches&&t.matches(e))return t;t=t.parentNode}}}])}); \ No newline at end of file diff --git a/docs/4.3/assets/js/vendor/jquery-slim.min.js b/docs/4.3/assets/js/vendor/jquery-slim.min.js new file mode 100644 index 0000000000..f4ca9b24ba --- /dev/null +++ b/docs/4.3/assets/js/vendor/jquery-slim.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.3.1 -ajax,-ajax/jsonp,-ajax/load,-ajax/parseXML,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-event/ajax,-effects,-effects/Tween,-effects/animatedSelector | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){"use strict";var n=[],r=e.document,i=Object.getPrototypeOf,o=n.slice,a=n.concat,u=n.push,s=n.indexOf,l={},c=l.toString,f=l.hasOwnProperty,d=f.toString,p=d.call(Object),h={},g=function e(t){return"function"==typeof t&&"number"!=typeof t.nodeType},v=function e(t){return null!=t&&t===t.window},y={type:!0,src:!0,noModule:!0};function m(e,t,n){var i,o=(t=t||r).createElement("script");if(o.text=e,n)for(i in y)n[i]&&(o[i]=n[i]);t.head.appendChild(o).parentNode.removeChild(o)}function b(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?l[c.call(e)]||"object":typeof e}var x="3.3.1 -ajax,-ajax/jsonp,-ajax/load,-ajax/parseXML,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-event/ajax,-effects,-effects/Tween,-effects/animatedSelector",w=function(e,t){return new w.fn.init(e,t)},C=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;w.fn=w.prototype={jquery:x,constructor:w,length:0,toArray:function(){return o.call(this)},get:function(e){return null==e?o.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=w.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return w.each(this,e)},map:function(e){return this.pushStack(w.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(o.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:n.sort,splice:n.splice},w.extend=w.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},u=1,s=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[u]||{},u++),"object"==typeof a||g(a)||(a={}),u===s&&(a=this,u--);u<s;u++)if(null!=(e=arguments[u]))for(t in e)n=a[t],a!==(r=e[t])&&(l&&r&&(w.isPlainObject(r)||(i=Array.isArray(r)))?(i?(i=!1,o=n&&Array.isArray(n)?n:[]):o=n&&w.isPlainObject(n)?n:{},a[t]=w.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},w.extend({expando:"jQuery"+(x+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==c.call(e))&&(!(t=i(e))||"function"==typeof(n=f.call(t,"constructor")&&t.constructor)&&d.call(n)===p)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e){m(e)},each:function(e,t){var n,r=0;if(T(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},trim:function(e){return null==e?"":(e+"").replace(C,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(T(Object(e))?w.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:s.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r,i=[],o=0,a=e.length,u=!n;o<a;o++)(r=!t(e[o],o))!==u&&i.push(e[o]);return i},map:function(e,t,n){var r,i,o=0,u=[];if(T(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&u.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&u.push(i);return a.apply([],u)},guid:1,support:h}),"function"==typeof Symbol&&(w.fn[Symbol.iterator]=n[Symbol.iterator]),w.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){l["[object "+t+"]"]=t.toLowerCase()});function T(e){var t=!!e&&"length"in e&&e.length,n=b(e);return!g(e)&&!v(e)&&("array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e)}var E=function(e){var t,n,r,i,o,a,u,s,l,c,f,d,p,h,g,v,y,m,b,x="sizzle"+1*new Date,w=e.document,C=0,T=0,E=ae(),N=ae(),k=ae(),A=function(e,t){return e===t&&(f=!0),0},D={}.hasOwnProperty,S=[],L=S.pop,j=S.push,q=S.push,O=S.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},H="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",I="[\\x20\\t\\r\\n\\f]",R="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",B="\\["+I+"*("+R+")(?:"+I+"*([*^$|!~]?=)"+I+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+R+"))|)"+I+"*\\]",M=":("+R+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+B+")*)|.*)\\)|)",W=new RegExp(I+"+","g"),$=new RegExp("^"+I+"+|((?:^|[^\\\\])(?:\\\\.)*)"+I+"+$","g"),F=new RegExp("^"+I+"*,"+I+"*"),z=new RegExp("^"+I+"*([>+~]|"+I+")"+I+"*"),_=new RegExp("="+I+"*([^\\]'\"]*?)"+I+"*\\]","g"),U=new RegExp(M),V=new RegExp("^"+R+"$"),X={ID:new RegExp("^#("+R+")"),CLASS:new RegExp("^\\.("+R+")"),TAG:new RegExp("^("+R+"|[*])"),ATTR:new RegExp("^"+B),PSEUDO:new RegExp("^"+M),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+I+"*(even|odd|(([+-]|)(\\d*)n|)"+I+"*(?:([+-]|)"+I+"*(\\d+)|))"+I+"*\\)|)","i"),bool:new RegExp("^(?:"+H+")$","i"),needsContext:new RegExp("^"+I+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+I+"*((?:-\\d)?\\d*)"+I+"*\\)|)(?=[^-]|$)","i")},Q=/^(?:input|select|textarea|button)$/i,Y=/^h\d$/i,G=/^[^{]+\{\s*\[native \w/,K=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,J=/[+~]/,Z=new RegExp("\\\\([\\da-f]{1,6}"+I+"?|("+I+")|.)","ig"),ee=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},te=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ne=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},re=function(){d()},ie=me(function(e){return!0===e.disabled&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{q.apply(S=O.call(w.childNodes),w.childNodes),S[w.childNodes.length].nodeType}catch(e){q={apply:S.length?function(e,t){j.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function oe(e,t,r,i){var o,u,l,c,f,h,y,m=t&&t.ownerDocument,C=t?t.nodeType:9;if(r=r||[],"string"!=typeof e||!e||1!==C&&9!==C&&11!==C)return r;if(!i&&((t?t.ownerDocument||t:w)!==p&&d(t),t=t||p,g)){if(11!==C&&(f=K.exec(e)))if(o=f[1]){if(9===C){if(!(l=t.getElementById(o)))return r;if(l.id===o)return r.push(l),r}else if(m&&(l=m.getElementById(o))&&b(t,l)&&l.id===o)return r.push(l),r}else{if(f[2])return q.apply(r,t.getElementsByTagName(e)),r;if((o=f[3])&&n.getElementsByClassName&&t.getElementsByClassName)return q.apply(r,t.getElementsByClassName(o)),r}if(n.qsa&&!k[e+" "]&&(!v||!v.test(e))){if(1!==C)m=t,y=e;else if("object"!==t.nodeName.toLowerCase()){(c=t.getAttribute("id"))?c=c.replace(te,ne):t.setAttribute("id",c=x),u=(h=a(e)).length;while(u--)h[u]="#"+c+" "+ye(h[u]);y=h.join(","),m=J.test(e)&&ge(t.parentNode)||t}if(y)try{return q.apply(r,m.querySelectorAll(y)),r}catch(e){}finally{c===x&&t.removeAttribute("id")}}}return s(e.replace($,"$1"),t,r,i)}function ae(){var e=[];function t(n,i){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=i}return t}function ue(e){return e[x]=!0,e}function se(e){var t=p.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function le(e,t){var n=e.split("|"),i=n.length;while(i--)r.attrHandle[n[i]]=t}function ce(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function fe(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function de(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function pe(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ie(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function he(e){return ue(function(t){return t=+t,ue(function(n,r){var i,o=e([],n.length,t),a=o.length;while(a--)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function ge(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}n=oe.support={},o=oe.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},d=oe.setDocument=function(e){var t,i,a=e?e.ownerDocument||e:w;return a!==p&&9===a.nodeType&&a.documentElement?(p=a,h=p.documentElement,g=!o(p),w!==p&&(i=p.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener("unload",re,!1):i.attachEvent&&i.attachEvent("onunload",re)),n.attributes=se(function(e){return e.className="i",!e.getAttribute("className")}),n.getElementsByTagName=se(function(e){return e.appendChild(p.createComment("")),!e.getElementsByTagName("*").length}),n.getElementsByClassName=G.test(p.getElementsByClassName),n.getById=se(function(e){return h.appendChild(e).id=x,!p.getElementsByName||!p.getElementsByName(x).length}),n.getById?(r.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){return e.getAttribute("id")===t}},r.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&g){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},r.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&g){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&g)return t.getElementsByClassName(e)},y=[],v=[],(n.qsa=G.test(p.querySelectorAll))&&(se(function(e){h.appendChild(e).innerHTML="<a id='"+x+"'></a><select id='"+x+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+I+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+I+"*(?:value|"+H+")"),e.querySelectorAll("[id~="+x+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+x+"+*").length||v.push(".#.+[+~]")}),se(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=p.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+I+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),h.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(n.matchesSelector=G.test(m=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&se(function(e){n.disconnectedMatch=m.call(e,"*"),m.call(e,"[s!='']:x"),y.push("!=",M)}),v=v.length&&new RegExp(v.join("|")),y=y.length&&new RegExp(y.join("|")),t=G.test(h.compareDocumentPosition),b=t||G.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},A=t?function(e,t){if(e===t)return f=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e===p||e.ownerDocument===w&&b(w,e)?-1:t===p||t.ownerDocument===w&&b(w,t)?1:c?P(c,e)-P(c,t):0:4&r?-1:1)}:function(e,t){if(e===t)return f=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],u=[t];if(!i||!o)return e===p?-1:t===p?1:i?-1:o?1:c?P(c,e)-P(c,t):0;if(i===o)return ce(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)u.unshift(n);while(a[r]===u[r])r++;return r?ce(a[r],u[r]):a[r]===w?-1:u[r]===w?1:0},p):p},oe.matches=function(e,t){return oe(e,null,null,t)},oe.matchesSelector=function(e,t){if((e.ownerDocument||e)!==p&&d(e),t=t.replace(_,"='$1']"),n.matchesSelector&&g&&!k[t+" "]&&(!y||!y.test(t))&&(!v||!v.test(t)))try{var r=m.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return oe(t,p,null,[e]).length>0},oe.contains=function(e,t){return(e.ownerDocument||e)!==p&&d(e),b(e,t)},oe.attr=function(e,t){(e.ownerDocument||e)!==p&&d(e);var i=r.attrHandle[t.toLowerCase()],o=i&&D.call(r.attrHandle,t.toLowerCase())?i(e,t,!g):void 0;return void 0!==o?o:n.attributes||!g?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},oe.escape=function(e){return(e+"").replace(te,ne)},oe.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},oe.uniqueSort=function(e){var t,r=[],i=0,o=0;if(f=!n.detectDuplicates,c=!n.sortStable&&e.slice(0),e.sort(A),f){while(t=e[o++])t===e[o]&&(i=r.push(o));while(i--)e.splice(r[i],1)}return c=null,e},i=oe.getText=function(e){var t,n="",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else while(t=e[r++])n+=i(t);return n},(r=oe.selectors={cacheLength:50,createPseudo:ue,match:X,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(Z,ee),e[3]=(e[3]||e[4]||e[5]||"").replace(Z,ee),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||oe.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&oe.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return X.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&U.test(n)&&(t=a(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(Z,ee).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=E[e+" "];return t||(t=new RegExp("(^|"+I+")"+e+"("+I+"|$)"))&&E(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=oe.attr(r,e);return null==i?"!="===t:!t||(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i.replace(W," ")+" ").indexOf(n)>-1:"|="===t&&(i===n||i.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),u="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,s){var l,c,f,d,p,h,g=o!==a?"nextSibling":"previousSibling",v=t.parentNode,y=u&&t.nodeName.toLowerCase(),m=!s&&!u,b=!1;if(v){if(o){while(g){d=t;while(d=d[g])if(u?d.nodeName.toLowerCase()===y:1===d.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?v.firstChild:v.lastChild],a&&m){b=(p=(l=(c=(f=(d=v)[x]||(d[x]={}))[d.uniqueID]||(f[d.uniqueID]={}))[e]||[])[0]===C&&l[1])&&l[2],d=p&&v.childNodes[p];while(d=++p&&d&&d[g]||(b=p=0)||h.pop())if(1===d.nodeType&&++b&&d===t){c[e]=[C,p,b];break}}else if(m&&(b=p=(l=(c=(f=(d=t)[x]||(d[x]={}))[d.uniqueID]||(f[d.uniqueID]={}))[e]||[])[0]===C&&l[1]),!1===b)while(d=++p&&d&&d[g]||(b=p=0)||h.pop())if((u?d.nodeName.toLowerCase()===y:1===d.nodeType)&&++b&&(m&&((c=(f=d[x]||(d[x]={}))[d.uniqueID]||(f[d.uniqueID]={}))[e]=[C,b]),d===t))break;return(b-=i)===r||b%r==0&&b/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||oe.error("unsupported pseudo: "+e);return i[x]?i(t):i.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?ue(function(e,n){var r,o=i(e,t),a=o.length;while(a--)e[r=P(e,o[a])]=!(n[r]=o[a])}):function(e){return i(e,0,n)}):i}},pseudos:{not:ue(function(e){var t=[],n=[],r=u(e.replace($,"$1"));return r[x]?ue(function(e,t,n,i){var o,a=r(e,null,i,[]),u=e.length;while(u--)(o=a[u])&&(e[u]=!(t[u]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}}),has:ue(function(e){return function(t){return oe(e,t).length>0}}),contains:ue(function(e){return e=e.replace(Z,ee),function(t){return(t.textContent||t.innerText||i(t)).indexOf(e)>-1}}),lang:ue(function(e){return V.test(e||"")||oe.error("unsupported lang: "+e),e=e.replace(Z,ee).toLowerCase(),function(t){var n;do{if(n=g?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===h},focus:function(e){return e===p.activeElement&&(!p.hasFocus||p.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:pe(!1),disabled:pe(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return Y.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:he(function(){return[0]}),last:he(function(e,t){return[t-1]}),eq:he(function(e,t,n){return[n<0?n+t:n]}),even:he(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:he(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:he(function(e,t,n){for(var r=n<0?n+t:n;--r>=0;)e.push(r);return e}),gt:he(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=r.pseudos.eq;for(t in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})r.pseudos[t]=fe(t);for(t in{submit:!0,reset:!0})r.pseudos[t]=de(t);function ve(){}ve.prototype=r.filters=r.pseudos,r.setFilters=new ve,a=oe.tokenize=function(e,t){var n,i,o,a,u,s,l,c=N[e+" "];if(c)return t?0:c.slice(0);u=e,s=[],l=r.preFilter;while(u){n&&!(i=F.exec(u))||(i&&(u=u.slice(i[0].length)||u),s.push(o=[])),n=!1,(i=z.exec(u))&&(n=i.shift(),o.push({value:n,type:i[0].replace($," ")}),u=u.slice(n.length));for(a in r.filter)!(i=X[a].exec(u))||l[a]&&!(i=l[a](i))||(n=i.shift(),o.push({value:n,type:a,matches:i}),u=u.slice(n.length));if(!n)break}return t?u.length:u?oe.error(e):N(e,s).slice(0)};function ye(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function me(e,t,n){var r=t.dir,i=t.next,o=i||r,a=n&&"parentNode"===o,u=T++;return t.first?function(t,n,i){while(t=t[r])if(1===t.nodeType||a)return e(t,n,i);return!1}:function(t,n,s){var l,c,f,d=[C,u];if(s){while(t=t[r])if((1===t.nodeType||a)&&e(t,n,s))return!0}else while(t=t[r])if(1===t.nodeType||a)if(f=t[x]||(t[x]={}),c=f[t.uniqueID]||(f[t.uniqueID]={}),i&&i===t.nodeName.toLowerCase())t=t[r]||t;else{if((l=c[o])&&l[0]===C&&l[1]===u)return d[2]=l[2];if(c[o]=d,d[2]=e(t,n,s))return!0}return!1}}function be(e){return e.length>1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function xe(e,t,n){for(var r=0,i=t.length;r<i;r++)oe(e,t[r],n);return n}function we(e,t,n,r,i){for(var o,a=[],u=0,s=e.length,l=null!=t;u<s;u++)(o=e[u])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(u)));return a}function Ce(e,t,n,r,i,o){return r&&!r[x]&&(r=Ce(r)),i&&!i[x]&&(i=Ce(i,o)),ue(function(o,a,u,s){var l,c,f,d=[],p=[],h=a.length,g=o||xe(t||"*",u.nodeType?[u]:u,[]),v=!e||!o&&t?g:we(g,d,e,u,s),y=n?i||(o?e:h||r)?[]:a:v;if(n&&n(v,y,u,s),r){l=we(y,p),r(l,[],u,s),c=l.length;while(c--)(f=l[c])&&(y[p[c]]=!(v[p[c]]=f))}if(o){if(i||e){if(i){l=[],c=y.length;while(c--)(f=y[c])&&l.push(v[c]=f);i(null,y=[],l,s)}c=y.length;while(c--)(f=y[c])&&(l=i?P(o,f):d[c])>-1&&(o[l]=!(a[l]=f))}}else y=we(y===a?y.splice(h,y.length):y),i?i(null,a,y,s):q.apply(a,y)})}function Te(e){for(var t,n,i,o=e.length,a=r.relative[e[0].type],u=a||r.relative[" "],s=a?1:0,c=me(function(e){return e===t},u,!0),f=me(function(e){return P(t,e)>-1},u,!0),d=[function(e,n,r){var i=!a&&(r||n!==l)||((t=n).nodeType?c(e,n,r):f(e,n,r));return t=null,i}];s<o;s++)if(n=r.relative[e[s].type])d=[me(be(d),n)];else{if((n=r.filter[e[s].type].apply(null,e[s].matches))[x]){for(i=++s;i<o;i++)if(r.relative[e[i].type])break;return Ce(s>1&&be(d),s>1&&ye(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace($,"$1"),n,s<i&&Te(e.slice(s,i)),i<o&&Te(e=e.slice(i)),i<o&&ye(e))}d.push(n)}return be(d)}function Ee(e,t){var n=t.length>0,i=e.length>0,o=function(o,a,u,s,c){var f,h,v,y=0,m="0",b=o&&[],x=[],w=l,T=o||i&&r.find.TAG("*",c),E=C+=null==w?1:Math.random()||.1,N=T.length;for(c&&(l=a===p||a||c);m!==N&&null!=(f=T[m]);m++){if(i&&f){h=0,a||f.ownerDocument===p||(d(f),u=!g);while(v=e[h++])if(v(f,a||p,u)){s.push(f);break}c&&(C=E)}n&&((f=!v&&f)&&y--,o&&b.push(f))}if(y+=m,n&&m!==y){h=0;while(v=t[h++])v(b,x,a,u);if(o){if(y>0)while(m--)b[m]||x[m]||(x[m]=L.call(s));x=we(x)}q.apply(s,x),c&&!o&&x.length>0&&y+t.length>1&&oe.uniqueSort(s)}return c&&(C=E,l=w),b};return n?ue(o):o}return u=oe.compile=function(e,t){var n,r=[],i=[],o=k[e+" "];if(!o){t||(t=a(e)),n=t.length;while(n--)(o=Te(t[n]))[x]?r.push(o):i.push(o);(o=k(e,Ee(i,r))).selector=e}return o},s=oe.select=function(e,t,n,i){var o,s,l,c,f,d="function"==typeof e&&e,p=!i&&a(e=d.selector||e);if(n=n||[],1===p.length){if((s=p[0]=p[0].slice(0)).length>2&&"ID"===(l=s[0]).type&&9===t.nodeType&&g&&r.relative[s[1].type]){if(!(t=(r.find.ID(l.matches[0].replace(Z,ee),t)||[])[0]))return n;d&&(t=t.parentNode),e=e.slice(s.shift().value.length)}o=X.needsContext.test(e)?0:s.length;while(o--){if(l=s[o],r.relative[c=l.type])break;if((f=r.find[c])&&(i=f(l.matches[0].replace(Z,ee),J.test(s[0].type)&&ge(t.parentNode)||t))){if(s.splice(o,1),!(e=i.length&&ye(s)))return q.apply(n,i),n;break}}}return(d||u(e,p))(i,t,!g,n,!t||J.test(e)&&ge(t.parentNode)||t),n},n.sortStable=x.split("").sort(A).join("")===x,n.detectDuplicates=!!f,d(),n.sortDetached=se(function(e){return 1&e.compareDocumentPosition(p.createElement("fieldset"))}),se(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||le("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),n.attributes&&se(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||le("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),se(function(e){return null==e.getAttribute("disabled")})||le(H,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),oe}(e);w.find=E,w.expr=E.selectors,w.expr[":"]=w.expr.pseudos,w.uniqueSort=w.unique=E.uniqueSort,w.text=E.getText,w.isXMLDoc=E.isXML,w.contains=E.contains,w.escapeSelector=E.escape;var N=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&w(e).is(n))break;r.push(e)}return r},k=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},A=w.expr.match.needsContext;function D(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var S=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function L(e,t,n){return g(t)?w.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?w.grep(e,function(e){return e===t!==n}):"string"!=typeof t?w.grep(e,function(e){return s.call(t,e)>-1!==n}):w.filter(t,e,n)}w.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?w.find.matchesSelector(r,e)?[r]:[]:w.find.matches(e,w.grep(t,function(e){return 1===e.nodeType}))},w.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(w(e).filter(function(){for(t=0;t<r;t++)if(w.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)w.find(e,i[t],n);return r>1?w.uniqueSort(n):n},filter:function(e){return this.pushStack(L(this,e||[],!1))},not:function(e){return this.pushStack(L(this,e||[],!0))},is:function(e){return!!L(this,"string"==typeof e&&A.test(e)?w(e):e||[],!1).length}});var j,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(w.fn.init=function(e,t,n){var i,o;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(i="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:q.exec(e))||!i[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(i[1]){if(t=t instanceof w?t[0]:t,w.merge(this,w.parseHTML(i[1],t&&t.nodeType?t.ownerDocument||t:r,!0)),S.test(i[1])&&w.isPlainObject(t))for(i in t)g(this[i])?this[i](t[i]):this.attr(i,t[i]);return this}return(o=r.getElementById(i[2]))&&(this[0]=o,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):g(e)?void 0!==n.ready?n.ready(e):e(w):w.makeArray(e,this)}).prototype=w.fn,j=w(r);var O=/^(?:parents|prev(?:Until|All))/,P={children:!0,contents:!0,next:!0,prev:!0};w.fn.extend({has:function(e){var t=w(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(w.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&w(e);if(!A.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&w.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?w.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?s.call(w(e),this[0]):s.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(w.uniqueSort(w.merge(this.get(),w(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}});function H(e,t){while((e=e[t])&&1!==e.nodeType);return e}w.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return N(e,"parentNode")},parentsUntil:function(e,t,n){return N(e,"parentNode",n)},next:function(e){return H(e,"nextSibling")},prev:function(e){return H(e,"previousSibling")},nextAll:function(e){return N(e,"nextSibling")},prevAll:function(e){return N(e,"previousSibling")},nextUntil:function(e,t,n){return N(e,"nextSibling",n)},prevUntil:function(e,t,n){return N(e,"previousSibling",n)},siblings:function(e){return k((e.parentNode||{}).firstChild,e)},children:function(e){return k(e.firstChild)},contents:function(e){return D(e,"iframe")?e.contentDocument:(D(e,"template")&&(e=e.content||e),w.merge([],e.childNodes))}},function(e,t){w.fn[e]=function(n,r){var i=w.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=w.filter(r,i)),this.length>1&&(P[e]||w.uniqueSort(i),O.test(e)&&i.reverse()),this.pushStack(i)}});var I=/[^\x20\t\r\n\f]+/g;function R(e){var t={};return w.each(e.match(I)||[],function(e,n){t[n]=!0}),t}w.Callbacks=function(e){e="string"==typeof e?R(e):w.extend({},e);var t,n,r,i,o=[],a=[],u=-1,s=function(){for(i=i||e.once,r=t=!0;a.length;u=-1){n=a.shift();while(++u<o.length)!1===o[u].apply(n[0],n[1])&&e.stopOnFalse&&(u=o.length,n=!1)}e.memory||(n=!1),t=!1,i&&(o=n?[]:"")},l={add:function(){return o&&(n&&!t&&(u=o.length-1,a.push(n)),function t(n){w.each(n,function(n,r){g(r)?e.unique&&l.has(r)||o.push(r):r&&r.length&&"string"!==b(r)&&t(r)})}(arguments),n&&!t&&s()),this},remove:function(){return w.each(arguments,function(e,t){var n;while((n=w.inArray(t,o,n))>-1)o.splice(n,1),n<=u&&u--}),this},has:function(e){return e?w.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=[e,(n=n||[]).slice?n.slice():n],a.push(n),t||s()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!r}};return l};function B(e){return e}function M(e){throw e}function W(e,t,n,r){var i;try{e&&g(i=e.promise)?i.call(e).done(t).fail(n):e&&g(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}w.extend({Deferred:function(t){var n=[["notify","progress",w.Callbacks("memory"),w.Callbacks("memory"),2],["resolve","done",w.Callbacks("once memory"),w.Callbacks("once memory"),0,"resolved"],["reject","fail",w.Callbacks("once memory"),w.Callbacks("once memory"),1,"rejected"]],r="pending",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},"catch":function(e){return i.then(null,e)},pipe:function(){var e=arguments;return w.Deferred(function(t){w.each(n,function(n,r){var i=g(e[r[4]])&&e[r[4]];o[r[1]](function(){var e=i&&i.apply(this,arguments);e&&g(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[r[0]+"With"](this,i?[e]:arguments)})}),e=null}).promise()},then:function(t,r,i){var o=0;function a(t,n,r,i){return function(){var u=this,s=arguments,l=function(){var e,l;if(!(t<o)){if((e=r.apply(u,s))===n.promise())throw new TypeError("Thenable self-resolution");l=e&&("object"==typeof e||"function"==typeof e)&&e.then,g(l)?i?l.call(e,a(o,n,B,i),a(o,n,M,i)):(o++,l.call(e,a(o,n,B,i),a(o,n,M,i),a(o,n,B,n.notifyWith))):(r!==B&&(u=void 0,s=[e]),(i||n.resolveWith)(u,s))}},c=i?l:function(){try{l()}catch(e){w.Deferred.exceptionHook&&w.Deferred.exceptionHook(e,c.stackTrace),t+1>=o&&(r!==M&&(u=void 0,s=[e]),n.rejectWith(u,s))}};t?c():(w.Deferred.getStackHook&&(c.stackTrace=w.Deferred.getStackHook()),e.setTimeout(c))}}return w.Deferred(function(e){n[0][3].add(a(0,e,g(i)?i:B,e.notifyWith)),n[1][3].add(a(0,e,g(t)?t:B)),n[2][3].add(a(0,e,g(r)?r:M))}).promise()},promise:function(e){return null!=e?w.extend(e,i):i}},o={};return w.each(n,function(e,t){var a=t[2],u=t[5];i[t[1]]=a.add,u&&a.add(function(){r=u},n[3-e][2].disable,n[3-e][3].disable,n[0][2].lock,n[0][3].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+"With"](this===o?void 0:this,arguments),this},o[t[0]+"With"]=a.fireWith}),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=o.call(arguments),a=w.Deferred(),u=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?o.call(arguments):n,--t||a.resolveWith(r,i)}};if(t<=1&&(W(e,a.done(u(n)).resolve,a.reject,!t),"pending"===a.state()||g(i[n]&&i[n].then)))return a.then();while(n--)W(i[n],u(n),a.reject);return a.promise()}});var $=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;w.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&$.test(t.name)&&e.console.warn("jQuery.Deferred exception: "+t.message,t.stack,n)},w.readyException=function(t){e.setTimeout(function(){throw t})};var F=w.Deferred();w.fn.ready=function(e){return F.then(e)["catch"](function(e){w.readyException(e)}),this},w.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--w.readyWait:w.isReady)||(w.isReady=!0,!0!==e&&--w.readyWait>0||F.resolveWith(r,[w]))}}),w.ready.then=F.then;function z(){r.removeEventListener("DOMContentLoaded",z),e.removeEventListener("load",z),w.ready()}"complete"===r.readyState||"loading"!==r.readyState&&!r.documentElement.doScroll?e.setTimeout(w.ready):(r.addEventListener("DOMContentLoaded",z),e.addEventListener("load",z));var _=function(e,t,n,r,i,o,a){var u=0,s=e.length,l=null==n;if("object"===b(n)){i=!0;for(u in n)_(e,t,u,n[u],!0,o,a)}else if(void 0!==r&&(i=!0,g(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(w(e),n)})),t))for(;u<s;u++)t(e[u],n,a?r:r.call(e[u],u,t(e[u],n)));return i?e:l?t.call(e):s?t(e[0],n):o},U=/^-ms-/,V=/-([a-z])/g;function X(e,t){return t.toUpperCase()}function Q(e){return e.replace(U,"ms-").replace(V,X)}var Y=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function G(){this.expando=w.expando+G.uid++}G.uid=1,G.prototype={cache:function(e){var t=e[this.expando];return t||(t={},Y(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[Q(t)]=n;else for(r in t)i[Q(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][Q(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(Q):(t=Q(t))in r?[t]:t.match(I)||[]).length;while(n--)delete r[t[n]]}(void 0===t||w.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!w.isEmptyObject(t)}};var K=new G,J=new G,Z=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,ee=/[A-Z]/g;function te(e){return"true"===e||"false"!==e&&("null"===e?null:e===+e+""?+e:Z.test(e)?JSON.parse(e):e)}function ne(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(ee,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n=te(n)}catch(e){}J.set(e,t,n)}else n=void 0;return n}w.extend({hasData:function(e){return J.hasData(e)||K.hasData(e)},data:function(e,t,n){return J.access(e,t,n)},removeData:function(e,t){J.remove(e,t)},_data:function(e,t,n){return K.access(e,t,n)},_removeData:function(e,t){K.remove(e,t)}}),w.fn.extend({data:function(e,t){var n,r,i,o=this[0],a=o&&o.attributes;if(void 0===e){if(this.length&&(i=J.get(o),1===o.nodeType&&!K.get(o,"hasDataAttrs"))){n=a.length;while(n--)a[n]&&0===(r=a[n].name).indexOf("data-")&&(r=Q(r.slice(5)),ne(o,r,i[r]));K.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof e?this.each(function(){J.set(this,e)}):_(this,function(t){var n;if(o&&void 0===t){if(void 0!==(n=J.get(o,e)))return n;if(void 0!==(n=ne(o,e)))return n}else this.each(function(){J.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){J.remove(this,e)})}}),w.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=K.get(e,t),n&&(!r||Array.isArray(n)?r=K.access(e,t,w.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=w.queue(e,t),r=n.length,i=n.shift(),o=w._queueHooks(e,t),a=function(){w.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return K.get(e,n)||K.access(e,n,{empty:w.Callbacks("once memory").add(function(){K.remove(e,[t+"queue",n])})})}}),w.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length<n?w.queue(this[0],e):void 0===t?this:this.each(function(){var n=w.queue(this,e,t);w._queueHooks(this,e),"fx"===e&&"inprogress"!==n[0]&&w.dequeue(this,e)})},dequeue:function(e){return this.each(function(){w.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=w.Deferred(),o=this,a=this.length,u=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=K.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(u));return u(),i.promise(t)}});var re=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,ie=new RegExp("^(?:([+-])=|)("+re+")([a-z%]*)$","i"),oe=["Top","Right","Bottom","Left"],ae=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&w.contains(e.ownerDocument,e)&&"none"===w.css(e,"display")},ue=function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i};function se(e,t,n,r){var i,o,a=20,u=r?function(){return r.cur()}:function(){return w.css(e,t,"")},s=u(),l=n&&n[3]||(w.cssNumber[t]?"":"px"),c=(w.cssNumber[t]||"px"!==l&&+s)&&ie.exec(w.css(e,t));if(c&&c[3]!==l){s/=2,l=l||c[3],c=+s||1;while(a--)w.style(e,t,c+l),(1-o)*(1-(o=u()/s||.5))<=0&&(a=0),c/=o;c*=2,w.style(e,t,c+l),n=n||[]}return n&&(c=+c||+s||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var le={};function ce(e){var t,n=e.ownerDocument,r=e.nodeName,i=le[r];return i||(t=n.body.appendChild(n.createElement(r)),i=w.css(t,"display"),t.parentNode.removeChild(t),"none"===i&&(i="block"),le[r]=i,i)}function fe(e,t){for(var n,r,i=[],o=0,a=e.length;o<a;o++)(r=e[o]).style&&(n=r.style.display,t?("none"===n&&(i[o]=K.get(r,"display")||null,i[o]||(r.style.display="")),""===r.style.display&&ae(r)&&(i[o]=ce(r))):"none"!==n&&(i[o]="none",K.set(r,"display",n)));for(o=0;o<a;o++)null!=i[o]&&(e[o].style.display=i[o]);return e}w.fn.extend({show:function(){return fe(this,!0)},hide:function(){return fe(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){ae(this)?w(this).show():w(this).hide()})}});var de=/^(?:checkbox|radio)$/i,pe=/<([a-z][^\/\0>\x20\t\r\n\f]+)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};ge.optgroup=ge.option,ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td;function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&D(e,t)?w.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)K.set(e[n],"globalEval",!t||K.get(t[n],"globalEval"))}var me=/<|&#?\w+;/;function be(e,t,n,r,i){for(var o,a,u,s,l,c,f=t.createDocumentFragment(),d=[],p=0,h=e.length;p<h;p++)if((o=e[p])||0===o)if("object"===b(o))w.merge(d,o.nodeType?[o]:o);else if(me.test(o)){a=a||f.appendChild(t.createElement("div")),u=(pe.exec(o)||["",""])[1].toLowerCase(),s=ge[u]||ge._default,a.innerHTML=s[1]+w.htmlPrefilter(o)+s[2],c=s[0];while(c--)a=a.lastChild;w.merge(d,a.childNodes),(a=f.firstChild).textContent=""}else d.push(t.createTextNode(o));f.textContent="",p=0;while(o=d[p++])if(r&&w.inArray(o,r)>-1)i&&i.push(o);else if(l=w.contains(o.ownerDocument,o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}!function(){var e=r.createDocumentFragment().appendChild(r.createElement("div")),t=r.createElement("input");t.setAttribute("type","radio"),t.setAttribute("checked","checked"),t.setAttribute("name","t"),e.appendChild(t),h.checkClone=e.cloneNode(!0).cloneNode(!0).lastChild.checked,e.innerHTML="<textarea>x</textarea>",h.noCloneChecked=!!e.cloneNode(!0).lastChild.defaultValue}();var xe=r.documentElement,we=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Te=/^([^.]*)(?:\.(.+)|)/;function Ee(){return!0}function Ne(){return!1}function ke(){try{return r.activeElement}catch(e){}}function Ae(e,t,n,r,i,o){var a,u;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(u in t)Ae(e,u,n,r,t[u],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Ne;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return w().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=w.guid++)),e.each(function(){w.event.add(this,t,i,r,n)})}w.event={global:{},add:function(e,t,n,r,i){var o,a,u,s,l,c,f,d,p,h,g,v=K.get(e);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&w.find.matchesSelector(xe,i),n.guid||(n.guid=w.guid++),(s=v.events)||(s=v.events={}),(a=v.handle)||(a=v.handle=function(t){return"undefined"!=typeof w&&w.event.triggered!==t.type?w.event.dispatch.apply(e,arguments):void 0}),l=(t=(t||"").match(I)||[""]).length;while(l--)p=g=(u=Te.exec(t[l])||[])[1],h=(u[2]||"").split(".").sort(),p&&(f=w.event.special[p]||{},p=(i?f.delegateType:f.bindType)||p,f=w.event.special[p]||{},c=w.extend({type:p,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&w.expr.match.needsContext.test(i),namespace:h.join(".")},o),(d=s[p])||((d=s[p]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(p,a)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,c):d.push(c),w.event.global[p]=!0)}},remove:function(e,t,n,r,i){var o,a,u,s,l,c,f,d,p,h,g,v=K.hasData(e)&&K.get(e);if(v&&(s=v.events)){l=(t=(t||"").match(I)||[""]).length;while(l--)if(u=Te.exec(t[l])||[],p=g=u[1],h=(u[2]||"").split(".").sort(),p){f=w.event.special[p]||{},d=s[p=(r?f.delegateType:f.bindType)||p]||[],u=u[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=d.length;while(o--)c=d[o],!i&&g!==c.origType||n&&n.guid!==c.guid||u&&!u.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(d.splice(o,1),c.selector&&d.delegateCount--,f.remove&&f.remove.call(e,c));a&&!d.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||w.removeEvent(e,p,v.handle),delete s[p])}else for(p in s)w.event.remove(e,p+t[l],n,r,!0);w.isEmptyObject(s)&&K.remove(e,"handle events")}},dispatch:function(e){var t=w.event.fix(e),n,r,i,o,a,u,s=new Array(arguments.length),l=(K.get(this,"events")||{})[t.type]||[],c=w.event.special[t.type]||{};for(s[0]=t,n=1;n<arguments.length;n++)s[n]=arguments[n];if(t.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,t)){u=w.event.handlers.call(this,t,l),n=0;while((o=u[n++])&&!t.isPropagationStopped()){t.currentTarget=o.elem,r=0;while((a=o.handlers[r++])&&!t.isImmediatePropagationStopped())t.rnamespace&&!t.rnamespace.test(a.namespace)||(t.handleObj=a,t.data=a.data,void 0!==(i=((w.event.special[a.origType]||{}).handle||a.handler).apply(o.elem,s))&&!1===(t.result=i)&&(t.preventDefault(),t.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,t),t.result}},handlers:function(e,t){var n,r,i,o,a,u=[],s=t.delegateCount,l=e.target;if(s&&l.nodeType&&!("click"===e.type&&e.button>=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<s;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?w(i,this).index(l)>-1:w.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&u.push({elem:l,handlers:o})}return l=this,s<t.length&&u.push({elem:l,handlers:t.slice(s)}),u},addProp:function(e,t){Object.defineProperty(w.Event.prototype,e,{enumerable:!0,configurable:!0,get:g(t)?function(){if(this.originalEvent)return t(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[e]},set:function(t){Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:t})}})},fix:function(e){return e[w.expando]?e:new w.Event(e)},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==ke()&&this.focus)return this.focus(),!1},delegateType:"focusin"},blur:{trigger:function(){if(this===ke()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if("checkbox"===this.type&&this.click&&D(this,"input"))return this.click(),!1},_default:function(e){return D(e.target,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},w.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},w.Event=function(e,t){if(!(this instanceof w.Event))return new w.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?Ee:Ne,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&w.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[w.expando]=!0},w.Event.prototype={constructor:w.Event,isDefaultPrevented:Ne,isPropagationStopped:Ne,isImmediatePropagationStopped:Ne,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=Ee,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=Ee,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=Ee,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},w.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&we.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&Ce.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},w.event.addProp),w.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,t){w.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return i&&(i===r||w.contains(r,i))||(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),w.fn.extend({on:function(e,t,n,r){return Ae(this,e,t,n,r)},one:function(e,t,n,r){return Ae(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,w(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Ne),this.each(function(){w.event.remove(this,e,n,t)})}});var De=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,Se=/<script|<style|<link/i,Le=/checked\s*(?:[^=]|=\s*.checked.)/i,je=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function qe(e,t){return D(e,"table")&&D(11!==t.nodeType?t:t.firstChild,"tr")?w(e).children("tbody")[0]||e:e}function Oe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Pe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function He(e,t){var n,r,i,o,a,u,s,l;if(1===t.nodeType){if(K.hasData(e)&&(o=K.access(e),a=K.set(t,o),l=o.events)){delete a.handle,a.events={};for(i in l)for(n=0,r=l[i].length;n<r;n++)w.event.add(t,i,l[i][n])}J.hasData(e)&&(u=J.access(e),s=w.extend({},u),J.set(t,s))}}function Ie(e,t){var n=t.nodeName.toLowerCase();"input"===n&&de.test(e.type)?t.checked=e.checked:"input"!==n&&"textarea"!==n||(t.defaultValue=e.defaultValue)}function Re(e,t,n,r){t=a.apply([],t);var i,o,u,s,l,c,f=0,d=e.length,p=d-1,v=t[0],y=g(v);if(y||d>1&&"string"==typeof v&&!h.checkClone&&Le.test(v))return e.each(function(i){var o=e.eq(i);y&&(t[0]=v.call(this,i,o.html())),Re(o,t,n,r)});if(d&&(i=be(t,e[0].ownerDocument,!1,e,r),o=i.firstChild,1===i.childNodes.length&&(i=o),o||r)){for(s=(u=w.map(ve(i,"script"),Oe)).length;f<d;f++)l=i,f!==p&&(l=w.clone(l,!0,!0),s&&w.merge(u,ve(l,"script"))),n.call(e[f],l,f);if(s)for(c=u[u.length-1].ownerDocument,w.map(u,Pe),f=0;f<s;f++)l=u[f],he.test(l.type||"")&&!K.access(l,"globalEval")&&w.contains(c,l)&&(l.src&&"module"!==(l.type||"").toLowerCase()?w._evalUrl&&w._evalUrl(l.src):m(l.textContent.replace(je,""),c,l))}return e}function Be(e,t,n){for(var r,i=t?w.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||w.cleanData(ve(r)),r.parentNode&&(n&&w.contains(r.ownerDocument,r)&&ye(ve(r,"script")),r.parentNode.removeChild(r));return e}w.extend({htmlPrefilter:function(e){return e.replace(De,"<$1></$2>")},clone:function(e,t,n){var r,i,o,a,u=e.cloneNode(!0),s=w.contains(e.ownerDocument,e);if(!(h.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||w.isXMLDoc(e)))for(a=ve(u),r=0,i=(o=ve(e)).length;r<i;r++)Ie(o[r],a[r]);if(t)if(n)for(o=o||ve(e),a=a||ve(u),r=0,i=o.length;r<i;r++)He(o[r],a[r]);else He(e,u);return(a=ve(u,"script")).length>0&&ye(a,!s&&ve(e,"script")),u},cleanData:function(e){for(var t,n,r,i=w.event.special,o=0;void 0!==(n=e[o]);o++)if(Y(n)){if(t=n[K.expando]){if(t.events)for(r in t.events)i[r]?w.event.remove(n,r):w.removeEvent(n,r,t.handle);n[K.expando]=void 0}n[J.expando]&&(n[J.expando]=void 0)}}}),w.fn.extend({detach:function(e){return Be(this,e,!0)},remove:function(e){return Be(this,e)},text:function(e){return _(this,function(e){return void 0===e?w.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Re(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||qe(this,e).appendChild(e)})},prepend:function(){return Re(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=qe(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Re(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Re(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(w.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return w.clone(this,e,t)})},html:function(e){return _(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Se.test(e)&&!ge[(pe.exec(e)||["",""])[1].toLowerCase()]){e=w.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(w.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=[];return Re(this,arguments,function(t){var n=this.parentNode;w.inArray(this,e)<0&&(w.cleanData(ve(this)),n&&n.replaceChild(t,this))},e)}}),w.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){w.fn[e]=function(e){for(var n,r=[],i=w(e),o=i.length-1,a=0;a<=o;a++)n=a===o?this:this.clone(!0),w(i[a])[t](n),u.apply(r,n.get());return this.pushStack(r)}});var Me=new RegExp("^("+re+")(?!px)[a-z%]+$","i"),We=function(t){var n=t.ownerDocument.defaultView;return n&&n.opener||(n=e),n.getComputedStyle(t)},$e=new RegExp(oe.join("|"),"i");!function(){function t(){if(c){l.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",c.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",xe.appendChild(l).appendChild(c);var t=e.getComputedStyle(c);i="1%"!==t.top,s=12===n(t.marginLeft),c.style.right="60%",u=36===n(t.right),o=36===n(t.width),c.style.position="absolute",a=36===c.offsetWidth||"absolute",xe.removeChild(l),c=null}}function n(e){return Math.round(parseFloat(e))}var i,o,a,u,s,l=r.createElement("div"),c=r.createElement("div");c.style&&(c.style.backgroundClip="content-box",c.cloneNode(!0).style.backgroundClip="",h.clearCloneStyle="content-box"===c.style.backgroundClip,w.extend(h,{boxSizingReliable:function(){return t(),o},pixelBoxStyles:function(){return t(),u},pixelPosition:function(){return t(),i},reliableMarginLeft:function(){return t(),s},scrollboxSize:function(){return t(),a}}))}();function Fe(e,t,n){var r,i,o,a,u=e.style;return(n=n||We(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||w.contains(e.ownerDocument,e)||(a=w.style(e,t)),!h.pixelBoxStyles()&&Me.test(a)&&$e.test(t)&&(r=u.width,i=u.minWidth,o=u.maxWidth,u.minWidth=u.maxWidth=u.width=a,a=n.width,u.width=r,u.minWidth=i,u.maxWidth=o)),void 0!==a?a+"":a}function ze(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}var _e=/^(none|table(?!-c[ea]).+)/,Ue=/^--/,Ve={position:"absolute",visibility:"hidden",display:"block"},Xe={letterSpacing:"0",fontWeight:"400"},Qe=["Webkit","Moz","ms"],Ye=r.createElement("div").style;function Ge(e){if(e in Ye)return e;var t=e[0].toUpperCase()+e.slice(1),n=Qe.length;while(n--)if((e=Qe[n]+t)in Ye)return e}function Ke(e){var t=w.cssProps[e];return t||(t=w.cssProps[e]=Ge(e)||e),t}function Je(e,t,n){var r=ie.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function Ze(e,t,n,r,i,o){var a="width"===t?1:0,u=0,s=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(s+=w.css(e,n+oe[a],!0,i)),r?("content"===n&&(s-=w.css(e,"padding"+oe[a],!0,i)),"margin"!==n&&(s-=w.css(e,"border"+oe[a]+"Width",!0,i))):(s+=w.css(e,"padding"+oe[a],!0,i),"padding"!==n?s+=w.css(e,"border"+oe[a]+"Width",!0,i):u+=w.css(e,"border"+oe[a]+"Width",!0,i));return!r&&o>=0&&(s+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-s-u-.5))),s}function et(e,t,n){var r=We(e),i=Fe(e,t,r),o="border-box"===w.css(e,"boxSizing",!1,r),a=o;if(Me.test(i)){if(!n)return i;i="auto"}return a=a&&(h.boxSizingReliable()||i===e.style[t]),("auto"===i||!parseFloat(i)&&"inline"===w.css(e,"display",!1,r))&&(i=e["offset"+t[0].toUpperCase()+t.slice(1)],a=!0),(i=parseFloat(i)||0)+Ze(e,t,n||(o?"border":"content"),a,r,i)+"px"}w.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Fe(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,u=Q(t),s=Ue.test(t),l=e.style;if(s||(t=Ke(u)),a=w.cssHooks[t]||w.cssHooks[u],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"==(o=typeof n)&&(i=ie.exec(n))&&i[1]&&(n=se(e,t,i),o="number"),null!=n&&n===n&&("number"===o&&(n+=i&&i[3]||(w.cssNumber[u]?"":"px")),h.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(s?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,u=Q(t);return Ue.test(t)||(t=Ke(u)),(a=w.cssHooks[t]||w.cssHooks[u])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=Fe(e,t,r)),"normal"===i&&t in Xe&&(i=Xe[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),w.each(["height","width"],function(e,t){w.cssHooks[t]={get:function(e,n,r){if(n)return!_e.test(w.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?et(e,t,r):ue(e,Ve,function(){return et(e,t,r)})},set:function(e,n,r){var i,o=We(e),a="border-box"===w.css(e,"boxSizing",!1,o),u=r&&Ze(e,t,r,a,o);return a&&h.scrollboxSize()===o.position&&(u-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-Ze(e,t,"border",!1,o)-.5)),u&&(i=ie.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=w.css(e,t)),Je(e,n,u)}}}),w.cssHooks.marginLeft=ze(h.reliableMarginLeft,function(e,t){if(t)return(parseFloat(Fe(e,"marginLeft"))||e.getBoundingClientRect().left-ue(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),w.each({margin:"",padding:"",border:"Width"},function(e,t){w.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+oe[r]+t]=o[r]||o[r-2]||o[0];return i}},"margin"!==e&&(w.cssHooks[e+t].set=Je)}),w.fn.extend({css:function(e,t){return _(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=We(e),i=t.length;a<i;a++)o[t[a]]=w.css(e,t[a],!1,r);return o}return void 0!==n?w.style(e,t,n):w.css(e,t)},e,t,arguments.length>1)}}),w.fn.delay=function(t,n){return t=w.fx?w.fx.speeds[t]||t:t,n=n||"fx",this.queue(n,function(n,r){var i=e.setTimeout(n,t);r.stop=function(){e.clearTimeout(i)}})},function(){var e=r.createElement("input"),t=r.createElement("select").appendChild(r.createElement("option"));e.type="checkbox",h.checkOn=""!==e.value,h.optSelected=t.selected,(e=r.createElement("input")).value="t",e.type="radio",h.radioValue="t"===e.value}();var tt,nt=w.expr.attrHandle;w.fn.extend({attr:function(e,t){return _(this,w.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){w.removeAttr(this,e)})}}),w.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?w.prop(e,t,n):(1===o&&w.isXMLDoc(e)||(i=w.attrHooks[t.toLowerCase()]||(w.expr.match.bool.test(t)?tt:void 0)),void 0!==n?null===n?void w.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=w.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!h.radioValue&&"radio"===t&&D(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(I);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),tt={set:function(e,t,n){return!1===t?w.removeAttr(e,n):e.setAttribute(n,n),n}},w.each(w.expr.match.bool.source.match(/\w+/g),function(e,t){var n=nt[t]||w.find.attr;nt[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=nt[a],nt[a]=i,i=null!=n(e,t,r)?a:null,nt[a]=o),i}});var rt=/^(?:input|select|textarea|button)$/i,it=/^(?:a|area)$/i;w.fn.extend({prop:function(e,t){return _(this,w.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[w.propFix[e]||e]})}}),w.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&w.isXMLDoc(e)||(t=w.propFix[t]||t,i=w.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=w.find.attr(e,"tabindex");return t?parseInt(t,10):rt.test(e.nodeName)||it.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),h.optSelected||(w.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),w.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){w.propFix[this.toLowerCase()]=this});function ot(e){return(e.match(I)||[]).join(" ")}function at(e){return e.getAttribute&&e.getAttribute("class")||""}function ut(e){return Array.isArray(e)?e:"string"==typeof e?e.match(I)||[]:[]}w.fn.extend({addClass:function(e){var t,n,r,i,o,a,u,s=0;if(g(e))return this.each(function(t){w(this).addClass(e.call(this,t,at(this)))});if((t=ut(e)).length)while(n=this[s++])if(i=at(n),r=1===n.nodeType&&" "+ot(i)+" "){a=0;while(o=t[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(u=ot(r))&&n.setAttribute("class",u)}return this},removeClass:function(e){var t,n,r,i,o,a,u,s=0;if(g(e))return this.each(function(t){w(this).removeClass(e.call(this,t,at(this)))});if(!arguments.length)return this.attr("class","");if((t=ut(e)).length)while(n=this[s++])if(i=at(n),r=1===n.nodeType&&" "+ot(i)+" "){a=0;while(o=t[a++])while(r.indexOf(" "+o+" ")>-1)r=r.replace(" "+o+" "," ");i!==(u=ot(r))&&n.setAttribute("class",u)}return this},toggleClass:function(e,t){var n=typeof e,r="string"===n||Array.isArray(e);return"boolean"==typeof t&&r?t?this.addClass(e):this.removeClass(e):g(e)?this.each(function(n){w(this).toggleClass(e.call(this,n,at(this),t),t)}):this.each(function(){var t,i,o,a;if(r){i=0,o=w(this),a=ut(e);while(t=a[i++])o.hasClass(t)?o.removeClass(t):o.addClass(t)}else void 0!==e&&"boolean"!==n||((t=at(this))&&K.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":K.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&(" "+ot(at(n))+" ").indexOf(t)>-1)return!0;return!1}});var st=/\r/g;w.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=g(e),this.each(function(n){var i;1===this.nodeType&&(null==(i=r?e.call(this,n,w(this).val()):e)?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=w.map(i,function(e){return null==e?"":e+""})),(t=w.valHooks[this.type]||w.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return(t=w.valHooks[i.type]||w.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:"string"==typeof(n=i.value)?n.replace(st,""):null==n?"":n}}}),w.extend({valHooks:{option:{get:function(e){var t=w.find.attr(e,"value");return null!=t?t:ot(w.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,u=a?null:[],s=a?o+1:i.length;for(r=o<0?s:a?o:0;r<s;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!D(n.parentNode,"optgroup"))){if(t=w(n).val(),a)return t;u.push(t)}return u},set:function(e,t){var n,r,i=e.options,o=w.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=w.inArray(w.valHooks.option.get(r),o)>-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),w.each(["radio","checkbox"],function(){w.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=w.inArray(w(e).val(),t)>-1}},h.checkOn||(w.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),h.focusin="onfocusin"in e;var lt=/^(?:focusinfocus|focusoutblur)$/,ct=function(e){e.stopPropagation()};w.extend(w.event,{trigger:function(t,n,i,o){var a,u,s,l,c,d,p,h,y=[i||r],m=f.call(t,"type")?t.type:t,b=f.call(t,"namespace")?t.namespace.split("."):[];if(u=h=s=i=i||r,3!==i.nodeType&&8!==i.nodeType&&!lt.test(m+w.event.triggered)&&(m.indexOf(".")>-1&&(m=(b=m.split(".")).shift(),b.sort()),c=m.indexOf(":")<0&&"on"+m,t=t[w.expando]?t:new w.Event(m,"object"==typeof t&&t),t.isTrigger=o?2:3,t.namespace=b.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+b.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=i),n=null==n?[t]:w.makeArray(n,[t]),p=w.event.special[m]||{},o||!p.trigger||!1!==p.trigger.apply(i,n))){if(!o&&!p.noBubble&&!v(i)){for(l=p.delegateType||m,lt.test(l+m)||(u=u.parentNode);u;u=u.parentNode)y.push(u),s=u;s===(i.ownerDocument||r)&&y.push(s.defaultView||s.parentWindow||e)}a=0;while((u=y[a++])&&!t.isPropagationStopped())h=u,t.type=a>1?l:p.bindType||m,(d=(K.get(u,"events")||{})[t.type]&&K.get(u,"handle"))&&d.apply(u,n),(d=c&&u[c])&&d.apply&&Y(u)&&(t.result=d.apply(u,n),!1===t.result&&t.preventDefault());return t.type=m,o||t.isDefaultPrevented()||p._default&&!1!==p._default.apply(y.pop(),n)||!Y(i)||c&&g(i[m])&&!v(i)&&((s=i[c])&&(i[c]=null),w.event.triggered=m,t.isPropagationStopped()&&h.addEventListener(m,ct),i[m](),t.isPropagationStopped()&&h.removeEventListener(m,ct),w.event.triggered=void 0,s&&(i[c]=s)),t.result}},simulate:function(e,t,n){var r=w.extend(new w.Event,n,{type:e,isSimulated:!0});w.event.trigger(r,null,t)}}),w.fn.extend({trigger:function(e,t){return this.each(function(){w.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return w.event.trigger(e,t,n,!0)}}),h.focusin||w.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){w.event.simulate(t,e.target,w.event.fix(e))};w.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=K.access(r,t);i||r.addEventListener(e,n,!0),K.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=K.access(r,t)-1;i?K.access(r,t,i):(r.removeEventListener(e,n,!0),K.remove(r,t))}}});var ft=/\[\]$/,dt=/\r?\n/g,pt=/^(?:submit|button|image|reset|file)$/i,ht=/^(?:input|select|textarea|keygen)/i;function gt(e,t,n,r){var i;if(Array.isArray(t))w.each(t,function(t,i){n||ft.test(e)?r(e,i):gt(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)});else if(n||"object"!==b(t))r(e,t);else for(i in t)gt(e+"["+i+"]",t[i],n,r)}w.param=function(e,t){var n,r=[],i=function(e,t){var n=g(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(Array.isArray(e)||e.jquery&&!w.isPlainObject(e))w.each(e,function(){i(this.name,this.value)});else for(n in e)gt(n,e[n],t,i);return r.join("&")},w.fn.extend({serialize:function(){return w.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=w.prop(this,"elements");return e?w.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!w(this).is(":disabled")&&ht.test(this.nodeName)&&!pt.test(e)&&(this.checked||!de.test(e))}).map(function(e,t){var n=w(this).val();return null==n?null:Array.isArray(n)?w.map(n,function(e){return{name:t.name,value:e.replace(dt,"\r\n")}}):{name:t.name,value:n.replace(dt,"\r\n")}}).get()}}),w.fn.extend({wrapAll:function(e){var t;return this[0]&&(g(e)&&(e=e.call(this[0])),t=w(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return g(e)?this.each(function(t){w(this).wrapInner(e.call(this,t))}):this.each(function(){var t=w(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=g(e);return this.each(function(n){w(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){w(this).replaceWith(this.childNodes)}),this}}),w.expr.pseudos.hidden=function(e){return!w.expr.pseudos.visible(e)},w.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},h.createHTMLDocument=function(){var e=r.implementation.createHTMLDocument("").body;return e.innerHTML="<form></form><form></form>",2===e.childNodes.length}(),w.parseHTML=function(e,t,n){if("string"!=typeof e)return[];"boolean"==typeof t&&(n=t,t=!1);var i,o,a;return t||(h.createHTMLDocument?((i=(t=r.implementation.createHTMLDocument("")).createElement("base")).href=r.location.href,t.head.appendChild(i)):t=r),o=S.exec(e),a=!n&&[],o?[t.createElement(o[1])]:(o=be([e],t,a),a&&a.length&&w(a).remove(),w.merge([],o.childNodes))},w.offset={setOffset:function(e,t,n){var r,i,o,a,u,s,l,c=w.css(e,"position"),f=w(e),d={};"static"===c&&(e.style.position="relative"),u=f.offset(),o=w.css(e,"top"),s=w.css(e,"left"),(l=("absolute"===c||"fixed"===c)&&(o+s).indexOf("auto")>-1)?(a=(r=f.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(s)||0),g(t)&&(t=t.call(e,n,w.extend({},u))),null!=t.top&&(d.top=t.top-u.top+a),null!=t.left&&(d.left=t.left-u.left+i),"using"in t?t.using.call(e,d):f.css(d)}},w.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){w.offset.setOffset(this,e,t)});var t,n,r=this[0];if(r)return r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===w.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===w.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=w(e).offset()).top+=w.css(e,"borderTopWidth",!0),i.left+=w.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-w.css(r,"marginTop",!0),left:t.left-i.left-w.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===w.css(e,"position"))e=e.offsetParent;return e||xe})}}),w.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){var n="pageYOffset"===t;w.fn[e]=function(r){return _(this,function(e,r,i){var o;if(v(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i},e,r,arguments.length)}}),w.each(["top","left"],function(e,t){w.cssHooks[t]=ze(h.pixelPosition,function(e,n){if(n)return n=Fe(e,t),Me.test(n)?w(e).position()[t]+"px":n})}),w.each({Height:"height",Width:"width"},function(e,t){w.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){w.fn[r]=function(i,o){var a=arguments.length&&(n||"boolean"!=typeof i),u=n||(!0===i||!0===o?"margin":"border");return _(this,function(t,n,i){var o;return v(t)?0===r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body["scroll"+e],o["scroll"+e],t.body["offset"+e],o["offset"+e],o["client"+e])):void 0===i?w.css(t,n,u):w.style(t,n,i,u)},t,a?i:void 0,a)}})}),w.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,t){w.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),w.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),w.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),w.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),g(e))return r=o.call(arguments,2),i=function(){return e.apply(t||this,r.concat(o.call(arguments)))},i.guid=e.guid=e.guid||w.guid++,i},w.holdReady=function(e){e?w.readyWait++:w.ready(!0)},w.isArray=Array.isArray,w.parseJSON=JSON.parse,w.nodeName=D,w.isFunction=g,w.isWindow=v,w.camelCase=Q,w.type=b,w.now=Date.now,w.isNumeric=function(e){var t=w.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},"function"==typeof define&&define.amd&&define("jquery",[],function(){return w});var vt=e.jQuery,yt=e.$;return w.noConflict=function(t){return e.$===w&&(e.$=yt),t&&e.jQuery===w&&(e.jQuery=vt),w},t||(e.jQuery=e.$=w),w}); diff --git a/docs/4.3/browser-bugs/index.html b/docs/4.3/browser-bugs/index.html new file mode 100644 index 0000000000..e25f23a097 --- /dev/null +++ b/docs/4.3/browser-bugs/index.html @@ -0,0 +1,1393 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="The most popular HTML, CSS, and JS library in the world."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Wall of browser bugs · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/browser-bugs/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Wall of browser bugs"> +<meta name="twitter:description" content="The most popular HTML, CSS, and JS library in the world."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/browser-bugs/"> +<meta property="og:title" content="Wall of browser bugs"> +<meta property="og:description" content="The most popular HTML, CSS, and JS library in the world."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Wall of browser bugs</h1> + <p class="bd-lead"></p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>Bootstrap currently works around several outstanding browser bugs in major browsers to deliver the best cross-browser experience possible. Some bugs, like those listed below, cannot be solved by us.</p> + +<p>We publicly list browser bugs that are impacting us here, in the hopes of expediting the process of fixing them. For information on Bootstrap’s browser compatibility, <a href="/docs/4.3/getting-started/browsers-devices/#supported-browsers">see our browser compatibility docs</a>.</p> + +<p>See also:</p> + +<ul> + <li><a href="https://bugs.chromium.org/p/chromium/issues/detail?id=536263">Chromium issue 536263: [meta] Issues affecting Bootstrap</a></li> + <li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1230801">Mozilla bug 1230801: Fix the issues that affect Bootstrap</a></li> + <li><a href="https://bugs.webkit.org/show_bug.cgi?id=159753">WebKit bug 159753: [meta] Issues affecting Bootstrap</a></li> + <li><a href="https://docs.google.com/document/d/1LPaPA30bLUB_publLIMF0RlhdnPx_ePXm7oW02iiT6o">jQuery’s browser bug workarounds</a></li> +</ul> + +<table class="bd-browser-bugs table table-bordered table-hover"> + <thead> + <tr> + <th>Browser(s)</th> + <th>Summary of bug</th> + <th>Upstream bug(s)</th> + <th>Bootstrap issue(s)</th> + </tr> + </thead> + <tbody> + + <tr> + <td>Edge +</td> + <td><p>Visual artifacts in scrollable modal dialogs</p> +</td> + <td> + <a href="https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/9011176/">Edge issue #9011176</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/20755">#20755</a> + + </td> + </tr> + + <tr> + <td>Edge +</td> + <td><p>Native browser tooltip for <code class="highlighter-rouge">title</code> shows on first keyboard focus (in addition to custom tooltip component)</p> +</td> + <td> + <a href="https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/6793560/">Edge issue #6793560</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/18692">#18692</a> + + </td> + </tr> + + <tr> + <td>Edge +</td> + <td><p>Hovered element still remains in <code class="highlighter-rouge">:hover</code> state after scrolling away.</p> +</td> + <td> + <a href="https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/5381673/">Edge issue #5381673</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/14211">#14211</a> + + </td> + </tr> + + <tr> + <td>Edge +</td> + <td><p>CSS <code class="highlighter-rouge">border-radius</code> sometimes causes lines of bleed-through of the <code class="highlighter-rouge">background-color</code> of the parent element.</p> +</td> + <td> + <a href="https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/3342037/">Edge issue #3342037</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/16671">#16671</a> + + </td> + </tr> + + <tr> + <td>Edge +</td> + <td><p><code class="highlighter-rouge">background</code> of <code class="highlighter-rouge"><tr></code> is only applied to first child cell instead of all cells in the row</p> +</td> + <td> + <a href="https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/5865620/">Edge issue #5865620</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/18504">#18504</a> + + </td> + </tr> + + <tr> + <td>Edge +</td> + <td><p>Background color from lower layer bleeds through transparent border in some cases</p> +</td> + <td> + <a href="https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/6274505/">Edge issue #6274505</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/18228">#18228</a> + + </td> + </tr> + + <tr> + <td>Edge +</td> + <td><p>Hovering over descendant SVG element fires <code class="highlighter-rouge">mouseleave</code> event at ancestor</p> +</td> + <td> + <a href="https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/7787318/">Edge issue #7787318</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/19670">#19670</a> + + </td> + </tr> + + <tr> + <td>Edge +</td> + <td><p>Active <code class="highlighter-rouge">position: fixed;</code> <code class="highlighter-rouge"><button></code> flickers when scrolling</p> +</td> + <td> + <a href="https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/8770398/">Edge issue #8770398</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/20507">#20507</a> + + </td> + </tr> + + <tr> + <td>Firefox +</td> + <td><p><code class="highlighter-rouge">.table-bordered</code> with an empty <code class="highlighter-rouge"><tbody></code> is missing borders.</p> +</td> + <td> + <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1023761">Mozilla bug #1023761</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/13453">#13453</a> + + </td> + </tr> + + <tr> + <td>Firefox +</td> + <td><p>If the disabled state of a form control is changed via JavaScript, the normal state doesn’t return after refreshing the page.</p> +</td> + <td> + <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=654072">Mozilla bug #654072</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/793">#793</a> + + </td> + </tr> + + <tr> + <td>Firefox +</td> + <td><p><code class="highlighter-rouge">focus</code> events should not be fired at the <code class="highlighter-rouge">document</code> object</p> +</td> + <td> + <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1228802">Mozilla bug #1228802</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/18365">#18365</a> + + </td> + </tr> + + <tr> + <td>Firefox +</td> + <td><p>Wide floated table doesn’t wrap onto new line</p> +</td> + <td> + <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1277782">Mozilla bug #1277782</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/19839">#19839</a> + + </td> + </tr> + + <tr> + <td>Firefox +</td> + <td><p>Mouse sometimes not within element for purposes of <code class="highlighter-rouge">mouseenter</code>/<code class="highlighter-rouge">mouseleave</code> when it’s within SVG elements</p> +</td> + <td> + <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=577785">Mozilla bug #577785</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/19670">#19670</a> + + </td> + </tr> + + <tr> + <td>Firefox +</td> + <td><p>Layout with floated columns breaks when printing</p> +</td> + <td> + <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1315994">Mozilla bug #1315994</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/21092">#21092</a> + + </td> + </tr> + + <tr> + <td>Firefox (Windows) +</td> + <td><p>Right border of <code class="highlighter-rouge"><select></code> menu is sometimes missing when screen is set to uncommon resolution</p> +</td> + <td> + <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=545685">Mozilla bug #545685</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/15990">#15990</a> + + </td> + </tr> + + <tr> + <td>Firefox (macOS & Linux) +</td> + <td><p>Badge widget causes bottom border of Tabs widget to unexpectedly not overlap</p> +</td> + <td> + <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1259972">Mozilla bug #1259972</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/19626">#19626</a> + + </td> + </tr> + + <tr> + <td>Chrome (macOS) +</td> + <td><p>Clicking above <code class="highlighter-rouge"><input type="number"></code> increment button flashes the decrement button.</p> +</td> + <td> + <a href="https://bugs.chromium.org/p/chromium/issues/detail?id=419108">Chromium issue #419108</a> + + </td> + <td> + Offshoot + of + <a href="https://github.com/twbs/bootstrap/issues/8350">#8350</a> + + + & + <a href="https://bugs.chromium.org/p/chromium/issues/detail?id=337668">Chromium issue #337668</a> + + </td> + </tr> + + <tr> + <td>Chrome +</td> + <td><p>CSS infinite linear animation with alpha transparency leaks memory.</p> +</td> + <td> + <a href="https://bugs.chromium.org/p/chromium/issues/detail?id=429375">Chromium issue #429375</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/14409">#14409</a> + + </td> + </tr> + + <tr> + <td>Chrome +</td> + <td><p><code class="highlighter-rouge">table-cell</code> borders not overlapping despite <code class="highlighter-rouge">margin-right: -1px</code></p> +</td> + <td> + <a href="https://bugs.chromium.org/p/chromium/issues/detail?id=749848">Chromium issue #749848</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/17438">#17438</a>, + + + <a href="https://github.com/twbs/bootstrap/issues/14237">#14237</a> + + </td> + </tr> + + <tr> + <td>Chrome +</td> + <td><p>Don’t make <code class="highlighter-rouge">:hover</code> sticky on touch-friendly webpages</p> +</td> + <td> + <a href="https://bugs.chromium.org/p/chromium/issues/detail?id=370155">Chromium issue #370155</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/12832">#12832</a> + + </td> + </tr> + + <tr> + <td>Chrome +</td> + <td><p><code class="highlighter-rouge">position: absolute</code> element that’s wider than its column is incorrectly clipped to column boundary</p> +</td> + <td> + <a href="https://bugs.chromium.org/p/chromium/issues/detail?id=269061">Chromium issue #269061</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/20161">#20161</a> + + </td> + </tr> + + <tr> + <td>Chrome +</td> + <td><p>Significant performance hit for dynamic SVGs with text depending on the number of fonts in <code class="highlighter-rouge">font-family</code>.</p> +</td> + <td> + <a href="https://bugs.chromium.org/p/chromium/issues/detail?id=781344">Chromium issue #781344</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/24673">#24673</a> + + </td> + </tr> + + <tr> + <td>Safari +</td> + <td><p><code class="highlighter-rouge">rem</code> units in media queries should be calculated using <code class="highlighter-rouge">font-size: initial</code>, not the root element’s <code class="highlighter-rouge">font-size</code></p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=156684">WebKit bug #156684</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/17403">#17403</a> + + </td> + </tr> + + <tr> + <td>Safari +</td> + <td><p>Link to container with id and tabindex results in container being ignored by VoiceOver (affects skip links)</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=163658">WebKit bug #163658</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/20732">#20732</a> + + </td> + </tr> + + <tr> + <td>Safari +</td> + <td><p>CSS <code class="highlighter-rouge">min-width</code> and <code class="highlighter-rouge">max-width</code> media features should not round fractional pixel</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=178261">WebKit bug #178261</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/25166">#25166</a> + + </td> + </tr> + + <tr> + <td>Safari (macOS) +</td> + <td><p><code class="highlighter-rouge">px</code>, <code class="highlighter-rouge">em</code>, and <code class="highlighter-rouge">rem</code> should all behave the same in media queries when page zoom is applied</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=156687">WebKit bug #156687</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/17403">#17403</a> + + </td> + </tr> + + <tr> + <td>Safari (macOS) +</td> + <td><p>Weird button behavior with some <code class="highlighter-rouge"><input type="number"></code> elements.</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=137269">WebKit bug #137269</a>, + + + <a href="https://openradar.appspot.com/18834768">Apple Safari Radar #18834768</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/8350">#8350</a>, + + + <a href="https://github.com/necolas/normalize.css/issues/283">Normalize #283</a>, + + + <a href="https://bugs.chromium.org/p/chromium/issues/detail?id=337668">Chromium issue #337668</a> + + </td> + </tr> + + <tr> + <td>Safari (macOS) +</td> + <td><p>Small font size when printing webpage with fixed-width <code class="highlighter-rouge">.container</code>.</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=138192">WebKit bug #138192</a>, + + + <a href="https://openradar.appspot.com/19435018">Apple Safari Radar #19435018</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/14868">#14868</a> + + </td> + </tr> + + <tr> + <td>Safari (iOS) +</td> + <td><p><code class="highlighter-rouge">transform: translate3d(0,0,0);</code> rendering bug.</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=138162">WebKit bug #138162</a>, + + + <a href="https://openradar.appspot.com/18804973">Apple Safari Radar #18804973</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/14603">#14603</a> + + </td> + </tr> + + <tr> + <td>Safari (iOS) +</td> + <td><p>Text input’s cursor doesn’t move while scrolling the page.</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=138201">WebKit bug #138201</a>, + + + <a href="https://openradar.appspot.com/18819624">Apple Safari Radar #18819624</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/14708">#14708</a> + + </td> + </tr> + + <tr> + <td>Safari (iOS) +</td> + <td><p>Can’t move cursor to start of text after entering long string of text into <code class="highlighter-rouge"><input type="text"></code></p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=148061">WebKit bug #148061</a>, + + + <a href="https://openradar.appspot.com/22299624">Apple Safari Radar #22299624</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/16988">#16988</a> + + </td> + </tr> + + <tr> + <td>Safari (iOS) +</td> + <td><p><code class="highlighter-rouge">display: block</code> causes text of temporal <code class="highlighter-rouge"><input></code>s to become vertically misaligned</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=139848">WebKit bug #139848</a>, + + + <a href="https://openradar.appspot.com/19434878">Apple Safari Radar #19434878</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/11266">#11266</a>, + + + <a href="https://github.com/twbs/bootstrap/issues/13098">#13098</a> + + </td> + </tr> + + <tr> + <td>Safari (iOS) +</td> + <td><p>Tapping on <code class="highlighter-rouge"><body></code> doesn’t fire <code class="highlighter-rouge">click</code> events</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=151933">WebKit bug #151933</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/16028">#16028</a> + + </td> + </tr> + + <tr> + <td>Safari (iOS) +</td> + <td><p><code class="highlighter-rouge">position:fixed</code> is incorrectly positioned when tab bar is visible on iPhone 6S+ Safari</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=153056">WebKit bug #153056</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/18859">#18859</a> + + </td> + </tr> + + <tr> + <td>Safari (iOS) +</td> + <td><p>Tapping into an <code class="highlighter-rouge"><input></code> within a <code class="highlighter-rouge">position:fixed</code> element scrolls to the top of the page</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=153224">WebKit bug #153224</a>, + + + <a href="https://openradar.appspot.com/24235301">Apple Safari Radar #24235301</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/17497">#17497</a> + + </td> + </tr> + + <tr> + <td>Safari (iOS) +</td> + <td><p><code class="highlighter-rouge"><body></code> with <code class="highlighter-rouge">overflow:hidden</code> CSS is scrollable on iOS</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=153852">WebKit bug #153852</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/14839">#14839</a> + + </td> + </tr> + + <tr> + <td>Safari (iOS) +</td> + <td><p>Scroll gesture in text field in <code class="highlighter-rouge">position:fixed</code> element sometimes scrolls <code class="highlighter-rouge"><body></code> instead of scrollable ancestor</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=153856">WebKit bug #153856</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/14839">#14839</a> + + </td> + </tr> + + <tr> + <td>Safari (iOS) +</td> + <td><p>Modal with <code class="highlighter-rouge">-webkit-overflow-scrolling: touch</code> doesn’t become scrollable after added text makes it taller</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=158342">WebKit bug #158342</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/17695">#17695</a> + + </td> + </tr> + + <tr> + <td>Safari (iOS) +</td> + <td><p>Don’t make <code class="highlighter-rouge">:hover</code> sticky on touch-friendly webpages</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=158517">WebKit bug #158517</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/12832">#12832</a> + + </td> + </tr> + + <tr> + <td>Safari (iOS) +</td> + <td><p>Element which is <code class="highlighter-rouge">position:fixed</code> disappears after opening a <code class="highlighter-rouge"><select></code> menu</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=162362">WebKit bug #162362</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/20759">#20759</a> + + </td> + </tr> + + <tr> + <td>Safari (iPad Pro) +</td> + <td><p>Rendering of descendants of <code class="highlighter-rouge">position: fixed</code> element gets clipped on iPad Pro in Landscape orientation</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=152637">WebKit bug #152637</a>, + + + <a href="https://openradar.appspot.com/24030853">Apple Safari Radar #24030853</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/18738">#18738</a> + + </td> + </tr> + + </tbody> +</table> + +<h1 id="most-wanted-features">Most wanted features</h1> + +<p>There are several features specified in Web standards which would allow us to make Bootstrap more robust, elegant, or performant, but aren’t yet implemented in certain browsers, thus preventing us from taking advantage of them.</p> + +<p>We publicly list these “most wanted†feature requests here, in the hopes of expediting the process of getting them implemented.</p> + +<table class="bd-browser-bugs table table-bordered table-hover"> + <thead> + <tr> + <th>Browser(s)</th> + <th>Summary of feature</th> + <th>Upstream issue(s)</th> + <th>Bootstrap issue(s)</th> + </tr> + </thead> + <tbody> + + <tr> + <td>Edge +</td> + <td><p>Focusable elements should fire focus event / receive :focus styling when they receive Narrator/accessibility focus</p> +</td> + <td> + <a href="https://microsoftaccessibility.uservoice.com/forums/307429-microsoft-accessibility-feedback/suggestions/16717318">Microsoft A11y UserVoice idea #16717318</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/20732">#20732</a> + + </td> + </tr> + + <tr> + <td>Edge +</td> + <td><p>Implement the <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/:dir"><code class="highlighter-rouge">:dir()</code> pseudo-class</a> from Selectors Level 4</p> +</td> + <td> + <a href="https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer/suggestions/12299532">Edge UserVoice idea #12299532</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/19984">#19984</a> + + </td> + </tr> + + <tr> + <td>Edge +</td> + <td><p>Implement the HTML5 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog"><code class="highlighter-rouge"><dialog></code> element</a></p> +</td> + <td> + <a href="https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer/suggestions/6508895">Edge UserVoice idea #6508895</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/20175">#20175</a> + + </td> + </tr> + + <tr> + <td>Edge +</td> + <td><p>Fire a <a href="https://developer.mozilla.org/en-US/docs/Web/Events/transitioncancel"><code class="highlighter-rouge">transitioncancel</code> event</a> when a CSS transition is canceled</p> +</td> + <td> + <a href="https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer/suggestions/15939898">Edge UserVoice idea #15939898</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/20618">#20618</a> + + </td> + </tr> + + <tr> + <td>Edge +</td> + <td><p>Implement the <a href="https://caniuse.com/#feat=css-nth-child-of"><code class="highlighter-rouge">of <selector-list></code> clause</a> of the <code class="highlighter-rouge">:nth-child()</code> pseudo-class</p> +</td> + <td> + <a href="https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer/suggestions/15944476">Edge UserVoice idea #15944476</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/20143">#20143</a> + + </td> + </tr> + + <tr> + <td>Firefox +</td> + <td><p>Implement the <a href="https://caniuse.com/#feat=css-nth-child-of"><code class="highlighter-rouge">of <selector-list></code> clause</a> of the <code class="highlighter-rouge">:nth-child()</code> pseudo-class</p> +</td> + <td> + <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=854148">Mozilla bug #854148</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/20143">#20143</a> + + </td> + </tr> + + <tr> + <td>Firefox +</td> + <td><p>Implement the HTML5 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog"><code class="highlighter-rouge"><dialog></code> element</a></p> +</td> + <td> + <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=840640">Mozilla bug #840640</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/20175">#20175</a> + + </td> + </tr> + + <tr> + <td>Firefox +</td> + <td><p>When virtual focus is on a button or link, fire actual focus on the element, too</p> +</td> + <td> + <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1000082">Mozilla bug #1000082</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/20732">#20732</a> + + </td> + </tr> + + <tr> + <td>Chrome +</td> + <td><p>Fire a <a href="https://developer.mozilla.org/en-US/docs/Web/Events/transitioncancel"><code class="highlighter-rouge">transitioncancel</code> event</a> when a CSS transition is canceled</p> +</td> + <td> + <a href="https://bugs.chromium.org/p/chromium/issues/detail?id=642487">Chromium issue #642487</a> + + </td> + <td> + <a href="https://bugs.chromium.org/p/chromium/issues/detail?id=437860">Chromium issue #437860</a> + + </td> + </tr> + + <tr> + <td>Chrome +</td> + <td><p>Implement the <a href="https://caniuse.com/#feat=css-nth-child-of"><code class="highlighter-rouge">of <selector-list></code> clause</a> of the <code class="highlighter-rouge">:nth-child()</code> pseudo-class</p> +</td> + <td> + <a href="https://bugs.chromium.org/p/chromium/issues/detail?id=304163">Chromium issue #304163</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/20143">#20143</a> + + </td> + </tr> + + <tr> + <td>Chrome +</td> + <td><p>Implement the <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/:dir"><code class="highlighter-rouge">:dir()</code> pseudo-class</a> from Selectors Level 4</p> +</td> + <td> + <a href="https://bugs.chromium.org/p/chromium/issues/detail?id=576815">Chromium issue #576815</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/19984">#19984</a> + + </td> + </tr> + + <tr> + <td>Safari +</td> + <td><p>Fire a <a href="https://developer.mozilla.org/en-US/docs/Web/Events/transitioncancel"><code class="highlighter-rouge">transitioncancel</code> event</a> when a CSS transition is canceled</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=161535">WebKit bug #161535</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/20618">#20618</a> + + </td> + </tr> + + <tr> + <td>Safari +</td> + <td><p>Implement the <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/:dir"><code class="highlighter-rouge">:dir()</code> pseudo-class</a> from Selectors Level 4</p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=64861">WebKit bug #64861</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/19984">#19984</a> + + </td> + </tr> + + <tr> + <td>Safari +</td> + <td><p>Implement the HTML5 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog"><code class="highlighter-rouge"><dialog></code> element</a></p> +</td> + <td> + <a href="https://bugs.webkit.org/show_bug.cgi?id=84635">WebKit bug #84635</a> + + </td> + <td> + <a href="https://github.com/twbs/bootstrap/issues/20175">#20175</a> + + </td> + </tr> + + </tbody> +</table> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/alerts/index.html b/docs/4.3/components/alerts/index.html new file mode 100644 index 0000000000..e55be9d7ca --- /dev/null +++ b/docs/4.3/components/alerts/index.html @@ -0,0 +1,735 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Provide contextual feedback messages for typical user actions with the handful of available and flexible alert messages."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Alerts · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/alerts/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Alerts"> +<meta name="twitter:description" content="Provide contextual feedback messages for typical user actions with the handful of available and flexible alert messages."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/alerts/"> +<meta property="og:title" content="Alerts"> +<meta property="og:description" content="Provide contextual feedback messages for typical user actions with the handful of available and flexible alert messages."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#examples">Examples</a> +<ul> +<li class="toc-entry toc-h3"><a href="#link-color">Link color</a></li> +<li class="toc-entry toc-h3"><a href="#additional-content">Additional content</a></li> +<li class="toc-entry toc-h3"><a href="#dismissing">Dismissing</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#javascript-behavior">JavaScript behavior</a> +<ul> +<li class="toc-entry toc-h3"><a href="#triggers">Triggers</a></li> +<li class="toc-entry toc-h3"><a href="#methods">Methods</a></li> +<li class="toc-entry toc-h3"><a href="#events">Events</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Alerts</h1> + <p class="bd-lead">Provide contextual feedback messages for typical user actions with the handful of available and flexible alert messages.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="examples">Examples</h2> + +<p>Alerts are available for any length of text, as well as an optional dismiss button. For proper styling, use one of the eight <strong>required</strong> contextual classes (e.g., <code class="highlighter-rouge">.alert-success</code>). For inline dismissal, use the <a href="#dismissing">alerts jQuery plugin</a>.</p> + +<div class="bd-example"> + +<div class="alert alert-primary" role="alert"> + A simple primary alert—check it out! +</div> +<div class="alert alert-secondary" role="alert"> + A simple secondary alert—check it out! +</div> +<div class="alert alert-success" role="alert"> + A simple success alert—check it out! +</div> +<div class="alert alert-danger" role="alert"> + A simple danger alert—check it out! +</div> +<div class="alert alert-warning" role="alert"> + A simple warning alert—check it out! +</div> +<div class="alert alert-info" role="alert"> + A simple info alert—check it out! +</div> +<div class="alert alert-light" role="alert"> + A simple light alert—check it out! +</div> +<div class="alert alert-dark" role="alert"> + A simple dark alert—check it out! +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-primary"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + A simple primary alert—check it out! +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-secondary"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + A simple secondary alert—check it out! +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-success"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + A simple success alert—check it out! +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-danger"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + A simple danger alert—check it out! +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-warning"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + A simple warning alert—check it out! +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-info"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + A simple info alert—check it out! +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-light"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + A simple light alert—check it out! +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-dark"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + A simple dark alert—check it out! +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-callout bd-callout-warning"> +<h5 id="conveying-meaning-to-assistive-technologies">Conveying meaning to assistive technologies</h5> + +<p>Using color to add meaning only provides a visual indication, which will not be conveyed to users of assistive technologies – such as screen readers. Ensure that information denoted by the color is either obvious from the content itself (e.g. the visible text), or is included through alternative means, such as additional text hidden with the <code class="highlighter-rouge">.sr-only</code> class.</p> +</div> + +<h3 id="link-color">Link color</h3> + +<p>Use the <code class="highlighter-rouge">.alert-link</code> utility class to quickly provide matching colored links within any alert.</p> + +<div class="bd-example"> + +<div class="alert alert-primary" role="alert"> + A simple primary alert with <a href="#" class="alert-link">an example link</a>. Give it a click if you like. +</div> +<div class="alert alert-secondary" role="alert"> + A simple secondary alert with <a href="#" class="alert-link">an example link</a>. Give it a click if you like. +</div> +<div class="alert alert-success" role="alert"> + A simple success alert with <a href="#" class="alert-link">an example link</a>. Give it a click if you like. +</div> +<div class="alert alert-danger" role="alert"> + A simple danger alert with <a href="#" class="alert-link">an example link</a>. Give it a click if you like. +</div> +<div class="alert alert-warning" role="alert"> + A simple warning alert with <a href="#" class="alert-link">an example link</a>. Give it a click if you like. +</div> +<div class="alert alert-info" role="alert"> + A simple info alert with <a href="#" class="alert-link">an example link</a>. Give it a click if you like. +</div> +<div class="alert alert-light" role="alert"> + A simple light alert with <a href="#" class="alert-link">an example link</a>. Give it a click if you like. +</div> +<div class="alert alert-dark" role="alert"> + A simple dark alert with <a href="#" class="alert-link">an example link</a>. Give it a click if you like. +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-primary"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + A simple primary alert with <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"alert-link"</span><span class="nt">></span>an example link<span class="nt"></a></span>. Give it a click if you like. +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-secondary"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + A simple secondary alert with <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"alert-link"</span><span class="nt">></span>an example link<span class="nt"></a></span>. Give it a click if you like. +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-success"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + A simple success alert with <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"alert-link"</span><span class="nt">></span>an example link<span class="nt"></a></span>. Give it a click if you like. +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-danger"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + A simple danger alert with <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"alert-link"</span><span class="nt">></span>an example link<span class="nt"></a></span>. Give it a click if you like. +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-warning"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + A simple warning alert with <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"alert-link"</span><span class="nt">></span>an example link<span class="nt"></a></span>. Give it a click if you like. +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-info"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + A simple info alert with <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"alert-link"</span><span class="nt">></span>an example link<span class="nt"></a></span>. Give it a click if you like. +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-light"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + A simple light alert with <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"alert-link"</span><span class="nt">></span>an example link<span class="nt"></a></span>. Give it a click if you like. +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-dark"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + A simple dark alert with <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"alert-link"</span><span class="nt">></span>an example link<span class="nt"></a></span>. Give it a click if you like. +<span class="nt"></div></span></code></pre></figure> + +<h3 id="additional-content">Additional content</h3> + +<p>Alerts can also contain additional HTML elements like headings, paragraphs and dividers.</p> + +<div class="bd-example"> +<div class="alert alert-success" role="alert"> + <h4 class="alert-heading">Well done!</h4> + <p>Aww yeah, you successfully read this important alert message. This example text is going to run a bit longer so that you can see how spacing within an alert works with this kind of content.</p> + <hr /> + <p class="mb-0">Whenever you need to, be sure to use margin utilities to keep things nice and tidy.</p> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-success"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + <span class="nt"><h4</span> <span class="na">class=</span><span class="s">"alert-heading"</span><span class="nt">></span>Well done!<span class="nt"></h4></span> + <span class="nt"><p></span>Aww yeah, you successfully read this important alert message. This example text is going to run a bit longer so that you can see how spacing within an alert works with this kind of content.<span class="nt"></p></span> + <span class="nt"><hr></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"mb-0"</span><span class="nt">></span>Whenever you need to, be sure to use margin utilities to keep things nice and tidy.<span class="nt"></p></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="dismissing">Dismissing</h3> + +<p>Using the alert JavaScript plugin, it’s possible to dismiss any alert inline. Here’s how:</p> + +<ul> + <li>Be sure you’ve loaded the alert plugin, or the compiled Bootstrap JavaScript.</li> + <li>If you’re building our JavaScript from source, it <a href="/docs/4.3/getting-started/javascript/#util">requires <code class="highlighter-rouge">util.js</code></a>. The compiled version includes this.</li> + <li>Add a dismiss button and the <code class="highlighter-rouge">.alert-dismissible</code> class, which adds extra padding to the right of the alert and positions the <code class="highlighter-rouge">.close</code> button.</li> + <li>On the dismiss button, add the <code class="highlighter-rouge">data-dismiss="alert"</code> attribute, which triggers the JavaScript functionality. Be sure to use the <code class="highlighter-rouge"><button></code> element with it for proper behavior across all devices.</li> + <li>To animate alerts when dismissing them, be sure to add the <code class="highlighter-rouge">.fade</code> and <code class="highlighter-rouge">.show</code> classes.</li> +</ul> + +<p>You can see this in action with a live demo:</p> + +<div class="bd-example"> +<div class="alert alert-warning alert-dismissible fade show" role="alert"> + <strong>Holy guacamole!</strong> You should check in on some of those fields below. + <button type="button" class="close" data-dismiss="alert" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"alert alert-warning alert-dismissible fade show"</span> <span class="na">role=</span><span class="s">"alert"</span><span class="nt">></span> + <span class="nt"><strong></span>Holy guacamole!<span class="nt"></strong></span> You should check in on some of those fields below. + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"close"</span> <span class="na">data-dismiss=</span><span class="s">"alert"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> + <span class="nt"></button></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="javascript-behavior">JavaScript behavior</h2> + +<h3 id="triggers">Triggers</h3> + +<p>Enable dismissal of an alert via JavaScript:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'.alert'</span><span class="p">).</span><span class="nx">alert</span><span class="p">()</span></code></pre></figure> + +<p>Or with <code class="highlighter-rouge">data</code> attributes on a button <strong>within the alert</strong>, as demonstrated above:</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"close"</span> <span class="na">data-dismiss=</span><span class="s">"alert"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> +<span class="nt"></button></span></code></pre></figure> + +<p>Note that closing an alert will remove it from the DOM.</p> + +<h3 id="methods">Methods</h3> + +<table> + <thead> + <tr> + <th>Method</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td><code class="highlighter-rouge">$().alert()</code></td> + <td>Makes an alert listen for click events on descendant elements which have the <code class="highlighter-rouge">data-dismiss="alert"</code> attribute. (Not necessary when using the data-api’s auto-initialization.)</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$().alert('close')</code></td> + <td>Closes an alert by removing it from the DOM. If the <code class="highlighter-rouge">.fade</code> and <code class="highlighter-rouge">.show</code> classes are present on the element, the alert will fade out before it is removed.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$().alert('dispose')</code></td> + <td>Destroys an element’s alert.</td> + </tr> + </tbody> +</table> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'.alert'</span><span class="p">).</span><span class="nx">alert</span><span class="p">(</span><span class="s1">'close'</span><span class="p">)</span></code></pre></figure> + +<h3 id="events">Events</h3> + +<p>Bootstrap’s alert plugin exposes a few events for hooking into alert functionality.</p> + +<table> + <thead> + <tr> + <th>Event</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td><code class="highlighter-rouge">close.bs.alert</code></td> + <td>This event fires immediately when the <code>close</code> instance method is called.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">closed.bs.alert</code></td> + <td>This event is fired when the alert has been closed (will wait for CSS transitions to complete).</td> + </tr> + </tbody> +</table> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myAlert'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'closed.bs.alert'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> + <span class="c1">// do something...</span> +<span class="p">})</span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/badge/index.html b/docs/4.3/components/badge/index.html new file mode 100644 index 0000000000..3e77d51a30 --- /dev/null +++ b/docs/4.3/components/badge/index.html @@ -0,0 +1,612 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Documentation and examples for badges, our small count and labeling component."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Badges · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/badge/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Badges"> +<meta name="twitter:description" content="Documentation and examples for badges, our small count and labeling component."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/badge/"> +<meta property="og:title" content="Badges"> +<meta property="og:description" content="Documentation and examples for badges, our small count and labeling component."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#example">Example</a></li> +<li class="toc-entry toc-h2"><a href="#contextual-variations">Contextual variations</a></li> +<li class="toc-entry toc-h2"><a href="#pill-badges">Pill badges</a></li> +<li class="toc-entry toc-h2"><a href="#links">Links</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Badges</h1> + <p class="bd-lead">Documentation and examples for badges, our small count and labeling component.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="example">Example</h2> + +<p>Badges scale to match the size of the immediate parent element by using relative font sizing and <code class="highlighter-rouge">em</code> units.</p> + +<div class="bd-example"> +<h1>Example heading <span class="badge badge-secondary">New</span></h1> +<h2>Example heading <span class="badge badge-secondary">New</span></h2> +<h3>Example heading <span class="badge badge-secondary">New</span></h3> +<h4>Example heading <span class="badge badge-secondary">New</span></h4> +<h5>Example heading <span class="badge badge-secondary">New</span></h5> +<h6>Example heading <span class="badge badge-secondary">New</span></h6> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><h1></span>Example heading <span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-secondary"</span><span class="nt">></span>New<span class="nt"></span></h1></span> +<span class="nt"><h2></span>Example heading <span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-secondary"</span><span class="nt">></span>New<span class="nt"></span></h2></span> +<span class="nt"><h3></span>Example heading <span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-secondary"</span><span class="nt">></span>New<span class="nt"></span></h3></span> +<span class="nt"><h4></span>Example heading <span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-secondary"</span><span class="nt">></span>New<span class="nt"></span></h4></span> +<span class="nt"><h5></span>Example heading <span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-secondary"</span><span class="nt">></span>New<span class="nt"></span></h5></span> +<span class="nt"><h6></span>Example heading <span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-secondary"</span><span class="nt">></span>New<span class="nt"></span></h6></span></code></pre></figure> + +<p>Badges can be used as part of links or buttons to provide a counter.</p> + +<div class="bd-example"> +<button type="button" class="btn btn-primary"> + Notifications <span class="badge badge-light">4</span> +</button> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span> + Notifications <span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-light"</span><span class="nt">></span>4<span class="nt"></span></span> +<span class="nt"></button></span></code></pre></figure> + +<p>Note that depending on how they are used, badges may be confusing for users of screen readers and similar assistive technologies. While the styling of badges provides a visual cue as to their purpose, these users will simply be presented with the content of the badge. Depending on the specific situation, these badges may seem like random additional words or numbers at the end of a sentence, link, or button.</p> + +<p>Unless the context is clear (as with the “Notifications†example, where it is understood that the “4†is the number of notifications), consider including additional context with a visually hidden piece of additional text.</p> + +<div class="bd-example"> +<button type="button" class="btn btn-primary"> + Profile <span class="badge badge-light">9</span> + <span class="sr-only">unread messages</span> +</button> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span> + Profile <span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-light"</span><span class="nt">></span>9<span class="nt"></span></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>unread messages<span class="nt"></span></span> +<span class="nt"></button></span></code></pre></figure> + +<h2 id="contextual-variations">Contextual variations</h2> + +<p>Add any of the below mentioned modifier classes to change the appearance of a badge.</p> + +<div class="bd-example"> + +<span class="badge badge-primary">Primary</span> +<span class="badge badge-secondary">Secondary</span> +<span class="badge badge-success">Success</span> +<span class="badge badge-danger">Danger</span> +<span class="badge badge-warning">Warning</span> +<span class="badge badge-info">Info</span> +<span class="badge badge-light">Light</span> +<span class="badge badge-dark">Dark</span> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-primary"</span><span class="nt">></span>Primary<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-secondary"</span><span class="nt">></span>Secondary<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-success"</span><span class="nt">></span>Success<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-danger"</span><span class="nt">></span>Danger<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-warning"</span><span class="nt">></span>Warning<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-info"</span><span class="nt">></span>Info<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-light"</span><span class="nt">></span>Light<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-dark"</span><span class="nt">></span>Dark<span class="nt"></span></span></code></pre></figure> + +<div class="bd-callout bd-callout-warning"> +<h5 id="conveying-meaning-to-assistive-technologies">Conveying meaning to assistive technologies</h5> + +<p>Using color to add meaning only provides a visual indication, which will not be conveyed to users of assistive technologies – such as screen readers. Ensure that information denoted by the color is either obvious from the content itself (e.g. the visible text), or is included through alternative means, such as additional text hidden with the <code class="highlighter-rouge">.sr-only</code> class.</p> +</div> + +<h2 id="pill-badges">Pill badges</h2> + +<p>Use the <code class="highlighter-rouge">.badge-pill</code> modifier class to make badges more rounded (with a larger <code class="highlighter-rouge">border-radius</code> and additional horizontal <code class="highlighter-rouge">padding</code>). Useful if you miss the badges from v3.</p> + +<div class="bd-example"> + +<span class="badge badge-pill badge-primary">Primary</span> +<span class="badge badge-pill badge-secondary">Secondary</span> +<span class="badge badge-pill badge-success">Success</span> +<span class="badge badge-pill badge-danger">Danger</span> +<span class="badge badge-pill badge-warning">Warning</span> +<span class="badge badge-pill badge-info">Info</span> +<span class="badge badge-pill badge-light">Light</span> +<span class="badge badge-pill badge-dark">Dark</span> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-pill badge-primary"</span><span class="nt">></span>Primary<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-pill badge-secondary"</span><span class="nt">></span>Secondary<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-pill badge-success"</span><span class="nt">></span>Success<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-pill badge-danger"</span><span class="nt">></span>Danger<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-pill badge-warning"</span><span class="nt">></span>Warning<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-pill badge-info"</span><span class="nt">></span>Info<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-pill badge-light"</span><span class="nt">></span>Light<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-pill badge-dark"</span><span class="nt">></span>Dark<span class="nt"></span></span></code></pre></figure> + +<h2 id="links">Links</h2> + +<p>Using the contextual <code class="highlighter-rouge">.badge-*</code> classes on an <code class="highlighter-rouge"><a></code> element quickly provide <em>actionable</em> badges with hover and focus states.</p> + +<div class="bd-example"> + +<a href="#" class="badge badge-primary">Primary</a> +<a href="#" class="badge badge-secondary">Secondary</a> +<a href="#" class="badge badge-success">Success</a> +<a href="#" class="badge badge-danger">Danger</a> +<a href="#" class="badge badge-warning">Warning</a> +<a href="#" class="badge badge-info">Info</a> +<a href="#" class="badge badge-light">Light</a> +<a href="#" class="badge badge-dark">Dark</a> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"badge badge-primary"</span><span class="nt">></span>Primary<span class="nt"></a></span> +<span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"badge badge-secondary"</span><span class="nt">></span>Secondary<span class="nt"></a></span> +<span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"badge badge-success"</span><span class="nt">></span>Success<span class="nt"></a></span> +<span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"badge badge-danger"</span><span class="nt">></span>Danger<span class="nt"></a></span> +<span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"badge badge-warning"</span><span class="nt">></span>Warning<span class="nt"></a></span> +<span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"badge badge-info"</span><span class="nt">></span>Info<span class="nt"></a></span> +<span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"badge badge-light"</span><span class="nt">></span>Light<span class="nt"></a></span> +<span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"badge badge-dark"</span><span class="nt">></span>Dark<span class="nt"></a></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/breadcrumb/index.html b/docs/4.3/components/breadcrumb/index.html new file mode 100644 index 0000000000..bc5e516329 --- /dev/null +++ b/docs/4.3/components/breadcrumb/index.html @@ -0,0 +1,547 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Indicate the current page’s location within a navigational hierarchy that automatically adds separators via CSS."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Breadcrumb · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/breadcrumb/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Breadcrumb"> +<meta name="twitter:description" content="Indicate the current page’s location within a navigational hierarchy that automatically adds separators via CSS."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/breadcrumb/"> +<meta property="og:title" content="Breadcrumb"> +<meta property="og:description" content="Indicate the current page’s location within a navigational hierarchy that automatically adds separators via CSS."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Breadcrumb</h1> + <p class="bd-lead">Indicate the current page’s location within a navigational hierarchy that automatically adds separators via CSS.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="example">Example</h2> + +<div class="bd-example"> +<nav aria-label="breadcrumb"> + <ol class="breadcrumb"> + <li class="breadcrumb-item active" aria-current="page">Home</li> + </ol> +</nav> + +<nav aria-label="breadcrumb"> + <ol class="breadcrumb"> + <li class="breadcrumb-item"><a href="#">Home</a></li> + <li class="breadcrumb-item active" aria-current="page">Library</li> + </ol> +</nav> + +<nav aria-label="breadcrumb"> + <ol class="breadcrumb"> + <li class="breadcrumb-item"><a href="#">Home</a></li> + <li class="breadcrumb-item"><a href="#">Library</a></li> + <li class="breadcrumb-item active" aria-current="page">Data</li> + </ol> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">aria-label=</span><span class="s">"breadcrumb"</span><span class="nt">></span> + <span class="nt"><ol</span> <span class="na">class=</span><span class="s">"breadcrumb"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"breadcrumb-item active"</span> <span class="na">aria-current=</span><span class="s">"page"</span><span class="nt">></span>Home<span class="nt"></li></span> + <span class="nt"></ol></span> +<span class="nt"></nav></span> + +<span class="nt"><nav</span> <span class="na">aria-label=</span><span class="s">"breadcrumb"</span><span class="nt">></span> + <span class="nt"><ol</span> <span class="na">class=</span><span class="s">"breadcrumb"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"breadcrumb-item"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Home<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"breadcrumb-item active"</span> <span class="na">aria-current=</span><span class="s">"page"</span><span class="nt">></span>Library<span class="nt"></li></span> + <span class="nt"></ol></span> +<span class="nt"></nav></span> + +<span class="nt"><nav</span> <span class="na">aria-label=</span><span class="s">"breadcrumb"</span><span class="nt">></span> + <span class="nt"><ol</span> <span class="na">class=</span><span class="s">"breadcrumb"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"breadcrumb-item"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Home<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"breadcrumb-item"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Library<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"breadcrumb-item active"</span> <span class="na">aria-current=</span><span class="s">"page"</span><span class="nt">></span>Data<span class="nt"></li></span> + <span class="nt"></ol></span> +<span class="nt"></nav></span></code></pre></figure> + +<h2 id="changing-the-separator">Changing the separator</h2> + +<p>Separators are automatically added in CSS through <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/::before"><code class="highlighter-rouge">::before</code></a> and <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/content"><code class="highlighter-rouge">content</code></a>. They can be changed by changing <code class="highlighter-rouge">$breadcrumb-divider</code>. The <a href="https://sass-lang.com/documentation/Sass/Script/Functions.html#quote-instance_method">quote</a> function is needed to generate the quotes around a string, so if you want <code class="highlighter-rouge">></code> as separator, you can use this:</p> + +<div class="language-scss highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$breadcrumb-divider</span><span class="p">:</span> <span class="nf">quote</span><span class="p">(</span><span class="s2">">"</span><span class="p">);</span> +</code></pre></div></div> + +<p>It’s also possible to use a <strong>base64 embedded SVG icon</strong>:</p> + +<div class="language-scss highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$breadcrumb-divider</span><span class="p">:</span> <span class="sx">url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI4IiBoZWlnaHQ9IjgiPjxwYXRoIGQ9Ik0yLjUgMEwxIDEuNSAzLjUgNCAxIDYuNSAyLjUgOGw0LTQtNC00eiIgZmlsbD0iY3VycmVudENvbG9yIi8+PC9zdmc+)</span><span class="p">;</span> +</code></pre></div></div> + +<p>The separator can be removed by setting <code class="highlighter-rouge">$breadcrumb-divider</code> to <code class="highlighter-rouge">none</code>:</p> + +<div class="language-scss highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$breadcrumb-divider</span><span class="p">:</span> <span class="nb">none</span><span class="p">;</span> +</code></pre></div></div> + +<h2 id="accessibility">Accessibility</h2> + +<p>Since breadcrumbs provide a navigation, it’s a good idea to add a meaningful label such as <code class="highlighter-rouge">aria-label="breadcrumb"</code> to describe the type of navigation provided in the <code class="highlighter-rouge"><nav></code> element, as well as applying an <code class="highlighter-rouge">aria-current="page"</code> to the last item of the set to indicate that it represents the current page.</p> + +<p>For more information, see the <a href="https://www.w3.org/TR/wai-aria-practices/#breadcrumb">WAI-ARIA Authoring Practices for the breadcrumb pattern</a>.</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/button-group/index.html b/docs/4.3/components/button-group/index.html new file mode 100644 index 0000000000..d5a11c7c4c --- /dev/null +++ b/docs/4.3/components/button-group/index.html @@ -0,0 +1,744 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Group a series of buttons together on a single line with the button group, and super-power them with JavaScript."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Button group · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/button-group/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Button group"> +<meta name="twitter:description" content="Group a series of buttons together on a single line with the button group, and super-power them with JavaScript."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/button-group/"> +<meta property="og:title" content="Button group"> +<meta property="og:description" content="Group a series of buttons together on a single line with the button group, and super-power them with JavaScript."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#basic-example">Basic example</a></li> +<li class="toc-entry toc-h2"><a href="#button-toolbar">Button toolbar</a></li> +<li class="toc-entry toc-h2"><a href="#sizing">Sizing</a></li> +<li class="toc-entry toc-h2"><a href="#nesting">Nesting</a></li> +<li class="toc-entry toc-h2"><a href="#vertical-variation">Vertical variation</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Button group</h1> + <p class="bd-lead">Group a series of buttons together on a single line with the button group, and super-power them with JavaScript.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="basic-example">Basic example</h2> + +<p>Wrap a series of buttons with <code class="highlighter-rouge">.btn</code> in <code class="highlighter-rouge">.btn-group</code>. Add on optional JavaScript radio and checkbox style behavior with <a href="/docs/4.3/components/buttons/#button-plugin">our buttons plugin</a>.</p> + +<div class="bd-example"> +<div class="btn-group" role="group" aria-label="Basic example"> + <button type="button" class="btn btn-secondary">Left</button> + <button type="button" class="btn btn-secondary">Middle</button> + <button type="button" class="btn btn-secondary">Right</button> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span> <span class="na">role=</span><span class="s">"group"</span> <span class="na">aria-label=</span><span class="s">"Basic example"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>Left<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>Middle<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>Right<span class="nt"></button></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-callout bd-callout-warning"> +<h5 id="ensure-correct-role-and-provide-a-label">Ensure correct <code class="highlighter-rouge">role</code> and provide a label</h5> + +<p>In order for assistive technologies (such as screen readers) to convey that a series of buttons is grouped, an appropriate <code class="highlighter-rouge">role</code> attribute needs to be provided. For button groups, this would be <code class="highlighter-rouge">role="group"</code>, while toolbars should have a <code class="highlighter-rouge">role="toolbar"</code>.</p> + +<p>In addition, groups and toolbars should be given an explicit label, as most assistive technologies will otherwise not announce them, despite the presence of the correct role attribute. In the examples provided here, we use <code class="highlighter-rouge">aria-label</code>, but alternatives such as <code class="highlighter-rouge">aria-labelledby</code> can also be used.</p> +</div> + +<h2 id="button-toolbar">Button toolbar</h2> + +<p>Combine sets of button groups into button toolbars for more complex components. Use utility classes as needed to space out groups, buttons, and more.</p> + +<div class="bd-example"> +<div class="btn-toolbar" role="toolbar" aria-label="Toolbar with button groups"> + <div class="btn-group mr-2" role="group" aria-label="First group"> + <button type="button" class="btn btn-secondary">1</button> + <button type="button" class="btn btn-secondary">2</button> + <button type="button" class="btn btn-secondary">3</button> + <button type="button" class="btn btn-secondary">4</button> + </div> + <div class="btn-group mr-2" role="group" aria-label="Second group"> + <button type="button" class="btn btn-secondary">5</button> + <button type="button" class="btn btn-secondary">6</button> + <button type="button" class="btn btn-secondary">7</button> + </div> + <div class="btn-group" role="group" aria-label="Third group"> + <button type="button" class="btn btn-secondary">8</button> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-toolbar"</span> <span class="na">role=</span><span class="s">"toolbar"</span> <span class="na">aria-label=</span><span class="s">"Toolbar with button groups"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group mr-2"</span> <span class="na">role=</span><span class="s">"group"</span> <span class="na">aria-label=</span><span class="s">"First group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>1<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>2<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>3<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>4<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group mr-2"</span> <span class="na">role=</span><span class="s">"group"</span> <span class="na">aria-label=</span><span class="s">"Second group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>5<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>6<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>7<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span> <span class="na">role=</span><span class="s">"group"</span> <span class="na">aria-label=</span><span class="s">"Third group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>8<span class="nt"></button></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Feel free to mix input groups with button groups in your toolbars. Similar to the example above, you’ll likely need some utilities though to space things properly.</p> + +<div class="bd-example"> +<div class="btn-toolbar mb-3" role="toolbar" aria-label="Toolbar with button groups"> + <div class="btn-group mr-2" role="group" aria-label="First group"> + <button type="button" class="btn btn-secondary">1</button> + <button type="button" class="btn btn-secondary">2</button> + <button type="button" class="btn btn-secondary">3</button> + <button type="button" class="btn btn-secondary">4</button> + </div> + <div class="input-group"> + <div class="input-group-prepend"> + <div class="input-group-text" id="btnGroupAddon">@</div> + </div> + <input type="text" class="form-control" placeholder="Input group example" aria-label="Input group example" aria-describedby="btnGroupAddon" /> + </div> +</div> + +<div class="btn-toolbar justify-content-between" role="toolbar" aria-label="Toolbar with button groups"> + <div class="btn-group" role="group" aria-label="First group"> + <button type="button" class="btn btn-secondary">1</button> + <button type="button" class="btn btn-secondary">2</button> + <button type="button" class="btn btn-secondary">3</button> + <button type="button" class="btn btn-secondary">4</button> + </div> + <div class="input-group"> + <div class="input-group-prepend"> + <div class="input-group-text" id="btnGroupAddon2">@</div> + </div> + <input type="text" class="form-control" placeholder="Input group example" aria-label="Input group example" aria-describedby="btnGroupAddon2" /> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-toolbar mb-3"</span> <span class="na">role=</span><span class="s">"toolbar"</span> <span class="na">aria-label=</span><span class="s">"Toolbar with button groups"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group mr-2"</span> <span class="na">role=</span><span class="s">"group"</span> <span class="na">aria-label=</span><span class="s">"First group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>1<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>2<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>3<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>4<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">id=</span><span class="s">"btnGroupAddon"</span><span class="nt">></span>@<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">"Input group example"</span> <span class="na">aria-label=</span><span class="s">"Input group example"</span> <span class="na">aria-describedby=</span><span class="s">"btnGroupAddon"</span><span class="nt">></span> + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-toolbar justify-content-between"</span> <span class="na">role=</span><span class="s">"toolbar"</span> <span class="na">aria-label=</span><span class="s">"Toolbar with button groups"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span> <span class="na">role=</span><span class="s">"group"</span> <span class="na">aria-label=</span><span class="s">"First group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>1<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>2<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>3<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>4<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">id=</span><span class="s">"btnGroupAddon2"</span><span class="nt">></span>@<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">"Input group example"</span> <span class="na">aria-label=</span><span class="s">"Input group example"</span> <span class="na">aria-describedby=</span><span class="s">"btnGroupAddon2"</span><span class="nt">></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="sizing">Sizing</h2> + +<p>Instead of applying button sizing classes to every button in a group, just add <code class="highlighter-rouge">.btn-group-*</code> to each <code class="highlighter-rouge">.btn-group</code>, including each one when nesting multiple groups.</p> + +<div class="bd-example"> + <div class="btn-group btn-group-lg" role="group" aria-label="Large button group"> + <button type="button" class="btn btn-secondary">Left</button> + <button type="button" class="btn btn-secondary">Middle</button> + <button type="button" class="btn btn-secondary">Right</button> + </div> + <br /> + <div class="btn-group" role="group" aria-label="Default button group"> + <button type="button" class="btn btn-secondary">Left</button> + <button type="button" class="btn btn-secondary">Middle</button> + <button type="button" class="btn btn-secondary">Right</button> + </div> + <br /> + <div class="btn-group btn-group-sm" role="group" aria-label="Small button group"> + <button type="button" class="btn btn-secondary">Left</button> + <button type="button" class="btn btn-secondary">Middle</button> + <button type="button" class="btn btn-secondary">Right</button> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group btn-group-lg"</span> <span class="na">role=</span><span class="s">"group"</span> <span class="na">aria-label=</span><span class="s">"..."</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span> <span class="na">role=</span><span class="s">"group"</span> <span class="na">aria-label=</span><span class="s">"..."</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group btn-group-sm"</span> <span class="na">role=</span><span class="s">"group"</span> <span class="na">aria-label=</span><span class="s">"..."</span><span class="nt">></span>...<span class="nt"></div></span></code></pre></figure> + +<h2 id="nesting">Nesting</h2> + +<p>Place a <code class="highlighter-rouge">.btn-group</code> within another <code class="highlighter-rouge">.btn-group</code> when you want dropdown menus mixed with a series of buttons.</p> + +<div class="bd-example"> +<div class="btn-group" role="group" aria-label="Button group with nested dropdown"> + <button type="button" class="btn btn-secondary">1</button> + <button type="button" class="btn btn-secondary">2</button> + + <div class="btn-group" role="group"> + <button id="btnGroupDrop1" type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Dropdown + </button> + <div class="dropdown-menu" aria-labelledby="btnGroupDrop1"> + <a class="dropdown-item" href="#">Dropdown link</a> + <a class="dropdown-item" href="#">Dropdown link</a> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span> <span class="na">role=</span><span class="s">"group"</span> <span class="na">aria-label=</span><span class="s">"Button group with nested dropdown"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>1<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>2<span class="nt"></button></span> + + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span> <span class="na">role=</span><span class="s">"group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">id=</span><span class="s">"btnGroupDrop1"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary dropdown-toggle"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + Dropdown + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span> <span class="na">aria-labelledby=</span><span class="s">"btnGroupDrop1"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Dropdown link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Dropdown link<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="vertical-variation">Vertical variation</h2> + +<p>Make a set of buttons appear vertically stacked rather than horizontally. <strong>Split button dropdowns are not supported here.</strong></p> + +<div class="bd-example"> + <div class="btn-group-vertical" role="group" aria-label="Vertical button group"> + <button type="button" class="btn btn-secondary">Button</button> + <button type="button" class="btn btn-secondary">Button</button> + <button type="button" class="btn btn-secondary">Button</button> + <button type="button" class="btn btn-secondary">Button</button> + <button type="button" class="btn btn-secondary">Button</button> + <button type="button" class="btn btn-secondary">Button</button> + </div> +</div> + +<div class="bd-example"> + <div class="btn-group-vertical" role="group" aria-label="Vertical button group"> + <button type="button" class="btn btn-secondary">Button</button> + <button type="button" class="btn btn-secondary">Button</button> + <div class="btn-group" role="group"> + <button id="btnGroupVerticalDrop1" type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Dropdown + </button> + <div class="dropdown-menu" aria-labelledby="btnGroupVerticalDrop1"> + <a class="dropdown-item" href="#">Dropdown link</a> + <a class="dropdown-item" href="#">Dropdown link</a> + </div> + </div> + <button type="button" class="btn btn-secondary">Button</button> + <button type="button" class="btn btn-secondary">Button</button> + <div class="btn-group" role="group"> + <button id="btnGroupVerticalDrop2" type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Dropdown + </button> + <div class="dropdown-menu" aria-labelledby="btnGroupVerticalDrop2"> + <a class="dropdown-item" href="#">Dropdown link</a> + <a class="dropdown-item" href="#">Dropdown link</a> + </div> + </div> + <div class="btn-group" role="group"> + <button id="btnGroupVerticalDrop3" type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Dropdown + </button> + <div class="dropdown-menu" aria-labelledby="btnGroupVerticalDrop3"> + <a class="dropdown-item" href="#">Dropdown link</a> + <a class="dropdown-item" href="#">Dropdown link</a> + </div> + </div> + <div class="btn-group" role="group"> + <button id="btnGroupVerticalDrop4" type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Dropdown + </button> + <div class="dropdown-menu" aria-labelledby="btnGroupVerticalDrop4"> + <a class="dropdown-item" href="#">Dropdown link</a> + <a class="dropdown-item" href="#">Dropdown link</a> + </div> + </div> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group-vertical"</span><span class="nt">></span> + ... +<span class="nt"></div></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/buttons/index.html b/docs/4.3/components/buttons/index.html new file mode 100644 index 0000000000..63bb593015 --- /dev/null +++ b/docs/4.3/components/buttons/index.html @@ -0,0 +1,728 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Use Bootstrap’s custom button styles for actions in forms, dialogs, and more with support for multiple sizes, states, and more."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Buttons · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/buttons/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Buttons"> +<meta name="twitter:description" content="Use Bootstrap’s custom button styles for actions in forms, dialogs, and more with support for multiple sizes, states, and more."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/buttons/"> +<meta property="og:title" content="Buttons"> +<meta property="og:description" content="Use Bootstrap’s custom button styles for actions in forms, dialogs, and more with support for multiple sizes, states, and more."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#examples">Examples</a></li> +<li class="toc-entry toc-h2"><a href="#button-tags">Button tags</a></li> +<li class="toc-entry toc-h2"><a href="#outline-buttons">Outline buttons</a></li> +<li class="toc-entry toc-h2"><a href="#sizes">Sizes</a></li> +<li class="toc-entry toc-h2"><a href="#active-state">Active state</a></li> +<li class="toc-entry toc-h2"><a href="#disabled-state">Disabled state</a></li> +<li class="toc-entry toc-h2"><a href="#button-plugin">Button plugin</a> +<ul> +<li class="toc-entry toc-h3"><a href="#toggle-states">Toggle states</a></li> +<li class="toc-entry toc-h3"><a href="#checkbox-and-radio-buttons">Checkbox and radio buttons</a></li> +<li class="toc-entry toc-h3"><a href="#methods">Methods</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Buttons</h1> + <p class="bd-lead">Use Bootstrap’s custom button styles for actions in forms, dialogs, and more with support for multiple sizes, states, and more.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="examples">Examples</h2> + +<p>Bootstrap includes several predefined button styles, each serving its own semantic purpose, with a few extras thrown in for more control.</p> + +<div class="bd-example"> + +<button type="button" class="btn btn-primary">Primary</button> +<button type="button" class="btn btn-secondary">Secondary</button> +<button type="button" class="btn btn-success">Success</button> +<button type="button" class="btn btn-danger">Danger</button> +<button type="button" class="btn btn-warning">Warning</button> +<button type="button" class="btn btn-info">Info</button> +<button type="button" class="btn btn-light">Light</button> +<button type="button" class="btn btn-dark">Dark</button> + +<button type="button" class="btn btn-link">Link</button> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Primary<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>Secondary<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-success"</span><span class="nt">></span>Success<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-danger"</span><span class="nt">></span>Danger<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-warning"</span><span class="nt">></span>Warning<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-info"</span><span class="nt">></span>Info<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-light"</span><span class="nt">></span>Light<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-dark"</span><span class="nt">></span>Dark<span class="nt"></button></span> + +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-link"</span><span class="nt">></span>Link<span class="nt"></button></span></code></pre></figure> + +<div class="bd-callout bd-callout-warning"> +<h5 id="conveying-meaning-to-assistive-technologies">Conveying meaning to assistive technologies</h5> + +<p>Using color to add meaning only provides a visual indication, which will not be conveyed to users of assistive technologies – such as screen readers. Ensure that information denoted by the color is either obvious from the content itself (e.g. the visible text), or is included through alternative means, such as additional text hidden with the <code class="highlighter-rouge">.sr-only</code> class.</p> +</div> + +<h2 id="button-tags">Button tags</h2> + +<p>The <code class="highlighter-rouge">.btn</code> classes are designed to be used with the <code class="highlighter-rouge"><button></code> element. However, you can also use these classes on <code class="highlighter-rouge"><a></code> or <code class="highlighter-rouge"><input></code> elements (though some browsers may apply a slightly different rendering).</p> + +<p>When using button classes on <code class="highlighter-rouge"><a></code> elements that are used to trigger in-page functionality (like collapsing content), rather than linking to new pages or sections within the current page, these links should be given a <code class="highlighter-rouge">role="button"</code> to appropriately convey their purpose to assistive technologies such as screen readers.</p> + +<div class="bd-example"> +<a class="btn btn-primary" href="#" role="button">Link</a> +<button class="btn btn-primary" type="submit">Button</button> +<input class="btn btn-primary" type="button" value="Input" /> +<input class="btn btn-primary" type="submit" value="Submit" /> +<input class="btn btn-primary" type="reset" value="Reset" /> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><a</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">role=</span><span class="s">"button"</span><span class="nt">></span>Link<span class="nt"></a></span> +<span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">type=</span><span class="s">"submit"</span><span class="nt">></span>Button<span class="nt"></button></span> +<span class="nt"><input</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">value=</span><span class="s">"Input"</span><span class="nt">></span> +<span class="nt"><input</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">type=</span><span class="s">"submit"</span> <span class="na">value=</span><span class="s">"Submit"</span><span class="nt">></span> +<span class="nt"><input</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">type=</span><span class="s">"reset"</span> <span class="na">value=</span><span class="s">"Reset"</span><span class="nt">></span></code></pre></figure> + +<h2 id="outline-buttons">Outline buttons</h2> + +<p>In need of a button, but not the hefty background colors they bring? Replace the default modifier classes with the <code class="highlighter-rouge">.btn-outline-*</code> ones to remove all background images and colors on any button.</p> + +<div class="bd-example"> + +<button type="button" class="btn btn-outline-primary">Primary</button> +<button type="button" class="btn btn-outline-secondary">Secondary</button> +<button type="button" class="btn btn-outline-success">Success</button> +<button type="button" class="btn btn-outline-danger">Danger</button> +<button type="button" class="btn btn-outline-warning">Warning</button> +<button type="button" class="btn btn-outline-info">Info</button> +<button type="button" class="btn btn-outline-light">Light</button> +<button type="button" class="btn btn-outline-dark">Dark</button> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-outline-primary"</span><span class="nt">></span>Primary<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary"</span><span class="nt">></span>Secondary<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-outline-success"</span><span class="nt">></span>Success<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-outline-danger"</span><span class="nt">></span>Danger<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-outline-warning"</span><span class="nt">></span>Warning<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-outline-info"</span><span class="nt">></span>Info<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-outline-light"</span><span class="nt">></span>Light<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-outline-dark"</span><span class="nt">></span>Dark<span class="nt"></button></span></code></pre></figure> + +<h2 id="sizes">Sizes</h2> + +<p>Fancy larger or smaller buttons? Add <code class="highlighter-rouge">.btn-lg</code> or <code class="highlighter-rouge">.btn-sm</code> for additional sizes.</p> + +<div class="bd-example"> +<button type="button" class="btn btn-primary btn-lg">Large button</button> +<button type="button" class="btn btn-secondary btn-lg">Large button</button> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary btn-lg"</span><span class="nt">></span>Large button<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary btn-lg"</span><span class="nt">></span>Large button<span class="nt"></button></span></code></pre></figure> + +<div class="bd-example"> +<button type="button" class="btn btn-primary btn-sm">Small button</button> +<button type="button" class="btn btn-secondary btn-sm">Small button</button> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary btn-sm"</span><span class="nt">></span>Small button<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary btn-sm"</span><span class="nt">></span>Small button<span class="nt"></button></span></code></pre></figure> + +<p>Create block level buttons—those that span the full width of a parent—by adding <code class="highlighter-rouge">.btn-block</code>.</p> + +<div class="bd-example"> +<button type="button" class="btn btn-primary btn-lg btn-block">Block level button</button> +<button type="button" class="btn btn-secondary btn-lg btn-block">Block level button</button> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary btn-lg btn-block"</span><span class="nt">></span>Block level button<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary btn-lg btn-block"</span><span class="nt">></span>Block level button<span class="nt"></button></span></code></pre></figure> + +<h2 id="active-state">Active state</h2> + +<p>Buttons will appear pressed (with a darker background, darker border, and inset shadow) when active. <strong>There’s no need to add a class to <code class="highlighter-rouge"><button></code>s as they use a pseudo-class</strong>. However, you can still force the same active appearance with <code class="highlighter-rouge">.active</code> (and include the <code>aria-pressed="true"</code> attribute) should you need to replicate the state programmatically.</p> + +<div class="bd-example"> +<a href="#" class="btn btn-primary btn-lg active" role="button" aria-pressed="true">Primary link</a> +<a href="#" class="btn btn-secondary btn-lg active" role="button" aria-pressed="true">Link</a> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary btn-lg active"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">aria-pressed=</span><span class="s">"true"</span><span class="nt">></span>Primary link<span class="nt"></a></span> +<span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-secondary btn-lg active"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">aria-pressed=</span><span class="s">"true"</span><span class="nt">></span>Link<span class="nt"></a></span></code></pre></figure> + +<h2 id="disabled-state">Disabled state</h2> + +<p>Make buttons look inactive by adding the <code class="highlighter-rouge">disabled</code> boolean attribute to any <code class="highlighter-rouge"><button></code> element.</p> + +<div class="bd-example"> +<button type="button" class="btn btn-lg btn-primary" disabled="">Primary button</button> +<button type="button" class="btn btn-secondary btn-lg" disabled="">Button</button> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-lg btn-primary"</span> <span class="na">disabled</span><span class="nt">></span>Primary button<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary btn-lg"</span> <span class="na">disabled</span><span class="nt">></span>Button<span class="nt"></button></span></code></pre></figure> + +<p>Disabled buttons using the <code class="highlighter-rouge"><a></code> element behave a bit different:</p> + +<ul> + <li><code class="highlighter-rouge"><a></code>s don’t support the <code class="highlighter-rouge">disabled</code> attribute, so you must add the <code class="highlighter-rouge">.disabled</code> class to make it visually appear disabled.</li> + <li>Some future-friendly styles are included to disable all <code class="highlighter-rouge">pointer-events</code> on anchor buttons. In browsers which support that property, you won’t see the disabled cursor at all.</li> + <li>Disabled buttons should include the <code class="highlighter-rouge">aria-disabled="true"</code> attribute to indicate the state of the element to assistive technologies.</li> +</ul> + +<div class="bd-example"> +<a href="#" class="btn btn-primary btn-lg disabled" tabindex="-1" role="button" aria-disabled="true">Primary link</a> +<a href="#" class="btn btn-secondary btn-lg disabled" tabindex="-1" role="button" aria-disabled="true">Link</a> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary btn-lg disabled"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Primary link<span class="nt"></a></span> +<span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-secondary btn-lg disabled"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Link<span class="nt"></a></span></code></pre></figure> + +<div class="bd-callout bd-callout-warning"> +<h5 id="link-functionality-caveat">Link functionality caveat</h5> + +<p>The <code class="highlighter-rouge">.disabled</code> class uses <code class="highlighter-rouge">pointer-events: none</code> to try to disable the link functionality of <code class="highlighter-rouge"><a></code>s, but that CSS property is not yet standardized. In addition, even in browsers that do support <code class="highlighter-rouge">pointer-events: none</code>, keyboard navigation remains unaffected, meaning that sighted keyboard users and users of assistive technologies will still be able to activate these links. So to be safe, add a <code class="highlighter-rouge">tabindex="-1"</code> attribute on these links (to prevent them from receiving keyboard focus) and use custom JavaScript to disable their functionality.</p> +</div> + +<h2 id="button-plugin">Button plugin</h2> + +<p>Do more with buttons. Control button states or create groups of buttons for more components like toolbars.</p> + +<h3 id="toggle-states">Toggle states</h3> + +<p>Add <code class="highlighter-rouge">data-toggle="button"</code> to toggle a button’s <code class="highlighter-rouge">active</code> state. If you’re pre-toggling a button, you must manually add the <code class="highlighter-rouge">.active</code> class <strong>and</strong> <code class="highlighter-rouge">aria-pressed="true"</code> to the <code class="highlighter-rouge"><button></code>.</p> + +<div class="bd-example"> +<button type="button" class="btn btn-primary" data-toggle="button" aria-pressed="false" autocomplete="off"> + Single toggle +</button> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">data-toggle=</span><span class="s">"button"</span> <span class="na">aria-pressed=</span><span class="s">"false"</span> <span class="na">autocomplete=</span><span class="s">"off"</span><span class="nt">></span> + Single toggle +<span class="nt"></button></span></code></pre></figure> + +<h3 id="checkbox-and-radio-buttons">Checkbox and radio buttons</h3> + +<p>Bootstrap’s <code class="highlighter-rouge">.button</code> styles can be applied to other elements, such as <code class="highlighter-rouge"><label></code>s, to provide checkbox or radio style button toggling. Add <code class="highlighter-rouge">data-toggle="buttons"</code> to a <code class="highlighter-rouge">.btn-group</code> containing those modified buttons to enable their toggling behavior via JavaScript and add <code class="highlighter-rouge">.btn-group-toggle</code> to style the <code class="highlighter-rouge"><input></code>s within your buttons. <strong>Note that you can create single input-powered buttons or groups of them.</strong></p> + +<p>The checked state for these buttons is <strong>only updated via <code class="highlighter-rouge">click</code> event</strong> on the button. If you use another method to update the input—e.g., with <code class="highlighter-rouge"><input type="reset"></code> or by manually applying the input’s <code class="highlighter-rouge">checked</code> property—you’ll need to toggle <code class="highlighter-rouge">.active</code> on the <code class="highlighter-rouge"><label></code> manually.</p> + +<p>Note that pre-checked buttons require you to manually add the <code class="highlighter-rouge">.active</code> class to the input’s <code class="highlighter-rouge"><label></code>.</p> + +<div class="bd-example"> +<div class="btn-group-toggle" data-toggle="buttons"> + <label class="btn btn-secondary active"> + <input type="checkbox" checked="" autocomplete="off" /> Checked + </label> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group-toggle"</span> <span class="na">data-toggle=</span><span class="s">"buttons"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"btn btn-secondary active"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">checked</span> <span class="na">autocomplete=</span><span class="s">"off"</span><span class="nt">></span> Checked + <span class="nt"></label></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<div class="btn-group btn-group-toggle" data-toggle="buttons"> + <label class="btn btn-secondary active"> + <input type="radio" name="options" id="option1" autocomplete="off" checked="" /> Active + </label> + <label class="btn btn-secondary"> + <input type="radio" name="options" id="option2" autocomplete="off" /> Radio + </label> + <label class="btn btn-secondary"> + <input type="radio" name="options" id="option3" autocomplete="off" /> Radio + </label> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group btn-group-toggle"</span> <span class="na">data-toggle=</span><span class="s">"buttons"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"btn btn-secondary active"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">name=</span><span class="s">"options"</span> <span class="na">id=</span><span class="s">"option1"</span> <span class="na">autocomplete=</span><span class="s">"off"</span> <span class="na">checked</span><span class="nt">></span> Active + <span class="nt"></label></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">name=</span><span class="s">"options"</span> <span class="na">id=</span><span class="s">"option2"</span> <span class="na">autocomplete=</span><span class="s">"off"</span><span class="nt">></span> Radio + <span class="nt"></label></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">name=</span><span class="s">"options"</span> <span class="na">id=</span><span class="s">"option3"</span> <span class="na">autocomplete=</span><span class="s">"off"</span><span class="nt">></span> Radio + <span class="nt"></label></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="methods">Methods</h3> + +<table> + <thead> + <tr> + <th>Method</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td><code class="highlighter-rouge">$().button('toggle')</code></td> + <td>Toggles push state. Gives the button the appearance that it has been activated.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$().button('dispose')</code></td> + <td>Destroys an element’s button.</td> + </tr> + </tbody> +</table> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/card/index.html b/docs/4.3/components/card/index.html new file mode 100644 index 0000000000..780ed63e36 --- /dev/null +++ b/docs/4.3/components/card/index.html @@ -0,0 +1,1846 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Bootstrap’s cards provide a flexible and extensible content container with multiple variants and options."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Cards · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/card/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Cards"> +<meta name="twitter:description" content="Bootstrap’s cards provide a flexible and extensible content container with multiple variants and options."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/card/"> +<meta property="og:title" content="Cards"> +<meta property="og:description" content="Bootstrap’s cards provide a flexible and extensible content container with multiple variants and options."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#about">About</a></li> +<li class="toc-entry toc-h2"><a href="#example">Example</a></li> +<li class="toc-entry toc-h2"><a href="#content-types">Content types</a> +<ul> +<li class="toc-entry toc-h3"><a href="#body">Body</a></li> +<li class="toc-entry toc-h3"><a href="#titles-text-and-links">Titles, text, and links</a></li> +<li class="toc-entry toc-h3"><a href="#images">Images</a></li> +<li class="toc-entry toc-h3"><a href="#list-groups">List groups</a></li> +<li class="toc-entry toc-h3"><a href="#kitchen-sink">Kitchen sink</a></li> +<li class="toc-entry toc-h3"><a href="#header-and-footer">Header and footer</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#sizing">Sizing</a> +<ul> +<li class="toc-entry toc-h3"><a href="#using-grid-markup">Using grid markup</a></li> +<li class="toc-entry toc-h3"><a href="#using-utilities">Using utilities</a></li> +<li class="toc-entry toc-h3"><a href="#using-custom-css">Using custom CSS</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#text-alignment">Text alignment</a></li> +<li class="toc-entry toc-h2"><a href="#navigation">Navigation</a></li> +<li class="toc-entry toc-h2"><a href="#images-1">Images</a> +<ul> +<li class="toc-entry toc-h3"><a href="#image-caps">Image caps</a></li> +<li class="toc-entry toc-h3"><a href="#image-overlays">Image overlays</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#horizontal">Horizontal</a></li> +<li class="toc-entry toc-h2"><a href="#card-styles">Card styles</a> +<ul> +<li class="toc-entry toc-h3"><a href="#background-and-color">Background and color</a></li> +<li class="toc-entry toc-h3"><a href="#border">Border</a></li> +<li class="toc-entry toc-h3"><a href="#mixins-utilities">Mixins utilities</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#card-layout">Card layout</a> +<ul> +<li class="toc-entry toc-h3"><a href="#card-groups">Card groups</a></li> +<li class="toc-entry toc-h3"><a href="#card-decks">Card decks</a></li> +<li class="toc-entry toc-h3"><a href="#card-columns">Card columns</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Cards</h1> + <p class="bd-lead">Bootstrap’s cards provide a flexible and extensible content container with multiple variants and options.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="about">About</h2> + +<p>A <strong>card</strong> is a flexible and extensible content container. It includes options for headers and footers, a wide variety of content, contextual background colors, and powerful display options. If you’re familiar with Bootstrap 3, cards replace our old panels, wells, and thumbnails. Similar functionality to those components is available as modifier classes for cards.</p> + +<h2 id="example">Example</h2> + +<p>Cards are built with as little markup and styles as possible, but still manage to deliver a ton of control and customization. Built with flexbox, they offer easy alignment and mix well with other Bootstrap components. They have no <code class="highlighter-rouge">margin</code> by default, so use <a href="/docs/4.3/utilities/spacing/">spacing utilities</a> as needed.</p> + +<p>Below is an example of a basic card with mixed content and a fixed width. Cards have no fixed width to start, so they’ll naturally fill the full width of its parent element. This is easily customized with our various <a href="#sizing">sizing options</a>.</p> + +<div class="bd-example"> +<div class="card" style="width: 18rem;"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + <a href="#" class="btn btn-primary">Go somewhere</a> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span> <span class="na">style=</span><span class="s">"width: 18rem;"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Go somewhere<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="content-types">Content types</h2> + +<p>Cards support a wide variety of content, including images, text, list groups, links, and more. Below are examples of what’s supported.</p> + +<h3 id="body">Body</h3> + +<p>The building block of a card is the <code class="highlighter-rouge">.card-body</code>. Use it whenever you need a padded section within a card.</p> + +<div class="bd-example"> +<div class="card"> + <div class="card-body"> + This is some text within a card body. + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + This is some text within a card body. + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="titles-text-and-links">Titles, text, and links</h3> + +<p>Card titles are used by adding <code class="highlighter-rouge">.card-title</code> to a <code class="highlighter-rouge"><h*></code> tag. In the same way, links are added and placed next to each other by adding <code class="highlighter-rouge">.card-link</code> to an <code class="highlighter-rouge"><a></code> tag.</p> + +<p>Subtitles are used by adding a <code class="highlighter-rouge">.card-subtitle</code> to a <code class="highlighter-rouge"><h*></code> tag. If the <code class="highlighter-rouge">.card-title</code> and the <code class="highlighter-rouge">.card-subtitle</code> items are placed in a <code class="highlighter-rouge">.card-body</code> item, the card title and subtitle are aligned nicely.</p> + +<div class="bd-example"> +<div class="card" style="width: 18rem;"> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <h6 class="card-subtitle mb-2 text-muted">Card subtitle</h6> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + <a href="#" class="card-link">Card link</a> + <a href="#" class="card-link">Another link</a> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span> <span class="na">style=</span><span class="s">"width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><h6</span> <span class="na">class=</span><span class="s">"card-subtitle mb-2 text-muted"</span><span class="nt">></span>Card subtitle<span class="nt"></h6></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"card-link"</span><span class="nt">></span>Card link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"card-link"</span><span class="nt">></span>Another link<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="images">Images</h3> + +<p><code class="highlighter-rouge">.card-img-top</code> places an image to the top of the card. With <code class="highlighter-rouge">.card-text</code>, text can be added to the card. Text within <code class="highlighter-rouge">.card-text</code> can also be styled with the standard HTML tags.</p> + +<div class="bd-example"> +<div class="card" style="width: 18rem;"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span> <span class="na">style=</span><span class="s">"width: 18rem;"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="list-groups">List groups</h3> + +<p>Create lists of content in a card with a flush list group.</p> + +<div class="bd-example"> +<div class="card" style="width: 18rem;"> + <ul class="list-group list-group-flush"> + <li class="list-group-item">Cras justo odio</li> + <li class="list-group-item">Dapibus ac facilisis in</li> + <li class="list-group-item">Vestibulum at eros</li> + </ul> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span> <span class="na">style=</span><span class="s">"width: 18rem;"</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-group list-group-flush"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Cras justo odio<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Dapibus ac facilisis in<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Vestibulum at eros<span class="nt"></li></span> + <span class="nt"></ul></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<div class="card" style="width: 18rem;"> + <div class="card-header"> + Featured + </div> + <ul class="list-group list-group-flush"> + <li class="list-group-item">Cras justo odio</li> + <li class="list-group-item">Dapibus ac facilisis in</li> + <li class="list-group-item">Vestibulum at eros</li> + </ul> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span> <span class="na">style=</span><span class="s">"width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span> + Featured + <span class="nt"></div></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-group list-group-flush"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Cras justo odio<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Dapibus ac facilisis in<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Vestibulum at eros<span class="nt"></li></span> + <span class="nt"></ul></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="kitchen-sink">Kitchen sink</h3> + +<p>Mix and match multiple content types to create the card you need, or throw everything in there. Shown below are image styles, blocks, text styles, and a list group—all wrapped in a fixed-width card.</p> + +<div class="bd-example"> +<div class="card" style="width: 18rem;"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> + <ul class="list-group list-group-flush"> + <li class="list-group-item">Cras justo odio</li> + <li class="list-group-item">Dapibus ac facilisis in</li> + <li class="list-group-item">Vestibulum at eros</li> + </ul> + <div class="card-body"> + <a href="#" class="card-link">Card link</a> + <a href="#" class="card-link">Another link</a> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span> <span class="na">style=</span><span class="s">"width: 18rem;"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-group list-group-flush"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Cras justo odio<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Dapibus ac facilisis in<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Vestibulum at eros<span class="nt"></li></span> + <span class="nt"></ul></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"card-link"</span><span class="nt">></span>Card link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"card-link"</span><span class="nt">></span>Another link<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="header-and-footer">Header and footer</h3> + +<p>Add an optional header and/or footer within a card.</p> + +<div class="bd-example"> +<div class="card"> + <div class="card-header"> + Featured + </div> + <div class="card-body"> + <h5 class="card-title">Special title treatment</h5> + <p class="card-text">With supporting text below as a natural lead-in to additional content.</p> + <a href="#" class="btn btn-primary">Go somewhere</a> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span> + Featured + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Special title treatment<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>With supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Go somewhere<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Card headers can be styled by adding <code class="highlighter-rouge">.card-header</code> to <code class="highlighter-rouge"><h*></code> elements.</p> + +<div class="bd-example"> +<div class="card"> + <h5 class="card-header">Featured</h5> + <div class="card-body"> + <h5 class="card-title">Special title treatment</h5> + <p class="card-text">With supporting text below as a natural lead-in to additional content.</p> + <a href="#" class="btn btn-primary">Go somewhere</a> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Featured<span class="nt"></h5></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Special title treatment<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>With supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Go somewhere<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<div class="card"> + <div class="card-header"> + Quote + </div> + <div class="card-body"> + <blockquote class="blockquote mb-0"> + <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p> + <footer class="blockquote-footer">Someone famous in <cite title="Source Title">Source Title</cite></footer> + </blockquote> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span> + Quote + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><blockquote</span> <span class="na">class=</span><span class="s">"blockquote mb-0"</span><span class="nt">></span> + <span class="nt"><p></span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.<span class="nt"></p></span> + <span class="nt"><footer</span> <span class="na">class=</span><span class="s">"blockquote-footer"</span><span class="nt">></span>Someone famous in <span class="nt"><cite</span> <span class="na">title=</span><span class="s">"Source Title"</span><span class="nt">></span>Source Title<span class="nt"></cite></footer></span> + <span class="nt"></blockquote></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<div class="card text-center"> + <div class="card-header"> + Featured + </div> + <div class="card-body"> + <h5 class="card-title">Special title treatment</h5> + <p class="card-text">With supporting text below as a natural lead-in to additional content.</p> + <a href="#" class="btn btn-primary">Go somewhere</a> + </div> + <div class="card-footer text-muted"> + 2 days ago + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card text-center"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span> + Featured + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Special title treatment<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>With supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Go somewhere<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-footer text-muted"</span><span class="nt">></span> + 2 days ago + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="sizing">Sizing</h2> + +<p>Cards assume no specific <code class="highlighter-rouge">width</code> to start, so they’ll be 100% wide unless otherwise stated. You can change this as needed with custom CSS, grid classes, grid Sass mixins, or utilities.</p> + +<h3 id="using-grid-markup">Using grid markup</h3> + +<p>Using the grid, wrap cards in columns and rows as needed.</p> + +<div class="bd-example"> +<div class="row"> + <div class="col-sm-6"> + <div class="card"> + <div class="card-body"> + <h5 class="card-title">Special title treatment</h5> + <p class="card-text">With supporting text below as a natural lead-in to additional content.</p> + <a href="#" class="btn btn-primary">Go somewhere</a> + </div> + </div> + </div> + <div class="col-sm-6"> + <div class="card"> + <div class="card-body"> + <h5 class="card-title">Special title treatment</h5> + <p class="card-text">With supporting text below as a natural lead-in to additional content.</p> + <a href="#" class="btn btn-primary">Go somewhere</a> + </div> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-6"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Special title treatment<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>With supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Go somewhere<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-6"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Special title treatment<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>With supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Go somewhere<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="using-utilities">Using utilities</h3> + +<p>Use our handful of <a href="/docs/4.3/utilities/sizing/">available sizing utilities</a> to quickly set a card’s width.</p> + +<div class="bd-example"> +<div class="card w-75"> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">With supporting text below as a natural lead-in to additional content.</p> + <a href="#" class="btn btn-primary">Button</a> + </div> +</div> + +<div class="card w-50"> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">With supporting text below as a natural lead-in to additional content.</p> + <a href="#" class="btn btn-primary">Button</a> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card w-75"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>With supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Button<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card w-50"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>With supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Button<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="using-custom-css">Using custom CSS</h3> + +<p>Use custom CSS in your stylesheets or as inline styles to set a width.</p> + +<div class="bd-example"> +<div class="card" style="width: 18rem;"> + <div class="card-body"> + <h5 class="card-title">Special title treatment</h5> + <p class="card-text">With supporting text below as a natural lead-in to additional content.</p> + <a href="#" class="btn btn-primary">Go somewhere</a> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span> <span class="na">style=</span><span class="s">"width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Special title treatment<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>With supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Go somewhere<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="text-alignment">Text alignment</h2> + +<p>You can quickly change the text alignment of any card—in its entirety or specific parts—with our <a href="/docs/4.3/utilities/text/#text-alignment">text align classes</a>.</p> + +<div class="bd-example"> +<div class="card" style="width: 18rem;"> + <div class="card-body"> + <h5 class="card-title">Special title treatment</h5> + <p class="card-text">With supporting text below as a natural lead-in to additional content.</p> + <a href="#" class="btn btn-primary">Go somewhere</a> + </div> +</div> + +<div class="card text-center" style="width: 18rem;"> + <div class="card-body"> + <h5 class="card-title">Special title treatment</h5> + <p class="card-text">With supporting text below as a natural lead-in to additional content.</p> + <a href="#" class="btn btn-primary">Go somewhere</a> + </div> +</div> + +<div class="card text-right" style="width: 18rem;"> + <div class="card-body"> + <h5 class="card-title">Special title treatment</h5> + <p class="card-text">With supporting text below as a natural lead-in to additional content.</p> + <a href="#" class="btn btn-primary">Go somewhere</a> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span> <span class="na">style=</span><span class="s">"width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Special title treatment<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>With supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Go somewhere<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card text-center"</span> <span class="na">style=</span><span class="s">"width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Special title treatment<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>With supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Go somewhere<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card text-right"</span> <span class="na">style=</span><span class="s">"width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Special title treatment<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>With supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Go somewhere<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="navigation">Navigation</h2> + +<p>Add some navigation to a card’s header (or block) with Bootstrap’s <a href="/docs/4.3/components/navs/">nav components</a>.</p> + +<div class="bd-example"> +<div class="card text-center"> + <div class="card-header"> + <ul class="nav nav-tabs card-header-tabs"> + <li class="nav-item"> + <a class="nav-link active" href="#">Active</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> + </ul> + </div> + <div class="card-body"> + <h5 class="card-title">Special title treatment</h5> + <p class="card-text">With supporting text below as a natural lead-in to additional content.</p> + <a href="#" class="btn btn-primary">Go somewhere</a> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card text-center"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav nav-tabs card-header-tabs"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"></ul></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Special title treatment<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>With supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Go somewhere<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<div class="card text-center"> + <div class="card-header"> + <ul class="nav nav-pills card-header-pills"> + <li class="nav-item"> + <a class="nav-link active" href="#">Active</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> + </ul> + </div> + <div class="card-body"> + <h5 class="card-title">Special title treatment</h5> + <p class="card-text">With supporting text below as a natural lead-in to additional content.</p> + <a href="#" class="btn btn-primary">Go somewhere</a> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card text-center"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav nav-pills card-header-pills"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"></ul></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Special title treatment<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>With supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Go somewhere<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="images-1">Images</h2> + +<p>Cards include a few options for working with images. Choose from appending “image caps†at either end of a card, overlaying images with card content, or simply embedding the image in a card.</p> + +<h3 id="image-caps">Image caps</h3> + +<p>Similar to headers and footers, cards can include top and bottom “image capsâ€â€”images at the top or bottom of a card.</p> + +<div class="bd-example"> +<div class="card mb-3"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + <p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p> + </div> +</div> +<div class="card"> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + <p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p> + </div> + <svg class="bd-placeholder-img card-img-bottom" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card mb-3"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.<span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.<span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></p></span> + <span class="nt"></div></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="image-overlays">Image overlays</h3> + +<p>Turn an image into a card background and overlay your card’s text. Depending on the image, you may or may not need additional styles or utilities.</p> + +<div class="bd-example"> +<div class="card bg-dark text-white"> + <svg class="bd-placeholder-img bd-placeholder-img-lg card-img" width="100%" height="270" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Card image"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Card image</text></svg> + <div class="card-img-overlay"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + <p class="card-text">Last updated 3 mins ago</p> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card bg-dark text-white"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-img-overlay"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.<span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-callout bd-callout-info"> +<p>Note that content should not be larger than the height of the image. If content is larger than the image the content will be displayed outside the image.</p> +</div> + +<h2 id="horizontal">Horizontal</h2> + +<p>Using a combination of grid and utility classes, cards can be made horizontal in a mobile-friendly and responsive way. In the example below, we remove the grid gutters with <code class="highlighter-rouge">.no-gutters</code> and use <code class="highlighter-rouge">.col-md-*</code> classes to make the card horizontal at the <code class="highlighter-rouge">md</code> breakpoint. Further adjustments may be needed depending on your card content.</p> + +<div class="bd-example"> +<div class="card mb-3" style="max-width: 540px;"> + <div class="row no-gutters"> + <div class="col-md-4"> + <svg class="bd-placeholder-img" width="100%" height="250" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image</text></svg> + </div> + <div class="col-md-8"> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + <p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p> + </div> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 540px;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row no-gutters"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-8"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.<span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></p></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="card-styles">Card styles</h2> + +<p>Cards include various options for customizing their backgrounds, borders, and color.</p> + +<h3 id="background-and-color">Background and color</h3> + +<p>Use <a href="/docs/4.3/utilities/colors/">text and background utilities</a> to change the appearance of a card.</p> + +<div class="bd-example"> + +<div class="card text-white bg-primary mb-3" style="max-width: 18rem;"> + <div class="card-header">Header</div> + <div class="card-body"> + <h5 class="card-title">Primary card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +<div class="card text-white bg-secondary mb-3" style="max-width: 18rem;"> + <div class="card-header">Header</div> + <div class="card-body"> + <h5 class="card-title">Secondary card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +<div class="card text-white bg-success mb-3" style="max-width: 18rem;"> + <div class="card-header">Header</div> + <div class="card-body"> + <h5 class="card-title">Success card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +<div class="card text-white bg-danger mb-3" style="max-width: 18rem;"> + <div class="card-header">Header</div> + <div class="card-body"> + <h5 class="card-title">Danger card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +<div class="card text-white bg-warning mb-3" style="max-width: 18rem;"> + <div class="card-header">Header</div> + <div class="card-body"> + <h5 class="card-title">Warning card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +<div class="card text-white bg-info mb-3" style="max-width: 18rem;"> + <div class="card-header">Header</div> + <div class="card-body"> + <h5 class="card-title">Info card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +<div class="card bg-light mb-3" style="max-width: 18rem;"> + <div class="card-header">Header</div> + <div class="card-body"> + <h5 class="card-title">Light card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +<div class="card text-white bg-dark mb-3" style="max-width: 18rem;"> + <div class="card-header">Header</div> + <div class="card-body"> + <h5 class="card-title">Dark card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card text-white bg-primary mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Primary card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card text-white bg-secondary mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Secondary card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card text-white bg-success mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Success card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card text-white bg-danger mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Danger card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card text-white bg-warning mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Warning card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card text-white bg-info mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Info card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card bg-light mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Light card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card text-white bg-dark mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Dark card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-callout bd-callout-warning"> +<h5 id="conveying-meaning-to-assistive-technologies">Conveying meaning to assistive technologies</h5> + +<p>Using color to add meaning only provides a visual indication, which will not be conveyed to users of assistive technologies – such as screen readers. Ensure that information denoted by the color is either obvious from the content itself (e.g. the visible text), or is included through alternative means, such as additional text hidden with the <code class="highlighter-rouge">.sr-only</code> class.</p> +</div> + +<h3 id="border">Border</h3> + +<p>Use <a href="/docs/4.3/utilities/borders/">border utilities</a> to change just the <code class="highlighter-rouge">border-color</code> of a card. Note that you can put <code class="highlighter-rouge">.text-{color}</code> classes on the parent <code class="highlighter-rouge">.card</code> or a subset of the card’s contents as shown below.</p> + +<div class="bd-example"> + +<div class="card border-primary mb-3" style="max-width: 18rem;"> + <div class="card-header">Header</div> + <div class="card-body text-primary"> + <h5 class="card-title">Primary card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +<div class="card border-secondary mb-3" style="max-width: 18rem;"> + <div class="card-header">Header</div> + <div class="card-body text-secondary"> + <h5 class="card-title">Secondary card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +<div class="card border-success mb-3" style="max-width: 18rem;"> + <div class="card-header">Header</div> + <div class="card-body text-success"> + <h5 class="card-title">Success card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +<div class="card border-danger mb-3" style="max-width: 18rem;"> + <div class="card-header">Header</div> + <div class="card-body text-danger"> + <h5 class="card-title">Danger card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +<div class="card border-warning mb-3" style="max-width: 18rem;"> + <div class="card-header">Header</div> + <div class="card-body text-warning"> + <h5 class="card-title">Warning card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +<div class="card border-info mb-3" style="max-width: 18rem;"> + <div class="card-header">Header</div> + <div class="card-body text-info"> + <h5 class="card-title">Info card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +<div class="card border-light mb-3" style="max-width: 18rem;"> + <div class="card-header">Header</div> + <div class="card-body"> + <h5 class="card-title">Light card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +<div class="card border-dark mb-3" style="max-width: 18rem;"> + <div class="card-header">Header</div> + <div class="card-body text-dark"> + <h5 class="card-title">Dark card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card border-primary mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body text-primary"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Primary card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card border-secondary mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body text-secondary"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Secondary card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card border-success mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body text-success"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Success card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card border-danger mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body text-danger"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Danger card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card border-warning mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body text-warning"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Warning card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card border-info mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body text-info"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Info card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card border-light mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Light card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"card border-dark mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body text-dark"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Dark card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="mixins-utilities">Mixins utilities</h3> + +<p>You can also change the borders on the card header and footer as needed, and even remove their <code class="highlighter-rouge">background-color</code> with <code class="highlighter-rouge">.bg-transparent</code>.</p> + +<div class="bd-example"> +<div class="card border-success mb-3" style="max-width: 18rem;"> + <div class="card-header bg-transparent border-success">Header</div> + <div class="card-body text-success"> + <h5 class="card-title">Success card title</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + </div> + <div class="card-footer bg-transparent border-success">Footer</div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card border-success mb-3"</span> <span class="na">style=</span><span class="s">"max-width: 18rem;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header bg-transparent border-success"</span><span class="nt">></span>Header<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body text-success"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Success card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-footer bg-transparent border-success"</span><span class="nt">></span>Footer<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="card-layout">Card layout</h2> + +<p>In addition to styling the content within cards, Bootstrap includes a few options for laying out series of cards. For the time being, <strong>these layout options are not yet responsive</strong>.</p> + +<h3 id="card-groups">Card groups</h3> + +<p>Use card groups to render cards as a single, attached element with equal width and height columns. Card groups use <code class="highlighter-rouge">display: flex;</code> to achieve their uniform sizing.</p> + +<div class="bd-example"> +<div class="card-group"> + <div class="card"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + <p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p> + </div> + </div> + <div class="card"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This card has supporting text below as a natural lead-in to additional content.</p> + <p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p> + </div> + </div> + <div class="card"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This card has even longer content than the first to show that equal height action.</p> + <p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.<span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></p></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This card has supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></p></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This is a wider card with supporting text below as a natural lead-in to additional content. This card has even longer content than the first to show that equal height action.<span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></p></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>When using card groups with footers, their content will automatically line up.</p> + +<div class="bd-example"> +<div class="card-group"> + <div class="card"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + </div> + <div class="card-footer"> + <small class="text-muted">Last updated 3 mins ago</small> + </div> + </div> + <div class="card"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This card has supporting text below as a natural lead-in to additional content.</p> + </div> + <div class="card-footer"> + <small class="text-muted">Last updated 3 mins ago</small> + </div> + </div> + <div class="card"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This card has even longer content than the first to show that equal height action.</p> + </div> + <div class="card-footer"> + <small class="text-muted">Last updated 3 mins ago</small> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.<span class="nt"></p></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-footer"</span><span class="nt">></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This card has supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-footer"</span><span class="nt">></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This is a wider card with supporting text below as a natural lead-in to additional content. This card has even longer content than the first to show that equal height action.<span class="nt"></p></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-footer"</span><span class="nt">></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="card-decks">Card decks</h3> + +<p>Need a set of equal width and height cards that aren’t attached to one another? Use card decks.</p> + +<div class="bd-example"> +<div class="card-deck"> + <div class="card"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="200" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This is a longer card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + <p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p> + </div> + </div> + <div class="card"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="200" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This card has supporting text below as a natural lead-in to additional content.</p> + <p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p> + </div> + </div> + <div class="card"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="200" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This card has even longer content than the first to show that equal height action.</p> + <p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-deck"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This is a longer card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.<span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></p></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This card has supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></p></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This is a wider card with supporting text below as a natural lead-in to additional content. This card has even longer content than the first to show that equal height action.<span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></p></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Just like with card groups, card footers in decks will automatically line up.</p> + +<div class="bd-example"> +<div class="card-deck"> + <div class="card"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + </div> + <div class="card-footer"> + <small class="text-muted">Last updated 3 mins ago</small> + </div> + </div> + <div class="card"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This card has supporting text below as a natural lead-in to additional content.</p> + </div> + <div class="card-footer"> + <small class="text-muted">Last updated 3 mins ago</small> + </div> + </div> + <div class="card"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This card has even longer content than the first to show that equal height action.</p> + </div> + <div class="card-footer"> + <small class="text-muted">Last updated 3 mins ago</small> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-deck"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.<span class="nt"></p></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-footer"</span><span class="nt">></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This card has supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-footer"</span><span class="nt">></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This is a wider card with supporting text below as a natural lead-in to additional content. This card has even longer content than the first to show that equal height action.<span class="nt"></p></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-footer"</span><span class="nt">></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="card-columns">Card columns</h3> + +<p>Cards can be organized into <a href="https://masonry.desandro.com/">Masonry</a>-like columns with just CSS by wrapping them in <code class="highlighter-rouge">.card-columns</code>. Cards are built with CSS <code class="highlighter-rouge">column</code> properties instead of flexbox for easier alignment. Cards are ordered from top to bottom and left to right.</p> + +<p><strong>Heads up!</strong> Your mileage with card columns may vary. To prevent cards breaking across columns, we must set them to <code class="highlighter-rouge">display: inline-block</code> as <code class="highlighter-rouge">column-break-inside: avoid</code> isn’t a bulletproof solution yet.</p> + +<div class="bd-example"> +<div class="card-columns"> + <div class="card"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="160" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title that wraps to a new line</h5> + <p class="card-text">This is a longer card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + </div> + </div> + <div class="card p-3"> + <blockquote class="blockquote mb-0 card-body"> + <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p> + <footer class="blockquote-footer"> + <small class="text-muted"> + Someone famous in <cite title="Source Title">Source Title</cite> + </small> + </footer> + </blockquote> + </div> + <div class="card"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="160" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Image cap</text></svg> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This card has supporting text below as a natural lead-in to additional content.</p> + <p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p> + </div> + </div> + <div class="card bg-primary text-white text-center p-3"> + <blockquote class="blockquote mb-0"> + <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat.</p> + <footer class="blockquote-footer text-white"> + <small> + Someone famous in <cite title="Source Title">Source Title</cite> + </small> + </footer> + </blockquote> + </div> + <div class="card text-center"> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This card has a regular title and short paragraphy of text below it.</p> + <p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p> + </div> + </div> + <div class="card"> + <svg class="bd-placeholder-img card-img" width="100%" height="260" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Card image"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Card image</text></svg> + </div> + <div class="card p-3 text-right"> + <blockquote class="blockquote mb-0"> + <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p> + <footer class="blockquote-footer"> + <small class="text-muted"> + Someone famous in <cite title="Source Title">Source Title</cite> + </small> + </footer> + </blockquote> + </div> + <div class="card"> + <div class="card-body"> + <h5 class="card-title">Card title</h5> + <p class="card-text">This is another card with title and supporting text below. This card has some additional content to make it slightly taller overall.</p> + <p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-columns"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title that wraps to a new line<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This is a longer card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.<span class="nt"></p></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card p-3"</span><span class="nt">></span> + <span class="nt"><blockquote</span> <span class="na">class=</span><span class="s">"blockquote mb-0 card-body"</span><span class="nt">></span> + <span class="nt"><p></span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.<span class="nt"></p></span> + <span class="nt"><footer</span> <span class="na">class=</span><span class="s">"blockquote-footer"</span><span class="nt">></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span> + Someone famous in <span class="nt"><cite</span> <span class="na">title=</span><span class="s">"Source Title"</span><span class="nt">></span>Source Title<span class="nt"></cite></span> + <span class="nt"></small></span> + <span class="nt"></footer></span> + <span class="nt"></blockquote></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This card has supporting text below as a natural lead-in to additional content.<span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></p></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card bg-primary text-white text-center p-3"</span><span class="nt">></span> + <span class="nt"><blockquote</span> <span class="na">class=</span><span class="s">"blockquote mb-0"</span><span class="nt">></span> + <span class="nt"><p></span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat.<span class="nt"></p></span> + <span class="nt"><footer</span> <span class="na">class=</span><span class="s">"blockquote-footer text-white"</span><span class="nt">></span> + <span class="nt"><small></span> + Someone famous in <span class="nt"><cite</span> <span class="na">title=</span><span class="s">"Source Title"</span><span class="nt">></span>Source Title<span class="nt"></cite></span> + <span class="nt"></small></span> + <span class="nt"></footer></span> + <span class="nt"></blockquote></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card text-center"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This card has a regular title and short paragraphy of text below it.<span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></p></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card p-3 text-right"</span><span class="nt">></span> + <span class="nt"><blockquote</span> <span class="na">class=</span><span class="s">"blockquote mb-0"</span><span class="nt">></span> + <span class="nt"><p></span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.<span class="nt"></p></span> + <span class="nt"><footer</span> <span class="na">class=</span><span class="s">"blockquote-footer"</span><span class="nt">></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span> + Someone famous in <span class="nt"><cite</span> <span class="na">title=</span><span class="s">"Source Title"</span><span class="nt">></span>Source Title<span class="nt"></cite></span> + <span class="nt"></small></span> + <span class="nt"></footer></span> + <span class="nt"></blockquote></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card title<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>This is another card with title and supporting text below. This card has some additional content to make it slightly taller overall.<span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Last updated 3 mins ago<span class="nt"></small></p></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Card columns can also be extended and customized with some additional code. Shown below is an extension of the <code class="highlighter-rouge">.card-columns</code> class using the same CSS we use—CSS columns— to generate a set of responsive tiers for changing the number of columns.</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nc">.card-columns</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">media-breakpoint-only</span><span class="p">(</span><span class="n">lg</span><span class="p">)</span> <span class="p">{</span> + <span class="nl">column-count</span><span class="p">:</span> <span class="m">4</span><span class="p">;</span> + <span class="p">}</span> + <span class="k">@include</span> <span class="nd">media-breakpoint-only</span><span class="p">(</span><span class="n">xl</span><span class="p">)</span> <span class="p">{</span> + <span class="nl">column-count</span><span class="p">:</span> <span class="m">5</span><span class="p">;</span> + <span class="p">}</span> +<span class="p">}</span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/carousel/index.html b/docs/4.3/components/carousel/index.html new file mode 100644 index 0000000000..b1fab1b027 --- /dev/null +++ b/docs/4.3/components/carousel/index.html @@ -0,0 +1,1011 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="A slideshow component for cycling through elements—images or slides of text—like a carousel."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Carousel · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/carousel/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Carousel"> +<meta name="twitter:description" content="A slideshow component for cycling through elements—images or slides of text—like a carousel."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/carousel/"> +<meta property="og:title" content="Carousel"> +<meta property="og:description" content="A slideshow component for cycling through elements—images or slides of text—like a carousel."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#how-it-works">How it works</a></li> +<li class="toc-entry toc-h2"><a href="#example">Example</a> +<ul> +<li class="toc-entry toc-h3"><a href="#slides-only">Slides only</a></li> +<li class="toc-entry toc-h3"><a href="#with-controls">With controls</a></li> +<li class="toc-entry toc-h3"><a href="#with-indicators">With indicators</a></li> +<li class="toc-entry toc-h3"><a href="#with-captions">With captions</a></li> +<li class="toc-entry toc-h3"><a href="#crossfade">Crossfade</a></li> +<li class="toc-entry toc-h3"><a href="#individual-carousel-item-interval">Individual .carousel-item interval</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#usage">Usage</a> +<ul> +<li class="toc-entry toc-h3"><a href="#via-data-attributes">Via data attributes</a></li> +<li class="toc-entry toc-h3"><a href="#via-javascript">Via JavaScript</a></li> +<li class="toc-entry toc-h3"><a href="#options">Options</a></li> +<li class="toc-entry toc-h3"><a href="#methods">Methods</a> +<ul> +<li class="toc-entry toc-h4"><a href="#carouseloptions">.carousel(options)</a></li> +<li class="toc-entry toc-h4"><a href="#carouselcycle">.carousel('cycle')</a></li> +<li class="toc-entry toc-h4"><a href="#carouselpause">.carousel('pause')</a></li> +<li class="toc-entry toc-h4"><a href="#carouselnumber">.carousel(number)</a></li> +<li class="toc-entry toc-h4"><a href="#carouselprev">.carousel('prev')</a></li> +<li class="toc-entry toc-h4"><a href="#carouselnext">.carousel('next')</a></li> +<li class="toc-entry toc-h4"><a href="#carouseldispose">.carousel('dispose')</a></li> +</ul> +</li> +<li class="toc-entry toc-h3"><a href="#events">Events</a></li> +<li class="toc-entry toc-h3"><a href="#change-transition-duration">Change transition duration</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Carousel</h1> + <p class="bd-lead">A slideshow component for cycling through elements—images or slides of text—like a carousel.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="how-it-works">How it works</h2> + +<p>The carousel is a slideshow for cycling through a series of content, built with CSS 3D transforms and a bit of JavaScript. It works with a series of images, text, or custom markup. It also includes support for previous/next controls and indicators.</p> + +<p>In browsers where the <a href="https://www.w3.org/TR/page-visibility/">Page Visibility API</a> is supported, the carousel will avoid sliding when the webpage is not visible to the user (such as when the browser tab is inactive, the browser window is minimized, etc.).</p> + +<div class="bd-callout bd-callout-info"> +<p>The animation effect of this component is dependent on the <code class="highlighter-rouge">prefers-reduced-motion</code> media query. See the <a href="/docs/4.3/getting-started/accessibility/#reduced-motion">reduced motion section of our accessibility documentation</a>.</p> +</div> + +<p>Please be aware that nested carousels are not supported, and carousels are generally not compliant with accessibility standards.</p> + +<p>Lastly, if you’re building our JavaScript from source, it <a href="/docs/4.3/getting-started/javascript/#util">requires <code class="highlighter-rouge">util.js</code></a>.</p> + +<h2 id="example">Example</h2> + +<p>Carousels don’t automatically normalize slide dimensions. As such, you may need to use additional utilities or custom styles to appropriately size content. While carousels support previous/next controls and indicators, they’re not explicitly required. Add and customize as you see fit.</p> + +<p><strong>The <code class="highlighter-rouge">.active</code> class needs to be added to one of the slides</strong> otherwise the carousel will not be visible. Also be sure to set a unique id on the <code class="highlighter-rouge">.carousel</code> for optional controls, especially if you’re using multiple carousels on a single page. Control and indicator elements must have a <code class="highlighter-rouge">data-target</code> attribute (or <code class="highlighter-rouge">href</code> for links) that matches the id of the <code class="highlighter-rouge">.carousel</code> element.</p> + +<h3 id="slides-only">Slides only</h3> + +<p>Here’s a carousel with slides only. Note the presence of the <code class="highlighter-rouge">.d-block</code> and <code class="highlighter-rouge">.w-100</code> on carousel images to prevent browser default image alignment.</p> + +<div class="bd-example"> +<div id="carouselExampleSlidesOnly" class="carousel slide" data-ride="carousel"> + <div class="carousel-inner"> + <div class="carousel-item active"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: First slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#777" /><text x="50%" y="50%" fill="#555" dy=".3em">First slide</text></svg> + </div> + <div class="carousel-item"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Second slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#666" /><text x="50%" y="50%" fill="#444" dy=".3em">Second slide</text></svg> + </div> + <div class="carousel-item"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Third slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#555" /><text x="50%" y="50%" fill="#333" dy=".3em">Third slide</text></svg> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">id=</span><span class="s">"carouselExampleSlidesOnly"</span> <span class="na">class=</span><span class="s">"carousel slide"</span> <span class="na">data-ride=</span><span class="s">"carousel"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-inner"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item active"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="with-controls">With controls</h3> + +<p>Adding in the previous and next controls:</p> + +<div class="bd-example"> +<div id="carouselExampleControls" class="carousel slide" data-ride="carousel"> + <div class="carousel-inner"> + <div class="carousel-item active"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: First slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#777" /><text x="50%" y="50%" fill="#555" dy=".3em">First slide</text></svg> + </div> + <div class="carousel-item"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Second slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#666" /><text x="50%" y="50%" fill="#444" dy=".3em">Second slide</text></svg> + </div> + <div class="carousel-item"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Third slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#555" /><text x="50%" y="50%" fill="#333" dy=".3em">Third slide</text></svg> + </div> + </div> + <a class="carousel-control-prev" href="#carouselExampleControls" role="button" data-slide="prev"> + <span class="carousel-control-prev-icon" aria-hidden="true"></span> + <span class="sr-only">Previous</span> + </a> + <a class="carousel-control-next" href="#carouselExampleControls" role="button" data-slide="next"> + <span class="carousel-control-next-icon" aria-hidden="true"></span> + <span class="sr-only">Next</span> + </a> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">id=</span><span class="s">"carouselExampleControls"</span> <span class="na">class=</span><span class="s">"carousel slide"</span> <span class="na">data-ride=</span><span class="s">"carousel"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-inner"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item active"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"carousel-control-prev"</span> <span class="na">href=</span><span class="s">"#carouselExampleControls"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">data-slide=</span><span class="s">"prev"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"carousel-control-prev-icon"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Previous<span class="nt"></span></span> + <span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"carousel-control-next"</span> <span class="na">href=</span><span class="s">"#carouselExampleControls"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">data-slide=</span><span class="s">"next"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"carousel-control-next-icon"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Next<span class="nt"></span></span> + <span class="nt"></a></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="with-indicators">With indicators</h3> + +<p>You can also add the indicators to the carousel, alongside the controls, too.</p> + +<div class="bd-example"> +<div id="carouselExampleIndicators" class="carousel slide" data-ride="carousel"> + <ol class="carousel-indicators"> + <li data-target="#carouselExampleIndicators" data-slide-to="0" class="active"></li> + <li data-target="#carouselExampleIndicators" data-slide-to="1"></li> + <li data-target="#carouselExampleIndicators" data-slide-to="2"></li> + </ol> + <div class="carousel-inner"> + <div class="carousel-item active"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: First slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#777" /><text x="50%" y="50%" fill="#555" dy=".3em">First slide</text></svg> + </div> + <div class="carousel-item"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Second slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#666" /><text x="50%" y="50%" fill="#444" dy=".3em">Second slide</text></svg> + </div> + <div class="carousel-item"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Third slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#555" /><text x="50%" y="50%" fill="#333" dy=".3em">Third slide</text></svg> + </div> + </div> + <a class="carousel-control-prev" href="#carouselExampleIndicators" role="button" data-slide="prev"> + <span class="carousel-control-prev-icon" aria-hidden="true"></span> + <span class="sr-only">Previous</span> + </a> + <a class="carousel-control-next" href="#carouselExampleIndicators" role="button" data-slide="next"> + <span class="carousel-control-next-icon" aria-hidden="true"></span> + <span class="sr-only">Next</span> + </a> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">id=</span><span class="s">"carouselExampleIndicators"</span> <span class="na">class=</span><span class="s">"carousel slide"</span> <span class="na">data-ride=</span><span class="s">"carousel"</span><span class="nt">></span> + <span class="nt"><ol</span> <span class="na">class=</span><span class="s">"carousel-indicators"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">data-target=</span><span class="s">"#carouselExampleIndicators"</span> <span class="na">data-slide-to=</span><span class="s">"0"</span> <span class="na">class=</span><span class="s">"active"</span><span class="nt">></li></span> + <span class="nt"><li</span> <span class="na">data-target=</span><span class="s">"#carouselExampleIndicators"</span> <span class="na">data-slide-to=</span><span class="s">"1"</span><span class="nt">></li></span> + <span class="nt"><li</span> <span class="na">data-target=</span><span class="s">"#carouselExampleIndicators"</span> <span class="na">data-slide-to=</span><span class="s">"2"</span><span class="nt">></li></span> + <span class="nt"></ol></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-inner"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item active"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"carousel-control-prev"</span> <span class="na">href=</span><span class="s">"#carouselExampleIndicators"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">data-slide=</span><span class="s">"prev"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"carousel-control-prev-icon"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Previous<span class="nt"></span></span> + <span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"carousel-control-next"</span> <span class="na">href=</span><span class="s">"#carouselExampleIndicators"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">data-slide=</span><span class="s">"next"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"carousel-control-next-icon"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Next<span class="nt"></span></span> + <span class="nt"></a></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="with-captions">With captions</h3> + +<p>Add captions to your slides easily with the <code class="highlighter-rouge">.carousel-caption</code> element within any <code class="highlighter-rouge">.carousel-item</code>. They can be easily hidden on smaller viewports, as shown below, with optional <a href="/docs/4.3/utilities/display/">display utilities</a>. We hide them initially with <code class="highlighter-rouge">.d-none</code> and bring them back on medium-sized devices with <code class="highlighter-rouge">.d-md-block</code>.</p> + +<div class="bd-example"> +<div class="bd-example"> + <div id="carouselExampleCaptions" class="carousel slide" data-ride="carousel"> + <ol class="carousel-indicators"> + <li data-target="#carouselExampleCaptions" data-slide-to="0" class="active"></li> + <li data-target="#carouselExampleCaptions" data-slide-to="1"></li> + <li data-target="#carouselExampleCaptions" data-slide-to="2"></li> + </ol> + <div class="carousel-inner"> + <div class="carousel-item active"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: First slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#777" /><text x="50%" y="50%" fill="#555" dy=".3em">First slide</text></svg> + <div class="carousel-caption d-none d-md-block"> + <h5>First slide label</h5> + <p>Nulla vitae elit libero, a pharetra augue mollis interdum.</p> + </div> + </div> + <div class="carousel-item"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Second slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#666" /><text x="50%" y="50%" fill="#444" dy=".3em">Second slide</text></svg> + <div class="carousel-caption d-none d-md-block"> + <h5>Second slide label</h5> + <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p> + </div> + </div> + <div class="carousel-item"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Third slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#555" /><text x="50%" y="50%" fill="#333" dy=".3em">Third slide</text></svg> + <div class="carousel-caption d-none d-md-block"> + <h5>Third slide label</h5> + <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur.</p> + </div> + </div> + </div> + <a class="carousel-control-prev" href="#carouselExampleCaptions" role="button" data-slide="prev"> + <span class="carousel-control-prev-icon" aria-hidden="true"></span> + <span class="sr-only">Previous</span> + </a> + <a class="carousel-control-next" href="#carouselExampleCaptions" role="button" data-slide="next"> + <span class="carousel-control-next-icon" aria-hidden="true"></span> + <span class="sr-only">Next</span> + </a> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"bd-example"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">id=</span><span class="s">"carouselExampleCaptions"</span> <span class="na">class=</span><span class="s">"carousel slide"</span> <span class="na">data-ride=</span><span class="s">"carousel"</span><span class="nt">></span> + <span class="nt"><ol</span> <span class="na">class=</span><span class="s">"carousel-indicators"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">data-target=</span><span class="s">"#carouselExampleCaptions"</span> <span class="na">data-slide-to=</span><span class="s">"0"</span> <span class="na">class=</span><span class="s">"active"</span><span class="nt">></li></span> + <span class="nt"><li</span> <span class="na">data-target=</span><span class="s">"#carouselExampleCaptions"</span> <span class="na">data-slide-to=</span><span class="s">"1"</span><span class="nt">></li></span> + <span class="nt"><li</span> <span class="na">data-target=</span><span class="s">"#carouselExampleCaptions"</span> <span class="na">data-slide-to=</span><span class="s">"2"</span><span class="nt">></li></span> + <span class="nt"></ol></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-inner"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item active"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-caption d-none d-md-block"</span><span class="nt">></span> + <span class="nt"><h5></span>First slide label<span class="nt"></h5></span> + <span class="nt"><p></span>Nulla vitae elit libero, a pharetra augue mollis interdum.<span class="nt"></p></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-caption d-none d-md-block"</span><span class="nt">></span> + <span class="nt"><h5></span>Second slide label<span class="nt"></h5></span> + <span class="nt"><p></span>Lorem ipsum dolor sit amet, consectetur adipiscing elit.<span class="nt"></p></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-caption d-none d-md-block"</span><span class="nt">></span> + <span class="nt"><h5></span>Third slide label<span class="nt"></h5></span> + <span class="nt"><p></span>Praesent commodo cursus magna, vel scelerisque nisl consectetur.<span class="nt"></p></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"carousel-control-prev"</span> <span class="na">href=</span><span class="s">"#carouselExampleCaptions"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">data-slide=</span><span class="s">"prev"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"carousel-control-prev-icon"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Previous<span class="nt"></span></span> + <span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"carousel-control-next"</span> <span class="na">href=</span><span class="s">"#carouselExampleCaptions"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">data-slide=</span><span class="s">"next"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"carousel-control-next-icon"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Next<span class="nt"></span></span> + <span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="crossfade">Crossfade</h3> + +<p>Add <code class="highlighter-rouge">.carousel-fade</code> to your carousel to animate slides with a fade transition instead of a slide.</p> + +<div class="bd-example"> +<div id="carouselExampleFade" class="carousel slide carousel-fade" data-ride="carousel"> + <div class="carousel-inner"> + <div class="carousel-item active"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: First slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#777" /><text x="50%" y="50%" fill="#555" dy=".3em">First slide</text></svg> + </div> + <div class="carousel-item"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Second slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#666" /><text x="50%" y="50%" fill="#444" dy=".3em">Second slide</text></svg> + </div> + <div class="carousel-item"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Third slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#555" /><text x="50%" y="50%" fill="#333" dy=".3em">Third slide</text></svg> + </div> + </div> + <a class="carousel-control-prev" href="#carouselExampleFade" role="button" data-slide="prev"> + <span class="carousel-control-prev-icon" aria-hidden="true"></span> + <span class="sr-only">Previous</span> + </a> + <a class="carousel-control-next" href="#carouselExampleFade" role="button" data-slide="next"> + <span class="carousel-control-next-icon" aria-hidden="true"></span> + <span class="sr-only">Next</span> + </a> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">id=</span><span class="s">"carouselExampleFade"</span> <span class="na">class=</span><span class="s">"carousel slide carousel-fade"</span> <span class="na">data-ride=</span><span class="s">"carousel"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-inner"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item active"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"carousel-control-prev"</span> <span class="na">href=</span><span class="s">"#carouselExampleFade"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">data-slide=</span><span class="s">"prev"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"carousel-control-prev-icon"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Previous<span class="nt"></span></span> + <span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"carousel-control-next"</span> <span class="na">href=</span><span class="s">"#carouselExampleFade"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">data-slide=</span><span class="s">"next"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"carousel-control-next-icon"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Next<span class="nt"></span></span> + <span class="nt"></a></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="individual-carousel-item-interval">Individual <code class="highlighter-rouge">.carousel-item</code> interval</h3> + +<p>Add <code class="highlighter-rouge">data-interval=""</code> to a <code class="highlighter-rouge">.carousel-item</code> to change the amount of time to delay between automatically cycling to the next item.</p> + +<div class="bd-example"> +<div id="carouselExampleInterval" class="carousel slide" data-ride="carousel"> + <div class="carousel-inner"> + <div class="carousel-item active" data-interval="10000"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: First slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#777" /><text x="50%" y="50%" fill="#555" dy=".3em">First slide</text></svg> + </div> + <div class="carousel-item" data-interval="2000"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Second slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#666" /><text x="50%" y="50%" fill="#444" dy=".3em">Second slide</text></svg> + </div> + <div class="carousel-item"> + <svg class="bd-placeholder-img bd-placeholder-img-lg d-block w-100" width="800" height="400" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Third slide"><title>Placeholder</title><rect width="100%" height="100%" fill="#555" /><text x="50%" y="50%" fill="#333" dy=".3em">Third slide</text></svg> + </div> + </div> + <a class="carousel-control-prev" href="#carouselExampleInterval" role="button" data-slide="prev"> + <span class="carousel-control-prev-icon" aria-hidden="true"></span> + <span class="sr-only">Previous</span> + </a> + <a class="carousel-control-next" href="#carouselExampleInterval" role="button" data-slide="next"> + <span class="carousel-control-next-icon" aria-hidden="true"></span> + <span class="sr-only">Next</span> + </a> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">id=</span><span class="s">"carouselExampleInterval"</span> <span class="na">class=</span><span class="s">"carousel slide"</span> <span class="na">data-ride=</span><span class="s">"carousel"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-inner"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item active"</span> <span class="na">data-interval=</span><span class="s">"10000"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item"</span> <span class="na">data-interval=</span><span class="s">"2000"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"carousel-item"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"d-block w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"carousel-control-prev"</span> <span class="na">href=</span><span class="s">"#carouselExampleInterval"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">data-slide=</span><span class="s">"prev"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"carousel-control-prev-icon"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Previous<span class="nt"></span></span> + <span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"carousel-control-next"</span> <span class="na">href=</span><span class="s">"#carouselExampleInterval"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">data-slide=</span><span class="s">"next"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"carousel-control-next-icon"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Next<span class="nt"></span></span> + <span class="nt"></a></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="usage">Usage</h2> + +<h3 id="via-data-attributes">Via data attributes</h3> + +<p>Use data attributes to easily control the position of the carousel. <code class="highlighter-rouge">data-slide</code> accepts the keywords <code class="highlighter-rouge">prev</code> or <code class="highlighter-rouge">next</code>, which alters the slide position relative to its current position. Alternatively, use <code class="highlighter-rouge">data-slide-to</code> to pass a raw slide index to the carousel <code class="highlighter-rouge">data-slide-to="2"</code>, which shifts the slide position to a particular index beginning with <code class="highlighter-rouge">0</code>.</p> + +<p>The <code class="highlighter-rouge">data-ride="carousel"</code> attribute is used to mark a carousel as animating starting at page load. If you don’t use <code class="highlighter-rouge">data-ride="carousel"</code> to initialize your carousel, you have to initialize it yourself. <strong>It cannot be used in combination with (redundant and unnecessary) explicit JavaScript initialization of the same carousel.</strong></p> + +<h3 id="via-javascript">Via JavaScript</h3> + +<p>Call carousel manually with:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'.carousel'</span><span class="p">).</span><span class="nx">carousel</span><span class="p">()</span></code></pre></figure> + +<h3 id="options">Options</h3> + +<p>Options can be passed via data attributes or JavaScript. For data attributes, append the option name to <code class="highlighter-rouge">data-</code>, as in <code class="highlighter-rouge">data-interval=""</code>.</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 100px;">Name</th> + <th style="width: 50px;">Type</th> + <th style="width: 50px;">Default</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>interval</td> + <td>number</td> + <td>5000</td> + <td>The amount of time to delay between automatically cycling an item. If false, carousel will not automatically cycle.</td> + </tr> + <tr> + <td>keyboard</td> + <td>boolean</td> + <td>true</td> + <td>Whether the carousel should react to keyboard events.</td> + </tr> + <tr> + <td>pause</td> + <td>string | boolean</td> + <td>"hover"</td> + <td><p>If set to <code>"hover"</code>, pauses the cycling of the carousel on <code>mouseenter</code> and resumes the cycling of the carousel on <code>mouseleave</code>. If set to <code>false</code>, hovering over the carousel won't pause it.</p> + <p>On touch-enabled devices, when set to <code>"hover"</code>, cycling will pause on <code>touchend</code> (once the user finished interacting with the carousel) for two intervals, before automatically resuming. Note that this is in addition to the above mouse behavior.</p></td> + </tr> + <tr> + <td>ride</td> + <td>string</td> + <td>false</td> + <td>Autoplays the carousel after the user manually cycles the first item. If "carousel", autoplays the carousel on load.</td> + </tr> + <tr> + <td>wrap</td> + <td>boolean</td> + <td>true</td> + <td>Whether the carousel should cycle continuously or have hard stops.</td> + </tr> + <tr> + <td>touch</td> + <td>boolean</td> + <td>true</td> + <td>Whether the carousel should support left/right swipe interactions on touchscreen devices.</td> + </tr> + </tbody> +</table> + +<h3 id="methods">Methods</h3> + +<div class="bd-callout bd-callout-danger"> +<h4 id="asynchronous-methods-and-transitions">Asynchronous methods and transitions</h4> + +<p>All API methods are <strong>asynchronous</strong> and start a <strong>transition</strong>. They return to the caller as soon as the transition is started but <strong>before it ends</strong>. In addition, a method call on a <strong>transitioning component will be ignored</strong>.</p> + +<p><a href="/docs/4.3/getting-started/javascript/">See our JavaScript documentation for more information</a>.</p> +</div> + +<h4 id="carouseloptions"><code class="highlighter-rouge">.carousel(options)</code></h4> + +<p>Initializes the carousel with an optional options <code class="highlighter-rouge">object</code> and starts cycling through items.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'.carousel'</span><span class="p">).</span><span class="nx">carousel</span><span class="p">({</span> + <span class="na">interval</span><span class="p">:</span> <span class="mi">2000</span> +<span class="p">})</span></code></pre></figure> + +<h4 id="carouselcycle"><code class="highlighter-rouge">.carousel('cycle')</code></h4> + +<p>Cycles through the carousel items from left to right.</p> + +<h4 id="carouselpause"><code class="highlighter-rouge">.carousel('pause')</code></h4> + +<p>Stops the carousel from cycling through items.</p> + +<h4 id="carouselnumber"><code class="highlighter-rouge">.carousel(number)</code></h4> + +<p>Cycles the carousel to a particular frame (0 based, similar to an array). <strong>Returns to the caller before the target item has been shown</strong> (i.e. before the <code class="highlighter-rouge">slid.bs.carousel</code> event occurs).</p> + +<h4 id="carouselprev"><code class="highlighter-rouge">.carousel('prev')</code></h4> + +<p>Cycles to the previous item. <strong>Returns to the caller before the previous item has been shown</strong> (i.e. before the <code class="highlighter-rouge">slid.bs.carousel</code> event occurs).</p> + +<h4 id="carouselnext"><code class="highlighter-rouge">.carousel('next')</code></h4> + +<p>Cycles to the next item. <strong>Returns to the caller before the next item has been shown</strong> (i.e. before the <code class="highlighter-rouge">slid.bs.carousel</code> event occurs).</p> + +<h4 id="carouseldispose"><code class="highlighter-rouge">.carousel('dispose')</code></h4> + +<p>Destroys an element’s carousel.</p> + +<h3 id="events">Events</h3> + +<p>Bootstrap’s carousel class exposes two events for hooking into carousel functionality. Both events have the following additional properties:</p> + +<ul> + <li><code class="highlighter-rouge">direction</code>: The direction in which the carousel is sliding (either <code class="highlighter-rouge">"left"</code> or <code class="highlighter-rouge">"right"</code>).</li> + <li><code class="highlighter-rouge">relatedTarget</code>: The DOM element that is being slid into place as the active item.</li> + <li><code class="highlighter-rouge">from</code>: The index of the current item</li> + <li><code class="highlighter-rouge">to</code>: The index of the next item</li> +</ul> + +<p>All carousel events are fired at the carousel itself (i.e. at the <code class="highlighter-rouge"><div class="carousel"></code>).</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 150px;">Event Type</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>slide.bs.carousel</td> + <td>This event fires immediately when the <code>slide</code> instance method is invoked.</td> + </tr> + <tr> + <td>slid.bs.carousel</td> + <td>This event is fired when the carousel has completed its slide transition.</td> + </tr> + </tbody> +</table> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myCarousel'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'slide.bs.carousel'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> + <span class="c1">// do something...</span> +<span class="p">})</span></code></pre></figure> + +<h3 id="change-transition-duration">Change transition duration</h3> + +<p>The transition duration of <code class="highlighter-rouge">.carousel-item</code> can be changed with the <code class="highlighter-rouge">$carousel-transition</code> Sass variable before compiling or custom styles if you’re using the compiled CSS. If multiple transitions are applied, make sure the transform transition is defined first (eg. <code class="highlighter-rouge">transition: transform 2s ease, opacity .5s ease-out</code>).</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/collapse/index.html b/docs/4.3/components/collapse/index.html new file mode 100644 index 0000000000..88add32196 --- /dev/null +++ b/docs/4.3/components/collapse/index.html @@ -0,0 +1,833 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Toggle the visibility of content across your project with a few classes and our JavaScript plugins."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Collapse · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/collapse/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Collapse"> +<meta name="twitter:description" content="Toggle the visibility of content across your project with a few classes and our JavaScript plugins."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/collapse/"> +<meta property="og:title" content="Collapse"> +<meta property="og:description" content="Toggle the visibility of content across your project with a few classes and our JavaScript plugins."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#how-it-works">How it works</a></li> +<li class="toc-entry toc-h2"><a href="#example">Example</a></li> +<li class="toc-entry toc-h2"><a href="#multiple-targets">Multiple targets</a></li> +<li class="toc-entry toc-h2"><a href="#accordion-example">Accordion example</a></li> +<li class="toc-entry toc-h2"><a href="#accessibility">Accessibility</a></li> +<li class="toc-entry toc-h2"><a href="#usage">Usage</a> +<ul> +<li class="toc-entry toc-h3"><a href="#via-data-attributes">Via data attributes</a></li> +<li class="toc-entry toc-h3"><a href="#via-javascript">Via JavaScript</a></li> +<li class="toc-entry toc-h3"><a href="#options">Options</a></li> +<li class="toc-entry toc-h3"><a href="#methods">Methods</a> +<ul> +<li class="toc-entry toc-h4"><a href="#collapseoptions">.collapse(options)</a></li> +<li class="toc-entry toc-h4"><a href="#collapsetoggle">.collapse('toggle')</a></li> +<li class="toc-entry toc-h4"><a href="#collapseshow">.collapse('show')</a></li> +<li class="toc-entry toc-h4"><a href="#collapsehide">.collapse('hide')</a></li> +<li class="toc-entry toc-h4"><a href="#collapsedispose">.collapse('dispose')</a></li> +</ul> +</li> +<li class="toc-entry toc-h3"><a href="#events">Events</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Collapse</h1> + <p class="bd-lead">Toggle the visibility of content across your project with a few classes and our JavaScript plugins.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="how-it-works">How it works</h2> + +<p>The collapse JavaScript plugin is used to show and hide content. Buttons or anchors are used as triggers that are mapped to specific elements you toggle. Collapsing an element will animate the <code class="highlighter-rouge">height</code> from its current value to <code class="highlighter-rouge">0</code>. Given how CSS handles animations, you cannot use <code class="highlighter-rouge">padding</code> on a <code class="highlighter-rouge">.collapse</code> element. Instead, use the class as an independent wrapping element.</p> + +<div class="bd-callout bd-callout-info"> +<p>The animation effect of this component is dependent on the <code class="highlighter-rouge">prefers-reduced-motion</code> media query. See the <a href="/docs/4.3/getting-started/accessibility/#reduced-motion">reduced motion section of our accessibility documentation</a>.</p> +</div> + +<h2 id="example">Example</h2> + +<p>Click the buttons below to show and hide another element via class changes:</p> + +<ul> + <li><code class="highlighter-rouge">.collapse</code> hides content</li> + <li><code class="highlighter-rouge">.collapsing</code> is applied during transitions</li> + <li><code class="highlighter-rouge">.collapse.show</code> shows content</li> +</ul> + +<p>You can use a link with the <code class="highlighter-rouge">href</code> attribute, or a button with the <code class="highlighter-rouge">data-target</code> attribute. In both cases, the <code class="highlighter-rouge">data-toggle="collapse"</code> is required.</p> + +<div class="bd-example"> +<p> + <a class="btn btn-primary" data-toggle="collapse" href="#collapseExample" role="button" aria-expanded="false" aria-controls="collapseExample"> + Link with href + </a> + <button class="btn btn-primary" type="button" data-toggle="collapse" data-target="#collapseExample" aria-expanded="false" aria-controls="collapseExample"> + Button with data-target + </button> +</p> +<div class="collapse" id="collapseExample"> + <div class="card card-body"> + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><p></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">href=</span><span class="s">"#collapseExample"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">aria-controls=</span><span class="s">"collapseExample"</span><span class="nt">></span> + Link with href + <span class="nt"></a></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">data-target=</span><span class="s">"#collapseExample"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">aria-controls=</span><span class="s">"collapseExample"</span><span class="nt">></span> + Button with data-target + <span class="nt"></button></span> +<span class="nt"></p></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"collapse"</span> <span class="na">id=</span><span class="s">"collapseExample"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card card-body"</span><span class="nt">></span> + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="multiple-targets">Multiple targets</h2> + +<p>A <code class="highlighter-rouge"><button></code> or <code class="highlighter-rouge"><a></code> can show and hide multiple elements by referencing them with a JQuery selector in its <code class="highlighter-rouge">href</code> or <code class="highlighter-rouge">data-target</code> attribute. +Multiple <code class="highlighter-rouge"><button></code> or <code class="highlighter-rouge"><a></code> can show and hide an element if they each reference it with their <code class="highlighter-rouge">href</code> or <code class="highlighter-rouge">data-target</code> attribute</p> + +<div class="bd-example"> +<p> + <a class="btn btn-primary" data-toggle="collapse" href="#multiCollapseExample1" role="button" aria-expanded="false" aria-controls="multiCollapseExample1">Toggle first element</a> + <button class="btn btn-primary" type="button" data-toggle="collapse" data-target="#multiCollapseExample2" aria-expanded="false" aria-controls="multiCollapseExample2">Toggle second element</button> + <button class="btn btn-primary" type="button" data-toggle="collapse" data-target=".multi-collapse" aria-expanded="false" aria-controls="multiCollapseExample1 multiCollapseExample2">Toggle both elements</button> +</p> +<div class="row"> + <div class="col"> + <div class="collapse multi-collapse" id="multiCollapseExample1"> + <div class="card card-body"> + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. + </div> + </div> + </div> + <div class="col"> + <div class="collapse multi-collapse" id="multiCollapseExample2"> + <div class="card card-body"> + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. + </div> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><p></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">href=</span><span class="s">"#multiCollapseExample1"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">aria-controls=</span><span class="s">"multiCollapseExample1"</span><span class="nt">></span>Toggle first element<span class="nt"></a></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">data-target=</span><span class="s">"#multiCollapseExample2"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">aria-controls=</span><span class="s">"multiCollapseExample2"</span><span class="nt">></span>Toggle second element<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">data-target=</span><span class="s">".multi-collapse"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">aria-controls=</span><span class="s">"multiCollapseExample1 multiCollapseExample2"</span><span class="nt">></span>Toggle both elements<span class="nt"></button></span> +<span class="nt"></p></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"collapse multi-collapse"</span> <span class="na">id=</span><span class="s">"multiCollapseExample1"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card card-body"</span><span class="nt">></span> + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"collapse multi-collapse"</span> <span class="na">id=</span><span class="s">"multiCollapseExample2"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card card-body"</span><span class="nt">></span> + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="accordion-example">Accordion example</h2> + +<p>Using the <a href="/docs/4.3/components/card/">card</a> component, you can extend the default collapse behavior to create an accordion. To properly achieve the accordion style, be sure to use <code class="highlighter-rouge">.accordion</code> as a wrapper.</p> + +<div class="bd-example"> +<div class="accordion" id="accordionExample"> + <div class="card"> + <div class="card-header" id="headingOne"> + <h2 class="mb-0"> + <button class="btn btn-link" type="button" data-toggle="collapse" data-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne"> + Collapsible Group Item #1 + </button> + </h2> + </div> + + <div id="collapseOne" class="collapse show" aria-labelledby="headingOne" data-parent="#accordionExample"> + <div class="card-body"> + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS. + </div> + </div> + </div> + <div class="card"> + <div class="card-header" id="headingTwo"> + <h2 class="mb-0"> + <button class="btn btn-link collapsed" type="button" data-toggle="collapse" data-target="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo"> + Collapsible Group Item #2 + </button> + </h2> + </div> + <div id="collapseTwo" class="collapse" aria-labelledby="headingTwo" data-parent="#accordionExample"> + <div class="card-body"> + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS. + </div> + </div> + </div> + <div class="card"> + <div class="card-header" id="headingThree"> + <h2 class="mb-0"> + <button class="btn btn-link collapsed" type="button" data-toggle="collapse" data-target="#collapseThree" aria-expanded="false" aria-controls="collapseThree"> + Collapsible Group Item #3 + </button> + </h2> + </div> + <div id="collapseThree" class="collapse" aria-labelledby="headingThree" data-parent="#accordionExample"> + <div class="card-body"> + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS. + </div> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"accordion"</span> <span class="na">id=</span><span class="s">"accordionExample"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span> <span class="na">id=</span><span class="s">"headingOne"</span><span class="nt">></span> + <span class="nt"><h2</span> <span class="na">class=</span><span class="s">"mb-0"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-link"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">data-target=</span><span class="s">"#collapseOne"</span> <span class="na">aria-expanded=</span><span class="s">"true"</span> <span class="na">aria-controls=</span><span class="s">"collapseOne"</span><span class="nt">></span> + Collapsible Group Item #1 + <span class="nt"></button></span> + <span class="nt"></h2></span> + <span class="nt"></div></span> + + <span class="nt"><div</span> <span class="na">id=</span><span class="s">"collapseOne"</span> <span class="na">class=</span><span class="s">"collapse show"</span> <span class="na">aria-labelledby=</span><span class="s">"headingOne"</span> <span class="na">data-parent=</span><span class="s">"#accordionExample"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span> <span class="na">id=</span><span class="s">"headingTwo"</span><span class="nt">></span> + <span class="nt"><h2</span> <span class="na">class=</span><span class="s">"mb-0"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-link collapsed"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">data-target=</span><span class="s">"#collapseTwo"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">aria-controls=</span><span class="s">"collapseTwo"</span><span class="nt">></span> + Collapsible Group Item #2 + <span class="nt"></button></span> + <span class="nt"></h2></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">id=</span><span class="s">"collapseTwo"</span> <span class="na">class=</span><span class="s">"collapse"</span> <span class="na">aria-labelledby=</span><span class="s">"headingTwo"</span> <span class="na">data-parent=</span><span class="s">"#accordionExample"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-header"</span> <span class="na">id=</span><span class="s">"headingThree"</span><span class="nt">></span> + <span class="nt"><h2</span> <span class="na">class=</span><span class="s">"mb-0"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-link collapsed"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">data-target=</span><span class="s">"#collapseThree"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">aria-controls=</span><span class="s">"collapseThree"</span><span class="nt">></span> + Collapsible Group Item #3 + <span class="nt"></button></span> + <span class="nt"></h2></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">id=</span><span class="s">"collapseThree"</span> <span class="na">class=</span><span class="s">"collapse"</span> <span class="na">aria-labelledby=</span><span class="s">"headingThree"</span> <span class="na">data-parent=</span><span class="s">"#accordionExample"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="accessibility">Accessibility</h2> + +<p>Be sure to add <code class="highlighter-rouge">aria-expanded</code> to the control element. This attribute explicitly conveys the current state of the collapsible element tied to the control to screen readers and similar assistive technologies. If the collapsible element is closed by default, the attribute on the control element should have a value of <code class="highlighter-rouge">aria-expanded="false"</code>. If you’ve set the collapsible element to be open by default using the <code class="highlighter-rouge">show</code> class, set <code class="highlighter-rouge">aria-expanded="true"</code> on the control instead. The plugin will automatically toggle this attribute on the control based on whether or not the collapsible element has been opened or closed (via JavaScript, or because the user triggered another control element also tied to the same collapsbile element). If the control element’s HTML element is not a button (e.g., an <code class="highlighter-rouge"><a></code> or <code class="highlighter-rouge"><div></code>), the attribute <code class="highlighter-rouge">role="button"</code> should be added to the element.</p> + +<p>If your control element is targeting a single collapsible element – i.e. the <code class="highlighter-rouge">data-target</code> attribute is pointing to an <code class="highlighter-rouge">id</code> selector – you should add the <code class="highlighter-rouge">aria-controls</code> attribute to the control element, containing the <code class="highlighter-rouge">id</code> of the collapsible element. Modern screen readers and similar assistive technologies make use of this attribute to provide users with additional shortcuts to navigate directly to the collapsible element itself.</p> + +<p>Note that Bootstrap’s current implementation does not cover the various keyboard interactions described in the <a href="https://www.w3.org/TR/wai-aria-practices-1.1/#accordion">WAI-ARIA Authoring Practices 1.1 accordion pattern</a> - you will need to include these yourself with custom JavaScript.</p> + +<h2 id="usage">Usage</h2> + +<p>The collapse plugin utilizes a few classes to handle the heavy lifting:</p> + +<ul> + <li><code class="highlighter-rouge">.collapse</code> hides the content</li> + <li><code class="highlighter-rouge">.collapse.show</code> shows the content</li> + <li><code class="highlighter-rouge">.collapsing</code> is added when the transition starts, and removed when it finishes</li> +</ul> + +<p>These classes can be found in <code class="highlighter-rouge">_transitions.scss</code>.</p> + +<h3 id="via-data-attributes">Via data attributes</h3> + +<p>Just add <code class="highlighter-rouge">data-toggle="collapse"</code> and a <code class="highlighter-rouge">data-target</code> to the element to automatically assign control of one or more collapsible elements. The <code class="highlighter-rouge">data-target</code> attribute accepts a CSS selector to apply the collapse to. Be sure to add the class <code class="highlighter-rouge">collapse</code> to the collapsible element. If you’d like it to default open, add the additional class <code class="highlighter-rouge">show</code>.</p> + +<p>To add accordion-like group management to a collapsible area, add the data attribute <code class="highlighter-rouge">data-parent="#selector"</code>. Refer to the demo to see this in action.</p> + +<h3 id="via-javascript">Via JavaScript</h3> + +<p>Enable manually with:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'.collapse'</span><span class="p">).</span><span class="nx">collapse</span><span class="p">()</span></code></pre></figure> + +<h3 id="options">Options</h3> + +<p>Options can be passed via data attributes or JavaScript. For data attributes, append the option name to <code class="highlighter-rouge">data-</code>, as in <code class="highlighter-rouge">data-parent=""</code>.</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 100px;">Name</th> + <th style="width: 50px;">Type</th> + <th style="width: 50px;">Default</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>parent</td> + <td>selector | jQuery object | DOM element </td> + <td>false</td> + <td>If parent is provided, then all collapsible elements under the specified parent will be closed when this collapsible item is shown. (similar to traditional accordion behavior - this is dependent on the <code>card</code> class). The attribute has to be set on the target collapsible area.</td> + </tr> + <tr> + <td>toggle</td> + <td>boolean</td> + <td>true</td> + <td>Toggles the collapsible element on invocation</td> + </tr> + </tbody> +</table> + +<h3 id="methods">Methods</h3> + +<div class="bd-callout bd-callout-danger"> +<h4 id="asynchronous-methods-and-transitions">Asynchronous methods and transitions</h4> + +<p>All API methods are <strong>asynchronous</strong> and start a <strong>transition</strong>. They return to the caller as soon as the transition is started but <strong>before it ends</strong>. In addition, a method call on a <strong>transitioning component will be ignored</strong>.</p> + +<p><a href="/docs/4.3/getting-started/javascript/">See our JavaScript documentation for more information</a>.</p> +</div> + +<h4 id="collapseoptions"><code class="highlighter-rouge">.collapse(options)</code></h4> + +<p>Activates your content as a collapsible element. Accepts an optional options <code class="highlighter-rouge">object</code>.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myCollapsible'</span><span class="p">).</span><span class="nx">collapse</span><span class="p">({</span> + <span class="na">toggle</span><span class="p">:</span> <span class="kc">false</span> +<span class="p">})</span></code></pre></figure> + +<h4 id="collapsetoggle"><code class="highlighter-rouge">.collapse('toggle')</code></h4> + +<p>Toggles a collapsible element to shown or hidden. <strong>Returns to the caller before the collapsible element has actually been shown or hidden</strong> (i.e. before the <code class="highlighter-rouge">shown.bs.collapse</code> or <code class="highlighter-rouge">hidden.bs.collapse</code> event occurs).</p> + +<h4 id="collapseshow"><code class="highlighter-rouge">.collapse('show')</code></h4> + +<p>Shows a collapsible element. <strong>Returns to the caller before the collapsible element has actually been shown</strong> (i.e. before the <code class="highlighter-rouge">shown.bs.collapse</code> event occurs).</p> + +<h4 id="collapsehide"><code class="highlighter-rouge">.collapse('hide')</code></h4> + +<p>Hides a collapsible element. <strong>Returns to the caller before the collapsible element has actually been hidden</strong> (i.e. before the <code class="highlighter-rouge">hidden.bs.collapse</code> event occurs).</p> + +<h4 id="collapsedispose"><code class="highlighter-rouge">.collapse('dispose')</code></h4> + +<p>Destroys an element’s collapse.</p> + +<h3 id="events">Events</h3> + +<p>Bootstrap’s collapse class exposes a few events for hooking into collapse functionality.</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 150px;">Event Type</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>show.bs.collapse</td> + <td>This event fires immediately when the <code>show</code> instance method is called.</td> + </tr> + <tr> + <td>shown.bs.collapse</td> + <td>This event is fired when a collapse element has been made visible to the user (will wait for CSS transitions to complete).</td> + </tr> + <tr> + <td>hide.bs.collapse</td> + <td>This event is fired immediately when the <code>hide</code> method has been called.</td> + </tr> + <tr> + <td>hidden.bs.collapse</td> + <td>This event is fired when a collapse element has been hidden from the user (will wait for CSS transitions to complete).</td> + </tr> + </tbody> +</table> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myCollapsible'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'hidden.bs.collapse'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> + <span class="c1">// do something...</span> +<span class="p">})</span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/dropdowns/index.html b/docs/4.3/components/dropdowns/index.html new file mode 100644 index 0000000000..7b8c4466cb --- /dev/null +++ b/docs/4.3/components/dropdowns/index.html @@ -0,0 +1,1605 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Toggle contextual overlays for displaying lists of links and more with the Bootstrap dropdown plugin."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Dropdowns · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/dropdowns/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Dropdowns"> +<meta name="twitter:description" content="Toggle contextual overlays for displaying lists of links and more with the Bootstrap dropdown plugin."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/dropdowns/"> +<meta property="og:title" content="Dropdowns"> +<meta property="og:description" content="Toggle contextual overlays for displaying lists of links and more with the Bootstrap dropdown plugin."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#overview">Overview</a></li> +<li class="toc-entry toc-h2"><a href="#accessibility">Accessibility</a></li> +<li class="toc-entry toc-h2"><a href="#examples">Examples</a> +<ul> +<li class="toc-entry toc-h3"><a href="#single-button">Single button</a></li> +<li class="toc-entry toc-h3"><a href="#split-button">Split button</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#sizing">Sizing</a></li> +<li class="toc-entry toc-h2"><a href="#directions">Directions</a> +<ul> +<li class="toc-entry toc-h3"><a href="#dropup">Dropup</a></li> +<li class="toc-entry toc-h3"><a href="#dropright">Dropright</a></li> +<li class="toc-entry toc-h3"><a href="#dropleft">Dropleft</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#menu-items">Menu items</a> +<ul> +<li class="toc-entry toc-h3"><a href="#active">Active</a></li> +<li class="toc-entry toc-h3"><a href="#disabled">Disabled</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#menu-alignment">Menu alignment</a> +<ul> +<li class="toc-entry toc-h3"><a href="#responsive-alignment">Responsive alignment</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#menu-content">Menu content</a> +<ul> +<li class="toc-entry toc-h3"><a href="#headers">Headers</a></li> +<li class="toc-entry toc-h3"><a href="#dividers">Dividers</a></li> +<li class="toc-entry toc-h3"><a href="#text">Text</a></li> +<li class="toc-entry toc-h3"><a href="#forms">Forms</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#dropdown-options">Dropdown options</a></li> +<li class="toc-entry toc-h2"><a href="#usage">Usage</a> +<ul> +<li class="toc-entry toc-h3"><a href="#via-data-attributes">Via data attributes</a></li> +<li class="toc-entry toc-h3"><a href="#via-javascript">Via JavaScript</a></li> +<li class="toc-entry toc-h3"><a href="#options">Options</a></li> +<li class="toc-entry toc-h3"><a href="#methods">Methods</a></li> +<li class="toc-entry toc-h3"><a href="#events">Events</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Dropdowns</h1> + <p class="bd-lead">Toggle contextual overlays for displaying lists of links and more with the Bootstrap dropdown plugin.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="overview">Overview</h2> + +<p>Dropdowns are toggleable, contextual overlays for displaying lists of links and more. They’re made interactive with the included Bootstrap dropdown JavaScript plugin. They’re toggled by clicking, not by hovering; this is <a href="http://markdotto.com/2012/02/27/bootstrap-explained-dropdowns/">an intentional design decision</a>.</p> + +<p>Dropdowns are built on a third party library, <a href="https://popper.js.org/">Popper.js</a>, which provides dynamic positioning and viewport detection. Be sure to include <a href="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js">popper.min.js</a> before Bootstrap’s JavaScript or use <code class="highlighter-rouge">bootstrap.bundle.min.js</code> / <code class="highlighter-rouge">bootstrap.bundle.js</code> which contains Popper.js. Popper.js isn’t used to position dropdowns in navbars though as dynamic positioning isn’t required.</p> + +<p>If you’re building our JavaScript from source, it <a href="/docs/4.3/getting-started/javascript/#util">requires <code class="highlighter-rouge">util.js</code></a>.</p> + +<h2 id="accessibility">Accessibility</h2> + +<p>The <a href="https://www.w3.org/TR/wai-aria/"><abbr title="Web Accessibility Initiative">WAI</abbr> <abbr title="Accessible Rich Internet Applications">ARIA</abbr></a> standard defines an actual <a href="https://www.w3.org/WAI/PF/aria/roles#menu"><code class="highlighter-rouge">role="menu"</code> widget</a>, but this is specific to application-like menus which trigger actions or functions. <abbr title="Accessible Rich Internet Applications">ARIA</abbr> menus can only contain menu items, checkbox menu items, radio button menu items, radio button groups, and sub-menus.</p> + +<p>Bootstrap’s dropdowns, on the other hand, are designed to be generic and applicable to a variety of situations and markup structures. For instance, it is possible to create dropdowns that contain additional inputs and form controls, such as search fields or login forms. For this reason, Bootstrap does not expect (nor automatically add) any of the <code class="highlighter-rouge">role</code> and <code class="highlighter-rouge">aria-</code> attributes required for true <abbr title="Accessible Rich Internet Applications">ARIA</abbr> menus. Authors will have to include these more specific attributes themselves.</p> + +<p>However, Bootstrap does add built-in support for most standard keyboard menu interactions, such as the ability to move through individual <code class="highlighter-rouge">.dropdown-item</code> elements using the cursor keys and close the menu with the <kbd>ESC</kbd> key.</p> + +<h2 id="examples">Examples</h2> + +<p>Wrap the dropdown’s toggle (your button or link) and the dropdown menu within <code class="highlighter-rouge">.dropdown</code>, or another element that declares <code class="highlighter-rouge">position: relative;</code>. Dropdowns can be triggered from <code class="highlighter-rouge"><a></code> or <code class="highlighter-rouge"><button></code> elements to better fit your potential needs.</p> + +<h3 id="single-button">Single button</h3> + +<p>Any single <code class="highlighter-rouge">.btn</code> can be turned into a dropdown toggle with some markup changes. Here’s how you can put them to work with either <code class="highlighter-rouge"><button></code> elements:</p> + +<div class="bd-example"> +<div class="dropdown"> + <button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Dropdown button + </button> + <div class="dropdown-menu" aria-labelledby="dropdownMenuButton"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-secondary dropdown-toggle"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">id=</span><span class="s">"dropdownMenuButton"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + Dropdown button + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span> <span class="na">aria-labelledby=</span><span class="s">"dropdownMenuButton"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Something else here<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>And with <code class="highlighter-rouge"><a></code> elements:</p> + +<div class="bd-example"> +<div class="dropdown"> + <a class="btn btn-secondary dropdown-toggle" href="#" role="button" id="dropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Dropdown link + </a> + + <div class="dropdown-menu" aria-labelledby="dropdownMenuLink"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"btn btn-secondary dropdown-toggle"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">id=</span><span class="s">"dropdownMenuLink"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + Dropdown link + <span class="nt"></a></span> + + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span> <span class="na">aria-labelledby=</span><span class="s">"dropdownMenuLink"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Something else here<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>The best part is you can do this with any button variant, too:</p> + +<div class="bd-example"> + <div class="btn-group"> + <button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Primary</button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div><!-- /btn-group --> + <div class="btn-group"> + <button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Secondary</button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div><!-- /btn-group --> + <div class="btn-group"> + <button type="button" class="btn btn-success dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Success</button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div><!-- /btn-group --> + <div class="btn-group"> + <button type="button" class="btn btn-info dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Info</button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div><!-- /btn-group --> + <div class="btn-group"> + <button type="button" class="btn btn-warning dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Warning</button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div><!-- /btn-group --> + <div class="btn-group"> + <button type="button" class="btn btn-danger dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Danger</button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div><!-- /btn-group --> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Example single danger button --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-danger dropdown-toggle"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + Action + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Something else here<span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-divider"</span><span class="nt">></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Separated link<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="split-button">Split button</h3> + +<p>Similarly, create split button dropdowns with virtually the same markup as single button dropdowns, but with the addition of <code class="highlighter-rouge">.dropdown-toggle-split</code> for proper spacing around the dropdown caret.</p> + +<p>We use this extra class to reduce the horizontal <code class="highlighter-rouge">padding</code> on either side of the caret by 25% and remove the <code class="highlighter-rouge">margin-left</code> that’s added for regular button dropdowns. Those extra changes keep the caret centered in the split button and provide a more appropriately sized hit area next to the main button.</p> + +<div class="bd-example"> + <div class="btn-group"> + <button type="button" class="btn btn-primary">Primary</button> + <button type="button" class="btn btn-primary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + <span class="sr-only">Toggle Dropdown</span> + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div><!-- /btn-group --> + <div class="btn-group"> + <button type="button" class="btn btn-secondary">Secondary</button> + <button type="button" class="btn btn-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + <span class="sr-only">Toggle Dropdown</span> + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div><!-- /btn-group --> + <div class="btn-group"> + <button type="button" class="btn btn-success">Success</button> + <button type="button" class="btn btn-success dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + <span class="sr-only">Toggle Dropdown</span> + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div><!-- /btn-group --> + <div class="btn-group"> + <button type="button" class="btn btn-info">Info</button> + <button type="button" class="btn btn-info dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + <span class="sr-only">Toggle Dropdown</span> + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div><!-- /btn-group --> + <div class="btn-group"> + <button type="button" class="btn btn-warning">Warning</button> + <button type="button" class="btn btn-warning dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + <span class="sr-only">Toggle Dropdown</span> + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div><!-- /btn-group --> + <div class="btn-group"> + <button type="button" class="btn btn-danger">Danger</button> + <button type="button" class="btn btn-danger dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + <span class="sr-only">Toggle Dropdown</span> + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div><!-- /btn-group --> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Example split danger button --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-danger"</span><span class="nt">></span>Action<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-danger dropdown-toggle dropdown-toggle-split"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Toggle Dropdown<span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Something else here<span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-divider"</span><span class="nt">></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Separated link<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="sizing">Sizing</h2> + +<p>Button dropdowns work with buttons of all sizes, including default and split dropdown buttons.</p> + +<div class="bd-example"> + <div class="btn-toolbar" role="toolbar"> + <div class="btn-group"> + <button class="btn btn-secondary btn-lg dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Large button + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div><!-- /btn-group --> + <div class="btn-group ml-2"> + <button type="button" class="btn btn-lg btn-secondary">Large split button</button> + <button type="button" class="btn btn-lg btn-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + <span class="sr-only">Toggle Dropdown</span> + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div><!-- /btn-group --> + </div><!-- /btn-toolbar --> + <div class="btn-toolbar" role="toolbar"> + <div class="btn-group"> + <button class="btn btn-secondary btn-sm dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Small button + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div><!-- /btn-group --> + <div class="btn-group ml-2"> + <button type="button" class="btn btn-sm btn-secondary">Small split button</button> + <button type="button" class="btn btn-sm btn-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + <span class="sr-only">Toggle Dropdown</span> + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div><!-- /btn-group --> + </div><!-- /btn-toolbar --> +</div> +<!-- /example --> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Large button groups (default and split) --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-secondary btn-lg dropdown-toggle"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + Large button + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + ... + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-secondary btn-lg"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span> + Large split button + <span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-lg btn-secondary dropdown-toggle dropdown-toggle-split"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Toggle Dropdown<span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + ... + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="c"><!-- Small button groups (default and split) --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-secondary btn-sm dropdown-toggle"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + Small button + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + ... + <span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-secondary btn-sm"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span> + Small split button + <span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-sm btn-secondary dropdown-toggle dropdown-toggle-split"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Toggle Dropdown<span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + ... + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="directions">Directions</h2> + +<h3 id="dropup">Dropup</h3> + +<p>Trigger dropdown menus above elements by adding <code class="highlighter-rouge">.dropup</code> to the parent element.</p> + +<div class="bd-example"> + <div class="btn-group dropup"> + <button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Dropup + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div> + + <div class="btn-group dropup"> + <button type="button" class="btn btn-secondary"> + Split dropup + </button> + <button type="button" class="btn btn-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + <span class="sr-only">Toggle Dropdown</span> + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Default dropup button --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group dropup"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary dropdown-toggle"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + Dropup + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="c"><!-- Dropdown menu links --></span> + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="c"><!-- Split dropup button --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group dropup"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span> + Split dropup + <span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary dropdown-toggle dropdown-toggle-split"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Toggle Dropdown<span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="c"><!-- Dropdown menu links --></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="dropright">Dropright</h3> + +<p>Trigger dropdown menus at the right of the elements by adding <code class="highlighter-rouge">.dropright</code> to the parent element.</p> + +<div class="bd-example"> + <div class="btn-group dropright"> + <button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Dropright + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div> + + <div class="btn-group dropright"> + <button type="button" class="btn btn-secondary"> + Split dropright + </button> + <button type="button" class="btn btn-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + <span class="sr-only">Toggle Dropright</span> + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Default dropright button --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group dropright"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary dropdown-toggle"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + Dropright + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="c"><!-- Dropdown menu links --></span> + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="c"><!-- Split dropright button --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group dropright"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span> + Split dropright + <span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary dropdown-toggle dropdown-toggle-split"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Toggle Dropright<span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="c"><!-- Dropdown menu links --></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="dropleft">Dropleft</h3> + +<p>Trigger dropdown menus at the left of the elements by adding <code class="highlighter-rouge">.dropleft</code> to the parent element.</p> + +<div class="bd-example"> + <div class="btn-group dropleft"> + <button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Dropleft + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div> + + <div class="btn-group"> + <div class="btn-group dropleft" role="group"> + <button type="button" class="btn btn-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + <span class="sr-only">Toggle Dropleft</span> + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div> + <button type="button" class="btn btn-secondary"> + Split dropleft + </button> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Default dropleft button --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group dropleft"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary dropdown-toggle"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + Dropleft + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="c"><!-- Dropdown menu links --></span> + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="c"><!-- Split dropleft button --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group dropleft"</span> <span class="na">role=</span><span class="s">"group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary dropdown-toggle dropdown-toggle-split"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Toggle Dropleft<span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="c"><!-- Dropdown menu links --></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span> + Split dropleft + <span class="nt"></button></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="menu-items">Menu items</h2> + +<p>Historically dropdown menu contents <em>had</em> to be links, but that’s no longer the case with v4. Now you can optionally use <code class="highlighter-rouge"><button></code> elements in your dropdowns instead of just <code class="highlighter-rouge"><a></code>s.</p> + +<div class="bd-example"> +<div class="dropdown"> + <button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenu2" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Dropdown + </button> + <div class="dropdown-menu" aria-labelledby="dropdownMenu2"> + <button class="dropdown-item" type="button">Action</button> + <button class="dropdown-item" type="button">Another action</button> + <button class="dropdown-item" type="button">Something else here</button> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-secondary dropdown-toggle"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">id=</span><span class="s">"dropdownMenu2"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + Dropdown + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span> <span class="na">aria-labelledby=</span><span class="s">"dropdownMenu2"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Action<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Another action<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Something else here<span class="nt"></button></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>You can also create non-interactive dropdown items with <code class="highlighter-rouge">.dropdown-item-text</code>. Feel free to style further with custom CSS or text utilities.</p> + +<div class="bd-example"> +<div class="dropdown-menu"> + <span class="dropdown-item-text">Dropdown item text</span> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"dropdown-item-text"</span><span class="nt">></span>Dropdown item text<span class="nt"></span></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Something else here<span class="nt"></a></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="active">Active</h3> + +<p>Add <code class="highlighter-rouge">.active</code> to items in the dropdown to <strong>style them as active</strong>.</p> + +<div class="bd-example"> +<div class="dropdown-menu"> + <a class="dropdown-item" href="#">Regular link</a> + <a class="dropdown-item active" href="#">Active link</a> + <a class="dropdown-item" href="#">Another link</a> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Regular link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another link<span class="nt"></a></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="disabled">Disabled</h3> + +<p>Add <code class="highlighter-rouge">.disabled</code> to items in the dropdown to <strong>style them as disabled</strong>.</p> + +<div class="bd-example"> +<div class="dropdown-menu"> + <a class="dropdown-item" href="#">Regular link</a> + <a class="dropdown-item disabled" href="#" tabindex="-1" aria-disabled="true">Disabled link</a> + <a class="dropdown-item" href="#">Another link</a> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Regular link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another link<span class="nt"></a></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="menu-alignment">Menu alignment</h2> + +<p>By default, a dropdown menu is automatically positioned 100% from the top and along the left side of its parent. Add <code class="highlighter-rouge">.dropdown-menu-right</code> to a <code class="highlighter-rouge">.dropdown-menu</code> to right align the dropdown menu.</p> + +<div class="bd-callout bd-callout-info"> +<p><strong>Heads up!</strong> Dropdowns are positioned thanks to Popper.js (except when they are contained in a navbar).</p> +</div> + +<div class="bd-example"> +<div class="btn-group"> + <button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Right-aligned menu + </button> + <div class="dropdown-menu dropdown-menu-right"> + <button class="dropdown-item" type="button">Action</button> + <button class="dropdown-item" type="button">Another action</button> + <button class="dropdown-item" type="button">Something else here</button> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary dropdown-toggle"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + Right-aligned menu + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu dropdown-menu-right"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Action<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Another action<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Something else here<span class="nt"></button></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="responsive-alignment">Responsive alignment</h3> + +<p>If you want to use responsive alignment, disable dynamic positioning by adding the <code class="highlighter-rouge">data-display="static"</code> attribute and use the responsive variation classes.</p> + +<p>To align <strong>right</strong> the dropdown menu with the given breakpoint or larger, add <code class="highlighter-rouge">.dropdown-menu{-sm|-md|-lg|-xl}-right</code>.</p> + +<div class="bd-example"> +<div class="btn-group"> + <button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" data-display="static" aria-haspopup="true" aria-expanded="false"> + Left-aligned but right aligned when large screen + </button> + <div class="dropdown-menu dropdown-menu-lg-right"> + <button class="dropdown-item" type="button">Action</button> + <button class="dropdown-item" type="button">Another action</button> + <button class="dropdown-item" type="button">Something else here</button> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary dropdown-toggle"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">data-display=</span><span class="s">"static"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + Left-aligned but right aligned when large screen + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu dropdown-menu-lg-right"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Action<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Another action<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Something else here<span class="nt"></button></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>To align <strong>left</strong> the dropdown menu with the given breakpoint or larger, add <code class="highlighter-rouge">.dropdown-menu-right</code> and <code class="highlighter-rouge">.dropdown-menu{-sm|-md|-lg|-xl}-left</code>.</p> + +<div class="bd-example"> +<div class="btn-group"> + <button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" data-display="static" aria-haspopup="true" aria-expanded="false"> + Right-aligned but left aligned when large screen + </button> + <div class="dropdown-menu dropdown-menu-right dropdown-menu-lg-left"> + <button class="dropdown-item" type="button">Action</button> + <button class="dropdown-item" type="button">Another action</button> + <button class="dropdown-item" type="button">Something else here</button> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary dropdown-toggle"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">data-display=</span><span class="s">"static"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + Right-aligned but left aligned when large screen + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu dropdown-menu-right dropdown-menu-lg-left"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Action<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Another action<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Something else here<span class="nt"></button></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Note that you don’t need to add a <code class="highlighter-rouge">data-display="static"</code> attribute to dropdown buttons in navbars, since Popper.js isn’t used in navbars.</p> + +<h2 id="menu-content">Menu content</h2> + +<h3 id="headers">Headers</h3> + +<p>Add a header to label sections of actions in any dropdown menu.</p> + +<div class="bd-example"> +<div class="dropdown-menu"> + <h6 class="dropdown-header">Dropdown header</h6> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="nt"><h6</span> <span class="na">class=</span><span class="s">"dropdown-header"</span><span class="nt">></span>Dropdown header<span class="nt"></h6></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="dividers">Dividers</h3> + +<p>Separate groups of related menu items with a divider.</p> + +<div class="bd-example"> +<div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Something else here<span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-divider"</span><span class="nt">></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Separated link<span class="nt"></a></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="text">Text</h3> + +<p>Place any freeform text within a dropdown menu with text and use <a href="/docs/4.3/utilities/spacing/">spacing utilities</a>. Note that you’ll likely need additional sizing styles to constrain the menu width.</p> + +<div class="bd-example"> +<div class="dropdown-menu p-4 text-muted" style="max-width: 200px;"> + <p> + Some example text that's free-flowing within the dropdown menu. + </p> + <p class="mb-0"> + And this is more example text. + </p> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu p-4 text-muted"</span> <span class="na">style=</span><span class="s">"max-width: 200px;"</span><span class="nt">></span> + <span class="nt"><p></span> + Some example text that's free-flowing within the dropdown menu. + <span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"mb-0"</span><span class="nt">></span> + And this is more example text. + <span class="nt"></p></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="forms">Forms</h3> + +<p>Put a form within a dropdown menu, or make it into a dropdown menu, and use <a href="/docs/4.3/utilities/spacing/">margin or padding utilities</a> to give it the negative space you require.</p> + +<div class="bd-example"> +<div class="dropdown-menu"> + <form class="px-4 py-3"> + <div class="form-group"> + <label for="exampleDropdownFormEmail1">Email address</label> + <input type="email" class="form-control" id="exampleDropdownFormEmail1" placeholder="email@example.com" /> + </div> + <div class="form-group"> + <label for="exampleDropdownFormPassword1">Password</label> + <input type="password" class="form-control" id="exampleDropdownFormPassword1" placeholder="Password" /> + </div> + <div class="form-group"> + <div class="form-check"> + <input type="checkbox" class="form-check-input" id="dropdownCheck" /> + <label class="form-check-label" for="dropdownCheck"> + Remember me + </label> + </div> + </div> + <button type="submit" class="btn btn-primary">Sign in</button> + </form> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">New around here? Sign up</a> + <a class="dropdown-item" href="#">Forgot password?</a> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="nt"><form</span> <span class="na">class=</span><span class="s">"px-4 py-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"exampleDropdownFormEmail1"</span><span class="nt">></span>Email address<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"email"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"exampleDropdownFormEmail1"</span> <span class="na">placeholder=</span><span class="s">"email@example.com"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"exampleDropdownFormPassword1"</span><span class="nt">></span>Password<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"password"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"exampleDropdownFormPassword1"</span> <span class="na">placeholder=</span><span class="s">"Password"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">id=</span><span class="s">"dropdownCheck"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"dropdownCheck"</span><span class="nt">></span> + Remember me + <span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"submit"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Sign in<span class="nt"></button></span> + <span class="nt"></form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-divider"</span><span class="nt">></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>New around here? Sign up<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Forgot password?<span class="nt"></a></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<form class="dropdown-menu p-4"> + <div class="form-group"> + <label for="exampleDropdownFormEmail2">Email address</label> + <input type="email" class="form-control" id="exampleDropdownFormEmail2" placeholder="email@example.com" /> + </div> + <div class="form-group"> + <label for="exampleDropdownFormPassword2">Password</label> + <input type="password" class="form-control" id="exampleDropdownFormPassword2" placeholder="Password" /> + </div> + <div class="form-group"> + <div class="form-check"> + <input type="checkbox" class="form-check-input" id="dropdownCheck2" /> + <label class="form-check-label" for="dropdownCheck2"> + Remember me + </label> + </div> + </div> + <button type="submit" class="btn btn-primary">Sign in</button> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form</span> <span class="na">class=</span><span class="s">"dropdown-menu p-4"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"exampleDropdownFormEmail2"</span><span class="nt">></span>Email address<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"email"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"exampleDropdownFormEmail2"</span> <span class="na">placeholder=</span><span class="s">"email@example.com"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"exampleDropdownFormPassword2"</span><span class="nt">></span>Password<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"password"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"exampleDropdownFormPassword2"</span> <span class="na">placeholder=</span><span class="s">"Password"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">id=</span><span class="s">"dropdownCheck2"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"dropdownCheck2"</span><span class="nt">></span> + Remember me + <span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"submit"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Sign in<span class="nt"></button></span> +<span class="nt"></form></span></code></pre></figure> + +<h2 id="dropdown-options">Dropdown options</h2> + +<p>Use <code class="highlighter-rouge">data-offset</code> or <code class="highlighter-rouge">data-reference</code> to change the location of the dropdown.</p> + +<div class="bd-example"> +<div class="d-flex"> + <div class="dropdown mr-1"> + <button type="button" class="btn btn-secondary dropdown-toggle" id="dropdownMenuOffset" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" data-offset="10,20"> + Offset + </button> + <div class="dropdown-menu" aria-labelledby="dropdownMenuOffset"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> + </div> + <div class="btn-group"> + <button type="button" class="btn btn-secondary">Reference</button> + <button type="button" class="btn btn-secondary dropdown-toggle dropdown-toggle-split" id="dropdownMenuReference" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" data-reference="parent"> + <span class="sr-only">Toggle Dropdown</span> + </button> + <div class="dropdown-menu" aria-labelledby="dropdownMenuReference"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown mr-1"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary dropdown-toggle"</span> <span class="na">id=</span><span class="s">"dropdownMenuOffset"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">data-offset=</span><span class="s">"10,20"</span><span class="nt">></span> + Offset + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span> <span class="na">aria-labelledby=</span><span class="s">"dropdownMenuOffset"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Something else here<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"btn-group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span><span class="nt">></span>Reference<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary dropdown-toggle dropdown-toggle-split"</span> <span class="na">id=</span><span class="s">"dropdownMenuReference"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">data-reference=</span><span class="s">"parent"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Toggle Dropdown<span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span> <span class="na">aria-labelledby=</span><span class="s">"dropdownMenuReference"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Something else here<span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-divider"</span><span class="nt">></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Separated link<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="usage">Usage</h2> + +<p>Via data attributes or JavaScript, the dropdown plugin toggles hidden content (dropdown menus) by toggling the <code class="highlighter-rouge">.show</code> class on the parent list item. The <code class="highlighter-rouge">data-toggle="dropdown"</code> attribute is relied on for closing dropdown menus at an application level, so it’s a good idea to always use it.</p> + +<div class="bd-callout bd-callout-info"> +<p>On touch-enabled devices, opening a dropdown adds empty (<code class="highlighter-rouge">$.noop</code>) <code class="highlighter-rouge">mouseover</code> handlers to the immediate children of the <code class="highlighter-rouge"><body></code> element. This admittedly ugly hack is necessary to work around a <a href="https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html">quirk in iOS’ event delegation</a>, which would otherwise prevent a tap anywhere outside of the dropdown from triggering the code that closes the dropdown. Once the dropdown is closed, these additional empty <code class="highlighter-rouge">mouseover</code> handlers are removed.</p> +</div> + +<h3 id="via-data-attributes">Via data attributes</h3> + +<p>Add <code class="highlighter-rouge">data-toggle="dropdown"</code> to a link or button to toggle a dropdown.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">id=</span><span class="s">"dLabel"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + Dropdown trigger + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span> <span class="na">aria-labelledby=</span><span class="s">"dLabel"</span><span class="nt">></span> + ... + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="via-javascript">Via JavaScript</h3> + +<p>Call the dropdowns via JavaScript:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'.dropdown-toggle'</span><span class="p">).</span><span class="nx">dropdown</span><span class="p">()</span></code></pre></figure> + +<div class="bd-callout bd-callout-info"> +<h5 id="data-toggledropdown-still-required"><code class="highlighter-rouge">data-toggle="dropdown"</code> still required</h5> + +<p>Regardless of whether you call your dropdown via JavaScript or instead use the data-api, <code class="highlighter-rouge">data-toggle="dropdown"</code> is always required to be present on the dropdown’s trigger element.</p> +</div> + +<h3 id="options">Options</h3> + +<p>Options can be passed via data attributes or JavaScript. For data attributes, append the option name to <code class="highlighter-rouge">data-</code>, as in <code class="highlighter-rouge">data-offset=""</code>.</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 100px;">Name</th> + <th style="width: 100px;">Type</th> + <th style="width: 50px;">Default</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>offset</td> + <td>number | string | function</td> + <td>0</td> + <td> + <p>Offset of the dropdown relative to its target.</p> + <p>When a function is used to determine the offset, it is called with an object containing the offset data as its first argument. The function must return an object with the same structure. The triggering element DOM node is passed as the second argument.</p> + <p>For more information refer to Popper.js's <a href="https://popper.js.org/popper-documentation.html#modifiers..offset.offset">offset docs</a>.</p> + </td> + </tr> + <tr> + <td>flip</td> + <td>boolean</td> + <td>true</td> + <td>Allow Dropdown to flip in case of an overlapping on the reference element. For more information refer to Popper.js's <a href="https://popper.js.org/popper-documentation.html#modifiers..flip.enabled">flip docs</a>.</td> + </tr> + <tr> + <td>boundary</td> + <td>string | element</td> + <td>'scrollParent'</td> + <td>Overflow constraint boundary of the dropdown menu. Accepts the values of <code>'viewport'</code>, <code>'window'</code>, <code>'scrollParent'</code>, or an HTMLElement reference (JavaScript only). For more information refer to Popper.js's <a href="https://popper.js.org/popper-documentation.html#modifiers..preventOverflow.boundariesElement">preventOverflow docs</a>.</td> + </tr> + <tr> + <td>reference</td> + <td>string | element</td> + <td>'toggle'</td> + <td>Reference element of the dropdown menu. Accepts the values of <code>'toggle'</code>, <code>'parent'</code>, or an HTMLElement reference. For more information refer to Popper.js's <a href="https://popper.js.org/popper-documentation.html#referenceObject">referenceObject docs</a>.</td> + </tr> + <tr> + <td>display</td> + <td>string</td> + <td>'dynamic'</td> + <td>By default, we use Popper.js for dynamic positioning. Disable this with <code>static</code>.</td> + </tr> + </tbody> +</table> + +<p>Note when <code class="highlighter-rouge">boundary</code> is set to any value other than <code class="highlighter-rouge">'scrollParent'</code>, the style <code class="highlighter-rouge">position: static</code> is applied to the <code class="highlighter-rouge">.dropdown</code> container.</p> + +<h3 id="methods">Methods</h3> + +<table> + <thead> + <tr> + <th>Method</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td><code class="highlighter-rouge">$().dropdown('toggle')</code></td> + <td>Toggles the dropdown menu of a given navbar or tabbed navigation.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$().dropdown('show')</code></td> + <td>Shows the dropdown menu of a given navbar or tabbed navigation.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$().dropdown('hide')</code></td> + <td>Hides the dropdown menu of a given navbar or tabbed navigation.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$().dropdown('update')</code></td> + <td>Updates the position of an element’s dropdown.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$().dropdown('dispose')</code></td> + <td>Destroys an element’s dropdown.</td> + </tr> + </tbody> +</table> + +<h3 id="events">Events</h3> + +<p>All dropdown events are fired at the <code class="highlighter-rouge">.dropdown-menu</code>’s parent element and have a <code class="highlighter-rouge">relatedTarget</code> property, whose value is the toggling anchor element. +<code class="highlighter-rouge">hide.bs.dropdown</code> and <code class="highlighter-rouge">hidden.bs.dropdown</code> events have a <code class="highlighter-rouge">clickEvent</code> property (only when the original event type is <code class="highlighter-rouge">click</code>) that contains an Event Object for the click event.</p> + +<table> + <thead> + <tr> + <th>Event</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td><code class="highlighter-rouge">show.bs.dropdown</code></td> + <td>This event fires immediately when the show instance method is called.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">shown.bs.dropdown</code></td> + <td>This event is fired when the dropdown has been made visible to the user (will wait for CSS transitions, to complete).</td> + </tr> + <tr> + <td><code class="highlighter-rouge">hide.bs.dropdown</code></td> + <td>This event is fired immediately when the hide instance method has been called.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">hidden.bs.dropdown</code></td> + <td>This event is fired when the dropdown has finished being hidden from the user (will wait for CSS transitions, to complete).</td> + </tr> + </tbody> +</table> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myDropdown'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'show.bs.dropdown'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> + <span class="c1">// do something...</span> +<span class="p">})</span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/forms/index.html b/docs/4.3/components/forms/index.html new file mode 100644 index 0000000000..d360fd41a4 --- /dev/null +++ b/docs/4.3/components/forms/index.html @@ -0,0 +1,2709 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Examples and usage guidelines for form control styles, layout options, and custom components for creating a wide variety of forms."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Forms · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/forms/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Forms"> +<meta name="twitter:description" content="Examples and usage guidelines for form control styles, layout options, and custom components for creating a wide variety of forms."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/forms/"> +<meta property="og:title" content="Forms"> +<meta property="og:description" content="Examples and usage guidelines for form control styles, layout options, and custom components for creating a wide variety of forms."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#overview">Overview</a></li> +<li class="toc-entry toc-h2"><a href="#form-controls">Form controls</a> +<ul> +<li class="toc-entry toc-h3"><a href="#sizing">Sizing</a></li> +<li class="toc-entry toc-h3"><a href="#readonly">Readonly</a></li> +<li class="toc-entry toc-h3"><a href="#readonly-plain-text">Readonly plain text</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#range-inputs">Range Inputs</a></li> +<li class="toc-entry toc-h2"><a href="#checkboxes-and-radios">Checkboxes and radios</a> +<ul> +<li class="toc-entry toc-h3"><a href="#default-stacked">Default (stacked)</a></li> +<li class="toc-entry toc-h3"><a href="#inline">Inline</a></li> +<li class="toc-entry toc-h3"><a href="#without-labels">Without labels</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#layout">Layout</a> +<ul> +<li class="toc-entry toc-h3"><a href="#form-groups">Form groups</a></li> +<li class="toc-entry toc-h3"><a href="#form-grid">Form grid</a> +<ul> +<li class="toc-entry toc-h4"><a href="#form-row">Form row</a></li> +<li class="toc-entry toc-h4"><a href="#horizontal-form">Horizontal form</a></li> +<li class="toc-entry toc-h4"><a href="#column-sizing">Column sizing</a></li> +<li class="toc-entry toc-h4"><a href="#auto-sizing">Auto-sizing</a></li> +</ul> +</li> +<li class="toc-entry toc-h3"><a href="#inline-forms">Inline forms</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#help-text">Help text</a></li> +<li class="toc-entry toc-h2"><a href="#disabled-forms">Disabled forms</a></li> +<li class="toc-entry toc-h2"><a href="#validation">Validation</a> +<ul> +<li class="toc-entry toc-h3"><a href="#how-it-works">How it works</a></li> +<li class="toc-entry toc-h3"><a href="#custom-styles">Custom styles</a></li> +<li class="toc-entry toc-h3"><a href="#browser-defaults">Browser defaults</a></li> +<li class="toc-entry toc-h3"><a href="#server-side">Server side</a></li> +<li class="toc-entry toc-h3"><a href="#supported-elements">Supported elements</a></li> +<li class="toc-entry toc-h3"><a href="#tooltips">Tooltips</a></li> +<li class="toc-entry toc-h3"><a href="#customizing">Customizing</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#custom-forms">Custom forms</a> +<ul> +<li class="toc-entry toc-h3"><a href="#checkboxes-and-radios-1">Checkboxes and radios</a> +<ul> +<li class="toc-entry toc-h4"><a href="#checkboxes">Checkboxes</a></li> +<li class="toc-entry toc-h4"><a href="#radios">Radios</a></li> +<li class="toc-entry toc-h4"><a href="#inline-1">Inline</a></li> +<li class="toc-entry toc-h4"><a href="#disabled">Disabled</a></li> +</ul> +</li> +<li class="toc-entry toc-h3"><a href="#switches">Switches</a></li> +<li class="toc-entry toc-h3"><a href="#select-menu">Select menu</a></li> +<li class="toc-entry toc-h3"><a href="#range">Range</a></li> +<li class="toc-entry toc-h3"><a href="#file-browser">File browser</a> +<ul> +<li class="toc-entry toc-h4"><a href="#translating-or-customizing-the-strings-with-scss">Translating or customizing the strings with SCSS</a></li> +<li class="toc-entry toc-h4"><a href="#translating-or-customizing-the-strings-with-html">Translating or customizing the strings with HTML</a></li> +</ul> +</li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Forms</h1> + <p class="bd-lead">Examples and usage guidelines for form control styles, layout options, and custom components for creating a wide variety of forms.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="overview">Overview</h2> + +<p>Bootstrap’s form controls expand on <a href="/docs/4.3/content/reboot/#forms">our Rebooted form styles</a> with classes. Use these classes to opt into their customized displays for a more consistent rendering across browsers and devices.</p> + +<p>Be sure to use an appropriate <code class="highlighter-rouge">type</code> attribute on all inputs (e.g., <code class="highlighter-rouge">email</code> for email address or <code class="highlighter-rouge">number</code> for numerical information) to take advantage of newer input controls like email verification, number selection, and more.</p> + +<p>Here’s a quick example to demonstrate Bootstrap’s form styles. Keep reading for documentation on required classes, form layout, and more.</p> + +<div class="bd-example"> +<form> + <div class="form-group"> + <label for="exampleInputEmail1">Email address</label> + <input type="email" class="form-control" id="exampleInputEmail1" aria-describedby="emailHelp" placeholder="Enter email" /> + <small id="emailHelp" class="form-text text-muted">We'll never share your email with anyone else.</small> + </div> + <div class="form-group"> + <label for="exampleInputPassword1">Password</label> + <input type="password" class="form-control" id="exampleInputPassword1" placeholder="Password" /> + </div> + <div class="form-group form-check"> + <input type="checkbox" class="form-check-input" id="exampleCheck1" /> + <label class="form-check-label" for="exampleCheck1">Check me out</label> + </div> + <button type="submit" class="btn btn-primary">Submit</button> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"exampleInputEmail1"</span><span class="nt">></span>Email address<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"email"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"exampleInputEmail1"</span> <span class="na">aria-describedby=</span><span class="s">"emailHelp"</span> <span class="na">placeholder=</span><span class="s">"Enter email"</span><span class="nt">></span> + <span class="nt"><small</span> <span class="na">id=</span><span class="s">"emailHelp"</span> <span class="na">class=</span><span class="s">"form-text text-muted"</span><span class="nt">></span>We'll never share your email with anyone else.<span class="nt"></small></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"exampleInputPassword1"</span><span class="nt">></span>Password<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"password"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"exampleInputPassword1"</span> <span class="na">placeholder=</span><span class="s">"Password"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">id=</span><span class="s">"exampleCheck1"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"exampleCheck1"</span><span class="nt">></span>Check me out<span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"submit"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Submit<span class="nt"></button></span> +<span class="nt"></form></span></code></pre></figure> + +<h2 id="form-controls">Form controls</h2> + +<p>Textual form controls—like <code class="highlighter-rouge"><input></code>s, <code class="highlighter-rouge"><select></code>s, and <code class="highlighter-rouge"><textarea></code>s—are styled with the <code class="highlighter-rouge">.form-control</code> class. Included are styles for general appearance, focus state, sizing, and more.</p> + +<p>Be sure to explore our <a href="#custom-forms">custom forms</a> to further style <code class="highlighter-rouge"><select></code>s.</p> + +<div class="bd-example"> +<form> + <div class="form-group"> + <label for="exampleFormControlInput1">Email address</label> + <input type="email" class="form-control" id="exampleFormControlInput1" placeholder="name@example.com" /> + </div> + <div class="form-group"> + <label for="exampleFormControlSelect1">Example select</label> + <select class="form-control" id="exampleFormControlSelect1"> + <option>1</option> + <option>2</option> + <option>3</option> + <option>4</option> + <option>5</option> + </select> + </div> + <div class="form-group"> + <label for="exampleFormControlSelect2">Example multiple select</label> + <select multiple="" class="form-control" id="exampleFormControlSelect2"> + <option>1</option> + <option>2</option> + <option>3</option> + <option>4</option> + <option>5</option> + </select> + </div> + <div class="form-group"> + <label for="exampleFormControlTextarea1">Example textarea</label> + <textarea class="form-control" id="exampleFormControlTextarea1" rows="3"></textarea> + </div> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"exampleFormControlInput1"</span><span class="nt">></span>Email address<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"email"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"exampleFormControlInput1"</span> <span class="na">placeholder=</span><span class="s">"name@example.com"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"exampleFormControlSelect1"</span><span class="nt">></span>Example select<span class="nt"></label></span> + <span class="nt"><select</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"exampleFormControlSelect1"</span><span class="nt">></span> + <span class="nt"><option></span>1<span class="nt"></option></span> + <span class="nt"><option></span>2<span class="nt"></option></span> + <span class="nt"><option></span>3<span class="nt"></option></span> + <span class="nt"><option></span>4<span class="nt"></option></span> + <span class="nt"><option></span>5<span class="nt"></option></span> + <span class="nt"></select></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"exampleFormControlSelect2"</span><span class="nt">></span>Example multiple select<span class="nt"></label></span> + <span class="nt"><select</span> <span class="na">multiple</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"exampleFormControlSelect2"</span><span class="nt">></span> + <span class="nt"><option></span>1<span class="nt"></option></span> + <span class="nt"><option></span>2<span class="nt"></option></span> + <span class="nt"><option></span>3<span class="nt"></option></span> + <span class="nt"><option></span>4<span class="nt"></option></span> + <span class="nt"><option></span>5<span class="nt"></option></span> + <span class="nt"></select></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"exampleFormControlTextarea1"</span><span class="nt">></span>Example textarea<span class="nt"></label></span> + <span class="nt"><textarea</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"exampleFormControlTextarea1"</span> <span class="na">rows=</span><span class="s">"3"</span><span class="nt">></textarea></span> + <span class="nt"></div></span> +<span class="nt"></form></span></code></pre></figure> + +<p>For file inputs, swap the <code class="highlighter-rouge">.form-control</code> for <code class="highlighter-rouge">.form-control-file</code>.</p> + +<div class="bd-example"> +<form> + <div class="form-group"> + <label for="exampleFormControlFile1">Example file input</label> + <input type="file" class="form-control-file" id="exampleFormControlFile1" /> + </div> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"exampleFormControlFile1"</span><span class="nt">></span>Example file input<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"file"</span> <span class="na">class=</span><span class="s">"form-control-file"</span> <span class="na">id=</span><span class="s">"exampleFormControlFile1"</span><span class="nt">></span> + <span class="nt"></div></span> +<span class="nt"></form></span></code></pre></figure> + +<h3 id="sizing">Sizing</h3> + +<p>Set heights using classes like <code class="highlighter-rouge">.form-control-lg</code> and <code class="highlighter-rouge">.form-control-sm</code>.</p> + +<div class="bd-example"> +<input class="form-control form-control-lg" type="text" placeholder=".form-control-lg" /> +<input class="form-control" type="text" placeholder="Default input" /> +<input class="form-control form-control-sm" type="text" placeholder=".form-control-sm" /> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-control form-control-lg"</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">placeholder=</span><span class="s">".form-control-lg"</span><span class="nt">></span> +<span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">placeholder=</span><span class="s">"Default input"</span><span class="nt">></span> +<span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-control form-control-sm"</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">placeholder=</span><span class="s">".form-control-sm"</span><span class="nt">></span></code></pre></figure> + +<div class="bd-example"> +<select class="form-control form-control-lg"> + <option>Large select</option> +</select> +<select class="form-control"> + <option>Default select</option> +</select> +<select class="form-control form-control-sm"> + <option>Small select</option> +</select> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><select</span> <span class="na">class=</span><span class="s">"form-control form-control-lg"</span><span class="nt">></span> + <span class="nt"><option></span>Large select<span class="nt"></option></span> +<span class="nt"></select></span> +<span class="nt"><select</span> <span class="na">class=</span><span class="s">"form-control"</span><span class="nt">></span> + <span class="nt"><option></span>Default select<span class="nt"></option></span> +<span class="nt"></select></span> +<span class="nt"><select</span> <span class="na">class=</span><span class="s">"form-control form-control-sm"</span><span class="nt">></span> + <span class="nt"><option></span>Small select<span class="nt"></option></span> +<span class="nt"></select></span></code></pre></figure> + +<h3 id="readonly">Readonly</h3> + +<p>Add the <code class="highlighter-rouge">readonly</code> boolean attribute on an input to prevent modification of the input’s value. Read-only inputs appear lighter (just like disabled inputs), but retain the standard cursor.</p> + +<div class="bd-example"> +<input class="form-control" type="text" placeholder="Readonly input here..." readonly="" /> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">placeholder=</span><span class="s">"Readonly input here..."</span> <span class="na">readonly</span><span class="nt">></span></code></pre></figure> + +<h3 id="readonly-plain-text">Readonly plain text</h3> + +<p>If you want to have <code class="highlighter-rouge"><input readonly></code> elements in your form styled as plain text, use the <code class="highlighter-rouge">.form-control-plaintext</code> class to remove the default form field styling and preserve the correct margin and padding.</p> + +<div class="bd-example"> +<form> + <div class="form-group row"> + <label for="staticEmail" class="col-sm-2 col-form-label">Email</label> + <div class="col-sm-10"> + <input type="text" readonly="" class="form-control-plaintext" id="staticEmail" value="email@example.com" /> + </div> + </div> + <div class="form-group row"> + <label for="inputPassword" class="col-sm-2 col-form-label">Password</label> + <div class="col-sm-10"> + <input type="password" class="form-control" id="inputPassword" placeholder="Password" /> + </div> + </div> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group row"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"staticEmail"</span> <span class="na">class=</span><span class="s">"col-sm-2 col-form-label"</span><span class="nt">></span>Email<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-10"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">readonly</span> <span class="na">class=</span><span class="s">"form-control-plaintext"</span> <span class="na">id=</span><span class="s">"staticEmail"</span> <span class="na">value=</span><span class="s">"email@example.com"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group row"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"inputPassword"</span> <span class="na">class=</span><span class="s">"col-sm-2 col-form-label"</span><span class="nt">></span>Password<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-10"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"password"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"inputPassword"</span> <span class="na">placeholder=</span><span class="s">"Password"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></form></span></code></pre></figure> + +<div class="bd-example"> +<form class="form-inline"> + <div class="form-group mb-2"> + <label for="staticEmail2" class="sr-only">Email</label> + <input type="text" readonly="" class="form-control-plaintext" id="staticEmail2" value="email@example.com" /> + </div> + <div class="form-group mx-sm-3 mb-2"> + <label for="inputPassword2" class="sr-only">Password</label> + <input type="password" class="form-control" id="inputPassword2" placeholder="Password" /> + </div> + <button type="submit" class="btn btn-primary mb-2">Confirm identity</button> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form</span> <span class="na">class=</span><span class="s">"form-inline"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group mb-2"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"staticEmail2"</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Email<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">readonly</span> <span class="na">class=</span><span class="s">"form-control-plaintext"</span> <span class="na">id=</span><span class="s">"staticEmail2"</span> <span class="na">value=</span><span class="s">"email@example.com"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group mx-sm-3 mb-2"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"inputPassword2"</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Password<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"password"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"inputPassword2"</span> <span class="na">placeholder=</span><span class="s">"Password"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"submit"</span> <span class="na">class=</span><span class="s">"btn btn-primary mb-2"</span><span class="nt">></span>Confirm identity<span class="nt"></button></span> +<span class="nt"></form></span></code></pre></figure> + +<h2 id="range-inputs">Range Inputs</h2> + +<p>Set horizontally scrollable range inputs using <code class="highlighter-rouge">.form-control-range</code>.</p> + +<div class="bd-example"> +<form> + <div class="form-group"> + <label for="formControlRange">Example Range input</label> + <input type="range" class="form-control-range" id="formControlRange" /> + </div> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"formControlRange"</span><span class="nt">></span>Example Range input<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"range"</span> <span class="na">class=</span><span class="s">"form-control-range"</span> <span class="na">id=</span><span class="s">"formControlRange"</span><span class="nt">></span> + <span class="nt"></div></span> +<span class="nt"></form></span></code></pre></figure> + +<h2 id="checkboxes-and-radios">Checkboxes and radios</h2> + +<p>Default checkboxes and radios are improved upon with the help of <code class="highlighter-rouge">.form-check</code>, <strong>a single class for both input types that improves the layout and behavior of their HTML elements</strong>. Checkboxes are for selecting one or several options in a list, while radios are for selecting one option from many.</p> + +<p>Disabled checkboxes and radios are supported. The <code class="highlighter-rouge">disabled</code> attribute will apply a lighter color to help indicate the input’s state.</p> + +<p>Checkboxes and radios use are built to support HTML-based form validation and provide concise, accessible labels. As such, our <code class="highlighter-rouge"><input></code>s and <code class="highlighter-rouge"><label></code>s are sibling elements as opposed to an <code class="highlighter-rouge"><input></code> within a <code class="highlighter-rouge"><label></code>. This is slightly more verbose as you must specify <code class="highlighter-rouge">id</code> and <code class="highlighter-rouge">for</code> attributes to relate the <code class="highlighter-rouge"><input></code> and <code class="highlighter-rouge"><label></code>.</p> + +<h3 id="default-stacked">Default (stacked)</h3> + +<p>By default, any number of checkboxes and radios that are immediate sibling will be vertically stacked and appropriately spaced with <code class="highlighter-rouge">.form-check</code>.</p> + +<div class="bd-example"> +<div class="form-check"> + <input class="form-check-input" type="checkbox" value="" id="defaultCheck1" /> + <label class="form-check-label" for="defaultCheck1"> + Default checkbox + </label> +</div> +<div class="form-check"> + <input class="form-check-input" type="checkbox" value="" id="defaultCheck2" disabled="" /> + <label class="form-check-label" for="defaultCheck2"> + Disabled checkbox + </label> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">value=</span><span class="s">""</span> <span class="na">id=</span><span class="s">"defaultCheck1"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"defaultCheck1"</span><span class="nt">></span> + Default checkbox + <span class="nt"></label></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">value=</span><span class="s">""</span> <span class="na">id=</span><span class="s">"defaultCheck2"</span> <span class="na">disabled</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"defaultCheck2"</span><span class="nt">></span> + Disabled checkbox + <span class="nt"></label></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<div class="form-check"> + <input class="form-check-input" type="radio" name="exampleRadios" id="exampleRadios1" value="option1" checked="" /> + <label class="form-check-label" for="exampleRadios1"> + Default radio + </label> +</div> +<div class="form-check"> + <input class="form-check-input" type="radio" name="exampleRadios" id="exampleRadios2" value="option2" /> + <label class="form-check-label" for="exampleRadios2"> + Second default radio + </label> +</div> +<div class="form-check"> + <input class="form-check-input" type="radio" name="exampleRadios" id="exampleRadios3" value="option3" disabled="" /> + <label class="form-check-label" for="exampleRadios3"> + Disabled radio + </label> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">name=</span><span class="s">"exampleRadios"</span> <span class="na">id=</span><span class="s">"exampleRadios1"</span> <span class="na">value=</span><span class="s">"option1"</span> <span class="na">checked</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"exampleRadios1"</span><span class="nt">></span> + Default radio + <span class="nt"></label></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">name=</span><span class="s">"exampleRadios"</span> <span class="na">id=</span><span class="s">"exampleRadios2"</span> <span class="na">value=</span><span class="s">"option2"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"exampleRadios2"</span><span class="nt">></span> + Second default radio + <span class="nt"></label></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">name=</span><span class="s">"exampleRadios"</span> <span class="na">id=</span><span class="s">"exampleRadios3"</span> <span class="na">value=</span><span class="s">"option3"</span> <span class="na">disabled</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"exampleRadios3"</span><span class="nt">></span> + Disabled radio + <span class="nt"></label></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="inline">Inline</h3> + +<p>Group checkboxes or radios on the same horizontal row by adding <code class="highlighter-rouge">.form-check-inline</code> to any <code class="highlighter-rouge">.form-check</code>.</p> + +<div class="bd-example"> +<div class="form-check form-check-inline"> + <input class="form-check-input" type="checkbox" id="inlineCheckbox1" value="option1" /> + <label class="form-check-label" for="inlineCheckbox1">1</label> +</div> +<div class="form-check form-check-inline"> + <input class="form-check-input" type="checkbox" id="inlineCheckbox2" value="option2" /> + <label class="form-check-label" for="inlineCheckbox2">2</label> +</div> +<div class="form-check form-check-inline"> + <input class="form-check-input" type="checkbox" id="inlineCheckbox3" value="option3" disabled="" /> + <label class="form-check-label" for="inlineCheckbox3">3 (disabled)</label> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check form-check-inline"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">id=</span><span class="s">"inlineCheckbox1"</span> <span class="na">value=</span><span class="s">"option1"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"inlineCheckbox1"</span><span class="nt">></span>1<span class="nt"></label></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check form-check-inline"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">id=</span><span class="s">"inlineCheckbox2"</span> <span class="na">value=</span><span class="s">"option2"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"inlineCheckbox2"</span><span class="nt">></span>2<span class="nt"></label></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check form-check-inline"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">id=</span><span class="s">"inlineCheckbox3"</span> <span class="na">value=</span><span class="s">"option3"</span> <span class="na">disabled</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"inlineCheckbox3"</span><span class="nt">></span>3 (disabled)<span class="nt"></label></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<div class="form-check form-check-inline"> + <input class="form-check-input" type="radio" name="inlineRadioOptions" id="inlineRadio1" value="option1" /> + <label class="form-check-label" for="inlineRadio1">1</label> +</div> +<div class="form-check form-check-inline"> + <input class="form-check-input" type="radio" name="inlineRadioOptions" id="inlineRadio2" value="option2" /> + <label class="form-check-label" for="inlineRadio2">2</label> +</div> +<div class="form-check form-check-inline"> + <input class="form-check-input" type="radio" name="inlineRadioOptions" id="inlineRadio3" value="option3" disabled="" /> + <label class="form-check-label" for="inlineRadio3">3 (disabled)</label> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check form-check-inline"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">name=</span><span class="s">"inlineRadioOptions"</span> <span class="na">id=</span><span class="s">"inlineRadio1"</span> <span class="na">value=</span><span class="s">"option1"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"inlineRadio1"</span><span class="nt">></span>1<span class="nt"></label></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check form-check-inline"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">name=</span><span class="s">"inlineRadioOptions"</span> <span class="na">id=</span><span class="s">"inlineRadio2"</span> <span class="na">value=</span><span class="s">"option2"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"inlineRadio2"</span><span class="nt">></span>2<span class="nt"></label></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check form-check-inline"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">name=</span><span class="s">"inlineRadioOptions"</span> <span class="na">id=</span><span class="s">"inlineRadio3"</span> <span class="na">value=</span><span class="s">"option3"</span> <span class="na">disabled</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"inlineRadio3"</span><span class="nt">></span>3 (disabled)<span class="nt"></label></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="without-labels">Without labels</h3> + +<p>Add <code class="highlighter-rouge">.position-static</code> to inputs within <code class="highlighter-rouge">.form-check</code> that don’t have any label text. Remember to still provide some form of label for assistive technologies (for instance, using <code class="highlighter-rouge">aria-label</code>).</p> + +<div class="bd-example"> +<div class="form-check"> + <input class="form-check-input position-static" type="checkbox" id="blankCheckbox" value="option1" aria-label="..." /> +</div> +<div class="form-check"> + <input class="form-check-input position-static" type="radio" name="blankRadio" id="blankRadio1" value="option1" aria-label="..." /> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input position-static"</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">id=</span><span class="s">"blankCheckbox"</span> <span class="na">value=</span><span class="s">"option1"</span> <span class="na">aria-label=</span><span class="s">"..."</span><span class="nt">></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input position-static"</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">name=</span><span class="s">"blankRadio"</span> <span class="na">id=</span><span class="s">"blankRadio1"</span> <span class="na">value=</span><span class="s">"option1"</span> <span class="na">aria-label=</span><span class="s">"..."</span><span class="nt">></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="layout">Layout</h2> + +<p>Since Bootstrap applies <code class="highlighter-rouge">display: block</code> and <code class="highlighter-rouge">width: 100%</code> to almost all our form controls, forms will by default stack vertically. Additional classes can be used to vary this layout on a per-form basis.</p> + +<h3 id="form-groups">Form groups</h3> + +<p>The <code class="highlighter-rouge">.form-group</code> class is the easiest way to add some structure to forms. It provides a flexible class that encourages proper grouping of labels, controls, optional help text, and form validation messaging. By default it only applies <code class="highlighter-rouge">margin-bottom</code>, but it picks up additional styles in <code class="highlighter-rouge">.form-inline</code> as needed. Use it with <code class="highlighter-rouge"><fieldset></code>s, <code class="highlighter-rouge"><div></code>s, or nearly any other element.</p> + +<div class="bd-example"> +<form> + <div class="form-group"> + <label for="formGroupExampleInput">Example label</label> + <input type="text" class="form-control" id="formGroupExampleInput" placeholder="Example input" /> + </div> + <div class="form-group"> + <label for="formGroupExampleInput2">Another label</label> + <input type="text" class="form-control" id="formGroupExampleInput2" placeholder="Another input" /> + </div> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"formGroupExampleInput"</span><span class="nt">></span>Example label<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"formGroupExampleInput"</span> <span class="na">placeholder=</span><span class="s">"Example input"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"formGroupExampleInput2"</span><span class="nt">></span>Another label<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"formGroupExampleInput2"</span> <span class="na">placeholder=</span><span class="s">"Another input"</span><span class="nt">></span> + <span class="nt"></div></span> +<span class="nt"></form></span></code></pre></figure> + +<h3 id="form-grid">Form grid</h3> + +<p>More complex forms can be built using our grid classes. Use these for form layouts that require multiple columns, varied widths, and additional alignment options.</p> + +<div class="bd-example"> +<form> + <div class="row"> + <div class="col"> + <input type="text" class="form-control" placeholder="First name" /> + </div> + <div class="col"> + <input type="text" class="form-control" placeholder="Last name" /> + </div> + </div> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">"First name"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">"Last name"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></form></span></code></pre></figure> + +<h4 id="form-row">Form row</h4> + +<p>You may also swap <code class="highlighter-rouge">.row</code> for <code class="highlighter-rouge">.form-row</code>, a variation of our standard grid row that overrides the default column gutters for tighter and more compact layouts.</p> + +<div class="bd-example"> +<form> + <div class="form-row"> + <div class="col"> + <input type="text" class="form-control" placeholder="First name" /> + </div> + <div class="col"> + <input type="text" class="form-control" placeholder="Last name" /> + </div> + </div> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">"First name"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">"Last name"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></form></span></code></pre></figure> + +<p>More complex layouts can also be created with the grid system.</p> + +<div class="bd-example"> +<form> + <div class="form-row"> + <div class="form-group col-md-6"> + <label for="inputEmail4">Email</label> + <input type="email" class="form-control" id="inputEmail4" placeholder="Email" /> + </div> + <div class="form-group col-md-6"> + <label for="inputPassword4">Password</label> + <input type="password" class="form-control" id="inputPassword4" placeholder="Password" /> + </div> + </div> + <div class="form-group"> + <label for="inputAddress">Address</label> + <input type="text" class="form-control" id="inputAddress" placeholder="1234 Main St" /> + </div> + <div class="form-group"> + <label for="inputAddress2">Address 2</label> + <input type="text" class="form-control" id="inputAddress2" placeholder="Apartment, studio, or floor" /> + </div> + <div class="form-row"> + <div class="form-group col-md-6"> + <label for="inputCity">City</label> + <input type="text" class="form-control" id="inputCity" /> + </div> + <div class="form-group col-md-4"> + <label for="inputState">State</label> + <select id="inputState" class="form-control"> + <option selected="">Choose...</option> + <option>...</option> + </select> + </div> + <div class="form-group col-md-2"> + <label for="inputZip">Zip</label> + <input type="text" class="form-control" id="inputZip" /> + </div> + </div> + <div class="form-group"> + <div class="form-check"> + <input class="form-check-input" type="checkbox" id="gridCheck" /> + <label class="form-check-label" for="gridCheck"> + Check me out + </label> + </div> + </div> + <button type="submit" class="btn btn-primary">Sign in</button> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group col-md-6"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"inputEmail4"</span><span class="nt">></span>Email<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"email"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"inputEmail4"</span> <span class="na">placeholder=</span><span class="s">"Email"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group col-md-6"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"inputPassword4"</span><span class="nt">></span>Password<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"password"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"inputPassword4"</span> <span class="na">placeholder=</span><span class="s">"Password"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"inputAddress"</span><span class="nt">></span>Address<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"inputAddress"</span> <span class="na">placeholder=</span><span class="s">"1234 Main St"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"inputAddress2"</span><span class="nt">></span>Address 2<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"inputAddress2"</span> <span class="na">placeholder=</span><span class="s">"Apartment, studio, or floor"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group col-md-6"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"inputCity"</span><span class="nt">></span>City<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"inputCity"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group col-md-4"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"inputState"</span><span class="nt">></span>State<span class="nt"></label></span> + <span class="nt"><select</span> <span class="na">id=</span><span class="s">"inputState"</span> <span class="na">class=</span><span class="s">"form-control"</span><span class="nt">></span> + <span class="nt"><option</span> <span class="na">selected</span><span class="nt">></span>Choose...<span class="nt"></option></span> + <span class="nt"><option></span>...<span class="nt"></option></span> + <span class="nt"></select></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group col-md-2"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"inputZip"</span><span class="nt">></span>Zip<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"inputZip"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">id=</span><span class="s">"gridCheck"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"gridCheck"</span><span class="nt">></span> + Check me out + <span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"submit"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Sign in<span class="nt"></button></span> +<span class="nt"></form></span></code></pre></figure> + +<h4 id="horizontal-form">Horizontal form</h4> + +<p>Create horizontal forms with the grid by adding the <code class="highlighter-rouge">.row</code> class to form groups and using the <code class="highlighter-rouge">.col-*-*</code> classes to specify the width of your labels and controls. Be sure to add <code class="highlighter-rouge">.col-form-label</code> to your <code class="highlighter-rouge"><label></code>s as well so they’re vertically centered with their associated form controls.</p> + +<p>At times, you maybe need to use margin or padding utilities to create that perfect alignment you need. For example, we’ve removed the <code class="highlighter-rouge">padding-top</code> on our stacked radio inputs label to better align the text baseline.</p> + +<div class="bd-example"> +<form> + <div class="form-group row"> + <label for="inputEmail3" class="col-sm-2 col-form-label">Email</label> + <div class="col-sm-10"> + <input type="email" class="form-control" id="inputEmail3" placeholder="Email" /> + </div> + </div> + <div class="form-group row"> + <label for="inputPassword3" class="col-sm-2 col-form-label">Password</label> + <div class="col-sm-10"> + <input type="password" class="form-control" id="inputPassword3" placeholder="Password" /> + </div> + </div> + <fieldset class="form-group"> + <div class="row"> + <legend class="col-form-label col-sm-2 pt-0">Radios</legend> + <div class="col-sm-10"> + <div class="form-check"> + <input class="form-check-input" type="radio" name="gridRadios" id="gridRadios1" value="option1" checked="" /> + <label class="form-check-label" for="gridRadios1"> + First radio + </label> + </div> + <div class="form-check"> + <input class="form-check-input" type="radio" name="gridRadios" id="gridRadios2" value="option2" /> + <label class="form-check-label" for="gridRadios2"> + Second radio + </label> + </div> + <div class="form-check disabled"> + <input class="form-check-input" type="radio" name="gridRadios" id="gridRadios3" value="option3" disabled="" /> + <label class="form-check-label" for="gridRadios3"> + Third disabled radio + </label> + </div> + </div> + </div> + </fieldset> + <div class="form-group row"> + <div class="col-sm-2">Checkbox</div> + <div class="col-sm-10"> + <div class="form-check"> + <input class="form-check-input" type="checkbox" id="gridCheck1" /> + <label class="form-check-label" for="gridCheck1"> + Example checkbox + </label> + </div> + </div> + </div> + <div class="form-group row"> + <div class="col-sm-10"> + <button type="submit" class="btn btn-primary">Sign in</button> + </div> + </div> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group row"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"inputEmail3"</span> <span class="na">class=</span><span class="s">"col-sm-2 col-form-label"</span><span class="nt">></span>Email<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-10"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"email"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"inputEmail3"</span> <span class="na">placeholder=</span><span class="s">"Email"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group row"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"inputPassword3"</span> <span class="na">class=</span><span class="s">"col-sm-2 col-form-label"</span><span class="nt">></span>Password<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-10"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"password"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"inputPassword3"</span> <span class="na">placeholder=</span><span class="s">"Password"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><fieldset</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><legend</span> <span class="na">class=</span><span class="s">"col-form-label col-sm-2 pt-0"</span><span class="nt">></span>Radios<span class="nt"></legend></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-10"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">name=</span><span class="s">"gridRadios"</span> <span class="na">id=</span><span class="s">"gridRadios1"</span> <span class="na">value=</span><span class="s">"option1"</span> <span class="na">checked</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"gridRadios1"</span><span class="nt">></span> + First radio + <span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">name=</span><span class="s">"gridRadios"</span> <span class="na">id=</span><span class="s">"gridRadios2"</span> <span class="na">value=</span><span class="s">"option2"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"gridRadios2"</span><span class="nt">></span> + Second radio + <span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check disabled"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">name=</span><span class="s">"gridRadios"</span> <span class="na">id=</span><span class="s">"gridRadios3"</span> <span class="na">value=</span><span class="s">"option3"</span> <span class="na">disabled</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"gridRadios3"</span><span class="nt">></span> + Third disabled radio + <span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></fieldset></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-2"</span><span class="nt">></span>Checkbox<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-10"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">id=</span><span class="s">"gridCheck1"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"gridCheck1"</span><span class="nt">></span> + Example checkbox + <span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-10"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"submit"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Sign in<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></form></span></code></pre></figure> + +<h5 id="horizontal-form-label-sizing">Horizontal form label sizing</h5> + +<p>Be sure to use <code class="highlighter-rouge">.col-form-label-sm</code> or <code class="highlighter-rouge">.col-form-label-lg</code> to your <code class="highlighter-rouge"><label></code>s or <code class="highlighter-rouge"><legend></code>s to correctly follow the size of <code class="highlighter-rouge">.form-control-lg</code> and <code class="highlighter-rouge">.form-control-sm</code>.</p> + +<div class="bd-example"> +<form> + <div class="form-group row"> + <label for="colFormLabelSm" class="col-sm-2 col-form-label col-form-label-sm">Email</label> + <div class="col-sm-10"> + <input type="email" class="form-control form-control-sm" id="colFormLabelSm" placeholder="col-form-label-sm" /> + </div> + </div> + <div class="form-group row"> + <label for="colFormLabel" class="col-sm-2 col-form-label">Email</label> + <div class="col-sm-10"> + <input type="email" class="form-control" id="colFormLabel" placeholder="col-form-label" /> + </div> + </div> + <div class="form-group row"> + <label for="colFormLabelLg" class="col-sm-2 col-form-label col-form-label-lg">Email</label> + <div class="col-sm-10"> + <input type="email" class="form-control form-control-lg" id="colFormLabelLg" placeholder="col-form-label-lg" /> + </div> + </div> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group row"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"colFormLabelSm"</span> <span class="na">class=</span><span class="s">"col-sm-2 col-form-label col-form-label-sm"</span><span class="nt">></span>Email<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-10"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"email"</span> <span class="na">class=</span><span class="s">"form-control form-control-sm"</span> <span class="na">id=</span><span class="s">"colFormLabelSm"</span> <span class="na">placeholder=</span><span class="s">"col-form-label-sm"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group row"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"colFormLabel"</span> <span class="na">class=</span><span class="s">"col-sm-2 col-form-label"</span><span class="nt">></span>Email<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-10"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"email"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"colFormLabel"</span> <span class="na">placeholder=</span><span class="s">"col-form-label"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group row"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"colFormLabelLg"</span> <span class="na">class=</span><span class="s">"col-sm-2 col-form-label col-form-label-lg"</span><span class="nt">></span>Email<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-10"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"email"</span> <span class="na">class=</span><span class="s">"form-control form-control-lg"</span> <span class="na">id=</span><span class="s">"colFormLabelLg"</span> <span class="na">placeholder=</span><span class="s">"col-form-label-lg"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></form></span></code></pre></figure> + +<h4 id="column-sizing">Column sizing</h4> + +<p>As shown in the previous examples, our grid system allows you to place any number of <code class="highlighter-rouge">.col</code>s within a <code class="highlighter-rouge">.row</code> or <code class="highlighter-rouge">.form-row</code>. They’ll split the available width equally between them. You may also pick a subset of your columns to take up more or less space, while the remaining <code class="highlighter-rouge">.col</code>s equally split the rest, with specific column classes like <code class="highlighter-rouge">.col-7</code>.</p> + +<div class="bd-example"> +<form> + <div class="form-row"> + <div class="col-7"> + <input type="text" class="form-control" placeholder="City" /> + </div> + <div class="col"> + <input type="text" class="form-control" placeholder="State" /> + </div> + <div class="col"> + <input type="text" class="form-control" placeholder="Zip" /> + </div> + </div> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-7"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">"City"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">"State"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">"Zip"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></form></span></code></pre></figure> + +<h4 id="auto-sizing">Auto-sizing</h4> + +<p>The example below uses a flexbox utility to vertically center the contents and changes <code class="highlighter-rouge">.col</code> to <code class="highlighter-rouge">.col-auto</code> so that your columns only take up as much space as needed. Put another way, the column sizes itself based on the contents.</p> + +<div class="bd-example"> +<form> + <div class="form-row align-items-center"> + <div class="col-auto"> + <label class="sr-only" for="inlineFormInput">Name</label> + <input type="text" class="form-control mb-2" id="inlineFormInput" placeholder="Jane Doe" /> + </div> + <div class="col-auto"> + <label class="sr-only" for="inlineFormInputGroup">Username</label> + <div class="input-group mb-2"> + <div class="input-group-prepend"> + <div class="input-group-text">@</div> + </div> + <input type="text" class="form-control" id="inlineFormInputGroup" placeholder="Username" /> + </div> + </div> + <div class="col-auto"> + <div class="form-check mb-2"> + <input class="form-check-input" type="checkbox" id="autoSizingCheck" /> + <label class="form-check-label" for="autoSizingCheck"> + Remember me + </label> + </div> + </div> + <div class="col-auto"> + <button type="submit" class="btn btn-primary mb-2">Submit</button> + </div> + </div> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-row align-items-center"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-auto"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"sr-only"</span> <span class="na">for=</span><span class="s">"inlineFormInput"</span><span class="nt">></span>Name<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control mb-2"</span> <span class="na">id=</span><span class="s">"inlineFormInput"</span> <span class="na">placeholder=</span><span class="s">"Jane Doe"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-auto"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"sr-only"</span> <span class="na">for=</span><span class="s">"inlineFormInputGroup"</span><span class="nt">></span>Username<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-2"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-text"</span><span class="nt">></span>@<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"inlineFormInputGroup"</span> <span class="na">placeholder=</span><span class="s">"Username"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-auto"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check mb-2"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">id=</span><span class="s">"autoSizingCheck"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"autoSizingCheck"</span><span class="nt">></span> + Remember me + <span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-auto"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"submit"</span> <span class="na">class=</span><span class="s">"btn btn-primary mb-2"</span><span class="nt">></span>Submit<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></form></span></code></pre></figure> + +<p>You can then remix that once again with size-specific column classes.</p> + +<div class="bd-example"> +<form> + <div class="form-row align-items-center"> + <div class="col-sm-3 my-1"> + <label class="sr-only" for="inlineFormInputName">Name</label> + <input type="text" class="form-control" id="inlineFormInputName" placeholder="Jane Doe" /> + </div> + <div class="col-sm-3 my-1"> + <label class="sr-only" for="inlineFormInputGroupUsername">Username</label> + <div class="input-group"> + <div class="input-group-prepend"> + <div class="input-group-text">@</div> + </div> + <input type="text" class="form-control" id="inlineFormInputGroupUsername" placeholder="Username" /> + </div> + </div> + <div class="col-auto my-1"> + <div class="form-check"> + <input class="form-check-input" type="checkbox" id="autoSizingCheck2" /> + <label class="form-check-label" for="autoSizingCheck2"> + Remember me + </label> + </div> + </div> + <div class="col-auto my-1"> + <button type="submit" class="btn btn-primary">Submit</button> + </div> + </div> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-row align-items-center"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-3 my-1"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"sr-only"</span> <span class="na">for=</span><span class="s">"inlineFormInputName"</span><span class="nt">></span>Name<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"inlineFormInputName"</span> <span class="na">placeholder=</span><span class="s">"Jane Doe"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-3 my-1"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"sr-only"</span> <span class="na">for=</span><span class="s">"inlineFormInputGroupUsername"</span><span class="nt">></span>Username<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-text"</span><span class="nt">></span>@<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"inlineFormInputGroupUsername"</span> <span class="na">placeholder=</span><span class="s">"Username"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-auto my-1"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">id=</span><span class="s">"autoSizingCheck2"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"autoSizingCheck2"</span><span class="nt">></span> + Remember me + <span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-auto my-1"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"submit"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Submit<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></form></span></code></pre></figure> + +<p>And of course <a href="#custom-forms">custom form controls</a> are supported.</p> + +<div class="bd-example"> +<form> + <div class="form-row align-items-center"> + <div class="col-auto my-1"> + <label class="mr-sm-2 sr-only" for="inlineFormCustomSelect">Preference</label> + <select class="custom-select mr-sm-2" id="inlineFormCustomSelect"> + <option selected="">Choose...</option> + <option value="1">One</option> + <option value="2">Two</option> + <option value="3">Three</option> + </select> + </div> + <div class="col-auto my-1"> + <div class="custom-control custom-checkbox mr-sm-2"> + <input type="checkbox" class="custom-control-input" id="customControlAutosizing" /> + <label class="custom-control-label" for="customControlAutosizing">Remember my preference</label> + </div> + </div> + <div class="col-auto my-1"> + <button type="submit" class="btn btn-primary">Submit</button> + </div> + </div> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-row align-items-center"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-auto my-1"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"mr-sm-2 sr-only"</span> <span class="na">for=</span><span class="s">"inlineFormCustomSelect"</span><span class="nt">></span>Preference<span class="nt"></label></span> + <span class="nt"><select</span> <span class="na">class=</span><span class="s">"custom-select mr-sm-2"</span> <span class="na">id=</span><span class="s">"inlineFormCustomSelect"</span><span class="nt">></span> + <span class="nt"><option</span> <span class="na">selected</span><span class="nt">></span>Choose...<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"1"</span><span class="nt">></span>One<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"2"</span><span class="nt">></span>Two<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"3"</span><span class="nt">></span>Three<span class="nt"></option></span> + <span class="nt"></select></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-auto my-1"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-control custom-checkbox mr-sm-2"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">class=</span><span class="s">"custom-control-input"</span> <span class="na">id=</span><span class="s">"customControlAutosizing"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-control-label"</span> <span class="na">for=</span><span class="s">"customControlAutosizing"</span><span class="nt">></span>Remember my preference<span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-auto my-1"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"submit"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Submit<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></form></span></code></pre></figure> + +<h3 id="inline-forms">Inline forms</h3> + +<p>Use the <code class="highlighter-rouge">.form-inline</code> class to display a series of labels, form controls, and buttons on a single horizontal row. Form controls within inline forms vary slightly from their default states.</p> + +<ul> + <li>Controls are <code class="highlighter-rouge">display: flex</code>, collapsing any HTML white space and allowing you to provide alignment control with <a href="/docs/4.3/utilities/spacing/">spacing</a> and <a href="/docs/4.3/utilities/flex/">flexbox</a> utilities.</li> + <li>Controls and input groups receive <code class="highlighter-rouge">width: auto</code> to override the Bootstrap default <code class="highlighter-rouge">width: 100%</code>.</li> + <li>Controls <strong>only appear inline in viewports that are at least 576px wide</strong> to account for narrow viewports on mobile devices.</li> +</ul> + +<p>You may need to manually address the width and alignment of individual form controls with <a href="/docs/4.3/utilities/spacing/">spacing utilities</a> (as shown below). Lastly, be sure to always include a <code class="highlighter-rouge"><label></code> with each form control, even if you need to hide it from non-screenreader visitors with <code class="highlighter-rouge">.sr-only</code>.</p> + +<div class="bd-example"> +<form class="form-inline"> + <label class="sr-only" for="inlineFormInputName2">Name</label> + <input type="text" class="form-control mb-2 mr-sm-2" id="inlineFormInputName2" placeholder="Jane Doe" /> + + <label class="sr-only" for="inlineFormInputGroupUsername2">Username</label> + <div class="input-group mb-2 mr-sm-2"> + <div class="input-group-prepend"> + <div class="input-group-text">@</div> + </div> + <input type="text" class="form-control" id="inlineFormInputGroupUsername2" placeholder="Username" /> + </div> + + <div class="form-check mb-2 mr-sm-2"> + <input class="form-check-input" type="checkbox" id="inlineFormCheck" /> + <label class="form-check-label" for="inlineFormCheck"> + Remember me + </label> + </div> + + <button type="submit" class="btn btn-primary mb-2">Submit</button> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form</span> <span class="na">class=</span><span class="s">"form-inline"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"sr-only"</span> <span class="na">for=</span><span class="s">"inlineFormInputName2"</span><span class="nt">></span>Name<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control mb-2 mr-sm-2"</span> <span class="na">id=</span><span class="s">"inlineFormInputName2"</span> <span class="na">placeholder=</span><span class="s">"Jane Doe"</span><span class="nt">></span> + + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"sr-only"</span> <span class="na">for=</span><span class="s">"inlineFormInputGroupUsername2"</span><span class="nt">></span>Username<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-2 mr-sm-2"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-text"</span><span class="nt">></span>@<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"inlineFormInputGroupUsername2"</span> <span class="na">placeholder=</span><span class="s">"Username"</span><span class="nt">></span> + <span class="nt"></div></span> + + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check mb-2 mr-sm-2"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">id=</span><span class="s">"inlineFormCheck"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"inlineFormCheck"</span><span class="nt">></span> + Remember me + <span class="nt"></label></span> + <span class="nt"></div></span> + + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"submit"</span> <span class="na">class=</span><span class="s">"btn btn-primary mb-2"</span><span class="nt">></span>Submit<span class="nt"></button></span> +<span class="nt"></form></span></code></pre></figure> + +<p>Custom form controls and selects are also supported.</p> + +<div class="bd-example"> +<form class="form-inline"> + <label class="my-1 mr-2" for="inlineFormCustomSelectPref">Preference</label> + <select class="custom-select my-1 mr-sm-2" id="inlineFormCustomSelectPref"> + <option selected="">Choose...</option> + <option value="1">One</option> + <option value="2">Two</option> + <option value="3">Three</option> + </select> + + <div class="custom-control custom-checkbox my-1 mr-sm-2"> + <input type="checkbox" class="custom-control-input" id="customControlInline" /> + <label class="custom-control-label" for="customControlInline">Remember my preference</label> + </div> + + <button type="submit" class="btn btn-primary my-1">Submit</button> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form</span> <span class="na">class=</span><span class="s">"form-inline"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"my-1 mr-2"</span> <span class="na">for=</span><span class="s">"inlineFormCustomSelectPref"</span><span class="nt">></span>Preference<span class="nt"></label></span> + <span class="nt"><select</span> <span class="na">class=</span><span class="s">"custom-select my-1 mr-sm-2"</span> <span class="na">id=</span><span class="s">"inlineFormCustomSelectPref"</span><span class="nt">></span> + <span class="nt"><option</span> <span class="na">selected</span><span class="nt">></span>Choose...<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"1"</span><span class="nt">></span>One<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"2"</span><span class="nt">></span>Two<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"3"</span><span class="nt">></span>Three<span class="nt"></option></span> + <span class="nt"></select></span> + + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-control custom-checkbox my-1 mr-sm-2"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">class=</span><span class="s">"custom-control-input"</span> <span class="na">id=</span><span class="s">"customControlInline"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-control-label"</span> <span class="na">for=</span><span class="s">"customControlInline"</span><span class="nt">></span>Remember my preference<span class="nt"></label></span> + <span class="nt"></div></span> + + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"submit"</span> <span class="na">class=</span><span class="s">"btn btn-primary my-1"</span><span class="nt">></span>Submit<span class="nt"></button></span> +<span class="nt"></form></span></code></pre></figure> + +<div class="bd-callout bd-callout-warning"> +<h5 id="alternatives-to-hidden-labels">Alternatives to hidden labels</h5> +<p>Assistive technologies such as screen readers will have trouble with your forms if you don’t include a label for every input. For these inline forms, you can hide the labels using the <code class="highlighter-rouge">.sr-only</code> class. There are further alternative methods of providing a label for assistive technologies, such as the <code class="highlighter-rouge">aria-label</code>, <code class="highlighter-rouge">aria-labelledby</code> or <code class="highlighter-rouge">title</code> attribute. If none of these are present, assistive technologies may resort to using the <code class="highlighter-rouge">placeholder</code> attribute, if present, but note that use of <code class="highlighter-rouge">placeholder</code> as a replacement for other labelling methods is not advised.</p> +</div> + +<h2 id="help-text">Help text</h2> + +<p>Block-level help text in forms can be created using <code class="highlighter-rouge">.form-text</code> (previously known as <code class="highlighter-rouge">.help-block</code> in v3). Inline help text can be flexibly implemented using any inline HTML element and utility classes like <code class="highlighter-rouge">.text-muted</code>.</p> + +<div class="bd-callout bd-callout-warning"> +<h5 id="associating-help-text-with-form-controls">Associating help text with form controls</h5> + +<p>Help text should be explicitly associated with the form control it relates to using the <code class="highlighter-rouge">aria-describedby</code> attribute. This will ensure that assistive technologies—such as screen readers—will announce this help text when the user focuses or enters the control.</p> +</div> + +<p>Help text below inputs can be styled with <code class="highlighter-rouge">.form-text</code>. This class includes <code class="highlighter-rouge">display: block</code> and adds some top margin for easy spacing from the inputs above.</p> + +<div class="bd-example"> +<label for="inputPassword5">Password</label> +<input type="password" id="inputPassword5" class="form-control" aria-describedby="passwordHelpBlock" /> +<small id="passwordHelpBlock" class="form-text text-muted"> + Your password must be 8-20 characters long, contain letters and numbers, and must not contain spaces, special characters, or emoji. +</small> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><label</span> <span class="na">for=</span><span class="s">"inputPassword5"</span><span class="nt">></span>Password<span class="nt"></label></span> +<span class="nt"><input</span> <span class="na">type=</span><span class="s">"password"</span> <span class="na">id=</span><span class="s">"inputPassword5"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">aria-describedby=</span><span class="s">"passwordHelpBlock"</span><span class="nt">></span> +<span class="nt"><small</span> <span class="na">id=</span><span class="s">"passwordHelpBlock"</span> <span class="na">class=</span><span class="s">"form-text text-muted"</span><span class="nt">></span> + Your password must be 8-20 characters long, contain letters and numbers, and must not contain spaces, special characters, or emoji. +<span class="nt"></small></span></code></pre></figure> + +<p>Inline text can use any typical inline HTML element (be it a <code class="highlighter-rouge"><small></code>, <code class="highlighter-rouge"><span></code>, or something else) with nothing more than a utility class.</p> + +<div class="bd-example"> +<form class="form-inline"> + <div class="form-group"> + <label for="inputPassword6">Password</label> + <input type="password" id="inputPassword6" class="form-control mx-sm-3" aria-describedby="passwordHelpInline" /> + <small id="passwordHelpInline" class="text-muted"> + Must be 8-20 characters long. + </small> + </div> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form</span> <span class="na">class=</span><span class="s">"form-inline"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"inputPassword6"</span><span class="nt">></span>Password<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"password"</span> <span class="na">id=</span><span class="s">"inputPassword6"</span> <span class="na">class=</span><span class="s">"form-control mx-sm-3"</span> <span class="na">aria-describedby=</span><span class="s">"passwordHelpInline"</span><span class="nt">></span> + <span class="nt"><small</span> <span class="na">id=</span><span class="s">"passwordHelpInline"</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span> + Must be 8-20 characters long. + <span class="nt"></small></span> + <span class="nt"></div></span> +<span class="nt"></form></span></code></pre></figure> + +<h2 id="disabled-forms">Disabled forms</h2> + +<p>Add the <code class="highlighter-rouge">disabled</code> boolean attribute on an input to prevent user interactions and make it appear lighter.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"disabledInput"</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">placeholder=</span><span class="s">"Disabled input here..."</span> <span class="na">disabled</span><span class="nt">></span></code></pre></figure> + +<p>Add the <code class="highlighter-rouge">disabled</code> attribute to a <code class="highlighter-rouge"><fieldset></code> to disable all the controls within.</p> + +<div class="bd-example"> +<form> + <fieldset disabled=""> + <div class="form-group"> + <label for="disabledTextInput">Disabled input</label> + <input type="text" id="disabledTextInput" class="form-control" placeholder="Disabled input" /> + </div> + <div class="form-group"> + <label for="disabledSelect">Disabled select menu</label> + <select id="disabledSelect" class="form-control"> + <option>Disabled select</option> + </select> + </div> + <div class="form-group"> + <div class="form-check"> + <input class="form-check-input" type="checkbox" id="disabledFieldsetCheck" disabled="" /> + <label class="form-check-label" for="disabledFieldsetCheck"> + Can't check this + </label> + </div> + </div> + <button type="submit" class="btn btn-primary">Submit</button> + </fieldset> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><fieldset</span> <span class="na">disabled</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"disabledTextInput"</span><span class="nt">></span>Disabled input<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">id=</span><span class="s">"disabledTextInput"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">"Disabled input"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"disabledSelect"</span><span class="nt">></span>Disabled select menu<span class="nt"></label></span> + <span class="nt"><select</span> <span class="na">id=</span><span class="s">"disabledSelect"</span> <span class="na">class=</span><span class="s">"form-control"</span><span class="nt">></span> + <span class="nt"><option></span>Disabled select<span class="nt"></option></span> + <span class="nt"></select></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">id=</span><span class="s">"disabledFieldsetCheck"</span> <span class="na">disabled</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"disabledFieldsetCheck"</span><span class="nt">></span> + Can't check this + <span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"submit"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Submit<span class="nt"></button></span> + <span class="nt"></fieldset></span> +<span class="nt"></form></span></code></pre></figure> + +<div class="bd-callout bd-callout-warning"> +<h5 id="caveat-with-anchors">Caveat with anchors</h5> + +<p>By default, browsers will treat all native form controls (<code class="highlighter-rouge"><input></code>, <code class="highlighter-rouge"><select></code> and <code class="highlighter-rouge"><button></code> elements) inside a <code class="highlighter-rouge"><fieldset disabled></code> as disabled, preventing both keyboard and mouse interactions on them. However, if your form also includes <code class="highlighter-rouge"><a ... class="btn btn-*"></code> elements, these will only be given a style of <code class="highlighter-rouge">pointer-events: none</code>. As noted in the section about <a href="/docs/4.3/components/buttons/#disabled-state">disabled state for buttons</a> (and specifically in the sub-section for anchor elements), this CSS property is not yet standardized and isn’t fully supported in Internet Explorer 10, and won’t prevent keyboard users from being able to focus or activate these links. So to be safe, use custom JavaScript to disable such links.</p> +</div> + +<div class="bd-callout bd-callout-danger"> +<h4 id="cross-browser-compatibility">Cross-browser compatibility</h4> + +<p>While Bootstrap will apply these styles in all browsers, Internet Explorer 11 and below don’t fully support the <code class="highlighter-rouge">disabled</code> attribute on a <code class="highlighter-rouge"><fieldset></code>. Use custom JavaScript to disable the fieldset in these browsers.</p> +</div> + +<h2 id="validation">Validation</h2> + +<p>Provide valuable, actionable feedback to your users with HTML5 form validation–<a href="https://caniuse.com/#feat=form-validation">available in all our supported browsers</a>. Choose from the browser default validation feedback, or implement custom messages with our built-in classes and starter JavaScript.</p> + +<div class="bd-callout bd-callout-warning"> +<p>We currently recommend using custom validation styles, as native browser default validation messages are not consistently exposed to assistive technologies in all browsers (most notably, Chrome on desktop and mobile).</p> +</div> + +<h3 id="how-it-works">How it works</h3> + +<p>Here’s how form validation works with Bootstrap:</p> + +<ul> + <li>HTML form validation is applied via CSS’s two pseudo-classes, <code class="highlighter-rouge">:invalid</code> and <code class="highlighter-rouge">:valid</code>. It applies to <code class="highlighter-rouge"><input></code>, <code class="highlighter-rouge"><select></code>, and <code class="highlighter-rouge"><textarea></code> elements.</li> + <li>Bootstrap scopes the <code class="highlighter-rouge">:invalid</code> and <code class="highlighter-rouge">:valid</code> styles to parent <code class="highlighter-rouge">.was-validated</code> class, usually applied to the <code class="highlighter-rouge"><form></code>. Otherwise, any required field without a value shows up as invalid on page load. This way, you may choose when to activate them (typically after form submission is attempted).</li> + <li>To reset the appearance of the form (for instance, in the case of dynamic form submissions using AJAX), remove the <code class="highlighter-rouge">.was-validated</code> class from the <code class="highlighter-rouge"><form></code> again after submission.</li> + <li>As a fallback, <code class="highlighter-rouge">.is-invalid</code> and <code class="highlighter-rouge">.is-valid</code> classes may be used instead of the pseudo-classes for <a href="#server-side">server side validation</a>. They do not require a <code class="highlighter-rouge">.was-validated</code> parent class.</li> + <li>Due to constraints in how CSS works, we cannot (at present) apply styles to a <code class="highlighter-rouge"><label></code> that comes before a form control in the DOM without the help of custom JavaScript.</li> + <li>All modern browsers support the <a href="https://www.w3.org/TR/html5/sec-forms.html#the-constraint-validation-api">constraint validation API</a>, a series of JavaScript methods for validating form controls.</li> + <li>Feedback messages may utilize the <a href="#browser-defaults">browser defaults</a> (different for each browser, and unstylable via CSS) or our custom feedback styles with additional HTML and CSS.</li> + <li>You may provide custom validity messages with <code class="highlighter-rouge">setCustomValidity</code> in JavaScript.</li> +</ul> + +<p>With that in mind, consider the following demos for our custom form validation styles, optional server side classes, and browser defaults.</p> + +<h3 id="custom-styles">Custom styles</h3> + +<p>For custom Bootstrap form validation messages, you’ll need to add the <code class="highlighter-rouge">novalidate</code> boolean attribute to your <code class="highlighter-rouge"><form></code>. This disables the browser default feedback tooltips, but still provides access to the form validation APIs in JavaScript. Try to submit the form below; our JavaScript will intercept the submit button and relay feedback to you. When attempting to submit, you’ll see the <code class="highlighter-rouge">:invalid</code> and <code class="highlighter-rouge">:valid</code> styles applied to your form controls.</p> + +<p>Custom feedback styles apply custom colors, borders, focus styles, and background icons to better communicate feedback. Background icons for <code class="highlighter-rouge"><select></code>s are only available with <code class="highlighter-rouge">.custom-select</code>, and not <code class="highlighter-rouge">.form-control</code>.</p> + +<div class="bd-example"> +<form class="needs-validation" novalidate=""> + <div class="form-row"> + <div class="col-md-4 mb-3"> + <label for="validationCustom01">First name</label> + <input type="text" class="form-control" id="validationCustom01" placeholder="First name" value="Mark" required="" /> + <div class="valid-feedback"> + Looks good! + </div> + </div> + <div class="col-md-4 mb-3"> + <label for="validationCustom02">Last name</label> + <input type="text" class="form-control" id="validationCustom02" placeholder="Last name" value="Otto" required="" /> + <div class="valid-feedback"> + Looks good! + </div> + </div> + <div class="col-md-4 mb-3"> + <label for="validationCustomUsername">Username</label> + <div class="input-group"> + <div class="input-group-prepend"> + <span class="input-group-text" id="inputGroupPrepend">@</span> + </div> + <input type="text" class="form-control" id="validationCustomUsername" placeholder="Username" aria-describedby="inputGroupPrepend" required="" /> + <div class="invalid-feedback"> + Please choose a username. + </div> + </div> + </div> + </div> + <div class="form-row"> + <div class="col-md-6 mb-3"> + <label for="validationCustom03">City</label> + <input type="text" class="form-control" id="validationCustom03" placeholder="City" required="" /> + <div class="invalid-feedback"> + Please provide a valid city. + </div> + </div> + <div class="col-md-3 mb-3"> + <label for="validationCustom04">State</label> + <input type="text" class="form-control" id="validationCustom04" placeholder="State" required="" /> + <div class="invalid-feedback"> + Please provide a valid state. + </div> + </div> + <div class="col-md-3 mb-3"> + <label for="validationCustom05">Zip</label> + <input type="text" class="form-control" id="validationCustom05" placeholder="Zip" required="" /> + <div class="invalid-feedback"> + Please provide a valid zip. + </div> + </div> + </div> + <div class="form-group"> + <div class="form-check"> + <input class="form-check-input" type="checkbox" value="" id="invalidCheck" required="" /> + <label class="form-check-label" for="invalidCheck"> + Agree to terms and conditions + </label> + <div class="invalid-feedback"> + You must agree before submitting. + </div> + </div> + </div> + <button class="btn btn-primary" type="submit">Submit form</button> +</form> + +<script> +// Example starter JavaScript for disabling form submissions if there are invalid fields +(function() { + 'use strict'; + window.addEventListener('load', function() { + // Fetch all the forms we want to apply custom Bootstrap validation styles to + var forms = document.getElementsByClassName('needs-validation'); + // Loop over them and prevent submission + var validation = Array.prototype.filter.call(forms, function(form) { + form.addEventListener('submit', function(event) { + if (form.checkValidity() === false) { + event.preventDefault(); + event.stopPropagation(); + } + form.classList.add('was-validated'); + }, false); + }); + }, false); +})(); +</script> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form</span> <span class="na">class=</span><span class="s">"needs-validation"</span> <span class="na">novalidate</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationCustom01"</span><span class="nt">></span>First name<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationCustom01"</span> <span class="na">placeholder=</span><span class="s">"First name"</span> <span class="na">value=</span><span class="s">"Mark"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"valid-feedback"</span><span class="nt">></span> + Looks good! + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationCustom02"</span><span class="nt">></span>Last name<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationCustom02"</span> <span class="na">placeholder=</span><span class="s">"Last name"</span> <span class="na">value=</span><span class="s">"Otto"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"valid-feedback"</span><span class="nt">></span> + Looks good! + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationCustomUsername"</span><span class="nt">></span>Username<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">id=</span><span class="s">"inputGroupPrepend"</span><span class="nt">></span>@<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationCustomUsername"</span> <span class="na">placeholder=</span><span class="s">"Username"</span> <span class="na">aria-describedby=</span><span class="s">"inputGroupPrepend"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-feedback"</span><span class="nt">></span> + Please choose a username. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-6 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationCustom03"</span><span class="nt">></span>City<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationCustom03"</span> <span class="na">placeholder=</span><span class="s">"City"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-feedback"</span><span class="nt">></span> + Please provide a valid city. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-3 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationCustom04"</span><span class="nt">></span>State<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationCustom04"</span> <span class="na">placeholder=</span><span class="s">"State"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-feedback"</span><span class="nt">></span> + Please provide a valid state. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-3 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationCustom05"</span><span class="nt">></span>Zip<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationCustom05"</span> <span class="na">placeholder=</span><span class="s">"Zip"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-feedback"</span><span class="nt">></span> + Please provide a valid zip. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">value=</span><span class="s">""</span> <span class="na">id=</span><span class="s">"invalidCheck"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"invalidCheck"</span><span class="nt">></span> + Agree to terms and conditions + <span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-feedback"</span><span class="nt">></span> + You must agree before submitting. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">type=</span><span class="s">"submit"</span><span class="nt">></span>Submit form<span class="nt"></button></span> +<span class="nt"></form></span> + +<span class="nt"><script></span> +<span class="c1">// Example starter JavaScript for disabling form submissions if there are invalid fields</span> +<span class="p">(</span><span class="kd">function</span><span class="p">()</span> <span class="p">{</span> + <span class="s1">'use strict'</span><span class="p">;</span> + <span class="nb">window</span><span class="p">.</span><span class="nx">addEventListener</span><span class="p">(</span><span class="s1">'load'</span><span class="p">,</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span> + <span class="c1">// Fetch all the forms we want to apply custom Bootstrap validation styles to</span> + <span class="kd">var</span> <span class="nx">forms</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">getElementsByClassName</span><span class="p">(</span><span class="s1">'needs-validation'</span><span class="p">);</span> + <span class="c1">// Loop over them and prevent submission</span> + <span class="kd">var</span> <span class="nx">validation</span> <span class="o">=</span> <span class="nb">Array</span><span class="p">.</span><span class="nx">prototype</span><span class="p">.</span><span class="nx">filter</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="nx">forms</span><span class="p">,</span> <span class="kd">function</span><span class="p">(</span><span class="nx">form</span><span class="p">)</span> <span class="p">{</span> + <span class="nx">form</span><span class="p">.</span><span class="nx">addEventListener</span><span class="p">(</span><span class="s1">'submit'</span><span class="p">,</span> <span class="kd">function</span><span class="p">(</span><span class="nx">event</span><span class="p">)</span> <span class="p">{</span> + <span class="k">if</span> <span class="p">(</span><span class="nx">form</span><span class="p">.</span><span class="nx">checkValidity</span><span class="p">()</span> <span class="o">===</span> <span class="kc">false</span><span class="p">)</span> <span class="p">{</span> + <span class="nx">event</span><span class="p">.</span><span class="nx">preventDefault</span><span class="p">();</span> + <span class="nx">event</span><span class="p">.</span><span class="nx">stopPropagation</span><span class="p">();</span> + <span class="p">}</span> + <span class="nx">form</span><span class="p">.</span><span class="nx">classList</span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="s1">'was-validated'</span><span class="p">);</span> + <span class="p">},</span> <span class="kc">false</span><span class="p">);</span> + <span class="p">});</span> + <span class="p">},</span> <span class="kc">false</span><span class="p">);</span> +<span class="p">})();</span> +<span class="nt"></script></span></code></pre></figure> + +<h3 id="browser-defaults">Browser defaults</h3> + +<p>Not interested in custom validation feedback messages or writing JavaScript to change form behaviors? All good, you can use the browser defaults. Try submitting the form below. Depending on your browser and OS, you’ll see a slightly different style of feedback.</p> + +<p>While these feedback styles cannot be styled with CSS, you can still customize the feedback text through JavaScript.</p> + +<div class="bd-example"> +<form> + <div class="form-row"> + <div class="col-md-4 mb-3"> + <label for="validationDefault01">First name</label> + <input type="text" class="form-control" id="validationDefault01" placeholder="First name" value="Mark" required="" /> + </div> + <div class="col-md-4 mb-3"> + <label for="validationDefault02">Last name</label> + <input type="text" class="form-control" id="validationDefault02" placeholder="Last name" value="Otto" required="" /> + </div> + <div class="col-md-4 mb-3"> + <label for="validationDefaultUsername">Username</label> + <div class="input-group"> + <div class="input-group-prepend"> + <span class="input-group-text" id="inputGroupPrepend2">@</span> + </div> + <input type="text" class="form-control" id="validationDefaultUsername" placeholder="Username" aria-describedby="inputGroupPrepend2" required="" /> + </div> + </div> + </div> + <div class="form-row"> + <div class="col-md-6 mb-3"> + <label for="validationDefault03">City</label> + <input type="text" class="form-control" id="validationDefault03" placeholder="City" required="" /> + </div> + <div class="col-md-3 mb-3"> + <label for="validationDefault04">State</label> + <input type="text" class="form-control" id="validationDefault04" placeholder="State" required="" /> + </div> + <div class="col-md-3 mb-3"> + <label for="validationDefault05">Zip</label> + <input type="text" class="form-control" id="validationDefault05" placeholder="Zip" required="" /> + </div> + </div> + <div class="form-group"> + <div class="form-check"> + <input class="form-check-input" type="checkbox" value="" id="invalidCheck2" required="" /> + <label class="form-check-label" for="invalidCheck2"> + Agree to terms and conditions + </label> + </div> + </div> + <button class="btn btn-primary" type="submit">Submit form</button> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationDefault01"</span><span class="nt">></span>First name<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationDefault01"</span> <span class="na">placeholder=</span><span class="s">"First name"</span> <span class="na">value=</span><span class="s">"Mark"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationDefault02"</span><span class="nt">></span>Last name<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationDefault02"</span> <span class="na">placeholder=</span><span class="s">"Last name"</span> <span class="na">value=</span><span class="s">"Otto"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationDefaultUsername"</span><span class="nt">></span>Username<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">id=</span><span class="s">"inputGroupPrepend2"</span><span class="nt">></span>@<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationDefaultUsername"</span> <span class="na">placeholder=</span><span class="s">"Username"</span> <span class="na">aria-describedby=</span><span class="s">"inputGroupPrepend2"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-6 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationDefault03"</span><span class="nt">></span>City<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationDefault03"</span> <span class="na">placeholder=</span><span class="s">"City"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-3 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationDefault04"</span><span class="nt">></span>State<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationDefault04"</span> <span class="na">placeholder=</span><span class="s">"State"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-3 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationDefault05"</span><span class="nt">></span>Zip<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationDefault05"</span> <span class="na">placeholder=</span><span class="s">"Zip"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input"</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">value=</span><span class="s">""</span> <span class="na">id=</span><span class="s">"invalidCheck2"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"invalidCheck2"</span><span class="nt">></span> + Agree to terms and conditions + <span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">type=</span><span class="s">"submit"</span><span class="nt">></span>Submit form<span class="nt"></button></span> +<span class="nt"></form></span></code></pre></figure> + +<h3 id="server-side">Server side</h3> + +<p>We recommend using client-side validation, but in case you require server-side validation, you can indicate invalid and valid form fields with <code class="highlighter-rouge">.is-invalid</code> and <code class="highlighter-rouge">.is-valid</code>. Note that <code class="highlighter-rouge">.invalid-feedback</code> is also supported with these classes.</p> + +<div class="bd-example"> +<form> + <div class="form-row"> + <div class="col-md-4 mb-3"> + <label for="validationServer01">First name</label> + <input type="text" class="form-control is-valid" id="validationServer01" placeholder="First name" value="Mark" required="" /> + <div class="valid-feedback"> + Looks good! + </div> + </div> + <div class="col-md-4 mb-3"> + <label for="validationServer02">Last name</label> + <input type="text" class="form-control is-valid" id="validationServer02" placeholder="Last name" value="Otto" required="" /> + <div class="valid-feedback"> + Looks good! + </div> + </div> + <div class="col-md-4 mb-3"> + <label for="validationServerUsername">Username</label> + <div class="input-group"> + <div class="input-group-prepend"> + <span class="input-group-text" id="inputGroupPrepend3">@</span> + </div> + <input type="text" class="form-control is-invalid" id="validationServerUsername" placeholder="Username" aria-describedby="inputGroupPrepend3" required="" /> + <div class="invalid-feedback"> + Please choose a username. + </div> + </div> + </div> + </div> + <div class="form-row"> + <div class="col-md-6 mb-3"> + <label for="validationServer03">City</label> + <input type="text" class="form-control is-invalid" id="validationServer03" placeholder="City" required="" /> + <div class="invalid-feedback"> + Please provide a valid city. + </div> + </div> + <div class="col-md-3 mb-3"> + <label for="validationServer04">State</label> + <input type="text" class="form-control is-invalid" id="validationServer04" placeholder="State" required="" /> + <div class="invalid-feedback"> + Please provide a valid state. + </div> + </div> + <div class="col-md-3 mb-3"> + <label for="validationServer05">Zip</label> + <input type="text" class="form-control is-invalid" id="validationServer05" placeholder="Zip" required="" /> + <div class="invalid-feedback"> + Please provide a valid zip. + </div> + </div> + </div> + <div class="form-group"> + <div class="form-check"> + <input class="form-check-input is-invalid" type="checkbox" value="" id="invalidCheck3" required="" /> + <label class="form-check-label" for="invalidCheck3"> + Agree to terms and conditions + </label> + <div class="invalid-feedback"> + You must agree before submitting. + </div> + </div> + </div> + <button class="btn btn-primary" type="submit">Submit form</button> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationServer01"</span><span class="nt">></span>First name<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control is-valid"</span> <span class="na">id=</span><span class="s">"validationServer01"</span> <span class="na">placeholder=</span><span class="s">"First name"</span> <span class="na">value=</span><span class="s">"Mark"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"valid-feedback"</span><span class="nt">></span> + Looks good! + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationServer02"</span><span class="nt">></span>Last name<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control is-valid"</span> <span class="na">id=</span><span class="s">"validationServer02"</span> <span class="na">placeholder=</span><span class="s">"Last name"</span> <span class="na">value=</span><span class="s">"Otto"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"valid-feedback"</span><span class="nt">></span> + Looks good! + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationServerUsername"</span><span class="nt">></span>Username<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">id=</span><span class="s">"inputGroupPrepend3"</span><span class="nt">></span>@<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control is-invalid"</span> <span class="na">id=</span><span class="s">"validationServerUsername"</span> <span class="na">placeholder=</span><span class="s">"Username"</span> <span class="na">aria-describedby=</span><span class="s">"inputGroupPrepend3"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-feedback"</span><span class="nt">></span> + Please choose a username. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-6 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationServer03"</span><span class="nt">></span>City<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control is-invalid"</span> <span class="na">id=</span><span class="s">"validationServer03"</span> <span class="na">placeholder=</span><span class="s">"City"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-feedback"</span><span class="nt">></span> + Please provide a valid city. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-3 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationServer04"</span><span class="nt">></span>State<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control is-invalid"</span> <span class="na">id=</span><span class="s">"validationServer04"</span> <span class="na">placeholder=</span><span class="s">"State"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-feedback"</span><span class="nt">></span> + Please provide a valid state. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-3 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationServer05"</span><span class="nt">></span>Zip<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control is-invalid"</span> <span class="na">id=</span><span class="s">"validationServer05"</span> <span class="na">placeholder=</span><span class="s">"Zip"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-feedback"</span><span class="nt">></span> + Please provide a valid zip. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-check"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-check-input is-invalid"</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">value=</span><span class="s">""</span> <span class="na">id=</span><span class="s">"invalidCheck3"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"form-check-label"</span> <span class="na">for=</span><span class="s">"invalidCheck3"</span><span class="nt">></span> + Agree to terms and conditions + <span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-feedback"</span><span class="nt">></span> + You must agree before submitting. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">type=</span><span class="s">"submit"</span><span class="nt">></span>Submit form<span class="nt"></button></span> +<span class="nt"></form></span></code></pre></figure> + +<h3 id="supported-elements">Supported elements</h3> + +<p>Validation styles are available for the following form controls and components:</p> + +<ul> + <li><code class="highlighter-rouge"><input></code>s and <code class="highlighter-rouge"><textarea></code>s with <code class="highlighter-rouge">.form-control</code> (including up to one <code class="highlighter-rouge">.form-control</code> in input groups)</li> + <li><code class="highlighter-rouge"><select></code>s with <code class="highlighter-rouge">.form-select</code> or <code class="highlighter-rouge">.custom-select</code></li> + <li><code class="highlighter-rouge">.form-check</code>s</li> + <li><code class="highlighter-rouge">.custom-checkbox</code>s and <code class="highlighter-rouge">.custom-radio</code>s</li> + <li><code class="highlighter-rouge">.custom-file</code></li> +</ul> + +<div class="bd-example"> +<form class="was-validated"> + <div class="mb-3"> + <label for="validationTextarea">Textarea</label> + <textarea class="form-control is-invalid" id="validationTextarea" placeholder="Required example textarea" required=""></textarea> + <div class="invalid-feedback"> + Please enter a message in the textarea. + </div> + </div> + + <div class="custom-control custom-checkbox mb-3"> + <input type="checkbox" class="custom-control-input" id="customControlValidation1" required="" /> + <label class="custom-control-label" for="customControlValidation1">Check this custom checkbox</label> + <div class="invalid-feedback">Example invalid feedback text</div> + </div> + + <div class="custom-control custom-radio"> + <input type="radio" class="custom-control-input" id="customControlValidation2" name="radio-stacked" required="" /> + <label class="custom-control-label" for="customControlValidation2">Toggle this custom radio</label> + </div> + <div class="custom-control custom-radio mb-3"> + <input type="radio" class="custom-control-input" id="customControlValidation3" name="radio-stacked" required="" /> + <label class="custom-control-label" for="customControlValidation3">Or toggle this other custom radio</label> + <div class="invalid-feedback">More example invalid feedback text</div> + </div> + + <div class="form-group"> + <select class="custom-select" required=""> + <option value="">Open this select menu</option> + <option value="1">One</option> + <option value="2">Two</option> + <option value="3">Three</option> + </select> + <div class="invalid-feedback">Example invalid custom select feedback</div> + </div> + + <div class="custom-file"> + <input type="file" class="custom-file-input" id="validatedCustomFile" required="" /> + <label class="custom-file-label" for="validatedCustomFile">Choose file...</label> + <div class="invalid-feedback">Example invalid custom file feedback</div> + </div> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form</span> <span class="na">class=</span><span class="s">"was-validated"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationTextarea"</span><span class="nt">></span>Textarea<span class="nt"></label></span> + <span class="nt"><textarea</span> <span class="na">class=</span><span class="s">"form-control is-invalid"</span> <span class="na">id=</span><span class="s">"validationTextarea"</span> <span class="na">placeholder=</span><span class="s">"Required example textarea"</span> <span class="na">required</span><span class="nt">></textarea></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-feedback"</span><span class="nt">></span> + Please enter a message in the textarea. + <span class="nt"></div></span> + <span class="nt"></div></span> + + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-control custom-checkbox mb-3"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">class=</span><span class="s">"custom-control-input"</span> <span class="na">id=</span><span class="s">"customControlValidation1"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-control-label"</span> <span class="na">for=</span><span class="s">"customControlValidation1"</span><span class="nt">></span>Check this custom checkbox<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-feedback"</span><span class="nt">></span>Example invalid feedback text<span class="nt"></div></span> + <span class="nt"></div></span> + + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-control custom-radio"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">class=</span><span class="s">"custom-control-input"</span> <span class="na">id=</span><span class="s">"customControlValidation2"</span> <span class="na">name=</span><span class="s">"radio-stacked"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-control-label"</span> <span class="na">for=</span><span class="s">"customControlValidation2"</span><span class="nt">></span>Toggle this custom radio<span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-control custom-radio mb-3"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">class=</span><span class="s">"custom-control-input"</span> <span class="na">id=</span><span class="s">"customControlValidation3"</span> <span class="na">name=</span><span class="s">"radio-stacked"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-control-label"</span> <span class="na">for=</span><span class="s">"customControlValidation3"</span><span class="nt">></span>Or toggle this other custom radio<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-feedback"</span><span class="nt">></span>More example invalid feedback text<span class="nt"></div></span> + <span class="nt"></div></span> + + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><select</span> <span class="na">class=</span><span class="s">"custom-select"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">""</span><span class="nt">></span>Open this select menu<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"1"</span><span class="nt">></span>One<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"2"</span><span class="nt">></span>Two<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"3"</span><span class="nt">></span>Three<span class="nt"></option></span> + <span class="nt"></select></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-feedback"</span><span class="nt">></span>Example invalid custom select feedback<span class="nt"></div></span> + <span class="nt"></div></span> + + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-file"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"file"</span> <span class="na">class=</span><span class="s">"custom-file-input"</span> <span class="na">id=</span><span class="s">"validatedCustomFile"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-file-label"</span> <span class="na">for=</span><span class="s">"validatedCustomFile"</span><span class="nt">></span>Choose file...<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-feedback"</span><span class="nt">></span>Example invalid custom file feedback<span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></form></span></code></pre></figure> + +<h3 id="tooltips">Tooltips</h3> + +<p>If your form layout allows it, you can swap the <code class="highlighter-rouge">.{valid|invalid}-feedback</code> classes for <code class="highlighter-rouge">.{valid|invalid}-tooltip</code> classes to display validation feedback in a styled tooltip. Be sure to have a parent with <code class="highlighter-rouge">position: relative</code> on it for tooltip positioning. In the example below, our column classes have this already, but your project may require an alternative setup.</p> + +<div class="bd-example"> +<form class="needs-validation" novalidate=""> + <div class="form-row"> + <div class="col-md-4 mb-3"> + <label for="validationTooltip01">First name</label> + <input type="text" class="form-control" id="validationTooltip01" placeholder="First name" value="Mark" required="" /> + <div class="valid-tooltip"> + Looks good! + </div> + </div> + <div class="col-md-4 mb-3"> + <label for="validationTooltip02">Last name</label> + <input type="text" class="form-control" id="validationTooltip02" placeholder="Last name" value="Otto" required="" /> + <div class="valid-tooltip"> + Looks good! + </div> + </div> + <div class="col-md-4 mb-3"> + <label for="validationTooltipUsername">Username</label> + <div class="input-group"> + <div class="input-group-prepend"> + <span class="input-group-text" id="validationTooltipUsernamePrepend">@</span> + </div> + <input type="text" class="form-control" id="validationTooltipUsername" placeholder="Username" aria-describedby="validationTooltipUsernamePrepend" required="" /> + <div class="invalid-tooltip"> + Please choose a unique and valid username. + </div> + </div> + </div> + </div> + <div class="form-row"> + <div class="col-md-6 mb-3"> + <label for="validationTooltip03">City</label> + <input type="text" class="form-control" id="validationTooltip03" placeholder="City" required="" /> + <div class="invalid-tooltip"> + Please provide a valid city. + </div> + </div> + <div class="col-md-3 mb-3"> + <label for="validationTooltip04">State</label> + <input type="text" class="form-control" id="validationTooltip04" placeholder="State" required="" /> + <div class="invalid-tooltip"> + Please provide a valid state. + </div> + </div> + <div class="col-md-3 mb-3"> + <label for="validationTooltip05">Zip</label> + <input type="text" class="form-control" id="validationTooltip05" placeholder="Zip" required="" /> + <div class="invalid-tooltip"> + Please provide a valid zip. + </div> + </div> + </div> + <button class="btn btn-primary" type="submit">Submit form</button> +</form> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><form</span> <span class="na">class=</span><span class="s">"needs-validation"</span> <span class="na">novalidate</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationTooltip01"</span><span class="nt">></span>First name<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationTooltip01"</span> <span class="na">placeholder=</span><span class="s">"First name"</span> <span class="na">value=</span><span class="s">"Mark"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"valid-tooltip"</span><span class="nt">></span> + Looks good! + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationTooltip02"</span><span class="nt">></span>Last name<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationTooltip02"</span> <span class="na">placeholder=</span><span class="s">"Last name"</span> <span class="na">value=</span><span class="s">"Otto"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"valid-tooltip"</span><span class="nt">></span> + Looks good! + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationTooltipUsername"</span><span class="nt">></span>Username<span class="nt"></label></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">id=</span><span class="s">"validationTooltipUsernamePrepend"</span><span class="nt">></span>@<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationTooltipUsername"</span> <span class="na">placeholder=</span><span class="s">"Username"</span> <span class="na">aria-describedby=</span><span class="s">"validationTooltipUsernamePrepend"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-tooltip"</span><span class="nt">></span> + Please choose a unique and valid username. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-6 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationTooltip03"</span><span class="nt">></span>City<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationTooltip03"</span> <span class="na">placeholder=</span><span class="s">"City"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-tooltip"</span><span class="nt">></span> + Please provide a valid city. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-3 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationTooltip04"</span><span class="nt">></span>State<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationTooltip04"</span> <span class="na">placeholder=</span><span class="s">"State"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-tooltip"</span><span class="nt">></span> + Please provide a valid state. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-3 mb-3"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"validationTooltip05"</span><span class="nt">></span>Zip<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"validationTooltip05"</span> <span class="na">placeholder=</span><span class="s">"Zip"</span> <span class="na">required</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"invalid-tooltip"</span><span class="nt">></span> + Please provide a valid zip. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">type=</span><span class="s">"submit"</span><span class="nt">></span>Submit form<span class="nt"></button></span> +<span class="nt"></form></span></code></pre></figure> + +<h3 id="customizing">Customizing</h3> + +<p>Validation states can be customized via Sass with the <code class="highlighter-rouge">$form-validation-states</code> map. Located in our <code class="highlighter-rouge">_variables.scss</code> file, this Sass map is looped over to generate the default <code class="highlighter-rouge">valid</code>/<code class="highlighter-rouge">invalid</code> validation states. Included is a nested map for customizing each state’s color and icon. While no other states are supported by browsers, those using custom styles can easily add more complex form feedback.</p> + +<p>Please note that we do not recommend customizing these values without also modifying the <code class="highlighter-rouge">form-validation-state</code> mixin.</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// Sass map from `_variables.scss`</span> +<span class="c1">// Override this and recompile your Sass to generate different states</span> +<span class="nv">$form-validation-states</span><span class="p">:</span> <span class="nf">map-merge</span><span class="p">(</span> + <span class="p">(</span> + <span class="s2">"valid"</span><span class="o">:</span> <span class="p">(</span> + <span class="s2">"color"</span><span class="o">:</span> <span class="nv">$form-feedback-valid-color</span><span class="o">,</span> + <span class="s2">"icon"</span><span class="o">:</span> <span class="nv">$form-feedback-icon-valid</span> + <span class="p">)</span><span class="o">,</span> + <span class="s2">"invalid"</span><span class="o">:</span> <span class="p">(</span> + <span class="s2">"color"</span><span class="o">:</span> <span class="nv">$form-feedback-invalid-color</span><span class="o">,</span> + <span class="s2">"icon"</span><span class="o">:</span> <span class="nv">$form-feedback-icon-invalid</span> + <span class="p">)</span> + <span class="p">)</span><span class="o">,</span> + <span class="nv">$form-validation-states</span> +<span class="p">);</span> + +<span class="c1">// Loop from `_forms.scss`</span> +<span class="c1">// Any modifications to the above Sass map will be reflected in your compiled</span> +<span class="c1">// CSS via this loop.</span> +<span class="k">@each</span> <span class="nv">$state</span><span class="o">,</span> <span class="nv">$data</span> <span class="n">in</span> <span class="nv">$form-validation-states</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">form-validation-state</span><span class="p">(</span><span class="nv">$state</span><span class="o">,</span> <span class="nf">map-get</span><span class="p">(</span><span class="nv">$data</span><span class="o">,</span> <span class="n">color</span><span class="p">)</span><span class="o">,</span> <span class="nf">map-get</span><span class="p">(</span><span class="nv">$data</span><span class="o">,</span> <span class="nb">icon</span><span class="p">));</span> +<span class="p">}</span></code></pre></figure> + +<h2 id="custom-forms">Custom forms</h2> + +<p>For even more customization and cross browser consistency, use our completely custom form elements to replace the browser defaults. They’re built on top of semantic and accessible markup, so they’re solid replacements for any default form control.</p> + +<h3 id="checkboxes-and-radios-1">Checkboxes and radios</h3> + +<p>Each checkbox and radio <code class="highlighter-rouge"><input></code> and <code class="highlighter-rouge"><label></code> pairing is wrapped in a <code class="highlighter-rouge"><div></code> to create our custom control. Structurally, this is the same approach as our default <code class="highlighter-rouge">.form-check</code>.</p> + +<p>We use the sibling selector (<code class="highlighter-rouge">~</code>) for all our <code class="highlighter-rouge"><input></code> states—like <code class="highlighter-rouge">:checked</code>—to properly style our custom form indicator. When combined with the <code class="highlighter-rouge">.custom-control-label</code> class, we can also style the text for each item based on the <code class="highlighter-rouge"><input></code>’s state.</p> + +<p>We hide the default <code class="highlighter-rouge"><input></code> with <code class="highlighter-rouge">opacity</code> and use the <code class="highlighter-rouge">.custom-control-label</code> to build a new custom form indicator in its place with <code class="highlighter-rouge">::before</code> and <code class="highlighter-rouge">::after</code>. Unfortunately we can’t build a custom one from just the <code class="highlighter-rouge"><input></code> because CSS’s <code class="highlighter-rouge">content</code> doesn’t work on that element.</p> + +<p>In the checked states, we use <strong>base64 embedded SVG icons</strong> from <a href="https://github.com/iconic/open-iconic">Open Iconic</a>. This provides us the best control for styling and positioning across browsers and devices.</p> + +<h4 id="checkboxes">Checkboxes</h4> + +<div class="bd-example"> +<div class="custom-control custom-checkbox"> + <input type="checkbox" class="custom-control-input" id="customCheck1" /> + <label class="custom-control-label" for="customCheck1">Check this custom checkbox</label> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-control custom-checkbox"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">class=</span><span class="s">"custom-control-input"</span> <span class="na">id=</span><span class="s">"customCheck1"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-control-label"</span> <span class="na">for=</span><span class="s">"customCheck1"</span><span class="nt">></span>Check this custom checkbox<span class="nt"></label></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Custom checkboxes can also utilize the <code class="highlighter-rouge">:indeterminate</code> pseudo class when manually set via JavaScript (there is no available HTML attribute for specifying it).</p> + +<div class="bd-example bd-example-indeterminate"> + <div class="custom-control custom-checkbox"> + <input type="checkbox" class="custom-control-input" id="customCheck2" /> + <label class="custom-control-label" for="customCheck2">Check this custom checkbox</label> + </div> +</div> + +<p>If you’re using jQuery, something like this should suffice:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'.your-checkbox'</span><span class="p">).</span><span class="nx">prop</span><span class="p">(</span><span class="s1">'indeterminate'</span><span class="p">,</span> <span class="kc">true</span><span class="p">)</span></code></pre></figure> + +<h4 id="radios">Radios</h4> + +<div class="bd-example"> +<div class="custom-control custom-radio"> + <input type="radio" id="customRadio1" name="customRadio" class="custom-control-input" /> + <label class="custom-control-label" for="customRadio1">Toggle this custom radio</label> +</div> +<div class="custom-control custom-radio"> + <input type="radio" id="customRadio2" name="customRadio" class="custom-control-input" /> + <label class="custom-control-label" for="customRadio2">Or toggle this other custom radio</label> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-control custom-radio"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">id=</span><span class="s">"customRadio1"</span> <span class="na">name=</span><span class="s">"customRadio"</span> <span class="na">class=</span><span class="s">"custom-control-input"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-control-label"</span> <span class="na">for=</span><span class="s">"customRadio1"</span><span class="nt">></span>Toggle this custom radio<span class="nt"></label></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-control custom-radio"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">id=</span><span class="s">"customRadio2"</span> <span class="na">name=</span><span class="s">"customRadio"</span> <span class="na">class=</span><span class="s">"custom-control-input"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-control-label"</span> <span class="na">for=</span><span class="s">"customRadio2"</span><span class="nt">></span>Or toggle this other custom radio<span class="nt"></label></span> +<span class="nt"></div></span></code></pre></figure> + +<h4 id="inline-1">Inline</h4> + +<div class="bd-example"> +<div class="custom-control custom-radio custom-control-inline"> + <input type="radio" id="customRadioInline1" name="customRadioInline1" class="custom-control-input" /> + <label class="custom-control-label" for="customRadioInline1">Toggle this custom radio</label> +</div> +<div class="custom-control custom-radio custom-control-inline"> + <input type="radio" id="customRadioInline2" name="customRadioInline1" class="custom-control-input" /> + <label class="custom-control-label" for="customRadioInline2">Or toggle this other custom radio</label> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-control custom-radio custom-control-inline"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">id=</span><span class="s">"customRadioInline1"</span> <span class="na">name=</span><span class="s">"customRadioInline1"</span> <span class="na">class=</span><span class="s">"custom-control-input"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-control-label"</span> <span class="na">for=</span><span class="s">"customRadioInline1"</span><span class="nt">></span>Toggle this custom radio<span class="nt"></label></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-control custom-radio custom-control-inline"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">id=</span><span class="s">"customRadioInline2"</span> <span class="na">name=</span><span class="s">"customRadioInline1"</span> <span class="na">class=</span><span class="s">"custom-control-input"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-control-label"</span> <span class="na">for=</span><span class="s">"customRadioInline2"</span><span class="nt">></span>Or toggle this other custom radio<span class="nt"></label></span> +<span class="nt"></div></span></code></pre></figure> + +<h4 id="disabled">Disabled</h4> + +<p>Custom checkboxes and radios can also be disabled. Add the <code class="highlighter-rouge">disabled</code> boolean attribute to the <code class="highlighter-rouge"><input></code> and the custom indicator and label description will be automatically styled.</p> + +<div class="bd-example"> +<div class="custom-control custom-checkbox"> + <input type="checkbox" class="custom-control-input" id="customCheckDisabled1" disabled="" /> + <label class="custom-control-label" for="customCheckDisabled1">Check this custom checkbox</label> +</div> + +<div class="custom-control custom-radio"> + <input type="radio" name="radioDisabled" id="customRadioDisabled2" class="custom-control-input" disabled="" /> + <label class="custom-control-label" for="customRadioDisabled2">Toggle this custom radio</label> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-control custom-checkbox"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">class=</span><span class="s">"custom-control-input"</span> <span class="na">id=</span><span class="s">"customCheckDisabled1"</span> <span class="na">disabled</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-control-label"</span> <span class="na">for=</span><span class="s">"customCheckDisabled1"</span><span class="nt">></span>Check this custom checkbox<span class="nt"></label></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-control custom-radio"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">name=</span><span class="s">"radioDisabled"</span> <span class="na">id=</span><span class="s">"customRadioDisabled2"</span> <span class="na">class=</span><span class="s">"custom-control-input"</span> <span class="na">disabled</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-control-label"</span> <span class="na">for=</span><span class="s">"customRadioDisabled2"</span><span class="nt">></span>Toggle this custom radio<span class="nt"></label></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="switches">Switches</h3> + +<p>A switch has the markup of a custom checkbox but uses the <code class="highlighter-rouge">.custom-switch</code> class to render a toggle switch. Switches also support the <code class="highlighter-rouge">disabled</code> attribute.</p> + +<div class="bd-example"> +<div class="custom-control custom-switch"> + <input type="checkbox" class="custom-control-input" id="customSwitch1" /> + <label class="custom-control-label" for="customSwitch1">Toggle this switch element</label> +</div> +<div class="custom-control custom-switch"> + <input type="checkbox" class="custom-control-input" disabled="" id="customSwitch2" /> + <label class="custom-control-label" for="customSwitch2">Disabled switch element</label> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-control custom-switch"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">class=</span><span class="s">"custom-control-input"</span> <span class="na">id=</span><span class="s">"customSwitch1"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-control-label"</span> <span class="na">for=</span><span class="s">"customSwitch1"</span><span class="nt">></span>Toggle this switch element<span class="nt"></label></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-control custom-switch"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">class=</span><span class="s">"custom-control-input"</span> <span class="na">disabled</span> <span class="na">id=</span><span class="s">"customSwitch2"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-control-label"</span> <span class="na">for=</span><span class="s">"customSwitch2"</span><span class="nt">></span>Disabled switch element<span class="nt"></label></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="select-menu">Select menu</h3> + +<p>Custom <code class="highlighter-rouge"><select></code> menus need only a custom class, <code class="highlighter-rouge">.custom-select</code> to trigger the custom styles. Custom styles are limited to the <code class="highlighter-rouge"><select></code>’s initial appearance and cannot modify the <code class="highlighter-rouge"><option></code>s due to browser limitations.</p> + +<div class="bd-example"> +<select class="custom-select"> + <option selected="">Open this select menu</option> + <option value="1">One</option> + <option value="2">Two</option> + <option value="3">Three</option> +</select> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><select</span> <span class="na">class=</span><span class="s">"custom-select"</span><span class="nt">></span> + <span class="nt"><option</span> <span class="na">selected</span><span class="nt">></span>Open this select menu<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"1"</span><span class="nt">></span>One<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"2"</span><span class="nt">></span>Two<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"3"</span><span class="nt">></span>Three<span class="nt"></option></span> +<span class="nt"></select></span></code></pre></figure> + +<p>You may also choose from small and large custom selects to match our similarly sized text inputs.</p> + +<div class="bd-example"> +<select class="custom-select custom-select-lg mb-3"> + <option selected="">Open this select menu</option> + <option value="1">One</option> + <option value="2">Two</option> + <option value="3">Three</option> +</select> + +<select class="custom-select custom-select-sm"> + <option selected="">Open this select menu</option> + <option value="1">One</option> + <option value="2">Two</option> + <option value="3">Three</option> +</select> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><select</span> <span class="na">class=</span><span class="s">"custom-select custom-select-lg mb-3"</span><span class="nt">></span> + <span class="nt"><option</span> <span class="na">selected</span><span class="nt">></span>Open this select menu<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"1"</span><span class="nt">></span>One<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"2"</span><span class="nt">></span>Two<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"3"</span><span class="nt">></span>Three<span class="nt"></option></span> +<span class="nt"></select></span> + +<span class="nt"><select</span> <span class="na">class=</span><span class="s">"custom-select custom-select-sm"</span><span class="nt">></span> + <span class="nt"><option</span> <span class="na">selected</span><span class="nt">></span>Open this select menu<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"1"</span><span class="nt">></span>One<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"2"</span><span class="nt">></span>Two<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"3"</span><span class="nt">></span>Three<span class="nt"></option></span> +<span class="nt"></select></span></code></pre></figure> + +<p>The <code class="highlighter-rouge">multiple</code> attribute is also supported:</p> + +<div class="bd-example"> +<select class="custom-select" multiple=""> + <option selected="">Open this select menu</option> + <option value="1">One</option> + <option value="2">Two</option> + <option value="3">Three</option> +</select> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><select</span> <span class="na">class=</span><span class="s">"custom-select"</span> <span class="na">multiple</span><span class="nt">></span> + <span class="nt"><option</span> <span class="na">selected</span><span class="nt">></span>Open this select menu<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"1"</span><span class="nt">></span>One<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"2"</span><span class="nt">></span>Two<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"3"</span><span class="nt">></span>Three<span class="nt"></option></span> +<span class="nt"></select></span></code></pre></figure> + +<p>As is the <code class="highlighter-rouge">size</code> attribute:</p> + +<div class="bd-example"> +<select class="custom-select" size="3"> + <option selected="">Open this select menu</option> + <option value="1">One</option> + <option value="2">Two</option> + <option value="3">Three</option> +</select> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><select</span> <span class="na">class=</span><span class="s">"custom-select"</span> <span class="na">size=</span><span class="s">"3"</span><span class="nt">></span> + <span class="nt"><option</span> <span class="na">selected</span><span class="nt">></span>Open this select menu<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"1"</span><span class="nt">></span>One<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"2"</span><span class="nt">></span>Two<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"3"</span><span class="nt">></span>Three<span class="nt"></option></span> +<span class="nt"></select></span></code></pre></figure> + +<h3 id="range">Range</h3> + +<p>Create custom <code class="highlighter-rouge"><input type="range"></code> controls with <code class="highlighter-rouge">.custom-range</code>. The track (the background) and thumb (the value) are both styled to appear the same across browsers. As only IE and Firefox support “filling†their track from the left or right of the thumb as a means to visually indicate progress, we do not currently support it.</p> + +<div class="bd-example"> +<label for="customRange1">Example range</label> +<input type="range" class="custom-range" id="customRange1" /> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><label</span> <span class="na">for=</span><span class="s">"customRange1"</span><span class="nt">></span>Example range<span class="nt"></label></span> +<span class="nt"><input</span> <span class="na">type=</span><span class="s">"range"</span> <span class="na">class=</span><span class="s">"custom-range"</span> <span class="na">id=</span><span class="s">"customRange1"</span><span class="nt">></span></code></pre></figure> + +<p>Range inputs have implicit values for <code class="highlighter-rouge">min</code> and <code class="highlighter-rouge">max</code>—<code class="highlighter-rouge">0</code> and <code class="highlighter-rouge">100</code>, respectively. You may specify new values for those using the <code class="highlighter-rouge">min</code> and <code class="highlighter-rouge">max</code> attributes.</p> + +<div class="bd-example"> +<label for="customRange2">Example range</label> +<input type="range" class="custom-range" min="0" max="5" id="customRange2" /> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><label</span> <span class="na">for=</span><span class="s">"customRange2"</span><span class="nt">></span>Example range<span class="nt"></label></span> +<span class="nt"><input</span> <span class="na">type=</span><span class="s">"range"</span> <span class="na">class=</span><span class="s">"custom-range"</span> <span class="na">min=</span><span class="s">"0"</span> <span class="na">max=</span><span class="s">"5"</span> <span class="na">id=</span><span class="s">"customRange2"</span><span class="nt">></span></code></pre></figure> + +<p>By default, range inputs “snap†to integer values. To change this, you can specify a <code class="highlighter-rouge">step</code> value. In the example below, we double the number of steps by using <code class="highlighter-rouge">step="0.5"</code>.</p> + +<div class="bd-example"> +<label for="customRange3">Example range</label> +<input type="range" class="custom-range" min="0" max="5" step="0.5" id="customRange3" /> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><label</span> <span class="na">for=</span><span class="s">"customRange3"</span><span class="nt">></span>Example range<span class="nt"></label></span> +<span class="nt"><input</span> <span class="na">type=</span><span class="s">"range"</span> <span class="na">class=</span><span class="s">"custom-range"</span> <span class="na">min=</span><span class="s">"0"</span> <span class="na">max=</span><span class="s">"5"</span> <span class="na">step=</span><span class="s">"0.5"</span> <span class="na">id=</span><span class="s">"customRange3"</span><span class="nt">></span></code></pre></figure> + +<h3 id="file-browser">File browser</h3> + +<div class="bd-callout bd-callout-info"> +<p>The recommended plugin to animate custom file input: <a href="https://www.npmjs.com/package/bs-custom-file-input">bs-custom-file-input</a>, that’s what we are using currently here in our docs.</p> +</div> + +<p>The file input is the most gnarly of the bunch and requires additional JavaScript if you’d like to hook them up with functional <em>Choose file…</em> and selected file name text.</p> + +<div class="bd-example"> +<div class="custom-file"> + <input type="file" class="custom-file-input" id="customFile" /> + <label class="custom-file-label" for="customFile">Choose file</label> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-file"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"file"</span> <span class="na">class=</span><span class="s">"custom-file-input"</span> <span class="na">id=</span><span class="s">"customFile"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-file-label"</span> <span class="na">for=</span><span class="s">"customFile"</span><span class="nt">></span>Choose file<span class="nt"></label></span> +<span class="nt"></div></span></code></pre></figure> + +<p>We hide the default file <code class="highlighter-rouge"><input></code> via <code class="highlighter-rouge">opacity</code> and instead style the <code class="highlighter-rouge"><label></code>. The button is generated and positioned with <code class="highlighter-rouge">::after</code>. Lastly, we declare a <code class="highlighter-rouge">width</code> and <code class="highlighter-rouge">height</code> on the <code class="highlighter-rouge"><input></code> for proper spacing for surrounding content.</p> + +<h4 id="translating-or-customizing-the-strings-with-scss">Translating or customizing the strings with SCSS</h4> + +<p>The <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/:lang"><code class="highlighter-rouge">:lang()</code> pseudo-class</a> is used to allow for translation of the “Browse†text into other languages. Override or add entries to the <code class="highlighter-rouge">$custom-file-text</code> Sass variable with the relevant <a href="https://en.wikipedia.org/wiki/IETF_language_tag">language tag</a> and localized strings. The English strings can be customized the same way. For example, here’s how one might add a Spanish translation (Spanish’s language code is <code class="highlighter-rouge">es</code>):</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nv">$custom-file-text</span><span class="p">:</span> <span class="p">(</span> + <span class="n">en</span><span class="o">:</span> <span class="s2">"Browse"</span><span class="o">,</span> + <span class="n">es</span><span class="o">:</span> <span class="s2">"Elegir"</span> +<span class="p">);</span></code></pre></figure> + +<p>Here’s <code class="highlighter-rouge">lang(es)</code> in action on the custom file input for a Spanish translation:</p> + +<div class="bd-example"> +<div class="custom-file"> + <input type="file" class="custom-file-input" id="customFileLang" lang="es" /> + <label class="custom-file-label" for="customFileLang">Seleccionar Archivo</label> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-file"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"file"</span> <span class="na">class=</span><span class="s">"custom-file-input"</span> <span class="na">id=</span><span class="s">"customFileLang"</span> <span class="na">lang=</span><span class="s">"es"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-file-label"</span> <span class="na">for=</span><span class="s">"customFileLang"</span><span class="nt">></span>Seleccionar Archivo<span class="nt"></label></span> +<span class="nt"></div></span></code></pre></figure> + +<p>You’ll need to set the language of your document (or subtree thereof) correctly in order for the correct text to be shown. This can be done using <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/lang">the <code class="highlighter-rouge">lang</code> attribute</a> on the <code class="highlighter-rouge"><span class="nt"><html></span></code> element or the <a href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.12"><code class="highlighter-rouge">Content-Language</code> HTTP header</a>, among other methods.</p> + +<h4 id="translating-or-customizing-the-strings-with-html">Translating or customizing the strings with HTML</h4> + +<p>Bootstrap also provides a way to translate the “Browse†text in HTML with the <code class="highlighter-rouge">data-browse</code> attribute which can be added to the custom input label (example in Dutch):</p> + +<div class="bd-example"> +<div class="custom-file"> + <input type="file" class="custom-file-input" id="customFileLangHTML" /> + <label class="custom-file-label" for="customFileLangHTML" data-browse="Bestand kiezen">Voeg je document toe</label> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-file"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"file"</span> <span class="na">class=</span><span class="s">"custom-file-input"</span> <span class="na">id=</span><span class="s">"customFileLangHTML"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-file-label"</span> <span class="na">for=</span><span class="s">"customFileLangHTML"</span> <span class="na">data-browse=</span><span class="s">"Bestand kiezen"</span><span class="nt">></span>Voeg je document toe<span class="nt"></label></span> +<span class="nt"></div></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/index.html b/docs/4.3/components/index.html new file mode 100644 index 0000000000..78f82cf679 --- /dev/null +++ b/docs/4.3/components/index.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<html lang="en-US"> + <meta charset="utf-8"> + <title>Redirecting…</title> + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/alerts/"> + <script>location="https://getbootstrap.com/docs/4.3/components/alerts/"</script> + <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.3/components/alerts/"> + <meta name="robots" content="noindex"> + <h1>Redirecting…</h1> + <a href="https://getbootstrap.com/docs/4.3/components/alerts/">Click here if you are not redirected.</a> +</html> diff --git a/docs/4.3/components/input-group/index.html b/docs/4.3/components/input-group/index.html new file mode 100644 index 0000000000..b1884b2ea5 --- /dev/null +++ b/docs/4.3/components/input-group/index.html @@ -0,0 +1,1135 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Easily extend form controls by adding text, buttons, or button groups on either side of textual inputs, custom selects, and custom file inputs."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Input group · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/input-group/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Input group"> +<meta name="twitter:description" content="Easily extend form controls by adding text, buttons, or button groups on either side of textual inputs, custom selects, and custom file inputs."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/input-group/"> +<meta property="og:title" content="Input group"> +<meta property="og:description" content="Easily extend form controls by adding text, buttons, or button groups on either side of textual inputs, custom selects, and custom file inputs."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#basic-example">Basic example</a></li> +<li class="toc-entry toc-h2"><a href="#wrapping">Wrapping</a></li> +<li class="toc-entry toc-h2"><a href="#sizing">Sizing</a></li> +<li class="toc-entry toc-h2"><a href="#checkboxes-and-radios">Checkboxes and radios</a></li> +<li class="toc-entry toc-h2"><a href="#multiple-inputs">Multiple inputs</a></li> +<li class="toc-entry toc-h2"><a href="#multiple-addons">Multiple addons</a></li> +<li class="toc-entry toc-h2"><a href="#button-addons">Button addons</a></li> +<li class="toc-entry toc-h2"><a href="#buttons-with-dropdowns">Buttons with dropdowns</a></li> +<li class="toc-entry toc-h2"><a href="#segmented-buttons">Segmented buttons</a></li> +<li class="toc-entry toc-h2"><a href="#custom-forms">Custom forms</a> +<ul> +<li class="toc-entry toc-h3"><a href="#custom-select">Custom select</a></li> +<li class="toc-entry toc-h3"><a href="#custom-file-input">Custom file input</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#accessibility">Accessibility</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Input group</h1> + <p class="bd-lead">Easily extend form controls by adding text, buttons, or button groups on either side of textual inputs, custom selects, and custom file inputs.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="basic-example">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. Remember to place <code class="highlighter-rouge"><label></code>s outside the input group.</p> + +<div class="bd-example"> +<div class="input-group mb-3"> + <div class="input-group-prepend"> + <span class="input-group-text" id="basic-addon1">@</span> + </div> + <input type="text" class="form-control" placeholder="Username" aria-label="Username" aria-describedby="basic-addon1" /> +</div> + +<div class="input-group mb-3"> + <input type="text" class="form-control" placeholder="Recipient's username" aria-label="Recipient's username" aria-describedby="basic-addon2" /> + <div class="input-group-append"> + <span class="input-group-text" id="basic-addon2">@example.com</span> + </div> +</div> + +<label for="basic-url">Your vanity URL</label> +<div class="input-group mb-3"> + <div class="input-group-prepend"> + <span class="input-group-text" id="basic-addon3">https://example.com/users/</span> + </div> + <input type="text" class="form-control" id="basic-url" aria-describedby="basic-addon3" /> +</div> + +<div class="input-group mb-3"> + <div class="input-group-prepend"> + <span class="input-group-text">$</span> + </div> + <input type="text" class="form-control" aria-label="Amount (to the nearest dollar)" /> + <div class="input-group-append"> + <span class="input-group-text">.00</span> + </div> +</div> + +<div class="input-group"> + <div class="input-group-prepend"> + <span class="input-group-text">With textarea</span> + </div> + <textarea class="form-control" aria-label="With textarea"></textarea> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">id=</span><span class="s">"basic-addon1"</span><span class="nt">></span>@<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">"Username"</span> <span class="na">aria-label=</span><span class="s">"Username"</span> <span class="na">aria-describedby=</span><span class="s">"basic-addon1"</span><span class="nt">></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">"Recipient's username"</span> <span class="na">aria-label=</span><span class="s">"Recipient's username"</span> <span class="na">aria-describedby=</span><span class="s">"basic-addon2"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-append"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">id=</span><span class="s">"basic-addon2"</span><span class="nt">></span>@example.com<span class="nt"></span></span> + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><label</span> <span class="na">for=</span><span class="s">"basic-url"</span><span class="nt">></span>Your vanity URL<span class="nt"></label></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">id=</span><span class="s">"basic-addon3"</span><span class="nt">></span>https://example.com/users/<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"basic-url"</span> <span class="na">aria-describedby=</span><span class="s">"basic-addon3"</span><span class="nt">></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span><span class="nt">></span>$<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">aria-label=</span><span class="s">"Amount (to the nearest dollar)"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-append"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span><span class="nt">></span>.00<span class="nt"></span></span> + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span><span class="nt">></span>With textarea<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"><textarea</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">aria-label=</span><span class="s">"With textarea"</span><span class="nt">></textarea></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="wrapping">Wrapping</h2> + +<p>Input groups wrap by default via <code class="highlighter-rouge">flex-wrap: wrap</code> in order to accommodate custom form field validation within an input group. You may disable this with <code class="highlighter-rouge">.flex-nowrap</code>.</p> + +<div class="bd-example"> +<div class="input-group flex-nowrap"> + <div class="input-group-prepend"> + <span class="input-group-text" id="addon-wrapping">@</span> + </div> + <input type="text" class="form-control" placeholder="Username" aria-label="Username" aria-describedby="addon-wrapping" /> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group flex-nowrap"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">id=</span><span class="s">"addon-wrapping"</span><span class="nt">></span>@<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">"Username"</span> <span class="na">aria-label=</span><span class="s">"Username"</span> <span class="na">aria-describedby=</span><span class="s">"addon-wrapping"</span><span class="nt">></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="sizing">Sizing</h2> + +<p>Add the relative form sizing classes to the <code class="highlighter-rouge">.input-group</code> itself and contents within will automatically resize—no need for repeating the form control size classes on each element.</p> + +<p><strong>Sizing on the individual input group elements isn’t supported.</strong></p> + +<div class="bd-example"> +<div class="input-group input-group-sm mb-3"> + <div class="input-group-prepend"> + <span class="input-group-text" id="inputGroup-sizing-sm">Small</span> + </div> + <input type="text" class="form-control" aria-label="Sizing example input" aria-describedby="inputGroup-sizing-sm" /> +</div> + +<div class="input-group mb-3"> + <div class="input-group-prepend"> + <span class="input-group-text" id="inputGroup-sizing-default">Default</span> + </div> + <input type="text" class="form-control" aria-label="Sizing example input" aria-describedby="inputGroup-sizing-default" /> +</div> + +<div class="input-group input-group-lg"> + <div class="input-group-prepend"> + <span class="input-group-text" id="inputGroup-sizing-lg">Large</span> + </div> + <input type="text" class="form-control" aria-label="Sizing example input" aria-describedby="inputGroup-sizing-lg" /> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group input-group-sm mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">id=</span><span class="s">"inputGroup-sizing-sm"</span><span class="nt">></span>Small<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">aria-label=</span><span class="s">"Sizing example input"</span> <span class="na">aria-describedby=</span><span class="s">"inputGroup-sizing-sm"</span><span class="nt">></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">id=</span><span class="s">"inputGroup-sizing-default"</span><span class="nt">></span>Default<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">aria-label=</span><span class="s">"Sizing example input"</span> <span class="na">aria-describedby=</span><span class="s">"inputGroup-sizing-default"</span><span class="nt">></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group input-group-lg"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">id=</span><span class="s">"inputGroup-sizing-lg"</span><span class="nt">></span>Large<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">aria-label=</span><span class="s">"Sizing example input"</span> <span class="na">aria-describedby=</span><span class="s">"inputGroup-sizing-lg"</span><span class="nt">></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="checkboxes-and-radios">Checkboxes and radios</h2> + +<p>Place any checkbox or radio option within an input group’s addon instead of text.</p> + +<div class="bd-example"> +<div class="input-group mb-3"> + <div class="input-group-prepend"> + <div class="input-group-text"> + <input type="checkbox" aria-label="Checkbox for following text input" /> + </div> + </div> + <input type="text" class="form-control" aria-label="Text input with checkbox" /> +</div> + +<div class="input-group"> + <div class="input-group-prepend"> + <div class="input-group-text"> + <input type="radio" aria-label="Radio button for following text input" /> + </div> + </div> + <input type="text" class="form-control" aria-label="Text input with radio button" /> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-text"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"checkbox"</span> <span class="na">aria-label=</span><span class="s">"Checkbox for following text input"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">aria-label=</span><span class="s">"Text input with checkbox"</span><span class="nt">></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-text"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"radio"</span> <span class="na">aria-label=</span><span class="s">"Radio button for following text input"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">aria-label=</span><span class="s">"Text input with radio button"</span><span class="nt">></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="multiple-inputs">Multiple inputs</h2> + +<p>While multiple <code class="highlighter-rouge"><input></code>s are supported visually, validation styles are only available for input groups with a single <code class="highlighter-rouge"><input></code>.</p> + +<div class="bd-example"> +<div class="input-group"> + <div class="input-group-prepend"> + <span class="input-group-text">First and last name</span> + </div> + <input type="text" aria-label="First name" class="form-control" /> + <input type="text" aria-label="Last name" class="form-control" /> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span><span class="nt">></span>First and last name<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">aria-label=</span><span class="s">"First name"</span> <span class="na">class=</span><span class="s">"form-control"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">aria-label=</span><span class="s">"Last name"</span> <span class="na">class=</span><span class="s">"form-control"</span><span class="nt">></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="multiple-addons">Multiple addons</h2> + +<p>Multiple add-ons are supported and can be mixed with checkbox and radio input versions.</p> + +<div class="bd-example"> +<div class="input-group mb-3"> + <div class="input-group-prepend"> + <span class="input-group-text">$</span> + <span class="input-group-text">0.00</span> + </div> + <input type="text" class="form-control" aria-label="Dollar amount (with dot and two decimal places)" /> +</div> + +<div class="input-group"> + <input type="text" class="form-control" aria-label="Dollar amount (with dot and two decimal places)" /> + <div class="input-group-append"> + <span class="input-group-text">$</span> + <span class="input-group-text">0.00</span> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span><span class="nt">></span>$<span class="nt"></span></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span><span class="nt">></span>0.00<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">aria-label=</span><span class="s">"Dollar amount (with dot and two decimal places)"</span><span class="nt">></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">aria-label=</span><span class="s">"Dollar amount (with dot and two decimal places)"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-append"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span><span class="nt">></span>$<span class="nt"></span></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span><span class="nt">></span>0.00<span class="nt"></span></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="button-addons">Button addons</h2> + +<div class="bd-example"> +<div class="input-group mb-3"> + <div class="input-group-prepend"> + <button class="btn btn-outline-secondary" type="button" id="button-addon1">Button</button> + </div> + <input type="text" class="form-control" placeholder="" aria-label="Example text with button addon" aria-describedby="button-addon1" /> +</div> + +<div class="input-group mb-3"> + <input type="text" class="form-control" placeholder="Recipient's username" aria-label="Recipient's username" aria-describedby="button-addon2" /> + <div class="input-group-append"> + <button class="btn btn-outline-secondary" type="button" id="button-addon2">Button</button> + </div> +</div> + +<div class="input-group mb-3"> + <div class="input-group-prepend" id="button-addon3"> + <button class="btn btn-outline-secondary" type="button">Button</button> + <button class="btn btn-outline-secondary" type="button">Button</button> + </div> + <input type="text" class="form-control" placeholder="" aria-label="Example text with two button addons" aria-describedby="button-addon3" /> +</div> + +<div class="input-group"> + <input type="text" class="form-control" placeholder="Recipient's username" aria-label="Recipient's username with two button addons" aria-describedby="button-addon4" /> + <div class="input-group-append" id="button-addon4"> + <button class="btn btn-outline-secondary" type="button">Button</button> + <button class="btn btn-outline-secondary" type="button">Button</button> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">id=</span><span class="s">"button-addon1"</span><span class="nt">></span>Button<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">""</span> <span class="na">aria-label=</span><span class="s">"Example text with button addon"</span> <span class="na">aria-describedby=</span><span class="s">"button-addon1"</span><span class="nt">></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">"Recipient's username"</span> <span class="na">aria-label=</span><span class="s">"Recipient's username"</span> <span class="na">aria-describedby=</span><span class="s">"button-addon2"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-append"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">id=</span><span class="s">"button-addon2"</span><span class="nt">></span>Button<span class="nt"></button></span> + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span> <span class="na">id=</span><span class="s">"button-addon3"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Button<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Button<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">""</span> <span class="na">aria-label=</span><span class="s">"Example text with two button addons"</span> <span class="na">aria-describedby=</span><span class="s">"button-addon3"</span><span class="nt">></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">"Recipient's username"</span> <span class="na">aria-label=</span><span class="s">"Recipient's username with two button addons"</span> <span class="na">aria-describedby=</span><span class="s">"button-addon4"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-append"</span> <span class="na">id=</span><span class="s">"button-addon4"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Button<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Button<span class="nt"></button></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="buttons-with-dropdowns">Buttons with dropdowns</h2> + +<div class="bd-example"> +<div class="input-group mb-3"> + <div class="input-group-prepend"> + <button class="btn btn-outline-secondary dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown</button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div role="separator" class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div> + <input type="text" class="form-control" aria-label="Text input with dropdown button" /> +</div> + +<div class="input-group"> + <input type="text" class="form-control" aria-label="Text input with dropdown button" /> + <div class="input-group-append"> + <button class="btn btn-outline-secondary dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown</button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div role="separator" class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary dropdown-toggle"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span>Dropdown<span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Something else here<span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">role=</span><span class="s">"separator"</span> <span class="na">class=</span><span class="s">"dropdown-divider"</span><span class="nt">></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Separated link<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">aria-label=</span><span class="s">"Text input with dropdown button"</span><span class="nt">></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">aria-label=</span><span class="s">"Text input with dropdown button"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-append"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary dropdown-toggle"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span>Dropdown<span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Something else here<span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">role=</span><span class="s">"separator"</span> <span class="na">class=</span><span class="s">"dropdown-divider"</span><span class="nt">></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Separated link<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="segmented-buttons">Segmented buttons</h2> + +<div class="bd-example"> +<div class="input-group mb-3"> + <div class="input-group-prepend"> + <button type="button" class="btn btn-outline-secondary">Action</button> + <button type="button" class="btn btn-outline-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + <span class="sr-only">Toggle Dropdown</span> + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div role="separator" class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div> + <input type="text" class="form-control" aria-label="Text input with segmented dropdown button" /> +</div> + +<div class="input-group"> + <input type="text" class="form-control" aria-label="Text input with segmented dropdown button" /> + <div class="input-group-append"> + <button type="button" class="btn btn-outline-secondary">Action</button> + <button type="button" class="btn btn-outline-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + <span class="sr-only">Toggle Dropdown</span> + </button> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div role="separator" class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary"</span><span class="nt">></span>Action<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary dropdown-toggle dropdown-toggle-split"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Toggle Dropdown<span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Something else here<span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">role=</span><span class="s">"separator"</span> <span class="na">class=</span><span class="s">"dropdown-divider"</span><span class="nt">></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Separated link<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">aria-label=</span><span class="s">"Text input with segmented dropdown button"</span><span class="nt">></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">aria-label=</span><span class="s">"Text input with segmented dropdown button"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-append"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary"</span><span class="nt">></span>Action<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary dropdown-toggle dropdown-toggle-split"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Toggle Dropdown<span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Something else here<span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">role=</span><span class="s">"separator"</span> <span class="na">class=</span><span class="s">"dropdown-divider"</span><span class="nt">></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Separated link<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="custom-forms">Custom forms</h2> + +<p>Input groups include support for custom selects and custom file inputs. Browser default versions of these are not supported.</p> + +<h3 id="custom-select">Custom select</h3> + +<div class="bd-example"> +<div class="input-group mb-3"> + <div class="input-group-prepend"> + <label class="input-group-text" for="inputGroupSelect01">Options</label> + </div> + <select class="custom-select" id="inputGroupSelect01"> + <option selected="">Choose...</option> + <option value="1">One</option> + <option value="2">Two</option> + <option value="3">Three</option> + </select> +</div> + +<div class="input-group mb-3"> + <select class="custom-select" id="inputGroupSelect02"> + <option selected="">Choose...</option> + <option value="1">One</option> + <option value="2">Two</option> + <option value="3">Three</option> + </select> + <div class="input-group-append"> + <label class="input-group-text" for="inputGroupSelect02">Options</label> + </div> +</div> + +<div class="input-group mb-3"> + <div class="input-group-prepend"> + <button class="btn btn-outline-secondary" type="button">Button</button> + </div> + <select class="custom-select" id="inputGroupSelect03" aria-label="Example select with button addon"> + <option selected="">Choose...</option> + <option value="1">One</option> + <option value="2">Two</option> + <option value="3">Three</option> + </select> +</div> + +<div class="input-group"> + <select class="custom-select" id="inputGroupSelect04" aria-label="Example select with button addon"> + <option selected="">Choose...</option> + <option value="1">One</option> + <option value="2">Two</option> + <option value="3">Three</option> + </select> + <div class="input-group-append"> + <button class="btn btn-outline-secondary" type="button">Button</button> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">for=</span><span class="s">"inputGroupSelect01"</span><span class="nt">></span>Options<span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"><select</span> <span class="na">class=</span><span class="s">"custom-select"</span> <span class="na">id=</span><span class="s">"inputGroupSelect01"</span><span class="nt">></span> + <span class="nt"><option</span> <span class="na">selected</span><span class="nt">></span>Choose...<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"1"</span><span class="nt">></span>One<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"2"</span><span class="nt">></span>Two<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"3"</span><span class="nt">></span>Three<span class="nt"></option></span> + <span class="nt"></select></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><select</span> <span class="na">class=</span><span class="s">"custom-select"</span> <span class="na">id=</span><span class="s">"inputGroupSelect02"</span><span class="nt">></span> + <span class="nt"><option</span> <span class="na">selected</span><span class="nt">></span>Choose...<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"1"</span><span class="nt">></span>One<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"2"</span><span class="nt">></span>Two<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"3"</span><span class="nt">></span>Three<span class="nt"></option></span> + <span class="nt"></select></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-append"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">for=</span><span class="s">"inputGroupSelect02"</span><span class="nt">></span>Options<span class="nt"></label></span> + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Button<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><select</span> <span class="na">class=</span><span class="s">"custom-select"</span> <span class="na">id=</span><span class="s">"inputGroupSelect03"</span> <span class="na">aria-label=</span><span class="s">"Example select with button addon"</span><span class="nt">></span> + <span class="nt"><option</span> <span class="na">selected</span><span class="nt">></span>Choose...<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"1"</span><span class="nt">></span>One<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"2"</span><span class="nt">></span>Two<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"3"</span><span class="nt">></span>Three<span class="nt"></option></span> + <span class="nt"></select></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><select</span> <span class="na">class=</span><span class="s">"custom-select"</span> <span class="na">id=</span><span class="s">"inputGroupSelect04"</span> <span class="na">aria-label=</span><span class="s">"Example select with button addon"</span><span class="nt">></span> + <span class="nt"><option</span> <span class="na">selected</span><span class="nt">></span>Choose...<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"1"</span><span class="nt">></span>One<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"2"</span><span class="nt">></span>Two<span class="nt"></option></span> + <span class="nt"><option</span> <span class="na">value=</span><span class="s">"3"</span><span class="nt">></span>Three<span class="nt"></option></span> + <span class="nt"></select></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-append"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Button<span class="nt"></button></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="custom-file-input">Custom file input</h3> + +<div class="bd-example"> +<div class="input-group mb-3"> + <div class="input-group-prepend"> + <span class="input-group-text" id="inputGroupFileAddon01">Upload</span> + </div> + <div class="custom-file"> + <input type="file" class="custom-file-input" id="inputGroupFile01" aria-describedby="inputGroupFileAddon01" /> + <label class="custom-file-label" for="inputGroupFile01">Choose file</label> + </div> +</div> + +<div class="input-group mb-3"> + <div class="custom-file"> + <input type="file" class="custom-file-input" id="inputGroupFile02" /> + <label class="custom-file-label" for="inputGroupFile02" aria-describedby="inputGroupFileAddon02">Choose file</label> + </div> + <div class="input-group-append"> + <span class="input-group-text" id="inputGroupFileAddon02">Upload</span> + </div> +</div> + +<div class="input-group mb-3"> + <div class="input-group-prepend"> + <button class="btn btn-outline-secondary" type="button" id="inputGroupFileAddon03">Button</button> + </div> + <div class="custom-file"> + <input type="file" class="custom-file-input" id="inputGroupFile03" aria-describedby="inputGroupFileAddon03" /> + <label class="custom-file-label" for="inputGroupFile03">Choose file</label> + </div> +</div> + +<div class="input-group"> + <div class="custom-file"> + <input type="file" class="custom-file-input" id="inputGroupFile04" aria-describedby="inputGroupFileAddon04" /> + <label class="custom-file-label" for="inputGroupFile04">Choose file</label> + </div> + <div class="input-group-append"> + <button class="btn btn-outline-secondary" type="button" id="inputGroupFileAddon04">Button</button> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">id=</span><span class="s">"inputGroupFileAddon01"</span><span class="nt">></span>Upload<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-file"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"file"</span> <span class="na">class=</span><span class="s">"custom-file-input"</span> <span class="na">id=</span><span class="s">"inputGroupFile01"</span> <span class="na">aria-describedby=</span><span class="s">"inputGroupFileAddon01"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-file-label"</span> <span class="na">for=</span><span class="s">"inputGroupFile01"</span><span class="nt">></span>Choose file<span class="nt"></label></span> + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-file"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"file"</span> <span class="na">class=</span><span class="s">"custom-file-input"</span> <span class="na">id=</span><span class="s">"inputGroupFile02"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-file-label"</span> <span class="na">for=</span><span class="s">"inputGroupFile02"</span> <span class="na">aria-describedby=</span><span class="s">"inputGroupFileAddon02"</span><span class="nt">></span>Choose file<span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-append"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">id=</span><span class="s">"inputGroupFileAddon02"</span><span class="nt">></span>Upload<span class="nt"></span></span> + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">id=</span><span class="s">"inputGroupFileAddon03"</span><span class="nt">></span>Button<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-file"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"file"</span> <span class="na">class=</span><span class="s">"custom-file-input"</span> <span class="na">id=</span><span class="s">"inputGroupFile03"</span> <span class="na">aria-describedby=</span><span class="s">"inputGroupFileAddon03"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-file-label"</span> <span class="na">for=</span><span class="s">"inputGroupFile03"</span><span class="nt">></span>Choose file<span class="nt"></label></span> + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"custom-file"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"file"</span> <span class="na">class=</span><span class="s">"custom-file-input"</span> <span class="na">id=</span><span class="s">"inputGroupFile04"</span> <span class="na">aria-describedby=</span><span class="s">"inputGroupFileAddon04"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">class=</span><span class="s">"custom-file-label"</span> <span class="na">for=</span><span class="s">"inputGroupFile04"</span><span class="nt">></span>Choose file<span class="nt"></label></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-append"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-secondary"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">id=</span><span class="s">"inputGroupFileAddon04"</span><span class="nt">></span>Button<span class="nt"></button></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="accessibility">Accessibility</h2> + +<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 class="highlighter-rouge"><label></code> elements hidden using the <code class="highlighter-rouge">.sr-only</code> class, or use of the <code class="highlighter-rouge">aria-label</code> and <code class="highlighter-rouge">aria-labelledby</code> attributes, possibly in combination with <code class="highlighter-rouge">aria-describedby</code>) 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> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/jumbotron/index.html b/docs/4.3/components/jumbotron/index.html new file mode 100644 index 0000000000..f5de067783 --- /dev/null +++ b/docs/4.3/components/jumbotron/index.html @@ -0,0 +1,516 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Lightweight, flexible component for showcasing hero unit style content."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Jumbotron · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/jumbotron/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Jumbotron"> +<meta name="twitter:description" content="Lightweight, flexible component for showcasing hero unit style content."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/jumbotron/"> +<meta property="og:title" content="Jumbotron"> +<meta property="og:description" content="Lightweight, flexible component for showcasing hero unit style content."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Jumbotron</h1> + <p class="bd-lead">Lightweight, flexible component for showcasing hero unit style content.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>A lightweight, flexible component that can optionally extend the entire viewport to showcase key marketing messages on your site.</p> + +<div class="bd-example"> +<div class="jumbotron"> + <h1 class="display-4">Hello, world!</h1> + <p class="lead">This is a simple hero unit, a simple jumbotron-style component for calling extra attention to featured content or information.</p> + <hr class="my-4" /> + <p>It uses utility classes for typography and spacing to space content out within the larger container.</p> + <a class="btn btn-primary btn-lg" href="#" role="button">Learn more</a> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"jumbotron"</span><span class="nt">></span> + <span class="nt"><h1</span> <span class="na">class=</span><span class="s">"display-4"</span><span class="nt">></span>Hello, world!<span class="nt"></h1></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"lead"</span><span class="nt">></span>This is a simple hero unit, a simple jumbotron-style component for calling extra attention to featured content or information.<span class="nt"></p></span> + <span class="nt"><hr</span> <span class="na">class=</span><span class="s">"my-4"</span><span class="nt">></span> + <span class="nt"><p></span>It uses utility classes for typography and spacing to space content out within the larger container.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"btn btn-primary btn-lg"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">role=</span><span class="s">"button"</span><span class="nt">></span>Learn more<span class="nt"></a></span> +<span class="nt"></div></span></code></pre></figure> + +<p>To make the jumbotron full width, and without rounded corners, add the <code class="highlighter-rouge">.jumbotron-fluid</code> modifier class and add a <code class="highlighter-rouge">.container</code> or <code class="highlighter-rouge">.container-fluid</code> within.</p> + +<div class="bd-example"> +<div class="jumbotron jumbotron-fluid"> + <div class="container"> + <h1 class="display-4">Fluid jumbotron</h1> + <p class="lead">This is a modified jumbotron that occupies the entire horizontal space of its parent.</p> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"jumbotron jumbotron-fluid"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><h1</span> <span class="na">class=</span><span class="s">"display-4"</span><span class="nt">></span>Fluid jumbotron<span class="nt"></h1></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"lead"</span><span class="nt">></span>This is a modified jumbotron that occupies the entire horizontal space of its parent.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/list-group/index.html b/docs/4.3/components/list-group/index.html new file mode 100644 index 0000000000..fa4aea4530 --- /dev/null +++ b/docs/4.3/components/list-group/index.html @@ -0,0 +1,1057 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="List groups are a flexible and powerful component for displaying a series of content. Modify and extend them to support just about any content within."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>List group · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/list-group/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="List group"> +<meta name="twitter:description" content="List groups are a flexible and powerful component for displaying a series of content. Modify and extend them to support just about any content within."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/list-group/"> +<meta property="og:title" content="List group"> +<meta property="og:description" content="List groups are a flexible and powerful component for displaying a series of content. Modify and extend them to support just about any content within."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#basic-example">Basic example</a></li> +<li class="toc-entry toc-h2"><a href="#active-items">Active items</a></li> +<li class="toc-entry toc-h2"><a href="#disabled-items">Disabled items</a></li> +<li class="toc-entry toc-h2"><a href="#links-and-buttons">Links and buttons</a></li> +<li class="toc-entry toc-h2"><a href="#flush">Flush</a></li> +<li class="toc-entry toc-h2"><a href="#horizontal">Horizontal</a></li> +<li class="toc-entry toc-h2"><a href="#contextual-classes">Contextual classes</a></li> +<li class="toc-entry toc-h2"><a href="#with-badges">With badges</a></li> +<li class="toc-entry toc-h2"><a href="#custom-content">Custom content</a></li> +<li class="toc-entry toc-h2"><a href="#javascript-behavior">JavaScript behavior</a> +<ul> +<li class="toc-entry toc-h3"><a href="#using-data-attributes">Using data attributes</a></li> +<li class="toc-entry toc-h3"><a href="#via-javascript">Via JavaScript</a></li> +<li class="toc-entry toc-h3"><a href="#fade-effect">Fade effect</a></li> +<li class="toc-entry toc-h3"><a href="#methods">Methods</a> +<ul> +<li class="toc-entry toc-h4"><a href="#tab">$().tab</a></li> +<li class="toc-entry toc-h4"><a href="#tabshow">.tab(‘show’)</a></li> +</ul> +</li> +<li class="toc-entry toc-h3"><a href="#events">Events</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">List group</h1> + <p class="bd-lead">List groups are a flexible and powerful component for displaying a series of content. Modify and extend them to support just about any content within.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="basic-example">Basic example</h2> + +<p>The most basic list group is an unordered list with list items and the proper classes. Build upon it with the options that follow, or with your own CSS as needed.</p> + +<div class="bd-example"> +<ul class="list-group"> + <li class="list-group-item">Cras justo odio</li> + <li class="list-group-item">Dapibus ac facilisis in</li> + <li class="list-group-item">Morbi leo risus</li> + <li class="list-group-item">Porta ac consectetur ac</li> + <li class="list-group-item">Vestibulum at eros</li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-group"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Cras justo odio<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Dapibus ac facilisis in<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Morbi leo risus<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Porta ac consectetur ac<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Vestibulum at eros<span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<h2 id="active-items">Active items</h2> + +<p>Add <code class="highlighter-rouge">.active</code> to a <code class="highlighter-rouge">.list-group-item</code> to indicate the current active selection.</p> + +<div class="bd-example"> +<ul class="list-group"> + <li class="list-group-item active">Cras justo odio</li> + <li class="list-group-item">Dapibus ac facilisis in</li> + <li class="list-group-item">Morbi leo risus</li> + <li class="list-group-item">Porta ac consectetur ac</li> + <li class="list-group-item">Vestibulum at eros</li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-group"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item active"</span><span class="nt">></span>Cras justo odio<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Dapibus ac facilisis in<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Morbi leo risus<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Porta ac consectetur ac<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Vestibulum at eros<span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<h2 id="disabled-items">Disabled items</h2> + +<p>Add <code class="highlighter-rouge">.disabled</code> to a <code class="highlighter-rouge">.list-group-item</code> to make it <em>appear</em> disabled. Note that some elements with <code class="highlighter-rouge">.disabled</code> will also require custom JavaScript to fully disable their click events (e.g., links).</p> + +<div class="bd-example"> +<ul class="list-group"> + <li class="list-group-item disabled" aria-disabled="true">Cras justo odio</li> + <li class="list-group-item">Dapibus ac facilisis in</li> + <li class="list-group-item">Morbi leo risus</li> + <li class="list-group-item">Porta ac consectetur ac</li> + <li class="list-group-item">Vestibulum at eros</li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-group"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item disabled"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Cras justo odio<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Dapibus ac facilisis in<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Morbi leo risus<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Porta ac consectetur ac<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Vestibulum at eros<span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<h2 id="links-and-buttons">Links and buttons</h2> + +<p>Use <code class="highlighter-rouge"><a></code>s or <code class="highlighter-rouge"><button></code>s to create <em>actionable</em> list group items with hover, disabled, and active states by adding <code class="highlighter-rouge">.list-group-item-action</code>. We separate these pseudo-classes to ensure list groups made of non-interactive elements (like <code class="highlighter-rouge"><li></code>s or <code class="highlighter-rouge"><div></code>s) don’t provide a click or tap affordance.</p> + +<p>Be sure to <strong>not use the standard <code class="highlighter-rouge">.btn</code> classes here</strong>.</p> + +<div class="bd-example"> +<div class="list-group"> + <a href="#" class="list-group-item list-group-item-action active"> + Cras justo odio + </a> + <a href="#" class="list-group-item list-group-item-action">Dapibus ac facilisis in</a> + <a href="#" class="list-group-item list-group-item-action">Morbi leo risus</a> + <a href="#" class="list-group-item list-group-item-action">Porta ac consectetur ac</a> + <a href="#" class="list-group-item list-group-item-action disabled" tabindex="-1" aria-disabled="true">Vestibulum at eros</a> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"list-group"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action active"</span><span class="nt">></span> + Cras justo odio + <span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span><span class="nt">></span>Dapibus ac facilisis in<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span><span class="nt">></span>Morbi leo risus<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span><span class="nt">></span>Porta ac consectetur ac<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action disabled"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Vestibulum at eros<span class="nt"></a></span> +<span class="nt"></div></span></code></pre></figure> + +<p>With <code class="highlighter-rouge"><button></code>s, you can also make use of the <code class="highlighter-rouge">disabled</code> attribute instead of the <code class="highlighter-rouge">.disabled</code> class. Sadly, <code class="highlighter-rouge"><a></code>s don’t support the disabled attribute.</p> + +<div class="bd-example"> +<div class="list-group"> + <button type="button" class="list-group-item list-group-item-action active"> + Cras justo odio + </button> + <button type="button" class="list-group-item list-group-item-action">Dapibus ac facilisis in</button> + <button type="button" class="list-group-item list-group-item-action">Morbi leo risus</button> + <button type="button" class="list-group-item list-group-item-action">Porta ac consectetur ac</button> + <button type="button" class="list-group-item list-group-item-action" disabled="">Vestibulum at eros</button> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"list-group"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action active"</span><span class="nt">></span> + Cras justo odio + <span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span><span class="nt">></span>Dapibus ac facilisis in<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span><span class="nt">></span>Morbi leo risus<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span><span class="nt">></span>Porta ac consectetur ac<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span> <span class="na">disabled</span><span class="nt">></span>Vestibulum at eros<span class="nt"></button></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="flush">Flush</h2> + +<p>Add <code class="highlighter-rouge">.list-group-flush</code> to remove some borders and rounded corners to render list group items edge-to-edge in a parent container (e.g., cards).</p> + +<div class="bd-example"> +<ul class="list-group list-group-flush"> + <li class="list-group-item">Cras justo odio</li> + <li class="list-group-item">Dapibus ac facilisis in</li> + <li class="list-group-item">Morbi leo risus</li> + <li class="list-group-item">Porta ac consectetur ac</li> + <li class="list-group-item">Vestibulum at eros</li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-group list-group-flush"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Cras justo odio<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Dapibus ac facilisis in<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Morbi leo risus<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Porta ac consectetur ac<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Vestibulum at eros<span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<h2 id="horizontal">Horizontal</h2> + +<p>Add <code class="highlighter-rouge">.list-group-horizontal</code> to change the layout of list group items from vertical to horizontal across all breakpoints. Alternatively, choose a responsive variant <code class="highlighter-rouge">.list-group-horizontal-{sm|md|lg|xl}</code> to make a list group horizontal starting at that breakpoint’s <code class="highlighter-rouge">min-width</code>. Currently <strong>horizontal list groups cannot be combined with flush list groups.</strong></p> + +<p><strong>ProTip:</strong> Want equal-width list group items when horizontal? Add <code class="highlighter-rouge">.flex-fill</code> to each list group item.</p> + +<div class="bd-example"> +<ul class="list-group list-group-horizontal"> + <li class="list-group-item">Cras justo odio</li> + <li class="list-group-item">Dapibus ac facilisis in</li> + <li class="list-group-item">Morbi leo risus</li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-group list-group-horizontal"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Cras justo odio<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Dapibus ac facilisis in<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Morbi leo risus<span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<div class="bd-example"> +<ul class="list-group list-group-horizontal-sm"> + <li class="list-group-item">Cras justo odio</li> + <li class="list-group-item">Dapibus ac facilisis in</li> + <li class="list-group-item">Morbi leo risus</li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-group list-group-horizontal-sm"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Cras justo odio<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Dapibus ac facilisis in<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Morbi leo risus<span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<div class="bd-example"> +<ul class="list-group list-group-horizontal-md"> + <li class="list-group-item">Cras justo odio</li> + <li class="list-group-item">Dapibus ac facilisis in</li> + <li class="list-group-item">Morbi leo risus</li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-group list-group-horizontal-md"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Cras justo odio<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Dapibus ac facilisis in<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Morbi leo risus<span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<div class="bd-example"> +<ul class="list-group list-group-horizontal-lg"> + <li class="list-group-item">Cras justo odio</li> + <li class="list-group-item">Dapibus ac facilisis in</li> + <li class="list-group-item">Morbi leo risus</li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-group list-group-horizontal-lg"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Cras justo odio<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Dapibus ac facilisis in<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Morbi leo risus<span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<div class="bd-example"> +<ul class="list-group list-group-horizontal-xl"> + <li class="list-group-item">Cras justo odio</li> + <li class="list-group-item">Dapibus ac facilisis in</li> + <li class="list-group-item">Morbi leo risus</li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-group list-group-horizontal-xl"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Cras justo odio<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Dapibus ac facilisis in<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Morbi leo risus<span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<h2 id="contextual-classes">Contextual classes</h2> + +<p>Use contextual classes to style list items with a stateful background and color.</p> + +<div class="bd-example"> +<ul class="list-group"> + <li class="list-group-item">Dapibus ac facilisis in</li> + + + <li class="list-group-item list-group-item-primary">A simple primary list group item</li> + <li class="list-group-item list-group-item-secondary">A simple secondary list group item</li> + <li class="list-group-item list-group-item-success">A simple success list group item</li> + <li class="list-group-item list-group-item-danger">A simple danger list group item</li> + <li class="list-group-item list-group-item-warning">A simple warning list group item</li> + <li class="list-group-item list-group-item-info">A simple info list group item</li> + <li class="list-group-item list-group-item-light">A simple light list group item</li> + <li class="list-group-item list-group-item-dark">A simple dark list group item</li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-group"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item"</span><span class="nt">></span>Dapibus ac facilisis in<span class="nt"></li></span> + + + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-primary"</span><span class="nt">></span>A simple primary list group item<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-secondary"</span><span class="nt">></span>A simple secondary list group item<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-success"</span><span class="nt">></span>A simple success list group item<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-danger"</span><span class="nt">></span>A simple danger list group item<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-warning"</span><span class="nt">></span>A simple warning list group item<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-info"</span><span class="nt">></span>A simple info list group item<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-light"</span><span class="nt">></span>A simple light list group item<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-dark"</span><span class="nt">></span>A simple dark list group item<span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<p>Contextual classes also work with <code class="highlighter-rouge">.list-group-item-action</code>. Note the addition of the hover styles here not present in the previous example. Also supported is the <code class="highlighter-rouge">.active</code> state; apply it to indicate an active selection on a contextual list group item.</p> + +<div class="bd-example"> +<div class="list-group"> + <a href="#" class="list-group-item list-group-item-action">Dapibus ac facilisis in</a> + + + <a href="#" class="list-group-item list-group-item-action list-group-item-primary">A simple primary list group item</a> + <a href="#" class="list-group-item list-group-item-action list-group-item-secondary">A simple secondary list group item</a> + <a href="#" class="list-group-item list-group-item-action list-group-item-success">A simple success list group item</a> + <a href="#" class="list-group-item list-group-item-action list-group-item-danger">A simple danger list group item</a> + <a href="#" class="list-group-item list-group-item-action list-group-item-warning">A simple warning list group item</a> + <a href="#" class="list-group-item list-group-item-action list-group-item-info">A simple info list group item</a> + <a href="#" class="list-group-item list-group-item-action list-group-item-light">A simple light list group item</a> + <a href="#" class="list-group-item list-group-item-action list-group-item-dark">A simple dark list group item</a> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"list-group"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span><span class="nt">></span>Dapibus ac facilisis in<span class="nt"></a></span> + + + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action list-group-item-primary"</span><span class="nt">></span>A simple primary list group item<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action list-group-item-secondary"</span><span class="nt">></span>A simple secondary list group item<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action list-group-item-success"</span><span class="nt">></span>A simple success list group item<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action list-group-item-danger"</span><span class="nt">></span>A simple danger list group item<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action list-group-item-warning"</span><span class="nt">></span>A simple warning list group item<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action list-group-item-info"</span><span class="nt">></span>A simple info list group item<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action list-group-item-light"</span><span class="nt">></span>A simple light list group item<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action list-group-item-dark"</span><span class="nt">></span>A simple dark list group item<span class="nt"></a></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-callout bd-callout-warning"> +<h5 id="conveying-meaning-to-assistive-technologies">Conveying meaning to assistive technologies</h5> + +<p>Using color to add meaning only provides a visual indication, which will not be conveyed to users of assistive technologies – such as screen readers. Ensure that information denoted by the color is either obvious from the content itself (e.g. the visible text), or is included through alternative means, such as additional text hidden with the <code class="highlighter-rouge">.sr-only</code> class.</p> +</div> + +<h2 id="with-badges">With badges</h2> + +<p>Add badges to any list group item to show unread counts, activity, and more with the help of some <a href="/docs/4.3/utilities/flex/">utilities</a>.</p> + +<div class="bd-example"> +<ul class="list-group"> + <li class="list-group-item d-flex justify-content-between align-items-center"> + Cras justo odio + <span class="badge badge-primary badge-pill">14</span> + </li> + <li class="list-group-item d-flex justify-content-between align-items-center"> + Dapibus ac facilisis in + <span class="badge badge-primary badge-pill">2</span> + </li> + <li class="list-group-item d-flex justify-content-between align-items-center"> + Morbi leo risus + <span class="badge badge-primary badge-pill">1</span> + </li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-group"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item d-flex justify-content-between align-items-center"</span><span class="nt">></span> + Cras justo odio + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-primary badge-pill"</span><span class="nt">></span>14<span class="nt"></span></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item d-flex justify-content-between align-items-center"</span><span class="nt">></span> + Dapibus ac facilisis in + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-primary badge-pill"</span><span class="nt">></span>2<span class="nt"></span></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-group-item d-flex justify-content-between align-items-center"</span><span class="nt">></span> + Morbi leo risus + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"badge badge-primary badge-pill"</span><span class="nt">></span>1<span class="nt"></span></span> + <span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<h2 id="custom-content">Custom content</h2> + +<p>Add nearly any HTML within, even for linked list groups like the one below, with the help of <a href="/docs/4.3/utilities/flex/">flexbox utilities</a>.</p> + +<div class="bd-example"> +<div class="list-group"> + <a href="#" class="list-group-item list-group-item-action active"> + <div class="d-flex w-100 justify-content-between"> + <h5 class="mb-1">List group item heading</h5> + <small>3 days ago</small> + </div> + <p class="mb-1">Donec id elit non mi porta gravida at eget metus. Maecenas sed diam eget risus varius blandit.</p> + <small>Donec id elit non mi porta.</small> + </a> + <a href="#" class="list-group-item list-group-item-action"> + <div class="d-flex w-100 justify-content-between"> + <h5 class="mb-1">List group item heading</h5> + <small class="text-muted">3 days ago</small> + </div> + <p class="mb-1">Donec id elit non mi porta gravida at eget metus. Maecenas sed diam eget risus varius blandit.</p> + <small class="text-muted">Donec id elit non mi porta.</small> + </a> + <a href="#" class="list-group-item list-group-item-action"> + <div class="d-flex w-100 justify-content-between"> + <h5 class="mb-1">List group item heading</h5> + <small class="text-muted">3 days ago</small> + </div> + <p class="mb-1">Donec id elit non mi porta gravida at eget metus. Maecenas sed diam eget risus varius blandit.</p> + <small class="text-muted">Donec id elit non mi porta.</small> + </a> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"list-group"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action active"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex w-100 justify-content-between"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"mb-1"</span><span class="nt">></span>List group item heading<span class="nt"></h5></span> + <span class="nt"><small></span>3 days ago<span class="nt"></small></span> + <span class="nt"></div></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"mb-1"</span><span class="nt">></span>Donec id elit non mi porta gravida at eget metus. Maecenas sed diam eget risus varius blandit.<span class="nt"></p></span> + <span class="nt"><small></span>Donec id elit non mi porta.<span class="nt"></small></span> + <span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex w-100 justify-content-between"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"mb-1"</span><span class="nt">></span>List group item heading<span class="nt"></h5></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>3 days ago<span class="nt"></small></span> + <span class="nt"></div></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"mb-1"</span><span class="nt">></span>Donec id elit non mi porta gravida at eget metus. Maecenas sed diam eget risus varius blandit.<span class="nt"></p></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Donec id elit non mi porta.<span class="nt"></small></span> + <span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex w-100 justify-content-between"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"mb-1"</span><span class="nt">></span>List group item heading<span class="nt"></h5></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>3 days ago<span class="nt"></small></span> + <span class="nt"></div></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"mb-1"</span><span class="nt">></span>Donec id elit non mi porta gravida at eget metus. Maecenas sed diam eget risus varius blandit.<span class="nt"></p></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Donec id elit non mi porta.<span class="nt"></small></span> + <span class="nt"></a></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="javascript-behavior">JavaScript behavior</h2> + +<p>Use the tab JavaScript plugin—include it individually or through the compiled <code class="highlighter-rouge">bootstrap.js</code> file—to extend our list group to create tabbable panes of local content.</p> + +<div class="bd-example" role="tabpanel"> + <div class="row"> + <div class="col-4"> + <div class="list-group" id="list-tab" role="tablist"> + <a class="list-group-item list-group-item-action active" id="list-home-list" data-toggle="tab" href="#list-home" role="tab" aria-controls="list-home">Home</a> + <a class="list-group-item list-group-item-action" id="list-profile-list" data-toggle="tab" href="#list-profile" role="tab" aria-controls="list-profile">Profile</a> + <a class="list-group-item list-group-item-action" id="list-messages-list" data-toggle="tab" href="#list-messages" role="tab" aria-controls="list-messages">Messages</a> + <a class="list-group-item list-group-item-action" id="list-settings-list" data-toggle="tab" href="#list-settings" role="tab" aria-controls="list-settings">Settings</a> + </div> + </div> + <div class="col-8"> + <div class="tab-content" id="nav-tabContent"> + <div class="tab-pane fade show active" id="list-home" role="tabpanel" aria-labelledby="list-home-list"> + <p>Velit aute mollit ipsum ad dolor consectetur nulla officia culpa adipisicing exercitation fugiat tempor. Voluptate deserunt sit sunt nisi aliqua fugiat proident ea ut. Mollit voluptate reprehenderit occaecat nisi ad non minim tempor sunt voluptate consectetur exercitation id ut nulla. Ea et fugiat aliquip nostrud sunt incididunt consectetur culpa aliquip eiusmod dolor. Anim ad Lorem aliqua in cupidatat nisi enim eu nostrud do aliquip veniam minim.</p> + </div> + <div class="tab-pane fade" id="list-profile" role="tabpanel" aria-labelledby="list-profile-list"> + <p>Cupidatat quis ad sint excepteur laborum in esse qui. Et excepteur consectetur ex nisi eu do cillum ad laborum. Mollit et eu officia dolore sunt Lorem culpa qui commodo velit ex amet id ex. Officia anim incididunt laboris deserunt anim aute dolor incididunt veniam aute dolore do exercitation. Dolor nisi culpa ex ad irure in elit eu dolore. Ad laboris ipsum reprehenderit irure non commodo enim culpa commodo veniam incididunt veniam ad.</p> + </div> + <div class="tab-pane fade" id="list-messages" role="tabpanel" aria-labelledby="list-messages-list"> + <p>Ut ut do pariatur aliquip aliqua aliquip exercitation do nostrud commodo reprehenderit aute ipsum voluptate. Irure Lorem et laboris nostrud amet cupidatat cupidatat anim do ut velit mollit consequat enim tempor. Consectetur est minim nostrud nostrud consectetur irure labore voluptate irure. Ipsum id Lorem sit sint voluptate est pariatur eu ad cupidatat et deserunt culpa sit eiusmod deserunt. Consectetur et fugiat anim do eiusmod aliquip nulla laborum elit adipisicing pariatur cillum.</p> + </div> + <div class="tab-pane fade" id="list-settings" role="tabpanel" aria-labelledby="list-settings-list"> + <p>Irure enim occaecat labore sit qui aliquip reprehenderit amet velit. Deserunt ullamco ex elit nostrud ut dolore nisi officia magna sit occaecat laboris sunt dolor. Nisi eu minim cillum occaecat aute est cupidatat aliqua labore aute occaecat ea aliquip sunt amet. Aute mollit dolor ut exercitation irure commodo non amet consectetur quis amet culpa. Quis ullamco nisi amet qui aute irure eu. Magna labore dolor quis ex labore id nostrud deserunt dolor eiusmod eu pariatur culpa mollit in irure.</p> + </div> + </div> + </div> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-4"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"list-group"</span> <span class="na">id=</span><span class="s">"list-tab"</span> <span class="na">role=</span><span class="s">"tablist"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action active"</span> <span class="na">id=</span><span class="s">"list-home-list"</span> <span class="na">data-toggle=</span><span class="s">"list"</span> <span class="na">href=</span><span class="s">"#list-home"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"home"</span><span class="nt">></span>Home<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span> <span class="na">id=</span><span class="s">"list-profile-list"</span> <span class="na">data-toggle=</span><span class="s">"list"</span> <span class="na">href=</span><span class="s">"#list-profile"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"profile"</span><span class="nt">></span>Profile<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span> <span class="na">id=</span><span class="s">"list-messages-list"</span> <span class="na">data-toggle=</span><span class="s">"list"</span> <span class="na">href=</span><span class="s">"#list-messages"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"messages"</span><span class="nt">></span>Messages<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span> <span class="na">id=</span><span class="s">"list-settings-list"</span> <span class="na">data-toggle=</span><span class="s">"list"</span> <span class="na">href=</span><span class="s">"#list-settings"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"settings"</span><span class="nt">></span>Settings<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-8"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-content"</span> <span class="na">id=</span><span class="s">"nav-tabContent"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade show active"</span> <span class="na">id=</span><span class="s">"list-home"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"list-home-list"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"list-profile"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"list-profile-list"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"list-messages"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"list-messages-list"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"list-settings"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"list-settings-list"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="using-data-attributes">Using data attributes</h3> + +<p>You can activate a list group navigation without writing any JavaScript by simply specifying <code class="highlighter-rouge">data-toggle="list"</code> or on an element. Use these data attributes on <code class="highlighter-rouge">.list-group-item</code>.</p> + +<div role="tabpanel"> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- List group --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"list-group"</span> <span class="na">id=</span><span class="s">"myList"</span> <span class="na">role=</span><span class="s">"tablist"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action active"</span> <span class="na">data-toggle=</span><span class="s">"list"</span> <span class="na">href=</span><span class="s">"#home"</span> <span class="na">role=</span><span class="s">"tab"</span><span class="nt">></span>Home<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span> <span class="na">data-toggle=</span><span class="s">"list"</span> <span class="na">href=</span><span class="s">"#profile"</span> <span class="na">role=</span><span class="s">"tab"</span><span class="nt">></span>Profile<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span> <span class="na">data-toggle=</span><span class="s">"list"</span> <span class="na">href=</span><span class="s">"#messages"</span> <span class="na">role=</span><span class="s">"tab"</span><span class="nt">></span>Messages<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span> <span class="na">data-toggle=</span><span class="s">"list"</span> <span class="na">href=</span><span class="s">"#settings"</span> <span class="na">role=</span><span class="s">"tab"</span><span class="nt">></span>Settings<span class="nt"></a></span> +<span class="nt"></div></span> + +<span class="c"><!-- Tab panes --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-content"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane active"</span> <span class="na">id=</span><span class="s">"home"</span> <span class="na">role=</span><span class="s">"tabpanel"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane"</span> <span class="na">id=</span><span class="s">"profile"</span> <span class="na">role=</span><span class="s">"tabpanel"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane"</span> <span class="na">id=</span><span class="s">"messages"</span> <span class="na">role=</span><span class="s">"tabpanel"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane"</span> <span class="na">id=</span><span class="s">"settings"</span> <span class="na">role=</span><span class="s">"tabpanel"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h3 id="via-javascript">Via JavaScript</h3> + +<p>Enable tabbable list item via JavaScript (each list item needs to be activated individually):</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myList a'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'click'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span> + <span class="nx">e</span><span class="p">.</span><span class="nx">preventDefault</span><span class="p">()</span> + <span class="nx">$</span><span class="p">(</span><span class="k">this</span><span class="p">).</span><span class="nx">tab</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span> +<span class="p">})</span></code></pre></figure> + +<p>You can activate individual list item in several ways:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myList a[href="#profile"]'</span><span class="p">).</span><span class="nx">tab</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span> <span class="c1">// Select tab by name</span> +<span class="nx">$</span><span class="p">(</span><span class="s1">'#myList a:first-child'</span><span class="p">).</span><span class="nx">tab</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span> <span class="c1">// Select first tab</span> +<span class="nx">$</span><span class="p">(</span><span class="s1">'#myList a:last-child'</span><span class="p">).</span><span class="nx">tab</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span> <span class="c1">// Select last tab</span> +<span class="nx">$</span><span class="p">(</span><span class="s1">'#myList a:nth-child(3)'</span><span class="p">).</span><span class="nx">tab</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span> <span class="c1">// Select third tab</span></code></pre></figure> + +<h3 id="fade-effect">Fade effect</h3> + +<p>To make tabs panel fade in, add <code class="highlighter-rouge">.fade</code> to each <code class="highlighter-rouge">.tab-pane</code>. The first tab pane must also have <code class="highlighter-rouge">.show</code> to make the initial content visible.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-content"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade show active"</span> <span class="na">id=</span><span class="s">"home"</span> <span class="na">role=</span><span class="s">"tabpanel"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"profile"</span> <span class="na">role=</span><span class="s">"tabpanel"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"messages"</span> <span class="na">role=</span><span class="s">"tabpanel"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"settings"</span> <span class="na">role=</span><span class="s">"tabpanel"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="methods">Methods</h3> + +<h4 id="tab">$().tab</h4> + +<p>Activates a list item element and content container. Tab should have either a <code class="highlighter-rouge">data-target</code> or an <code class="highlighter-rouge">href</code> targeting a container node in the DOM.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"list-group"</span> <span class="na">id=</span><span class="s">"myList"</span> <span class="na">role=</span><span class="s">"tablist"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action active"</span> <span class="na">data-toggle=</span><span class="s">"list"</span> <span class="na">href=</span><span class="s">"#home"</span> <span class="na">role=</span><span class="s">"tab"</span><span class="nt">></span>Home<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span> <span class="na">data-toggle=</span><span class="s">"list"</span> <span class="na">href=</span><span class="s">"#profile"</span> <span class="na">role=</span><span class="s">"tab"</span><span class="nt">></span>Profile<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span> <span class="na">data-toggle=</span><span class="s">"list"</span> <span class="na">href=</span><span class="s">"#messages"</span> <span class="na">role=</span><span class="s">"tab"</span><span class="nt">></span>Messages<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span> <span class="na">data-toggle=</span><span class="s">"list"</span> <span class="na">href=</span><span class="s">"#settings"</span> <span class="na">role=</span><span class="s">"tab"</span><span class="nt">></span>Settings<span class="nt"></a></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-content"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane active"</span> <span class="na">id=</span><span class="s">"home"</span> <span class="na">role=</span><span class="s">"tabpanel"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane"</span> <span class="na">id=</span><span class="s">"profile"</span> <span class="na">role=</span><span class="s">"tabpanel"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane"</span> <span class="na">id=</span><span class="s">"messages"</span> <span class="na">role=</span><span class="s">"tabpanel"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane"</span> <span class="na">id=</span><span class="s">"settings"</span> <span class="na">role=</span><span class="s">"tabpanel"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><script></span> + <span class="nx">$</span><span class="p">(</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> + <span class="nx">$</span><span class="p">(</span><span class="s1">'#myList a:last-child'</span><span class="p">).</span><span class="nx">tab</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span> + <span class="p">})</span> +<span class="nt"></script></span></code></pre></figure> + +<h4 id="tabshow">.tab(‘show’)</h4> + +<p>Selects the given list item and shows its associated pane. Any other list item that was previously selected becomes unselected and its associated pane is hidden. <strong>Returns to the caller before the tab pane has actually been shown</strong> (for example, before the <code class="highlighter-rouge">shown.bs.tab</code> event occurs).</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#someListItem'</span><span class="p">).</span><span class="nx">tab</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span></code></pre></figure> + +<h3 id="events">Events</h3> + +<p>When showing a new tab, the events fire in the following order:</p> + +<ol> + <li><code class="highlighter-rouge">hide.bs.tab</code> (on the current active tab)</li> + <li><code class="highlighter-rouge">show.bs.tab</code> (on the to-be-shown tab)</li> + <li><code class="highlighter-rouge">hidden.bs.tab</code> (on the previous active tab, the same one as for the <code class="highlighter-rouge">hide.bs.tab</code> event)</li> + <li><code class="highlighter-rouge">shown.bs.tab</code> (on the newly-active just-shown tab, the same one as for the <code class="highlighter-rouge">show.bs.tab</code> event)</li> +</ol> + +<p>If no tab was already active, the <code class="highlighter-rouge">hide.bs.tab</code> and <code class="highlighter-rouge">hidden.bs.tab</code> events will not be fired.</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 150px;">Event type</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>show.bs.tab</td> + <td>This event fires on tab show, but before the new tab has been shown. Use <code>event.target</code> and <code>event.relatedTarget</code> to target the active tab and the previous active tab (if available) respectively.</td> + </tr> + <tr> + <td>shown.bs.tab</td> + <td>This event fires on tab show after a tab has been shown. Use <code>event.target</code> and <code>event.relatedTarget</code> to target the active tab and the previous active tab (if available) respectively.</td> + </tr> + <tr> + <td>hide.bs.tab</td> + <td>This event fires when a new tab is to be shown (and thus the previous active tab is to be hidden). Use <code>event.target</code> and <code>event.relatedTarget</code> to target the current active tab and the new soon-to-be-active tab, respectively.</td> + </tr> + <tr> + <td>hidden.bs.tab</td> + <td>This event fires after a new tab is shown (and thus the previous active tab is hidden). Use <code>event.target</code> and <code>event.relatedTarget</code> to target the previous active tab and the new active tab, respectively.</td> + </tr> + </tbody> +</table> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'a[data-toggle="list"]'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'shown.bs.tab'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span> + <span class="nx">e</span><span class="p">.</span><span class="nx">target</span> <span class="c1">// newly activated tab</span> + <span class="nx">e</span><span class="p">.</span><span class="nx">relatedTarget</span> <span class="c1">// previous active tab</span> +<span class="p">})</span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/media-object/index.html b/docs/4.3/components/media-object/index.html new file mode 100644 index 0000000000..5ed53aa74a --- /dev/null +++ b/docs/4.3/components/media-object/index.html @@ -0,0 +1,697 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Documentation and examples for Bootstrap’s media object to construct highly repetitive components like blog comments, tweets, and the like."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Media object · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/media-object/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Media object"> +<meta name="twitter:description" content="Documentation and examples for Bootstrap’s media object to construct highly repetitive components like blog comments, tweets, and the like."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/media-object/"> +<meta property="og:title" content="Media object"> +<meta property="og:description" content="Documentation and examples for Bootstrap’s media object to construct highly repetitive components like blog comments, tweets, and the like."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#example">Example</a></li> +<li class="toc-entry toc-h2"><a href="#nesting">Nesting</a></li> +<li class="toc-entry toc-h2"><a href="#alignment">Alignment</a></li> +<li class="toc-entry toc-h2"><a href="#order">Order</a></li> +<li class="toc-entry toc-h2"><a href="#media-list">Media list</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Media object</h1> + <p class="bd-lead">Documentation and examples for Bootstrap’s media object to construct highly repetitive components like blog comments, tweets, and the like.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="example">Example</h2> + +<p>The <a href="http://www.stubbornella.org/content/2010/06/25/the-media-object-saves-hundreds-of-lines-of-code/">media object</a> helps build complex and repetitive components where some media is positioned alongside content that doesn’t wrap around said media. Plus, it does this with only two required classes thanks to flexbox.</p> + +<p>Below is an example of a single media object. Only two classes are required—the wrapping <code class="highlighter-rouge">.media</code> and the <code class="highlighter-rouge">.media-body</code> around your content. Optional padding and margin can be controlled through <a href="/docs/4.3/utilities/spacing/">spacing utilities</a>.</p> + +<div class="bd-example"> +<div class="media"> + <svg class="bd-placeholder-img mr-3" width="64" height="64" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 64x64"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">64x64</text></svg> + <div class="media-body"> + <h5 class="mt-0">Media heading</h5> + Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus. + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"media"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"mr-3"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"media-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"mt-0"</span><span class="nt">></span>Media heading<span class="nt"></h5></span> + Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus. + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-callout bd-callout-warning"> +<h5 id="flexbug-12-inline-elements-arent-treated-as-flex-items">Flexbug #12: Inline elements aren’t treated as flex items</h5> + +<p>Internet Explorer 10-11 do not render inline elements like links or images (or <code class="highlighter-rouge">::before</code> and <code class="highlighter-rouge">::after</code> pseudo-elements) as flex items. The only workaround is to set a non-inline <code class="highlighter-rouge">display</code> value (e.g., <code class="highlighter-rouge">block</code>, <code class="highlighter-rouge">inline-block</code>, or <code class="highlighter-rouge">flex</code>). We suggest using <code class="highlighter-rouge">.d-flex</code>, one of our <a href="/docs/4.3/utilities/display/">display utilities</a>, as an easy fix.</p> + +<p><strong>Source:</strong> <a href="https://github.com/philipwalton/flexbugs#flexbug-12">Flexbugs on GitHub</a></p> +</div> + +<h2 id="nesting">Nesting</h2> + +<p>Media objects can be infinitely nested, though we suggest you stop at some point. Place nested <code class="highlighter-rouge">.media</code> within the <code class="highlighter-rouge">.media-body</code> of a parent media object.</p> + +<div class="bd-example"> +<div class="media"> + <svg class="bd-placeholder-img mr-3" width="64" height="64" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 64x64"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">64x64</text></svg> + <div class="media-body"> + <h5 class="mt-0">Media heading</h5> + Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus. + + <div class="media mt-3"> + <a class="mr-3" href="#"> + <svg class="bd-placeholder-img" width="64" height="64" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 64x64"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">64x64</text></svg> + </a> + <div class="media-body"> + <h5 class="mt-0">Media heading</h5> + Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus. + </div> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"media"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"mr-3"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"media-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"mt-0"</span><span class="nt">></span>Media heading<span class="nt"></h5></span> + Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus. + + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"media mt-3"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"mr-3"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"mr-3"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"media-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"mt-0"</span><span class="nt">></span>Media heading<span class="nt"></h5></span> + Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus. + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="alignment">Alignment</h2> + +<p>Media in a media object can be aligned with flexbox utilities to the top (default), middle, or end of your <code class="highlighter-rouge">.media-body</code> content.</p> + +<div class="bd-example"> +<div class="media"> + <svg class="bd-placeholder-img align-self-start mr-3" width="64" height="64" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 64x64"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">64x64</text></svg> + <div class="media-body"> + <h5 class="mt-0">Top-aligned media</h5> + <p>Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.</p> + <p>Donec sed odio dui. Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.</p> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"media"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"align-self-start mr-3"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"media-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"mt-0"</span><span class="nt">></span>Top-aligned media<span class="nt"></h5></span> + <span class="nt"><p></span>Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.<span class="nt"></p></span> + <span class="nt"><p></span>Donec sed odio dui. Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<div class="media"> + <svg class="bd-placeholder-img align-self-center mr-3" width="64" height="64" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 64x64"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">64x64</text></svg> + <div class="media-body"> + <h5 class="mt-0">Center-aligned media</h5> + <p>Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.</p> + <p class="mb-0">Donec sed odio dui. Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.</p> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"media"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"align-self-center mr-3"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"media-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"mt-0"</span><span class="nt">></span>Center-aligned media<span class="nt"></h5></span> + <span class="nt"><p></span>Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.<span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"mb-0"</span><span class="nt">></span>Donec sed odio dui. Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<div class="media"> + <svg class="bd-placeholder-img align-self-end mr-3" width="64" height="64" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 64x64"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">64x64</text></svg> + <div class="media-body"> + <h5 class="mt-0">Bottom-aligned media</h5> + <p>Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.</p> + <p class="mb-0">Donec sed odio dui. Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.</p> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"media"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"align-self-end mr-3"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"media-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"mt-0"</span><span class="nt">></span>Bottom-aligned media<span class="nt"></h5></span> + <span class="nt"><p></span>Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.<span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"mb-0"</span><span class="nt">></span>Donec sed odio dui. Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.<span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="order">Order</h2> + +<p>Change the order of content in media objects by modifying the HTML itself, or by adding some custom flexbox CSS to set the <code class="highlighter-rouge">order</code> property (to an integer of your choosing).</p> + +<div class="bd-example"> +<div class="media"> + <div class="media-body"> + <h5 class="mt-0 mb-1">Media object</h5> + Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus. + </div> + <svg class="bd-placeholder-img ml-3" width="64" height="64" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 64x64"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">64x64</text></svg> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"media"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"media-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"mt-0 mb-1"</span><span class="nt">></span>Media object<span class="nt"></h5></span> + Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus. + <span class="nt"></div></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"ml-3"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="media-list">Media list</h2> + +<p>Because the media object has so few structural requirements, you can also use these classes on list HTML elements. On your <code class="highlighter-rouge"><ul></code> or <code class="highlighter-rouge"><ol></code>, add the <code class="highlighter-rouge">.list-unstyled</code> to remove any browser default list styles, and then apply <code class="highlighter-rouge">.media</code> to your <code class="highlighter-rouge"><li></code>s. As always, use spacing utilities wherever needed to fine tune.</p> + +<div class="bd-example"> +<ul class="list-unstyled"> + <li class="media"> + <svg class="bd-placeholder-img mr-3" width="64" height="64" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 64x64"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">64x64</text></svg> + <div class="media-body"> + <h5 class="mt-0 mb-1">List-based media object</h5> + Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus. + </div> + </li> + <li class="media my-4"> + <svg class="bd-placeholder-img mr-3" width="64" height="64" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 64x64"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">64x64</text></svg> + <div class="media-body"> + <h5 class="mt-0 mb-1">List-based media object</h5> + Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus. + </div> + </li> + <li class="media"> + <svg class="bd-placeholder-img mr-3" width="64" height="64" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 64x64"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">64x64</text></svg> + <div class="media-body"> + <h5 class="mt-0 mb-1">List-based media object</h5> + Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus. + </div> + </li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-unstyled"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"media"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"mr-3"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"media-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"mt-0 mb-1"</span><span class="nt">></span>List-based media object<span class="nt"></h5></span> + Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus. + <span class="nt"></div></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"media my-4"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"mr-3"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"media-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"mt-0 mb-1"</span><span class="nt">></span>List-based media object<span class="nt"></h5></span> + Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus. + <span class="nt"></div></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"media"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"mr-3"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"media-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"mt-0 mb-1"</span><span class="nt">></span>List-based media object<span class="nt"></h5></span> + Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus. + <span class="nt"></div></span> + <span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/modal/index.html b/docs/4.3/components/modal/index.html new file mode 100644 index 0000000000..27e80ef709 --- /dev/null +++ b/docs/4.3/components/modal/index.html @@ -0,0 +1,1373 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Use Bootstrap’s JavaScript modal plugin to add dialogs to your site for lightboxes, user notifications, or completely custom content."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Modal · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/modal/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Modal"> +<meta name="twitter:description" content="Use Bootstrap’s JavaScript modal plugin to add dialogs to your site for lightboxes, user notifications, or completely custom content."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/modal/"> +<meta property="og:title" content="Modal"> +<meta property="og:description" content="Use Bootstrap’s JavaScript modal plugin to add dialogs to your site for lightboxes, user notifications, or completely custom content."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#how-it-works">How it works</a></li> +<li class="toc-entry toc-h2"><a href="#examples">Examples</a> +<ul> +<li class="toc-entry toc-h3"><a href="#modal-components">Modal components</a></li> +<li class="toc-entry toc-h3"><a href="#live-demo">Live demo</a></li> +<li class="toc-entry toc-h3"><a href="#scrolling-long-content">Scrolling long content</a></li> +<li class="toc-entry toc-h3"><a href="#vertically-centered">Vertically centered</a></li> +<li class="toc-entry toc-h3"><a href="#tooltips-and-popovers">Tooltips and popovers</a></li> +<li class="toc-entry toc-h3"><a href="#using-the-grid">Using the grid</a></li> +<li class="toc-entry toc-h3"><a href="#varying-modal-content">Varying modal content</a></li> +<li class="toc-entry toc-h3"><a href="#change-animation">Change animation</a></li> +<li class="toc-entry toc-h3"><a href="#remove-animation">Remove animation</a></li> +<li class="toc-entry toc-h3"><a href="#dynamic-heights">Dynamic heights</a></li> +<li class="toc-entry toc-h3"><a href="#accessibility">Accessibility</a></li> +<li class="toc-entry toc-h3"><a href="#embedding-youtube-videos">Embedding YouTube videos</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#optional-sizes">Optional sizes</a></li> +<li class="toc-entry toc-h2"><a href="#usage">Usage</a> +<ul> +<li class="toc-entry toc-h3"><a href="#via-data-attributes">Via data attributes</a></li> +<li class="toc-entry toc-h3"><a href="#via-javascript">Via JavaScript</a></li> +<li class="toc-entry toc-h3"><a href="#options">Options</a></li> +<li class="toc-entry toc-h3"><a href="#methods">Methods</a> +<ul> +<li class="toc-entry toc-h4"><a href="#modaloptions">.modal(options)</a></li> +<li class="toc-entry toc-h4"><a href="#modaltoggle">.modal('toggle')</a></li> +<li class="toc-entry toc-h4"><a href="#modalshow">.modal('show')</a></li> +<li class="toc-entry toc-h4"><a href="#modalhide">.modal('hide')</a></li> +<li class="toc-entry toc-h4"><a href="#modalhandleupdate">.modal('handleUpdate')</a></li> +<li class="toc-entry toc-h4"><a href="#modaldispose">.modal('dispose')</a></li> +</ul> +</li> +<li class="toc-entry toc-h3"><a href="#events">Events</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Modal</h1> + <p class="bd-lead">Use Bootstrap’s JavaScript modal plugin to add dialogs to your site for lightboxes, user notifications, or completely custom content.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="how-it-works">How it works</h2> + +<p>Before getting started with Bootstrap’s modal component, be sure to read the following as our menu options have recently changed.</p> + +<ul> + <li>Modals are built with HTML, CSS, and JavaScript. They’re positioned over everything else in the document and remove scroll from the <code class="highlighter-rouge"><body></code> so that modal content scrolls instead.</li> + <li>Clicking on the modal “backdrop†will automatically close the modal.</li> + <li>Bootstrap only supports one modal window at a time. Nested modals aren’t supported as we believe them to be poor user experiences.</li> + <li>Modals use <code class="highlighter-rouge">position: fixed</code>, which can sometimes be a bit particular about its rendering. Whenever possible, place your modal HTML in a top-level position to avoid potential interference from other elements. You’ll likely run into issues when nesting a <code class="highlighter-rouge">.modal</code> within another fixed element.</li> + <li>Once again, due to <code class="highlighter-rouge">position: fixed</code>, there are some caveats with using modals on mobile devices. <a href="/docs/4.3/getting-started/browsers-devices/#modals-and-dropdowns-on-mobile">See our browser support docs</a> for details.</li> + <li>Due to how HTML5 defines its semantics, <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-autofocus">the <code class="highlighter-rouge">autofocus</code> HTML attribute</a> has no effect in Bootstrap modals. To achieve the same effect, use some custom JavaScript:</li> +</ul> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myModal'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'shown.bs.modal'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> + <span class="nx">$</span><span class="p">(</span><span class="s1">'#myInput'</span><span class="p">).</span><span class="nx">trigger</span><span class="p">(</span><span class="s1">'focus'</span><span class="p">)</span> +<span class="p">})</span></code></pre></figure> + +<div class="bd-callout bd-callout-info"> +<p>The animation effect of this component is dependent on the <code class="highlighter-rouge">prefers-reduced-motion</code> media query. See the <a href="/docs/4.3/getting-started/accessibility/#reduced-motion">reduced motion section of our accessibility documentation</a>.</p> +</div> + +<p>Keep reading for demos and usage guidelines.</p> + +<h2 id="examples">Examples</h2> + +<h3 id="modal-components">Modal components</h3> + +<p>Below is a <em>static</em> modal example (meaning its <code class="highlighter-rouge">position</code> and <code class="highlighter-rouge">display</code> have been overridden). Included are the modal header, modal body (required for <code class="highlighter-rouge">padding</code>), and modal footer (optional). We ask that you include modal headers with dismiss actions whenever possible, or provide another explicit dismiss action.</p> + +<div class="bd-example bd-example-modal"> + <div class="modal" tabindex="-1" role="dialog"> + <div class="modal-dialog" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title">Modal title</h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="modal-body"> + <p>Modal body text goes here.</p> + </div> + <div class="modal-footer"> + <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> + <button type="button" class="btn btn-primary">Save changes</button> + </div> + </div> + </div> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">role=</span><span class="s">"dialog"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-dialog"</span> <span class="na">role=</span><span class="s">"document"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-content"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-header"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"modal-title"</span><span class="nt">></span>Modal title<span class="nt"></h5></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"close"</span> <span class="na">data-dismiss=</span><span class="s">"modal"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-body"</span><span class="nt">></span> + <span class="nt"><p></span>Modal body text goes here.<span class="nt"></p></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-footer"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span> <span class="na">data-dismiss=</span><span class="s">"modal"</span><span class="nt">></span>Close<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Save changes<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="live-demo">Live demo</h3> + +<p>Toggle a working modal demo by clicking the button below. It will slide down and fade in from the top of the page.</p> + +<div id="exampleModalLive" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="exampleModalLiveLabel" aria-hidden="true"> + <div class="modal-dialog" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="exampleModalLiveLabel">Modal title</h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="modal-body"> + <p>Woohoo, you're reading this text in a modal!</p> + </div> + <div class="modal-footer"> + <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> + <button type="button" class="btn btn-primary">Save changes</button> + </div> + </div> + </div> +</div> + +<div class="bd-example"> + <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModalLive"> + Launch demo modal + </button> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Button trigger modal --></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">data-toggle=</span><span class="s">"modal"</span> <span class="na">data-target=</span><span class="s">"#exampleModal"</span><span class="nt">></span> + Launch demo modal +<span class="nt"></button></span> + +<span class="c"><!-- Modal --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal fade"</span> <span class="na">id=</span><span class="s">"exampleModal"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">role=</span><span class="s">"dialog"</span> <span class="na">aria-labelledby=</span><span class="s">"exampleModalLabel"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-dialog"</span> <span class="na">role=</span><span class="s">"document"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-content"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-header"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"modal-title"</span> <span class="na">id=</span><span class="s">"exampleModalLabel"</span><span class="nt">></span>Modal title<span class="nt"></h5></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"close"</span> <span class="na">data-dismiss=</span><span class="s">"modal"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-body"</span><span class="nt">></span> + ... + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-footer"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span> <span class="na">data-dismiss=</span><span class="s">"modal"</span><span class="nt">></span>Close<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Save changes<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="scrolling-long-content">Scrolling long content</h3> + +<p>When modals become too long for the user’s viewport or device, they scroll independent of the page itself. Try the demo below to see what we mean.</p> + +<div id="exampleModalLong" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="exampleModalLongTitle" aria-hidden="true"> + <div class="modal-dialog" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="exampleModalLongTitle">Modal title</h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="modal-body"> + <p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p> + <p>Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p> + <p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p> + <p>Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p> + <p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p> + <p>Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p> + <p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p> + <p>Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p> + <p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p> + <p>Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p> + <p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p> + <p>Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p> + </div> + <div class="modal-footer"> + <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> + <button type="button" class="btn btn-primary">Save changes</button> + </div> + </div> + </div> +</div> + +<div class="bd-example"> + <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModalLong"> + Launch demo modal + </button> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Button trigger modal --></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">data-toggle=</span><span class="s">"modal"</span> <span class="na">data-target=</span><span class="s">"#exampleModalLong"</span><span class="nt">></span> + Launch demo modal +<span class="nt"></button></span> + +<span class="c"><!-- Modal --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal fade"</span> <span class="na">id=</span><span class="s">"exampleModalLong"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">role=</span><span class="s">"dialog"</span> <span class="na">aria-labelledby=</span><span class="s">"exampleModalLongTitle"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-dialog"</span> <span class="na">role=</span><span class="s">"document"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-content"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-header"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"modal-title"</span> <span class="na">id=</span><span class="s">"exampleModalLongTitle"</span><span class="nt">></span>Modal title<span class="nt"></h5></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"close"</span> <span class="na">data-dismiss=</span><span class="s">"modal"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-body"</span><span class="nt">></span> + ... + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-footer"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span> <span class="na">data-dismiss=</span><span class="s">"modal"</span><span class="nt">></span>Close<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Save changes<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>You can also create a scrollable modal that allows scroll the modal body by adding <code class="highlighter-rouge">.modal-dialog-scrollable</code> to <code class="highlighter-rouge">.modal-dialog</code>.</p> + +<div id="exampleModalScrollable" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="exampleModalScrollableTitle" aria-hidden="true"> + <div class="modal-dialog modal-dialog-scrollable" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="exampleModalScrollableTitle">Modal title</h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="modal-body"> + <p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p> + <p>Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p> + <p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p> + <p>Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p> + <p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p> + <p>Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p> + <p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p> + <p>Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p> + <p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p> + <p>Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p> + <p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p> + <p>Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p> + </div> + <div class="modal-footer"> + <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> + <button type="button" class="btn btn-primary">Save changes</button> + </div> + </div> + </div> +</div> + +<div class="bd-example"> + <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModalScrollable"> + Launch demo modal + </button> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Button trigger modal --></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">data-toggle=</span><span class="s">"modal"</span> <span class="na">data-target=</span><span class="s">"#exampleModalScrollable"</span><span class="nt">></span> + Launch demo modal +<span class="nt"></button></span> + +<span class="c"><!-- Modal --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal fade"</span> <span class="na">id=</span><span class="s">"exampleModalScrollable"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">role=</span><span class="s">"dialog"</span> <span class="na">aria-labelledby=</span><span class="s">"exampleModalScrollableTitle"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-dialog modal-dialog-scrollable"</span> <span class="na">role=</span><span class="s">"document"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-content"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-header"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"modal-title"</span> <span class="na">id=</span><span class="s">"exampleModalScrollableTitle"</span><span class="nt">></span>Modal title<span class="nt"></h5></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"close"</span> <span class="na">data-dismiss=</span><span class="s">"modal"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-body"</span><span class="nt">></span> + ... + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-footer"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span> <span class="na">data-dismiss=</span><span class="s">"modal"</span><span class="nt">></span>Close<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Save changes<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="vertically-centered">Vertically centered</h3> + +<p>Add <code class="highlighter-rouge">.modal-dialog-centered</code> to <code class="highlighter-rouge">.modal-dialog</code> to vertically center the modal.</p> + +<div id="exampleModalCenter" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle" aria-hidden="true"> + <div class="modal-dialog modal-dialog-centered" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="exampleModalCenterTitle">Modal title</h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="modal-body"> + <p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + </div> + <div class="modal-footer"> + <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> + <button type="button" class="btn btn-primary">Save changes</button> + </div> + </div> + </div> +</div> + +<div id="exampleModalCenteredScrollable" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenteredScrollableTitle" aria-hidden="true"> + <div class="modal-dialog modal-dialog-scrollable modal-dialog-centered" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="exampleModalCenteredScrollableTitle">Modal title</h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="modal-body"> + <p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p> + <p>Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p> + <p>Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p> + </div> + <div class="modal-footer"> + <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> + <button type="button" class="btn btn-primary">Save changes</button> + </div> + </div> + </div> +</div> + +<div class="bd-example"> + <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModalCenter"> + Vertically centered modal + </button> + <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModalCenteredScrollable"> + Vertically centered scrollable modal + </button> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Button trigger modal --></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">data-toggle=</span><span class="s">"modal"</span> <span class="na">data-target=</span><span class="s">"#exampleModalCenter"</span><span class="nt">></span> + Launch demo modal +<span class="nt"></button></span> + +<span class="c"><!-- Modal --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal fade"</span> <span class="na">id=</span><span class="s">"exampleModalCenter"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">role=</span><span class="s">"dialog"</span> <span class="na">aria-labelledby=</span><span class="s">"exampleModalCenterTitle"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-dialog modal-dialog-centered"</span> <span class="na">role=</span><span class="s">"document"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-content"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-header"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"modal-title"</span> <span class="na">id=</span><span class="s">"exampleModalCenterTitle"</span><span class="nt">></span>Modal title<span class="nt"></h5></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"close"</span> <span class="na">data-dismiss=</span><span class="s">"modal"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-body"</span><span class="nt">></span> + ... + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-footer"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span> <span class="na">data-dismiss=</span><span class="s">"modal"</span><span class="nt">></span>Close<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Save changes<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="tooltips-and-popovers">Tooltips and popovers</h3> + +<p><a href="/docs/4.3/components/tooltips/">Tooltips</a> and <a href="/docs/4.3/components/popovers/">popovers</a> can be placed within modals as needed. When modals are closed, any tooltips and popovers within are also automatically dismissed.</p> + +<div id="exampleModalPopovers" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="exampleModalPopoversLabel" aria-hidden="true"> + <div class="modal-dialog" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="exampleModalPopoversLabel">Modal title</h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="modal-body"> + <h5>Popover in a modal</h5> + <p>This <a href="#" role="button" class="btn btn-secondary popover-test" title="Popover title" data-content="Popover body content is set in this attribute." data-container="#exampleModalPopovers">button</a> triggers a popover on click.</p> + <hr /> + <h5>Tooltips in a modal</h5> + <p><a href="#" class="tooltip-test" title="Tooltip" data-container="#exampleModalPopovers">This link</a> and <a href="#" class="tooltip-test" title="Tooltip" data-container="#exampleModalPopovers">that link</a> have tooltips on hover.</p> + </div> + <div class="modal-footer"> + <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> + <button type="button" class="btn btn-primary">Save changes</button> + </div> + </div> + </div> +</div> + +<div class="bd-example"> + <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModalPopovers"> + Launch demo modal + </button> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-body"</span><span class="nt">></span> + <span class="nt"><h5></span>Popover in a modal<span class="nt"></h5></span> + <span class="nt"><p></span>This <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary popover-test"</span> <span class="na">title=</span><span class="s">"Popover title"</span> <span class="na">data-content=</span><span class="s">"Popover body content is set in this attribute."</span><span class="nt">></span>button<span class="nt"></a></span> triggers a popover on click.<span class="nt"></p></span> + <span class="nt"><hr></span> + <span class="nt"><h5></span>Tooltips in a modal<span class="nt"></h5></span> + <span class="nt"><p><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"tooltip-test"</span> <span class="na">title=</span><span class="s">"Tooltip"</span><span class="nt">></span>This link<span class="nt"></a></span> and <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"tooltip-test"</span> <span class="na">title=</span><span class="s">"Tooltip"</span><span class="nt">></span>that link<span class="nt"></a></span> have tooltips on hover.<span class="nt"></p></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="using-the-grid">Using the grid</h3> + +<p>Utilize the Bootstrap grid system within a modal by nesting <code class="highlighter-rouge">.container-fluid</code> within the <code class="highlighter-rouge">.modal-body</code>. Then, use the normal grid system classes as you would anywhere else.</p> + +<div id="gridSystemModal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="gridModalLabel" aria-hidden="true"> + <div class="modal-dialog" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="gridModalLabel">Grids in modals</h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> + </div> + <div class="modal-body"> + <div class="container-fluid bd-example-row"> + <div class="row"> + <div class="col-md-4">.col-md-4</div> + <div class="col-md-4 ml-auto">.col-md-4 .ml-auto</div> + </div> + <div class="row"> + <div class="col-md-3 ml-auto">.col-md-3 .ml-auto</div> + <div class="col-md-2 ml-auto">.col-md-2 .ml-auto</div> + </div> + <div class="row"> + <div class="col-md-6 ml-auto">.col-md-6 .ml-auto</div> + </div> + <div class="row"> + <div class="col-sm-9"> + Level 1: .col-sm-9 + <div class="row"> + <div class="col-8 col-sm-6"> + Level 2: .col-8 .col-sm-6 + </div> + <div class="col-4 col-sm-6"> + Level 2: .col-4 .col-sm-6 + </div> + </div> + </div> + </div> + </div> + </div> + <div class="modal-footer"> + <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> + <button type="button" class="btn btn-primary">Save changes</button> + </div> + </div> + </div> +</div> + +<div class="bd-example"> +<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#gridSystemModal"> + Launch demo modal +</button> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-body"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"container-fluid"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4"</span><span class="nt">></span>.col-md-4<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4 ml-auto"</span><span class="nt">></span>.col-md-4 .ml-auto<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-3 ml-auto"</span><span class="nt">></span>.col-md-3 .ml-auto<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-2 ml-auto"</span><span class="nt">></span>.col-md-2 .ml-auto<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-6 ml-auto"</span><span class="nt">></span>.col-md-6 .ml-auto<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-9"</span><span class="nt">></span> + Level 1: .col-sm-9 + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-8 col-sm-6"</span><span class="nt">></span> + Level 2: .col-8 .col-sm-6 + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-4 col-sm-6"</span><span class="nt">></span> + Level 2: .col-4 .col-sm-6 + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="varying-modal-content">Varying modal content</h3> + +<p>Have a bunch of buttons that all trigger the same modal with slightly different contents? Use <code class="highlighter-rouge">event.relatedTarget</code> and <a href="https://developer.mozilla.org/en-US/docs/Learn/HTML/Howto/Use_data_attributes">HTML <code class="highlighter-rouge">data-*</code> attributes</a> (possibly <a href="https://api.jquery.com/data/">via jQuery</a>) to vary the contents of the modal depending on which button was clicked.</p> + +<p>Below is a live demo followed by example HTML and JavaScript. For more information, <a href="#events">read the modal events docs</a> for details on <code class="highlighter-rouge">relatedTarget</code>.</p> + +<div class="bd-example"> +<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModal" data-whatever="@mdo">Open modal for @mdo</button> +<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModal" data-whatever="@fat">Open modal for @fat</button> +<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModal" data-whatever="@getbootstrap">Open modal for @getbootstrap</button> + +<div class="modal fade" id="exampleModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true"> + <div class="modal-dialog" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="exampleModalLabel">New message</h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="modal-body"> + <form> + <div class="form-group"> + <label for="recipient-name" class="col-form-label">Recipient:</label> + <input type="text" class="form-control" id="recipient-name" /> + </div> + <div class="form-group"> + <label for="message-text" class="col-form-label">Message:</label> + <textarea class="form-control" id="message-text"></textarea> + </div> + </form> + </div> + <div class="modal-footer"> + <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> + <button type="button" class="btn btn-primary">Send message</button> + </div> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">data-toggle=</span><span class="s">"modal"</span> <span class="na">data-target=</span><span class="s">"#exampleModal"</span> <span class="na">data-whatever=</span><span class="s">"@mdo"</span><span class="nt">></span>Open modal for @mdo<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">data-toggle=</span><span class="s">"modal"</span> <span class="na">data-target=</span><span class="s">"#exampleModal"</span> <span class="na">data-whatever=</span><span class="s">"@fat"</span><span class="nt">></span>Open modal for @fat<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">data-toggle=</span><span class="s">"modal"</span> <span class="na">data-target=</span><span class="s">"#exampleModal"</span> <span class="na">data-whatever=</span><span class="s">"@getbootstrap"</span><span class="nt">></span>Open modal for @getbootstrap<span class="nt"></button></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal fade"</span> <span class="na">id=</span><span class="s">"exampleModal"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">role=</span><span class="s">"dialog"</span> <span class="na">aria-labelledby=</span><span class="s">"exampleModalLabel"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-dialog"</span> <span class="na">role=</span><span class="s">"document"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-content"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-header"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"modal-title"</span> <span class="na">id=</span><span class="s">"exampleModalLabel"</span><span class="nt">></span>New message<span class="nt"></h5></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"close"</span> <span class="na">data-dismiss=</span><span class="s">"modal"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-body"</span><span class="nt">></span> + <span class="nt"><form></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"recipient-name"</span> <span class="na">class=</span><span class="s">"col-form-label"</span><span class="nt">></span>Recipient:<span class="nt"></label></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"recipient-name"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"form-group"</span><span class="nt">></span> + <span class="nt"><label</span> <span class="na">for=</span><span class="s">"message-text"</span> <span class="na">class=</span><span class="s">"col-form-label"</span><span class="nt">></span>Message:<span class="nt"></label></span> + <span class="nt"><textarea</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">id=</span><span class="s">"message-text"</span><span class="nt">></textarea></span> + <span class="nt"></div></span> + <span class="nt"></form></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-footer"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span> <span class="na">data-dismiss=</span><span class="s">"modal"</span><span class="nt">></span>Close<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span><span class="nt">></span>Send message<span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#exampleModal'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'show.bs.modal'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">event</span><span class="p">)</span> <span class="p">{</span> + <span class="kd">var</span> <span class="nx">button</span> <span class="o">=</span> <span class="nx">$</span><span class="p">(</span><span class="nx">event</span><span class="p">.</span><span class="nx">relatedTarget</span><span class="p">)</span> <span class="c1">// Button that triggered the modal</span> + <span class="kd">var</span> <span class="nx">recipient</span> <span class="o">=</span> <span class="nx">button</span><span class="p">.</span><span class="nx">data</span><span class="p">(</span><span class="s1">'whatever'</span><span class="p">)</span> <span class="c1">// Extract info from data-* attributes</span> + <span class="c1">// If necessary, you could initiate an AJAX request here (and then do the updating in a callback).</span> + <span class="c1">// Update the modal's content. We'll use jQuery here, but you could use a data binding library or other methods instead.</span> + <span class="kd">var</span> <span class="nx">modal</span> <span class="o">=</span> <span class="nx">$</span><span class="p">(</span><span class="k">this</span><span class="p">)</span> + <span class="nx">modal</span><span class="p">.</span><span class="nx">find</span><span class="p">(</span><span class="s1">'.modal-title'</span><span class="p">).</span><span class="nx">text</span><span class="p">(</span><span class="s1">'New message to '</span> <span class="o">+</span> <span class="nx">recipient</span><span class="p">)</span> + <span class="nx">modal</span><span class="p">.</span><span class="nx">find</span><span class="p">(</span><span class="s1">'.modal-body input'</span><span class="p">).</span><span class="nx">val</span><span class="p">(</span><span class="nx">recipient</span><span class="p">)</span> +<span class="p">})</span></code></pre></figure> + +<h3 id="change-animation">Change animation</h3> + +<p>The <code class="highlighter-rouge">$modal-fade-transform</code> variable determines the transform state of <code class="highlighter-rouge">.modal-dialog</code> before the modal fade-in animation, the <code class="highlighter-rouge">$modal-show-transform</code> variable determines the transform of <code class="highlighter-rouge">.modal-dialog</code> at the end of the modal fade-in animation.</p> + +<p>If you want for example a zoom-in animation, you can set <code class="highlighter-rouge">$modal-fade-transform: scale(.8)</code>.</p> + +<h3 id="remove-animation">Remove animation</h3> + +<p>For modals that simply appear rather than fade in to view, remove the <code class="highlighter-rouge">.fade</code> class from your modal markup.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">role=</span><span class="s">"dialog"</span> <span class="na">aria-labelledby=</span><span class="s">"..."</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span> + ... +<span class="nt"></div></span></code></pre></figure> + +<h3 id="dynamic-heights">Dynamic heights</h3> + +<p>If the height of a modal changes while it is open, you should call <code class="highlighter-rouge">$('#myModal').modal('handleUpdate')</code> to readjust the modal’s position in case a scrollbar appears.</p> + +<h3 id="accessibility">Accessibility</h3> + +<p>Be sure to add <code class="highlighter-rouge">role="dialog"</code> and <code class="highlighter-rouge">aria-labelledby="..."</code>, referencing the modal title, to <code class="highlighter-rouge">.modal</code>, and <code class="highlighter-rouge">role="document"</code> to the <code class="highlighter-rouge">.modal-dialog</code> itself. Additionally, you may give a description of your modal dialog with <code class="highlighter-rouge">aria-describedby</code> on <code class="highlighter-rouge">.modal</code>.</p> + +<h3 id="embedding-youtube-videos">Embedding YouTube videos</h3> + +<p>Embedding YouTube videos in modals requires additional JavaScript not in Bootstrap to automatically stop playback and more. <a href="https://stackoverflow.com/questions/18622508/bootstrap-3-and-youtube-in-modal">See this helpful Stack Overflow post</a> for more information.</p> + +<h2 id="optional-sizes">Optional sizes</h2> + +<p>Modals have three optional sizes, available via modifier classes to be placed on a <code class="highlighter-rouge">.modal-dialog</code>. These sizes kick in at certain breakpoints to avoid horizontal scrollbars on narrower viewports.</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th>Size</th> + <th>Class</th> + <th>Modal max-width</th> + </tr> + </thead> + <tbody> + <tr> + <td>Small</td> + <td><code>.modal-sm</code></td> + <td><code>300px</code></td> + </tr> + <tr> + <td>Default</td> + <td class="text-muted">None</td> + <td><code>500px</code></td> + </tr> + <tr> + <td>Large</td> + <td><code>.modal-lg</code></td> + <td><code>800px</code></td> + </tr> + <tr> + <td>Extra large</td> + <td><code>.modal-xl</code></td> + <td><code>1140px</code></td> + </tr> + </tbody> +</table> + +<p>Our default modal without modifier class constitutes the “medium†size modal.</p> + +<div class="bd-example"> + <button type="button" class="btn btn-primary" data-toggle="modal" data-target=".bd-example-modal-xl">Extra large modal</button> + <button type="button" class="btn btn-primary" data-toggle="modal" data-target=".bd-example-modal-lg">Large modal</button> + <button type="button" class="btn btn-primary" data-toggle="modal" data-target=".bd-example-modal-sm">Small modal</button> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Extra large modal --></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">data-toggle=</span><span class="s">"modal"</span> <span class="na">data-target=</span><span class="s">".bd-example-modal-xl"</span><span class="nt">></span>Extra large modal<span class="nt"></button></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal fade bd-example-modal-xl"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">role=</span><span class="s">"dialog"</span> <span class="na">aria-labelledby=</span><span class="s">"myExtraLargeModalLabel"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-dialog modal-xl"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-content"</span><span class="nt">></span> + ... + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="c"><!-- Large modal --></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">data-toggle=</span><span class="s">"modal"</span> <span class="na">data-target=</span><span class="s">".bd-example-modal-lg"</span><span class="nt">></span>Large modal<span class="nt"></button></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal fade bd-example-modal-lg"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">role=</span><span class="s">"dialog"</span> <span class="na">aria-labelledby=</span><span class="s">"myLargeModalLabel"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-dialog modal-lg"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-content"</span><span class="nt">></span> + ... + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="c"><!-- Small modal --></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">data-toggle=</span><span class="s">"modal"</span> <span class="na">data-target=</span><span class="s">".bd-example-modal-sm"</span><span class="nt">></span>Small modal<span class="nt"></button></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal fade bd-example-modal-sm"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">role=</span><span class="s">"dialog"</span> <span class="na">aria-labelledby=</span><span class="s">"mySmallModalLabel"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-dialog modal-sm"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"modal-content"</span><span class="nt">></span> + ... + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="modal fade bd-example-modal-xl" tabindex="-1" role="dialog" aria-labelledby="myExtraLargeModalLabel" aria-hidden="true"> + <div class="modal-dialog modal-xl"> + <div class="modal-content"> + + <div class="modal-header"> + <h5 class="modal-title h4" id="myExtraLargeModalLabel">Extra large modal</h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="modal-body"> + ... + </div> + </div> + </div> +</div> + +<div class="modal fade bd-example-modal-lg" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true"> + <div class="modal-dialog modal-lg"> + <div class="modal-content"> + + <div class="modal-header"> + <h5 class="modal-title h4" id="myLargeModalLabel">Large modal</h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="modal-body"> + ... + </div> + </div> + </div> +</div> + +<div class="modal fade bd-example-modal-sm" tabindex="-1" role="dialog" aria-labelledby="mySmallModalLabel" aria-hidden="true"> + <div class="modal-dialog modal-sm"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title h4" id="mySmallModalLabel">Small modal</h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="modal-body"> + ... + </div> + </div> + </div> +</div> + +<h2 id="usage">Usage</h2> + +<p>The modal plugin toggles your hidden content on demand, via data attributes or JavaScript. It also adds <code class="highlighter-rouge">.modal-open</code> to the <code class="highlighter-rouge"><body></code> to override default scrolling behavior and generates a <code class="highlighter-rouge">.modal-backdrop</code> to provide a click area for dismissing shown modals when clicking outside the modal.</p> + +<h3 id="via-data-attributes">Via data attributes</h3> + +<p>Activate a modal without writing JavaScript. Set <code class="highlighter-rouge">data-toggle="modal"</code> on a controller element, like a button, along with a <code class="highlighter-rouge">data-target="#foo"</code> or <code class="highlighter-rouge">href="#foo"</code> to target a specific modal to toggle.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"modal"</span> <span class="na">data-target=</span><span class="s">"#myModal"</span><span class="nt">></span>Launch modal<span class="nt"></button></span></code></pre></figure> + +<h3 id="via-javascript">Via JavaScript</h3> + +<p>Call a modal with id <code class="highlighter-rouge">myModal</code> with a single line of JavaScript:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myModal'</span><span class="p">).</span><span class="nx">modal</span><span class="p">(</span><span class="nx">options</span><span class="p">)</span></code></pre></figure> + +<h3 id="options">Options</h3> + +<p>Options can be passed via data attributes or JavaScript. For data attributes, append the option name to <code class="highlighter-rouge">data-</code>, as in <code class="highlighter-rouge">data-backdrop=""</code>.</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 100px;">Name</th> + <th style="width: 50px;">Type</th> + <th style="width: 50px;">Default</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>backdrop</td> + <td>boolean or the string <code>'static'</code></td> + <td>true</td> + <td>Includes a modal-backdrop element. Alternatively, specify <code>static</code> for a backdrop which doesn't close the modal on click.</td> + </tr> + <tr> + <td>keyboard</td> + <td>boolean</td> + <td>true</td> + <td>Closes the modal when escape key is pressed</td> + </tr> + <tr> + <td>focus</td> + <td>boolean</td> + <td>true</td> + <td>Puts the focus on the modal when initialized.</td> + </tr> + <tr> + <td>show</td> + <td>boolean</td> + <td>true</td> + <td>Shows the modal when initialized.</td> + </tr> + </tbody> +</table> + +<h3 id="methods">Methods</h3> + +<div class="bd-callout bd-callout-danger"> +<h4 id="asynchronous-methods-and-transitions">Asynchronous methods and transitions</h4> + +<p>All API methods are <strong>asynchronous</strong> and start a <strong>transition</strong>. They return to the caller as soon as the transition is started but <strong>before it ends</strong>. In addition, a method call on a <strong>transitioning component will be ignored</strong>.</p> + +<p><a href="/docs/4.3/getting-started/javascript/">See our JavaScript documentation for more information</a>.</p> +</div> + +<h4 id="modaloptions"><code class="highlighter-rouge">.modal(options)</code></h4> + +<p>Activates your content as a modal. Accepts an optional options <code class="highlighter-rouge">object</code>.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myModal'</span><span class="p">).</span><span class="nx">modal</span><span class="p">({</span> + <span class="na">keyboard</span><span class="p">:</span> <span class="kc">false</span> +<span class="p">})</span></code></pre></figure> + +<h4 id="modaltoggle"><code class="highlighter-rouge">.modal('toggle')</code></h4> + +<p>Manually toggles a modal. <strong>Returns to the caller before the modal has actually been shown or hidden</strong> (i.e. before the <code class="highlighter-rouge">shown.bs.modal</code> or <code class="highlighter-rouge">hidden.bs.modal</code> event occurs).</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myModal'</span><span class="p">).</span><span class="nx">modal</span><span class="p">(</span><span class="s1">'toggle'</span><span class="p">)</span></code></pre></figure> + +<h4 id="modalshow"><code class="highlighter-rouge">.modal('show')</code></h4> + +<p>Manually opens a modal. <strong>Returns to the caller before the modal has actually been shown</strong> (i.e. before the <code class="highlighter-rouge">shown.bs.modal</code> event occurs).</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myModal'</span><span class="p">).</span><span class="nx">modal</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span></code></pre></figure> + +<h4 id="modalhide"><code class="highlighter-rouge">.modal('hide')</code></h4> + +<p>Manually hides a modal. <strong>Returns to the caller before the modal has actually been hidden</strong> (i.e. before the <code class="highlighter-rouge">hidden.bs.modal</code> event occurs).</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myModal'</span><span class="p">).</span><span class="nx">modal</span><span class="p">(</span><span class="s1">'hide'</span><span class="p">)</span></code></pre></figure> + +<h4 id="modalhandleupdate"><code class="highlighter-rouge">.modal('handleUpdate')</code></h4> + +<p>Manually readjust the modal’s position if the height of a modal changes while it is open (i.e. in case a scrollbar appears).</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myModal'</span><span class="p">).</span><span class="nx">modal</span><span class="p">(</span><span class="s1">'handleUpdate'</span><span class="p">)</span></code></pre></figure> + +<h4 id="modaldispose"><code class="highlighter-rouge">.modal('dispose')</code></h4> + +<p>Destroys an element’s modal.</p> + +<h3 id="events">Events</h3> + +<p>Bootstrap’s modal class exposes a few events for hooking into modal functionality. All modal events are fired at the modal itself (i.e. at the <code class="highlighter-rouge"><div class="modal"></code>).</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 150px;">Event Type</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>show.bs.modal</td> + <td>This event fires immediately when the <code>show</code> instance method is called. If caused by a click, the clicked element is available as the <code>relatedTarget</code> property of the event.</td> + </tr> + <tr> + <td>shown.bs.modal</td> + <td>This event is fired when the modal has been made visible to the user (will wait for CSS transitions to complete). If caused by a click, the clicked element is available as the <code>relatedTarget</code> property of the event.</td> + </tr> + <tr> + <td>hide.bs.modal</td> + <td>This event is fired immediately when the <code>hide</code> instance method has been called.</td> + </tr> + <tr> + <td>hidden.bs.modal</td> + <td>This event is fired when the modal has finished being hidden from the user (will wait for CSS transitions to complete).</td> + </tr> + </tbody> +</table> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myModal'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'hidden.bs.modal'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span> + <span class="c1">// do something...</span> +<span class="p">})</span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/navbar/index.html b/docs/4.3/components/navbar/index.html new file mode 100644 index 0000000000..d9f28f6f88 --- /dev/null +++ b/docs/4.3/components/navbar/index.html @@ -0,0 +1,1342 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Documentation and examples for Bootstrap’s powerful, responsive navigation header, the navbar. Includes support for branding, navigation, and more, including support for our collapse plugin."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Navbar · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/navbar/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Navbar"> +<meta name="twitter:description" content="Documentation and examples for Bootstrap’s powerful, responsive navigation header, the navbar. Includes support for branding, navigation, and more, including support for our collapse plugin."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/navbar/"> +<meta property="og:title" content="Navbar"> +<meta property="og:description" content="Documentation and examples for Bootstrap’s powerful, responsive navigation header, the navbar. Includes support for branding, navigation, and more, including support for our collapse plugin."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#how-it-works">How it works</a></li> +<li class="toc-entry toc-h2"><a href="#supported-content">Supported content</a> +<ul> +<li class="toc-entry toc-h3"><a href="#brand">Brand</a></li> +<li class="toc-entry toc-h3"><a href="#nav">Nav</a></li> +<li class="toc-entry toc-h3"><a href="#forms">Forms</a></li> +<li class="toc-entry toc-h3"><a href="#text">Text</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#color-schemes">Color schemes</a></li> +<li class="toc-entry toc-h2"><a href="#containers">Containers</a></li> +<li class="toc-entry toc-h2"><a href="#placement">Placement</a></li> +<li class="toc-entry toc-h2"><a href="#responsive-behaviors">Responsive behaviors</a> +<ul> +<li class="toc-entry toc-h3"><a href="#toggler">Toggler</a></li> +<li class="toc-entry toc-h3"><a href="#external-content">External content</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Navbar</h1> + <p class="bd-lead">Documentation and examples for Bootstrap’s powerful, responsive navigation header, the navbar. Includes support for branding, navigation, and more, including support for our collapse plugin.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="how-it-works">How it works</h2> + +<p>Here’s what you need to know before getting started with the navbar:</p> + +<ul> + <li>Navbars require a wrapping <code class="highlighter-rouge">.navbar</code> with <code class="highlighter-rouge">.navbar-expand{-sm|-md|-lg|-xl}</code> for responsive collapsing and <a href="#color-schemes">color scheme</a> classes.</li> + <li>Navbars and their contents are fluid by default. Use <a href="#containers">optional containers</a> to limit their horizontal width.</li> + <li>Use our <a href="/docs/4.3/utilities/spacing/">spacing</a> and <a href="/docs/4.3/utilities/flex/">flex</a> utility classes for controlling spacing and alignment within navbars.</li> + <li>Navbars are responsive by default, but you can easily modify them to change that. Responsive behavior depends on our Collapse JavaScript plugin.</li> + <li>Navbars are hidden by default when printing. Force them to be printed by adding <code class="highlighter-rouge">.d-print</code> to the <code class="highlighter-rouge">.navbar</code>. See the <a href="/docs/4.3/utilities/display/">display</a> utility class.</li> + <li>Ensure accessibility by using a <code class="highlighter-rouge"><nav></code> element or, if using a more generic element such as a <code class="highlighter-rouge"><div></code>, add a <code class="highlighter-rouge">role="navigation"</code> to every navbar to explicitly identify it as a landmark region for users of assistive technologies.</li> +</ul> + +<div class="bd-callout bd-callout-info"> +<p>The animation effect of this component is dependent on the <code class="highlighter-rouge">prefers-reduced-motion</code> media query. See the <a href="/docs/4.3/getting-started/accessibility/#reduced-motion">reduced motion section of our accessibility documentation</a>.</p> +</div> + +<p>Read on for an example and list of supported sub-components.</p> + +<h2 id="supported-content">Supported content</h2> + +<p>Navbars come with built-in support for a handful of sub-components. Choose from the following as needed:</p> + +<ul> + <li><code class="highlighter-rouge">.navbar-brand</code> for your company, product, or project name.</li> + <li><code class="highlighter-rouge">.navbar-nav</code> for a full-height and lightweight navigation (including support for dropdowns).</li> + <li><code class="highlighter-rouge">.navbar-toggler</code> for use with our collapse plugin and other <a href="#responsive-behaviors">navigation toggling</a> behaviors.</li> + <li><code class="highlighter-rouge">.form-inline</code> for any form controls and actions.</li> + <li><code class="highlighter-rouge">.navbar-text</code> for adding vertically centered strings of text.</li> + <li><code class="highlighter-rouge">.collapse.navbar-collapse</code> for grouping and hiding navbar contents by a parent breakpoint.</li> +</ul> + +<p>Here’s an example of all the sub-components included in a responsive light-themed navbar that automatically collapses at the <code class="highlighter-rouge">lg</code> (large) breakpoint.</p> + +<div class="bd-example"> +<nav class="navbar navbar-expand-lg navbar-light bg-light"> + <a class="navbar-brand" href="#">Navbar</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse" id="navbarSupportedContent"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Dropdown + </a> + <div class="dropdown-menu" aria-labelledby="navbarDropdown"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Something else here</a> + </div> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> + </ul> + <form class="form-inline my-2 my-lg-0"> + <input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search" /> + <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button> + </form> + </div> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-expand-lg navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Navbar<span class="nt"></a></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"navbar-toggler"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">data-target=</span><span class="s">"#navbarSupportedContent"</span> <span class="na">aria-controls=</span><span class="s">"navbarSupportedContent"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">aria-label=</span><span class="s">"Toggle navigation"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"navbar-toggler-icon"</span><span class="nt">></span></span> + <span class="nt"></button></span> + + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"collapse navbar-collapse"</span> <span class="na">id=</span><span class="s">"navbarSupportedContent"</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"navbar-nav mr-auto"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item active"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Home <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>(current)<span class="nt"></span></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item dropdown"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link dropdown-toggle"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">id=</span><span class="s">"navbarDropdown"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + Dropdown + <span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span> <span class="na">aria-labelledby=</span><span class="s">"navbarDropdown"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-divider"</span><span class="nt">></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Something else here<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"></ul></span> + <span class="nt"><form</span> <span class="na">class=</span><span class="s">"form-inline my-2 my-lg-0"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-control mr-sm-2"</span> <span class="na">type=</span><span class="s">"search"</span> <span class="na">placeholder=</span><span class="s">"Search"</span> <span class="na">aria-label=</span><span class="s">"Search"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-success my-2 my-sm-0"</span> <span class="na">type=</span><span class="s">"submit"</span><span class="nt">></span>Search<span class="nt"></button></span> + <span class="nt"></form></span> + <span class="nt"></div></span> +<span class="nt"></nav></span></code></pre></figure> + +<p>This example uses <a href="/docs/4.3/utilities/colors/">color</a> (<code class="highlighter-rouge">bg-light</code>) and <a href="/docs/4.3/utilities/spacing/">spacing</a> (<code class="highlighter-rouge">my-2</code>, <code class="highlighter-rouge">my-lg-0</code>, <code class="highlighter-rouge">mr-sm-0</code>, <code class="highlighter-rouge">my-sm-0</code>) utility classes.</p> + +<h3 id="brand">Brand</h3> + +<p>The <code class="highlighter-rouge">.navbar-brand</code> can be applied to most elements, but an anchor works best as some elements might require utility classes or custom styles.</p> + +<div class="bd-example"> +<!-- As a link --> +<nav class="navbar navbar-light bg-light"> + <a class="navbar-brand" href="#">Navbar</a> +</nav> + +<!-- As a heading --> +<nav class="navbar navbar-light bg-light"> + <span class="navbar-brand mb-0 h1">Navbar</span> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- As a link --></span> +<span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Navbar<span class="nt"></a></span> +<span class="nt"></nav></span> + +<span class="c"><!-- As a heading --></span> +<span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"navbar-brand mb-0 h1"</span><span class="nt">></span>Navbar<span class="nt"></span></span> +<span class="nt"></nav></span></code></pre></figure> + +<p>Adding images to the <code class="highlighter-rouge">.navbar-brand</code> will likely always require custom styles or utilities to properly size. Here are some examples to demonstrate.</p> + +<div class="bd-example"> +<!-- Just an image --> +<nav class="navbar navbar-light bg-light"> + <a class="navbar-brand" href="#"> + <img src="/docs/4.3/assets/brand/bootstrap-solid.svg" width="30" height="30" alt="" /> + </a> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Just an image --></span> +<span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/docs/4.3/assets/brand/bootstrap-solid.svg"</span> <span class="na">width=</span><span class="s">"30"</span> <span class="na">height=</span><span class="s">"30"</span> <span class="na">alt=</span><span class="s">""</span><span class="nt">></span> + <span class="nt"></a></span> +<span class="nt"></nav></span></code></pre></figure> + +<div class="bd-example"> +<!-- Image and text --> +<nav class="navbar navbar-light bg-light"> + <a class="navbar-brand" href="#"> + <img src="/docs/4.3/assets/brand/bootstrap-solid.svg" width="30" height="30" class="d-inline-block align-top" alt="" /> + Bootstrap + </a> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Image and text --></span> +<span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/docs/4.3/assets/brand/bootstrap-solid.svg"</span> <span class="na">width=</span><span class="s">"30"</span> <span class="na">height=</span><span class="s">"30"</span> <span class="na">class=</span><span class="s">"d-inline-block align-top"</span> <span class="na">alt=</span><span class="s">""</span><span class="nt">></span> + Bootstrap + <span class="nt"></a></span> +<span class="nt"></nav></span></code></pre></figure> + +<h3 id="nav">Nav</h3> + +<p>Navbar navigation links build on our <code class="highlighter-rouge">.nav</code> options with their own modifier class and require the use of <a href="#toggler">toggler classes</a> for proper responsive styling. <strong>Navigation in navbars will also grow to occupy as much horizontal space as possible</strong> to keep your navbar contents securely aligned.</p> + +<p>Active states—with <code class="highlighter-rouge">.active</code>—to indicate the current page can be applied directly to <code class="highlighter-rouge">.nav-link</code>s or their immediate parent <code class="highlighter-rouge">.nav-item</code>s.</p> + +<div class="bd-example"> +<nav class="navbar navbar-expand-lg navbar-light bg-light"> + <a class="navbar-brand" href="#">Navbar</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + <div class="collapse navbar-collapse" id="navbarNav"> + <ul class="navbar-nav"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Features</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Pricing</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> + </ul> + </div> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-expand-lg navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Navbar<span class="nt"></a></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"navbar-toggler"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">data-target=</span><span class="s">"#navbarNav"</span> <span class="na">aria-controls=</span><span class="s">"navbarNav"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">aria-label=</span><span class="s">"Toggle navigation"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"navbar-toggler-icon"</span><span class="nt">></span></span> + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"collapse navbar-collapse"</span> <span class="na">id=</span><span class="s">"navbarNav"</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"navbar-nav"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item active"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Home <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>(current)<span class="nt"></span></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Features<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Pricing<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"></ul></span> + <span class="nt"></div></span> +<span class="nt"></nav></span></code></pre></figure> + +<p>And because we use classes for our navs, you can avoid the list-based approach entirely if you like.</p> + +<div class="bd-example"> +<nav class="navbar navbar-expand-lg navbar-light bg-light"> + <a class="navbar-brand" href="#">Navbar</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + <div class="collapse navbar-collapse" id="navbarNavAltMarkup"> + <div class="navbar-nav"> + <a class="nav-item nav-link active" href="#">Home <span class="sr-only">(current)</span></a> + <a class="nav-item nav-link" href="#">Features</a> + <a class="nav-item nav-link" href="#">Pricing</a> + <a class="nav-item nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </div> + </div> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-expand-lg navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Navbar<span class="nt"></a></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"navbar-toggler"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">data-target=</span><span class="s">"#navbarNavAltMarkup"</span> <span class="na">aria-controls=</span><span class="s">"navbarNavAltMarkup"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">aria-label=</span><span class="s">"Toggle navigation"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"navbar-toggler-icon"</span><span class="nt">></span></span> + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"collapse navbar-collapse"</span> <span class="na">id=</span><span class="s">"navbarNavAltMarkup"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"navbar-nav"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-item nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Home <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>(current)<span class="nt"></span></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-item nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Features<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-item nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Pricing<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-item nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></nav></span></code></pre></figure> + +<p>You may also utilize dropdowns in your navbar nav. Dropdown menus require a wrapping element for positioning, so be sure to use separate and nested elements for <code class="highlighter-rouge">.nav-item</code> and <code class="highlighter-rouge">.nav-link</code> as shown below.</p> + +<div class="bd-example"> +<nav class="navbar navbar-expand-lg navbar-light bg-light"> + <a class="navbar-brand" href="#">Navbar</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + <div class="collapse navbar-collapse" id="navbarNavDropdown"> + <ul class="navbar-nav"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Features</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Pricing</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Dropdown link + </a> + <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> + </li> + </ul> + </div> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-expand-lg navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Navbar<span class="nt"></a></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"navbar-toggler"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">data-target=</span><span class="s">"#navbarNavDropdown"</span> <span class="na">aria-controls=</span><span class="s">"navbarNavDropdown"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">aria-label=</span><span class="s">"Toggle navigation"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"navbar-toggler-icon"</span><span class="nt">></span></span> + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"collapse navbar-collapse"</span> <span class="na">id=</span><span class="s">"navbarNavDropdown"</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"navbar-nav"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item active"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Home <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>(current)<span class="nt"></span></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Features<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Pricing<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item dropdown"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link dropdown-toggle"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">id=</span><span class="s">"navbarDropdownMenuLink"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span> + Dropdown link + <span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span> <span class="na">aria-labelledby=</span><span class="s">"navbarDropdownMenuLink"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Something else here<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></li></span> + <span class="nt"></ul></span> + <span class="nt"></div></span> +<span class="nt"></nav></span></code></pre></figure> + +<h3 id="forms">Forms</h3> + +<p>Place various form controls and components within a navbar with <code class="highlighter-rouge">.form-inline</code>.</p> + +<div class="bd-example"> +<nav class="navbar navbar-light bg-light"> + <form class="form-inline"> + <input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search" /> + <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button> + </form> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><form</span> <span class="na">class=</span><span class="s">"form-inline"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-control mr-sm-2"</span> <span class="na">type=</span><span class="s">"search"</span> <span class="na">placeholder=</span><span class="s">"Search"</span> <span class="na">aria-label=</span><span class="s">"Search"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-success my-2 my-sm-0"</span> <span class="na">type=</span><span class="s">"submit"</span><span class="nt">></span>Search<span class="nt"></button></span> + <span class="nt"></form></span> +<span class="nt"></nav></span></code></pre></figure> + +<p>Immediate children elements in <code class="highlighter-rouge">.navbar</code> use flex layout and will default to <code class="highlighter-rouge">justify-content: between</code>. Use additional <a href="/docs/4.3/utilities/flex/">flex utilities</a> as needed to adjust this behavior.</p> + +<div class="bd-example"> +<nav class="navbar navbar-light bg-light"> + <a class="navbar-brand">Navbar</a> + <form class="form-inline"> + <input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search" /> + <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button> + </form> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span><span class="nt">></span>Navbar<span class="nt"></a></span> + <span class="nt"><form</span> <span class="na">class=</span><span class="s">"form-inline"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-control mr-sm-2"</span> <span class="na">type=</span><span class="s">"search"</span> <span class="na">placeholder=</span><span class="s">"Search"</span> <span class="na">aria-label=</span><span class="s">"Search"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-success my-2 my-sm-0"</span> <span class="na">type=</span><span class="s">"submit"</span><span class="nt">></span>Search<span class="nt"></button></span> + <span class="nt"></form></span> +<span class="nt"></nav></span></code></pre></figure> + +<p>Input groups work, too:</p> + +<div class="bd-example"> +<nav class="navbar navbar-light bg-light"> + <form class="form-inline"> + <div class="input-group"> + <div class="input-group-prepend"> + <span class="input-group-text" id="basic-addon1">@</span> + </div> + <input type="text" class="form-control" placeholder="Username" aria-label="Username" aria-describedby="basic-addon1" /> + </div> + </form> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><form</span> <span class="na">class=</span><span class="s">"form-inline"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"input-group-prepend"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"input-group-text"</span> <span class="na">id=</span><span class="s">"basic-addon1"</span><span class="nt">></span>@<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">class=</span><span class="s">"form-control"</span> <span class="na">placeholder=</span><span class="s">"Username"</span> <span class="na">aria-label=</span><span class="s">"Username"</span> <span class="na">aria-describedby=</span><span class="s">"basic-addon1"</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"></form></span> +<span class="nt"></nav></span></code></pre></figure> + +<p>Various buttons are supported as part of these navbar forms, too. This is also a great reminder that vertical alignment utilities can be used to align different sized elements.</p> + +<div class="bd-example"> +<nav class="navbar navbar-light bg-light"> + <form class="form-inline"> + <button class="btn btn-outline-success" type="button">Main button</button> + <button class="btn btn-sm btn-outline-secondary" type="button">Smaller button</button> + </form> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><form</span> <span class="na">class=</span><span class="s">"form-inline"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-success"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Main button<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-sm btn-outline-secondary"</span> <span class="na">type=</span><span class="s">"button"</span><span class="nt">></span>Smaller button<span class="nt"></button></span> + <span class="nt"></form></span> +<span class="nt"></nav></span></code></pre></figure> + +<h3 id="text">Text</h3> + +<p>Navbars may contain bits of text with the help of <code class="highlighter-rouge">.navbar-text</code>. This class adjusts vertical alignment and horizontal spacing for strings of text.</p> + +<div class="bd-example"> +<nav class="navbar navbar-light bg-light"> + <span class="navbar-text"> + Navbar text with an inline element + </span> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"navbar-text"</span><span class="nt">></span> + Navbar text with an inline element + <span class="nt"></span></span> +<span class="nt"></nav></span></code></pre></figure> + +<p>Mix and match with other components and utilities as needed.</p> + +<div class="bd-example"> +<nav class="navbar navbar-expand-lg navbar-light bg-light"> + <a class="navbar-brand" href="#">Navbar w/ text</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarText" aria-controls="navbarText" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + <div class="collapse navbar-collapse" id="navbarText"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Features</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Pricing</a> + </li> + </ul> + <span class="navbar-text"> + Navbar text with an inline element + </span> + </div> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-expand-lg navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Navbar w/ text<span class="nt"></a></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"navbar-toggler"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">data-target=</span><span class="s">"#navbarText"</span> <span class="na">aria-controls=</span><span class="s">"navbarText"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">aria-label=</span><span class="s">"Toggle navigation"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"navbar-toggler-icon"</span><span class="nt">></span></span> + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"collapse navbar-collapse"</span> <span class="na">id=</span><span class="s">"navbarText"</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"navbar-nav mr-auto"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item active"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Home <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>(current)<span class="nt"></span></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Features<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Pricing<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"></ul></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"navbar-text"</span><span class="nt">></span> + Navbar text with an inline element + <span class="nt"></span></span> + <span class="nt"></div></span> +<span class="nt"></nav></span></code></pre></figure> + +<h2 id="color-schemes">Color schemes</h2> + +<p>Theming the navbar has never been easier thanks to the combination of theming classes and <code class="highlighter-rouge">background-color</code> utilities. Choose from <code class="highlighter-rouge">.navbar-light</code> for use with light background colors, or <code class="highlighter-rouge">.navbar-dark</code> for dark background colors. Then, customize with <code class="highlighter-rouge">.bg-*</code> utilities.</p> + +<div class="bd-example"> + <nav class="navbar navbar-expand-lg navbar-dark bg-dark"> + <a class="navbar-brand" href="#">Navbar</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarColor01" aria-controls="navbarColor01" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse" id="navbarColor01"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Features</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Pricing</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">About</a> + </li> + </ul> + <form class="form-inline"> + <input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search" /> + <button class="btn btn-outline-info my-2 my-sm-0" type="submit">Search</button> + </form> + </div> + </nav> + + <nav class="navbar navbar-expand-lg navbar-dark bg-primary"> + <a class="navbar-brand" href="#">Navbar</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarColor02" aria-controls="navbarColor02" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse" id="navbarColor02"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Features</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Pricing</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">About</a> + </li> + </ul> + <form class="form-inline"> + <input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search" /> + <button class="btn btn-outline-light my-2 my-sm-0" type="submit">Search</button> + </form> + </div> + </nav> + + <nav class="navbar navbar-expand-lg navbar-light" style="background-color: #e3f2fd;"> + <a class="navbar-brand" href="#">Navbar</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarColor03" aria-controls="navbarColor03" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse" id="navbarColor03"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Features</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Pricing</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">About</a> + </li> + </ul> + <form class="form-inline"> + <input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search" /> + <button class="btn btn-outline-primary my-2 my-sm-0" type="submit">Search</button> + </form> + </div> + </nav> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-dark bg-dark"</span><span class="nt">></span> + <span class="c"><!-- Navbar content --></span> +<span class="nt"></nav></span> + +<span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-dark bg-primary"</span><span class="nt">></span> + <span class="c"><!-- Navbar content --></span> +<span class="nt"></nav></span> + +<span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-light"</span> <span class="na">style=</span><span class="s">"background-color: #e3f2fd;"</span><span class="nt">></span> + <span class="c"><!-- Navbar content --></span> +<span class="nt"></nav></span></code></pre></figure> + +<h2 id="containers">Containers</h2> + +<p>Although it’s not required, you can wrap a navbar in a <code class="highlighter-rouge">.container</code> to center it on a page or add one within to only center the contents of a <a href="#placement">fixed or static top navbar</a>.</p> + +<div class="bd-example"> +<div class="container"> + <nav class="navbar navbar-expand-lg navbar-light bg-light"> + <a class="navbar-brand" href="#">Navbar</a> + </nav> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-expand-lg navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Navbar<span class="nt"></a></span> + <span class="nt"></nav></span> +<span class="nt"></div></span></code></pre></figure> + +<p>When the container is within your navbar, its horizontal padding is removed at breakpoints lower than your specified <code class="highlighter-rouge">.navbar-expand{-sm|-md|-lg|-xl}</code> class. This ensures we’re not doubling up on padding unnecessarily on lower viewports when your navbar is collapsed.</p> + +<div class="bd-example"> +<nav class="navbar navbar-expand-lg navbar-light bg-light"> + <div class="container"> + <a class="navbar-brand" href="#">Navbar</a> + </div> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-expand-lg navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Navbar<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></nav></span></code></pre></figure> + +<h2 id="placement">Placement</h2> + +<p>Use our <a href="/docs/4.3/utilities/position/">position utilities</a> to place navbars in non-static positions. Choose from fixed to the top, fixed to the bottom, or stickied to the top (scrolls with the page until it reaches the top, then stays there). Fixed navbars use <code class="highlighter-rouge">position: fixed</code>, meaning they’re pulled from the normal flow of the DOM and may require custom CSS (e.g., <code class="highlighter-rouge">padding-top</code> on the <code class="highlighter-rouge"><body></code>) to prevent overlap with other elements.</p> + +<p>Also note that <strong><code class="highlighter-rouge">.sticky-top</code> uses <code class="highlighter-rouge">position: sticky</code>, which <a href="https://caniuse.com/#feat=css-sticky">isn’t fully supported in every browser</a></strong>.</p> + +<div class="bd-example"> +<nav class="navbar navbar-light bg-light"> + <a class="navbar-brand" href="#">Default</a> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Default<span class="nt"></a></span> +<span class="nt"></nav></span></code></pre></figure> + +<div class="bd-example"> +<nav class="navbar fixed-top navbar-light bg-light"> + <a class="navbar-brand" href="#">Fixed top</a> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar fixed-top navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Fixed top<span class="nt"></a></span> +<span class="nt"></nav></span></code></pre></figure> + +<div class="bd-example"> +<nav class="navbar fixed-bottom navbar-light bg-light"> + <a class="navbar-brand" href="#">Fixed bottom</a> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar fixed-bottom navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Fixed bottom<span class="nt"></a></span> +<span class="nt"></nav></span></code></pre></figure> + +<div class="bd-example"> +<nav class="navbar sticky-top navbar-light bg-light"> + <a class="navbar-brand" href="#">Sticky top</a> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar sticky-top navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Sticky top<span class="nt"></a></span> +<span class="nt"></nav></span></code></pre></figure> + +<h2 id="responsive-behaviors">Responsive behaviors</h2> + +<p>Navbars can utilize <code class="highlighter-rouge">.navbar-toggler</code>, <code class="highlighter-rouge">.navbar-collapse</code>, and <code class="highlighter-rouge">.navbar-expand{-sm|-md|-lg|-xl}</code> classes to change when their content collapses behind a button. In combination with other utilities, you can easily choose when to show or hide particular elements.</p> + +<p>For navbars that never collapse, add the <code class="highlighter-rouge">.navbar-expand</code> class on the navbar. For navbars that always collapse, don’t add any <code class="highlighter-rouge">.navbar-expand</code> class.</p> + +<h3 id="toggler">Toggler</h3> + +<p>Navbar togglers are left-aligned by default, but should they follow a sibling element like a <code class="highlighter-rouge">.navbar-brand</code>, they’ll automatically be aligned to the far right. Reversing your markup will reverse the placement of the toggler. Below are examples of different toggle styles.</p> + +<p>With no <code class="highlighter-rouge">.navbar-brand</code> shown in lowest breakpoint:</p> + +<div class="bd-example"> +<nav class="navbar navbar-expand-lg navbar-light bg-light"> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarTogglerDemo01" aria-controls="navbarTogglerDemo01" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + <div class="collapse navbar-collapse" id="navbarTogglerDemo01"> + <a class="navbar-brand" href="#">Hidden brand</a> + <ul class="navbar-nav mr-auto mt-2 mt-lg-0"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> + </ul> + <form class="form-inline my-2 my-lg-0"> + <input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search" /> + <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button> + </form> + </div> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-expand-lg navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"navbar-toggler"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">data-target=</span><span class="s">"#navbarTogglerDemo01"</span> <span class="na">aria-controls=</span><span class="s">"navbarTogglerDemo01"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">aria-label=</span><span class="s">"Toggle navigation"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"navbar-toggler-icon"</span><span class="nt">></span></span> + <span class="nt"></button></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"collapse navbar-collapse"</span> <span class="na">id=</span><span class="s">"navbarTogglerDemo01"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Hidden brand<span class="nt"></a></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"navbar-nav mr-auto mt-2 mt-lg-0"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item active"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Home <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>(current)<span class="nt"></span></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"></ul></span> + <span class="nt"><form</span> <span class="na">class=</span><span class="s">"form-inline my-2 my-lg-0"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-control mr-sm-2"</span> <span class="na">type=</span><span class="s">"search"</span> <span class="na">placeholder=</span><span class="s">"Search"</span> <span class="na">aria-label=</span><span class="s">"Search"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-success my-2 my-sm-0"</span> <span class="na">type=</span><span class="s">"submit"</span><span class="nt">></span>Search<span class="nt"></button></span> + <span class="nt"></form></span> + <span class="nt"></div></span> +<span class="nt"></nav></span></code></pre></figure> + +<p>With a brand name shown on the left and toggler on the right:</p> + +<div class="bd-example"> +<nav class="navbar navbar-expand-lg navbar-light bg-light"> + <a class="navbar-brand" href="#">Navbar</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarTogglerDemo02" aria-controls="navbarTogglerDemo02" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse" id="navbarTogglerDemo02"> + <ul class="navbar-nav mr-auto mt-2 mt-lg-0"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> + </ul> + <form class="form-inline my-2 my-lg-0"> + <input class="form-control mr-sm-2" type="search" placeholder="Search" /> + <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button> + </form> + </div> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-expand-lg navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Navbar<span class="nt"></a></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"navbar-toggler"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">data-target=</span><span class="s">"#navbarTogglerDemo02"</span> <span class="na">aria-controls=</span><span class="s">"navbarTogglerDemo02"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">aria-label=</span><span class="s">"Toggle navigation"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"navbar-toggler-icon"</span><span class="nt">></span></span> + <span class="nt"></button></span> + + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"collapse navbar-collapse"</span> <span class="na">id=</span><span class="s">"navbarTogglerDemo02"</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"navbar-nav mr-auto mt-2 mt-lg-0"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item active"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Home <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>(current)<span class="nt"></span></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"></ul></span> + <span class="nt"><form</span> <span class="na">class=</span><span class="s">"form-inline my-2 my-lg-0"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-control mr-sm-2"</span> <span class="na">type=</span><span class="s">"search"</span> <span class="na">placeholder=</span><span class="s">"Search"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-success my-2 my-sm-0"</span> <span class="na">type=</span><span class="s">"submit"</span><span class="nt">></span>Search<span class="nt"></button></span> + <span class="nt"></form></span> + <span class="nt"></div></span> +<span class="nt"></nav></span></code></pre></figure> + +<p>With a toggler on the left and brand name on the right:</p> + +<div class="bd-example"> +<nav class="navbar navbar-expand-lg navbar-light bg-light"> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarTogglerDemo03" aria-controls="navbarTogglerDemo03" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + <a class="navbar-brand" href="#">Navbar</a> + + <div class="collapse navbar-collapse" id="navbarTogglerDemo03"> + <ul class="navbar-nav mr-auto mt-2 mt-lg-0"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> + </ul> + <form class="form-inline my-2 my-lg-0"> + <input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search" /> + <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button> + </form> + </div> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-expand-lg navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"navbar-toggler"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">data-target=</span><span class="s">"#navbarTogglerDemo03"</span> <span class="na">aria-controls=</span><span class="s">"navbarTogglerDemo03"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">aria-label=</span><span class="s">"Toggle navigation"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"navbar-toggler-icon"</span><span class="nt">></span></span> + <span class="nt"></button></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Navbar<span class="nt"></a></span> + + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"collapse navbar-collapse"</span> <span class="na">id=</span><span class="s">"navbarTogglerDemo03"</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"navbar-nav mr-auto mt-2 mt-lg-0"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item active"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Home <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>(current)<span class="nt"></span></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"></ul></span> + <span class="nt"><form</span> <span class="na">class=</span><span class="s">"form-inline my-2 my-lg-0"</span><span class="nt">></span> + <span class="nt"><input</span> <span class="na">class=</span><span class="s">"form-control mr-sm-2"</span> <span class="na">type=</span><span class="s">"search"</span> <span class="na">placeholder=</span><span class="s">"Search"</span> <span class="na">aria-label=</span><span class="s">"Search"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-outline-success my-2 my-sm-0"</span> <span class="na">type=</span><span class="s">"submit"</span><span class="nt">></span>Search<span class="nt"></button></span> + <span class="nt"></form></span> + <span class="nt"></div></span> +<span class="nt"></nav></span></code></pre></figure> + +<h3 id="external-content">External content</h3> + +<p>Sometimes you want to use the collapse plugin to trigger hidden content elsewhere on the page. Because our plugin works on the <code class="highlighter-rouge">id</code> and <code class="highlighter-rouge">data-target</code> matching, that’s easily done!</p> + +<div class="bd-example"> +<div class="pos-f-t"> + <div class="collapse" id="navbarToggleExternalContent"> + <div class="bg-dark p-4"> + <h5 class="text-white h4">Collapsed content</h5> + <span class="text-muted">Toggleable via the navbar brand.</span> + </div> + </div> + <nav class="navbar navbar-dark bg-dark"> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarToggleExternalContent" aria-controls="navbarToggleExternalContent" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + </nav> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"pos-f-t"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"collapse"</span> <span class="na">id=</span><span class="s">"navbarToggleExternalContent"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"bg-dark p-4"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"text-white h4"</span><span class="nt">></span>Collapsed content<span class="nt"></h5></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Toggleable via the navbar brand.<span class="nt"></span></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><nav</span> <span class="na">class=</span><span class="s">"navbar navbar-dark bg-dark"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"navbar-toggler"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"collapse"</span> <span class="na">data-target=</span><span class="s">"#navbarToggleExternalContent"</span> <span class="na">aria-controls=</span><span class="s">"navbarToggleExternalContent"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span> <span class="na">aria-label=</span><span class="s">"Toggle navigation"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"navbar-toggler-icon"</span><span class="nt">></span></span> + <span class="nt"></button></span> + <span class="nt"></nav></span> +<span class="nt"></div></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/navs/index.html b/docs/4.3/components/navs/index.html new file mode 100644 index 0000000000..6e0c73baac --- /dev/null +++ b/docs/4.3/components/navs/index.html @@ -0,0 +1,1332 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Documentation and examples for how to use Bootstrap’s included navigation components."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Navs · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/navs/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Navs"> +<meta name="twitter:description" content="Documentation and examples for how to use Bootstrap’s included navigation components."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/navs/"> +<meta property="og:title" content="Navs"> +<meta property="og:description" content="Documentation and examples for how to use Bootstrap’s included navigation components."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#base-nav">Base nav</a></li> +<li class="toc-entry toc-h2"><a href="#available-styles">Available styles</a> +<ul> +<li class="toc-entry toc-h3"><a href="#horizontal-alignment">Horizontal alignment</a></li> +<li class="toc-entry toc-h3"><a href="#vertical">Vertical</a></li> +<li class="toc-entry toc-h3"><a href="#tabs">Tabs</a></li> +<li class="toc-entry toc-h3"><a href="#pills">Pills</a></li> +<li class="toc-entry toc-h3"><a href="#fill-and-justify">Fill and justify</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#working-with-flex-utilities">Working with flex utilities</a></li> +<li class="toc-entry toc-h2"><a href="#regarding-accessibility">Regarding accessibility</a></li> +<li class="toc-entry toc-h2"><a href="#using-dropdowns">Using dropdowns</a> +<ul> +<li class="toc-entry toc-h3"><a href="#tabs-with-dropdowns">Tabs with dropdowns</a></li> +<li class="toc-entry toc-h3"><a href="#pills-with-dropdowns">Pills with dropdowns</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#javascript-behavior">JavaScript behavior</a> +<ul> +<li class="toc-entry toc-h3"><a href="#using-data-attributes">Using data attributes</a></li> +<li class="toc-entry toc-h3"><a href="#via-javascript">Via JavaScript</a></li> +<li class="toc-entry toc-h3"><a href="#fade-effect">Fade effect</a></li> +<li class="toc-entry toc-h3"><a href="#methods">Methods</a> +<ul> +<li class="toc-entry toc-h4"><a href="#tab">$().tab</a></li> +<li class="toc-entry toc-h4"><a href="#tabshow">.tab(‘show’)</a></li> +<li class="toc-entry toc-h4"><a href="#tabdispose">.tab(‘dispose’)</a></li> +</ul> +</li> +<li class="toc-entry toc-h3"><a href="#events">Events</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Navs</h1> + <p class="bd-lead">Documentation and examples for how to use Bootstrap’s included navigation components.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="base-nav">Base nav</h2> + +<p>Navigation available in Bootstrap share general markup and styles, from the base <code class="highlighter-rouge">.nav</code> class to the active and disabled states. Swap modifier classes to switch between each style.</p> + +<p>The base <code class="highlighter-rouge">.nav</code> component is built with flexbox and provide a strong foundation for building all types of navigation components. It includes some style overrides (for working with lists), some link padding for larger hit areas, and basic disabled styling.</p> + +<div class="bd-callout bd-callout-info"> +<p>The base <code class="highlighter-rouge">.nav</code> component does not include any <code class="highlighter-rouge">.active</code> state. The following examples include the class, mainly to demonstrate that this particular class does not trigger any special styling.</p> +</div> + +<div class="bd-example"> +<ul class="nav"> + <li class="nav-item"> + <a class="nav-link active" href="#">Active</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<p>Classes are used throughout, so your markup can be super flexible. Use <code class="highlighter-rouge"><ul></code>s like above, <code class="highlighter-rouge"><ol></code> if the order of your items is important, or roll your own with a <code class="highlighter-rouge"><nav></code> element. Because the <code class="highlighter-rouge">.nav</code> uses <code class="highlighter-rouge">display: flex</code>, the nav links behave the same as nav items would, but without the extra markup.</p> + +<div class="bd-example"> +<nav class="nav"> + <a class="nav-link active" href="#">Active</a> + <a class="nav-link" href="#">Link</a> + <a class="nav-link" href="#">Link</a> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"nav"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> +<span class="nt"></nav></span></code></pre></figure> + +<h2 id="available-styles">Available styles</h2> + +<p>Change the style of <code class="highlighter-rouge">.nav</code>s component with modifiers and utilities. Mix and match as needed, or build your own.</p> + +<h3 id="horizontal-alignment">Horizontal alignment</h3> + +<p>Change the horizontal alignment of your nav with <a href="/docs/4.3/layout/grid/#horizontal-alignment">flexbox utilities</a>. By default, navs are left-aligned, but you can easily change them to center or right aligned.</p> + +<p>Centered with <code class="highlighter-rouge">.justify-content-center</code>:</p> + +<div class="bd-example"> +<ul class="nav justify-content-center"> + <li class="nav-item"> + <a class="nav-link active" href="#">Active</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav justify-content-center"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<p>Right-aligned with <code class="highlighter-rouge">.justify-content-end</code>:</p> + +<div class="bd-example"> +<ul class="nav justify-content-end"> + <li class="nav-item"> + <a class="nav-link active" href="#">Active</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav justify-content-end"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<h3 id="vertical">Vertical</h3> + +<p>Stack your navigation by changing the flex item direction with the <code class="highlighter-rouge">.flex-column</code> utility. Need to stack them on some viewports but not others? Use the responsive versions (e.g., <code class="highlighter-rouge">.flex-sm-column</code>).</p> + +<div class="bd-example"> +<ul class="nav flex-column"> + <li class="nav-item"> + <a class="nav-link active" href="#">Active</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav flex-column"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<p>As always, vertical navigation is possible without <code class="highlighter-rouge"><ul></code>s, too.</p> + +<div class="bd-example"> +<nav class="nav flex-column"> + <a class="nav-link active" href="#">Active</a> + <a class="nav-link" href="#">Link</a> + <a class="nav-link" href="#">Link</a> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"nav flex-column"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> +<span class="nt"></nav></span></code></pre></figure> + +<h3 id="tabs">Tabs</h3> + +<p>Takes the basic nav from above and adds the <code class="highlighter-rouge">.nav-tabs</code> class to generate a tabbed interface. Use them to create tabbable regions with our <a href="#javascript-behavior">tab JavaScript plugin</a>.</p> + +<div class="bd-example"> +<ul class="nav nav-tabs"> + <li class="nav-item"> + <a class="nav-link active" href="#">Active</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav nav-tabs"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<h3 id="pills">Pills</h3> + +<p>Take that same HTML, but use <code class="highlighter-rouge">.nav-pills</code> instead:</p> + +<div class="bd-example"> +<ul class="nav nav-pills"> + <li class="nav-item"> + <a class="nav-link active" href="#">Active</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav nav-pills"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<h3 id="fill-and-justify">Fill and justify</h3> + +<p>Force your <code class="highlighter-rouge">.nav</code>’s contents to extend the full available width one of two modifier classes. To proportionately fill all available space with your <code class="highlighter-rouge">.nav-item</code>s, use <code class="highlighter-rouge">.nav-fill</code>. Notice that all horizontal space is occupied, but not every nav item has the same width.</p> + +<div class="bd-example"> +<ul class="nav nav-pills nav-fill"> + <li class="nav-item"> + <a class="nav-link active" href="#">Active</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Much longer nav link</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav nav-pills nav-fill"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Much longer nav link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<p>When using a <code class="highlighter-rouge"><nav></code>-based navigation, be sure to include <code class="highlighter-rouge">.nav-item</code> on the anchors.</p> + +<div class="bd-example"> +<nav class="nav nav-pills nav-fill"> + <a class="nav-item nav-link active" href="#">Active</a> + <a class="nav-item nav-link" href="#">Much longer nav link</a> + <a class="nav-item nav-link" href="#">Link</a> + <a class="nav-item nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"nav nav-pills nav-fill"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-item nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-item nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Much longer nav link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-item nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-item nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> +<span class="nt"></nav></span></code></pre></figure> + +<p>For equal-width elements, use <code class="highlighter-rouge">.nav-justified</code>. All horizontal space will be occupied by nav links, but unlike the <code class="highlighter-rouge">.nav-fill</code> above, every nav item will be the same width.</p> + +<div class="bd-example"> +<ul class="nav nav-pills nav-justified"> + <li class="nav-item"> + <a class="nav-link active" href="#">Active</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Much longer nav link</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#">Disabled</a> + </li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav nav-pills nav-justified"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Much longer nav link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<p>Similar to the <code class="highlighter-rouge">.nav-fill</code> example using a <code class="highlighter-rouge"><nav></code>-based navigation, be sure to include <code class="highlighter-rouge">.nav-item</code> on the anchors.</p> + +<div class="bd-example"> +<nav class="nav nav-pills nav-justified"> + <a class="nav-item nav-link active" href="#">Active</a> + <a class="nav-item nav-link" href="#">Much longer nav link</a> + <a class="nav-item nav-link" href="#">Link</a> + <a class="nav-item nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> +</nav> + +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"nav nav-pills nav-justified"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-item nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-item nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Much longer nav link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-item nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-item nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> +<span class="nt"></nav></span></code></pre></figure> + +<h2 id="working-with-flex-utilities">Working with flex utilities</h2> + +<p>If you need responsive nav variations, consider using a series of <a href="/docs/4.3/utilities/flex/">flexbox utilities</a>. While more verbose, these utilities offer greater customization across responsive breakpoints. In the example below, our nav will be stacked on the lowest breakpoint, then adapt to a horizontal layout that fills the available width starting from the small breakpoint.</p> + +<div class="bd-example"> +<nav class="nav nav-pills flex-column flex-sm-row"> + <a class="flex-sm-fill text-sm-center nav-link active" href="#">Active</a> + <a class="flex-sm-fill text-sm-center nav-link" href="#">Longer nav link</a> + <a class="flex-sm-fill text-sm-center nav-link" href="#">Link</a> + <a class="flex-sm-fill text-sm-center nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">class=</span><span class="s">"nav nav-pills flex-column flex-sm-row"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"flex-sm-fill text-sm-center nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"flex-sm-fill text-sm-center nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Longer nav link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"flex-sm-fill text-sm-center nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"flex-sm-fill text-sm-center nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> +<span class="nt"></nav></span></code></pre></figure> + +<h2 id="regarding-accessibility">Regarding accessibility</h2> + +<p>If you’re using navs to provide a navigation bar, be sure to add a <code class="highlighter-rouge">role="navigation"</code> to the most logical parent container of the <code class="highlighter-rouge"><ul></code>, or wrap a <code class="highlighter-rouge"><nav></code> element around the whole navigation. Do not add the role to the <code class="highlighter-rouge"><ul></code> itself, as this would prevent it from being announced as an actual list by assistive technologies.</p> + +<p>Note that navigation bars, even if visually styled as tabs with the <code class="highlighter-rouge">.nav-tabs</code> class, should <strong>not</strong> be given <code class="highlighter-rouge">role="tablist"</code>, <code class="highlighter-rouge">role="tab"</code> or <code class="highlighter-rouge">role="tabpanel"</code> attributes. These are only appropriate for dynamic tabbed interfaces, as described in the <a href="https://www.w3.org/TR/wai-aria-practices/#tabpanel"><abbr title="Web Accessibility Initiative">WAI</abbr> <abbr title="Accessible Rich Internet Applications">ARIA</abbr> Authoring Practices</a>. See <a href="#javascript-behavior">JavaScript behavior</a> for dynamic tabbed interfaces in this section for an example.</p> + +<h2 id="using-dropdowns">Using dropdowns</h2> + +<p>Add dropdown menus with a little extra HTML and the <a href="/docs/4.3/components/dropdowns/#usage">dropdowns JavaScript plugin</a>.</p> + +<h3 id="tabs-with-dropdowns">Tabs with dropdowns</h3> + +<div class="bd-example"> +<ul class="nav nav-tabs"> + <li class="nav-item"> + <a class="nav-link active" href="#">Active</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button" aria-haspopup="true" aria-expanded="false">Dropdown</a> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav nav-tabs"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item dropdown"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link dropdown-toggle"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span>Dropdown<span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Something else here<span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-divider"</span><span class="nt">></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Separated link<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<h3 id="pills-with-dropdowns">Pills with dropdowns</h3> + +<div class="bd-example"> +<ul class="nav nav-pills"> + <li class="nav-item"> + <a class="nav-link active" href="#">Active</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button" aria-haspopup="true" aria-expanded="false">Dropdown</a> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="#">Separated link</a> + </div> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav nav-pills"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Active<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item dropdown"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link dropdown-toggle"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span>Dropdown<span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Another action<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Something else here<span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-divider"</span><span class="nt">></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Separated link<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Link<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link disabled"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Disabled<span class="nt"></a></span> + <span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<h2 id="javascript-behavior">JavaScript behavior</h2> + +<p>Use the tab JavaScript plugin—include it individually or through the compiled <code class="highlighter-rouge">bootstrap.js</code> file—to extend our navigational tabs and pills to create tabbable panes of local content, even via dropdown menus.</p> + +<p>If you’re building our JavaScript from source, it <a href="/docs/4.3/getting-started/javascript/#util">requires <code class="highlighter-rouge">util.js</code></a>.</p> + +<p>Dynamic tabbed interfaces, as described in the <a href="https://www.w3.org/TR/wai-aria-practices/#tabpanel"><abbr title="Web Accessibility Initiative">WAI</abbr> <abbr title="Accessible Rich Internet Applications">ARIA</abbr> Authoring Practices</a>, require <code class="highlighter-rouge">role="tablist"</code>, <code class="highlighter-rouge">role="tab"</code>, <code class="highlighter-rouge">role="tabpanel"</code>, and additional <code class="highlighter-rouge">aria-</code> attributes in order to convey their structure, functionality and current state to users of assistive technologies (such as screen readers).</p> + +<p>Note that dynamic tabbed interfaces should <em>not</em> contain dropdown menus, as this causes both usability and accessibility issues. From a usability perspective, the fact that the currently displayed tab’s trigger element is not immediately visible (as it’s inside the closed dropdown menu) can cause confusion. From an accessibility point of view, there is currently no sensible way to map this sort of construct to a standard WAI ARIA pattern, meaning that it cannot be easily made understandable to users of assistive technologies.</p> + +<div class="bd-example bd-example-tabs"> + <ul class="nav nav-tabs" id="myTab" role="tablist"> + <li class="nav-item"> + <a class="nav-link active" id="home-tab" data-toggle="tab" href="#home" role="tab" aria-controls="home" aria-selected="true">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link" id="profile-tab" data-toggle="tab" href="#profile" role="tab" aria-controls="profile" aria-selected="false">Profile</a> + </li> + <li class="nav-item"> + <a class="nav-link" id="contact-tab" data-toggle="tab" href="#contact" role="tab" aria-controls="contact" aria-selected="false">Contact</a> + </li> + </ul> + <div class="tab-content" id="myTabContent"> + <div class="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab"> + <p>Raw denim you probably haven't heard of them jean shorts Austin. Nesciunt tofu stumptown aliqua, retro synth master cleanse. Mustache cliche tempor, williamsburg carles vegan helvetica. Reprehenderit butcher retro keffiyeh dreamcatcher synth. Cosby sweater eu banh mi, qui irure terry richardson ex squid. Aliquip placeat salvia cillum iphone. Seitan aliquip quis cardigan american apparel, butcher voluptate nisi qui.</p> + </div> + <div class="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab"> + <p>Food truck fixie locavore, accusamus mcsweeney's marfa nulla single-origin coffee squid. Exercitation +1 labore velit, blog sartorial PBR leggings next level wes anderson artisan four loko farm-to-table craft beer twee. Qui photo booth letterpress, commodo enim craft beer mlkshk aliquip jean shorts ullamco ad vinyl cillum PBR. Homo nostrud organic, assumenda labore aesthetic magna delectus mollit. Keytar helvetica VHS salvia yr, vero magna velit sapiente labore stumptown. Vegan fanny pack odio cillum wes anderson 8-bit, sustainable jean shorts beard ut DIY ethical culpa terry richardson biodiesel. Art party scenester stumptown, tumblr butcher vero sint qui sapiente accusamus tattooed echo park.</p> + </div> + <div class="tab-pane fade" id="contact" role="tabpanel" aria-labelledby="contact-tab"> + <p>Etsy mixtape wayfarers, ethical wes anderson tofu before they sold out mcsweeney's organic lomo retro fanny pack lo-fi farm-to-table readymade. Messenger bag gentrify pitchfork tattooed craft beer, iphone skateboard locavore carles etsy salvia banksy hoodie helvetica. DIY synth PBR banksy irony. Leggings gentrify squid 8-bit cred pitchfork. Williamsburg banh mi whatever gluten-free, carles pitchfork biodiesel fixie etsy retro mlkshk vice blog. Scenester cred you probably haven't heard of them, vinyl craft beer blog stumptown. Pitchfork sustainable tofu synth chambray yr.</p> + </div> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav nav-tabs"</span> <span class="na">id=</span><span class="s">"myTab"</span> <span class="na">role=</span><span class="s">"tablist"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">id=</span><span class="s">"home-tab"</span> <span class="na">data-toggle=</span><span class="s">"tab"</span> <span class="na">href=</span><span class="s">"#home"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"home"</span> <span class="na">aria-selected=</span><span class="s">"true"</span><span class="nt">></span>Home<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">id=</span><span class="s">"profile-tab"</span> <span class="na">data-toggle=</span><span class="s">"tab"</span> <span class="na">href=</span><span class="s">"#profile"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"profile"</span> <span class="na">aria-selected=</span><span class="s">"false"</span><span class="nt">></span>Profile<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">id=</span><span class="s">"contact-tab"</span> <span class="na">data-toggle=</span><span class="s">"tab"</span> <span class="na">href=</span><span class="s">"#contact"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"contact"</span> <span class="na">aria-selected=</span><span class="s">"false"</span><span class="nt">></span>Contact<span class="nt"></a></span> + <span class="nt"></li></span> +<span class="nt"></ul></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-content"</span> <span class="na">id=</span><span class="s">"myTabContent"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade show active"</span> <span class="na">id=</span><span class="s">"home"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"home-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"profile"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"profile-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"contact"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"contact-tab"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>To help fit your needs, this works with <code class="highlighter-rouge"><ul></code>-based markup, as shown above, or with any arbitrary “roll your own†markup. Note that if you’re using <code class="highlighter-rouge"><nav></code>, you shouldn’t add <code class="highlighter-rouge">role="tablist"</code> directly to it, as this would override the element’s native role as a navigation landmark. Instead, switch to an alternative element (in the example below, a simple <code class="highlighter-rouge"><div></code>) and wrap the <code class="highlighter-rouge"><nav></code> around it.</p> + +<div class="bd-example bd-example-tabs"> + <nav> + <div class="nav nav-tabs" id="nav-tab" role="tablist"> + <a class="nav-item nav-link active" id="nav-home-tab" data-toggle="tab" href="#nav-home" role="tab" aria-controls="nav-home" aria-selected="true">Home</a> + <a class="nav-item nav-link" id="nav-profile-tab" data-toggle="tab" href="#nav-profile" role="tab" aria-controls="nav-profile" aria-selected="false">Profile</a> + <a class="nav-item nav-link" id="nav-contact-tab" data-toggle="tab" href="#nav-contact" role="tab" aria-controls="nav-contact" aria-selected="false">Contact</a> + </div> + </nav> + <div class="tab-content" id="nav-tabContent"> + <div class="tab-pane fade show active" id="nav-home" role="tabpanel" aria-labelledby="nav-home-tab"> + <p>Et et consectetur ipsum labore excepteur est proident excepteur ad velit occaecat qui minim occaecat veniam. Fugiat veniam incididunt anim aliqua enim pariatur veniam sunt est aute sit dolor anim. Velit non irure adipisicing aliqua ullamco irure incididunt irure non esse consectetur nostrud minim non minim occaecat. Amet duis do nisi duis veniam non est eiusmod tempor incididunt tempor dolor ipsum in qui sit. Exercitation mollit sit culpa nisi culpa non adipisicing reprehenderit do dolore. Duis reprehenderit occaecat anim ullamco ad duis occaecat ex.</p> + </div> + <div class="tab-pane fade" id="nav-profile" role="tabpanel" aria-labelledby="nav-profile-tab"> + <p>Nulla est ullamco ut irure incididunt nulla Lorem Lorem minim irure officia enim reprehenderit. Magna duis labore cillum sint adipisicing exercitation ipsum. Nostrud ut anim non exercitation velit laboris fugiat cupidatat. Commodo esse dolore fugiat sint velit ullamco magna consequat voluptate minim amet aliquip ipsum aute laboris nisi. Labore labore veniam irure irure ipsum pariatur mollit magna in cupidatat dolore magna irure esse tempor ad mollit. Dolore commodo nulla minim amet ipsum officia consectetur amet ullamco voluptate nisi commodo ea sit eu.</p> + </div> + <div class="tab-pane fade" id="nav-contact" role="tabpanel" aria-labelledby="nav-contact-tab"> + <p>Sint sit mollit irure quis est nostrud cillum consequat Lorem esse do quis dolor esse fugiat sunt do. Eu ex commodo veniam Lorem aliquip laborum occaecat qui Lorem esse mollit dolore anim cupidatat. Deserunt officia id Lorem nostrud aute id commodo elit eiusmod enim irure amet eiusmod qui reprehenderit nostrud tempor. Fugiat ipsum excepteur in aliqua non et quis aliquip ad irure in labore cillum elit enim. Consequat aliquip incididunt ipsum et minim laborum laborum laborum et cillum labore. Deserunt adipisicing cillum id nulla minim nostrud labore eiusmod et amet. Laboris consequat consequat commodo non ut non aliquip reprehenderit nulla anim occaecat. Sunt sit ullamco reprehenderit irure ea ullamco Lorem aute nostrud magna.</p> + </div> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"nav nav-tabs"</span> <span class="na">id=</span><span class="s">"nav-tab"</span> <span class="na">role=</span><span class="s">"tablist"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-item nav-link active"</span> <span class="na">id=</span><span class="s">"nav-home-tab"</span> <span class="na">data-toggle=</span><span class="s">"tab"</span> <span class="na">href=</span><span class="s">"#nav-home"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"nav-home"</span> <span class="na">aria-selected=</span><span class="s">"true"</span><span class="nt">></span>Home<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-item nav-link"</span> <span class="na">id=</span><span class="s">"nav-profile-tab"</span> <span class="na">data-toggle=</span><span class="s">"tab"</span> <span class="na">href=</span><span class="s">"#nav-profile"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"nav-profile"</span> <span class="na">aria-selected=</span><span class="s">"false"</span><span class="nt">></span>Profile<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-item nav-link"</span> <span class="na">id=</span><span class="s">"nav-contact-tab"</span> <span class="na">data-toggle=</span><span class="s">"tab"</span> <span class="na">href=</span><span class="s">"#nav-contact"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"nav-contact"</span> <span class="na">aria-selected=</span><span class="s">"false"</span><span class="nt">></span>Contact<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></nav></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-content"</span> <span class="na">id=</span><span class="s">"nav-tabContent"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade show active"</span> <span class="na">id=</span><span class="s">"nav-home"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"nav-home-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"nav-profile"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"nav-profile-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"nav-contact"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"nav-contact-tab"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>The tabs plugin also works with pills.</p> + +<div class="bd-example bd-example-tabs"> + <ul class="nav nav-pills mb-3" id="pills-tab" role="tablist"> + <li class="nav-item"> + <a class="nav-link active" id="pills-home-tab" data-toggle="pill" href="#pills-home" role="tab" aria-controls="pills-home" aria-selected="true">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link" id="pills-profile-tab" data-toggle="pill" href="#pills-profile" role="tab" aria-controls="pills-profile" aria-selected="false">Profile</a> + </li> + <li class="nav-item"> + <a class="nav-link" id="pills-contact-tab" data-toggle="pill" href="#pills-contact" role="tab" aria-controls="pills-contact" aria-selected="false">Contact</a> + </li> + </ul> + <div class="tab-content" id="pills-tabContent"> + <div class="tab-pane fade show active" id="pills-home" role="tabpanel" aria-labelledby="pills-home-tab"> + <p>Consequat occaecat ullamco amet non eiusmod nostrud dolore irure incididunt est duis anim sunt officia. Fugiat velit proident aliquip nisi incididunt nostrud exercitation proident est nisi. Irure magna elit commodo anim ex veniam culpa eiusmod id nostrud sit cupidatat in veniam ad. Eiusmod consequat eu adipisicing minim anim aliquip cupidatat culpa excepteur quis. Occaecat sit eu exercitation irure Lorem incididunt nostrud.</p> + </div> + <div class="tab-pane fade" id="pills-profile" role="tabpanel" aria-labelledby="pills-profile-tab"> + <p>Ad pariatur nostrud pariatur exercitation ipsum ipsum culpa mollit commodo mollit ex. Aute sunt incididunt amet commodo est sint nisi deserunt pariatur do. Aliquip ex eiusmod voluptate exercitation cillum id incididunt elit sunt. Qui minim sit magna Lorem id et dolore velit Lorem amet exercitation duis deserunt. Anim id labore elit adipisicing ut in id occaecat pariatur ut ullamco ea tempor duis.</p> + </div> + <div class="tab-pane fade" id="pills-contact" role="tabpanel" aria-labelledby="pills-contact-tab"> + <p>Est quis nulla laborum officia ad nisi ex nostrud culpa Lorem excepteur aliquip dolor aliqua irure ex. Nulla ut duis ipsum nisi elit fugiat commodo sunt reprehenderit laborum veniam eu veniam. Eiusmod minim exercitation fugiat irure ex labore incididunt do fugiat commodo aliquip sit id deserunt reprehenderit aliquip nostrud. Amet ex cupidatat excepteur aute veniam incididunt mollit cupidatat esse irure officia elit do ipsum ullamco Lorem. Ullamco ut ad minim do mollit labore ipsum laboris ipsum commodo sunt tempor enim incididunt. Commodo quis sunt dolore aliquip aute tempor irure magna enim minim reprehenderit. Ullamco consectetur culpa veniam sint cillum aliqua incididunt velit ullamco sunt ullamco quis quis commodo voluptate. Mollit nulla nostrud adipisicing aliqua cupidatat aliqua pariatur mollit voluptate voluptate consequat non.</p> + </div> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav nav-pills mb-3"</span> <span class="na">id=</span><span class="s">"pills-tab"</span> <span class="na">role=</span><span class="s">"tablist"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">id=</span><span class="s">"pills-home-tab"</span> <span class="na">data-toggle=</span><span class="s">"pill"</span> <span class="na">href=</span><span class="s">"#pills-home"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"pills-home"</span> <span class="na">aria-selected=</span><span class="s">"true"</span><span class="nt">></span>Home<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">id=</span><span class="s">"pills-profile-tab"</span> <span class="na">data-toggle=</span><span class="s">"pill"</span> <span class="na">href=</span><span class="s">"#pills-profile"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"pills-profile"</span> <span class="na">aria-selected=</span><span class="s">"false"</span><span class="nt">></span>Profile<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">id=</span><span class="s">"pills-contact-tab"</span> <span class="na">data-toggle=</span><span class="s">"pill"</span> <span class="na">href=</span><span class="s">"#pills-contact"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"pills-contact"</span> <span class="na">aria-selected=</span><span class="s">"false"</span><span class="nt">></span>Contact<span class="nt"></a></span> + <span class="nt"></li></span> +<span class="nt"></ul></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-content"</span> <span class="na">id=</span><span class="s">"pills-tabContent"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade show active"</span> <span class="na">id=</span><span class="s">"pills-home"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"pills-home-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"pills-profile"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"pills-profile-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"pills-contact"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"pills-contact-tab"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>And with vertical pills.</p> + +<div class="bd-example bd-example-tabs"> + <div class="row"> + <div class="col-3"> + <div class="nav flex-column nav-pills" id="v-pills-tab" role="tablist" aria-orientation="vertical"> + <a class="nav-link active" id="v-pills-home-tab" data-toggle="pill" href="#v-pills-home" role="tab" aria-controls="v-pills-home" aria-selected="true">Home</a> + <a class="nav-link" id="v-pills-profile-tab" data-toggle="pill" href="#v-pills-profile" role="tab" aria-controls="v-pills-profile" aria-selected="false">Profile</a> + <a class="nav-link" id="v-pills-messages-tab" data-toggle="pill" href="#v-pills-messages" role="tab" aria-controls="v-pills-messages" aria-selected="false">Messages</a> + <a class="nav-link" id="v-pills-settings-tab" data-toggle="pill" href="#v-pills-settings" role="tab" aria-controls="v-pills-settings" aria-selected="false">Settings</a> + </div> + </div> + <div class="col-9"> + <div class="tab-content" id="v-pills-tabContent"> + <div class="tab-pane fade show active" id="v-pills-home" role="tabpanel" aria-labelledby="v-pills-home-tab"> + <p>Cillum ad ut irure tempor velit nostrud occaecat ullamco aliqua anim Lorem sint. Veniam sint duis incididunt do esse magna mollit excepteur laborum qui. Id id reprehenderit sit est eu aliqua occaecat quis et velit excepteur laborum mollit dolore eiusmod. Ipsum dolor in occaecat commodo et voluptate minim reprehenderit mollit pariatur. Deserunt non laborum enim et cillum eu deserunt excepteur ea incididunt minim occaecat.</p> + </div> + <div class="tab-pane fade" id="v-pills-profile" role="tabpanel" aria-labelledby="v-pills-profile-tab"> + <p>Culpa dolor voluptate do laboris laboris irure reprehenderit id incididunt duis pariatur mollit aute magna pariatur consectetur. Eu veniam duis non ut dolor deserunt commodo et minim in quis laboris ipsum velit id veniam. Quis ut consectetur adipisicing officia excepteur non sit. Ut et elit aliquip labore Lorem enim eu. Ullamco mollit occaecat dolore ipsum id officia mollit qui esse anim eiusmod do sint minim consectetur qui.</p> + </div> + <div class="tab-pane fade" id="v-pills-messages" role="tabpanel" aria-labelledby="v-pills-messages-tab"> + <p>Fugiat id quis dolor culpa eiusmod anim velit excepteur proident dolor aute qui magna. Ad proident laboris ullamco esse anim Lorem Lorem veniam quis Lorem irure occaecat velit nostrud magna nulla. Velit et et proident Lorem do ea tempor officia dolor. Reprehenderit Lorem aliquip labore est magna commodo est ea veniam consectetur.</p> + </div> + <div class="tab-pane fade" id="v-pills-settings" role="tabpanel" aria-labelledby="v-pills-settings-tab"> + <p>Eu dolore ea ullamco dolore Lorem id cupidatat excepteur reprehenderit consectetur elit id dolor proident in cupidatat officia. Voluptate excepteur commodo labore nisi cillum duis aliqua do. Aliqua amet qui mollit consectetur nulla mollit velit aliqua veniam nisi id do Lorem deserunt amet. Culpa ullamco sit adipisicing labore officia magna elit nisi in aute tempor commodo eiusmod.</p> + </div> + </div> + </div> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"nav flex-column nav-pills"</span> <span class="na">id=</span><span class="s">"v-pills-tab"</span> <span class="na">role=</span><span class="s">"tablist"</span> <span class="na">aria-orientation=</span><span class="s">"vertical"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">id=</span><span class="s">"v-pills-home-tab"</span> <span class="na">data-toggle=</span><span class="s">"pill"</span> <span class="na">href=</span><span class="s">"#v-pills-home"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"v-pills-home"</span> <span class="na">aria-selected=</span><span class="s">"true"</span><span class="nt">></span>Home<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">id=</span><span class="s">"v-pills-profile-tab"</span> <span class="na">data-toggle=</span><span class="s">"pill"</span> <span class="na">href=</span><span class="s">"#v-pills-profile"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"v-pills-profile"</span> <span class="na">aria-selected=</span><span class="s">"false"</span><span class="nt">></span>Profile<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">id=</span><span class="s">"v-pills-messages-tab"</span> <span class="na">data-toggle=</span><span class="s">"pill"</span> <span class="na">href=</span><span class="s">"#v-pills-messages"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"v-pills-messages"</span> <span class="na">aria-selected=</span><span class="s">"false"</span><span class="nt">></span>Messages<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">id=</span><span class="s">"v-pills-settings-tab"</span> <span class="na">data-toggle=</span><span class="s">"pill"</span> <span class="na">href=</span><span class="s">"#v-pills-settings"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"v-pills-settings"</span> <span class="na">aria-selected=</span><span class="s">"false"</span><span class="nt">></span>Settings<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-9"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-content"</span> <span class="na">id=</span><span class="s">"v-pills-tabContent"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade show active"</span> <span class="na">id=</span><span class="s">"v-pills-home"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"v-pills-home-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"v-pills-profile"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"v-pills-profile-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"v-pills-messages"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"v-pills-messages-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"v-pills-settings"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"v-pills-settings-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="using-data-attributes">Using data attributes</h3> + +<p>You can activate a tab or pill navigation without writing any JavaScript by simply specifying <code class="highlighter-rouge">data-toggle="tab"</code> or <code class="highlighter-rouge">data-toggle="pill"</code> on an element. Use these data attributes on <code class="highlighter-rouge">.nav-tabs</code> or <code class="highlighter-rouge">.nav-pills</code>.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Nav tabs --></span> +<span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav nav-tabs"</span> <span class="na">id=</span><span class="s">"myTab"</span> <span class="na">role=</span><span class="s">"tablist"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">id=</span><span class="s">"home-tab"</span> <span class="na">data-toggle=</span><span class="s">"tab"</span> <span class="na">href=</span><span class="s">"#home"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"home"</span> <span class="na">aria-selected=</span><span class="s">"true"</span><span class="nt">></span>Home<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">id=</span><span class="s">"profile-tab"</span> <span class="na">data-toggle=</span><span class="s">"tab"</span> <span class="na">href=</span><span class="s">"#profile"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"profile"</span> <span class="na">aria-selected=</span><span class="s">"false"</span><span class="nt">></span>Profile<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">id=</span><span class="s">"messages-tab"</span> <span class="na">data-toggle=</span><span class="s">"tab"</span> <span class="na">href=</span><span class="s">"#messages"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"messages"</span> <span class="na">aria-selected=</span><span class="s">"false"</span><span class="nt">></span>Messages<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">id=</span><span class="s">"settings-tab"</span> <span class="na">data-toggle=</span><span class="s">"tab"</span> <span class="na">href=</span><span class="s">"#settings"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"settings"</span> <span class="na">aria-selected=</span><span class="s">"false"</span><span class="nt">></span>Settings<span class="nt"></a></span> + <span class="nt"></li></span> +<span class="nt"></ul></span> + +<span class="c"><!-- Tab panes --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-content"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane active"</span> <span class="na">id=</span><span class="s">"home"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"home-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane"</span> <span class="na">id=</span><span class="s">"profile"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"profile-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane"</span> <span class="na">id=</span><span class="s">"messages"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"messages-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane"</span> <span class="na">id=</span><span class="s">"settings"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"settings-tab"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="via-javascript">Via JavaScript</h3> + +<p>Enable tabbable tabs via JavaScript (each tab needs to be activated individually):</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myTab a'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'click'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span> + <span class="nx">e</span><span class="p">.</span><span class="nx">preventDefault</span><span class="p">()</span> + <span class="nx">$</span><span class="p">(</span><span class="k">this</span><span class="p">).</span><span class="nx">tab</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span> +<span class="p">})</span></code></pre></figure> + +<p>You can activate individual tabs in several ways:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myTab a[href="#profile"]'</span><span class="p">).</span><span class="nx">tab</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span> <span class="c1">// Select tab by name</span> +<span class="nx">$</span><span class="p">(</span><span class="s1">'#myTab li:first-child a'</span><span class="p">).</span><span class="nx">tab</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span> <span class="c1">// Select first tab</span> +<span class="nx">$</span><span class="p">(</span><span class="s1">'#myTab li:last-child a'</span><span class="p">).</span><span class="nx">tab</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span> <span class="c1">// Select last tab</span> +<span class="nx">$</span><span class="p">(</span><span class="s1">'#myTab li:nth-child(3) a'</span><span class="p">).</span><span class="nx">tab</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span> <span class="c1">// Select third tab</span></code></pre></figure> + +<h3 id="fade-effect">Fade effect</h3> + +<p>To make tabs fade in, add <code class="highlighter-rouge">.fade</code> to each <code class="highlighter-rouge">.tab-pane</code>. The first tab pane must also have <code class="highlighter-rouge">.show</code> to make the initial content visible.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-content"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade show active"</span> <span class="na">id=</span><span class="s">"home"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"home-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"profile"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"profile-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"messages"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"messages-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane fade"</span> <span class="na">id=</span><span class="s">"settings"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"settings-tab"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="methods">Methods</h3> + +<div class="bd-callout bd-callout-danger"> +<h4 id="asynchronous-methods-and-transitions">Asynchronous methods and transitions</h4> + +<p>All API methods are <strong>asynchronous</strong> and start a <strong>transition</strong>. They return to the caller as soon as the transition is started but <strong>before it ends</strong>. In addition, a method call on a <strong>transitioning component will be ignored</strong>.</p> + +<p><a href="/docs/4.3/getting-started/javascript/">See our JavaScript documentation for more information</a>.</p> +</div> + +<h4 id="tab">$().tab</h4> + +<p>Activates a tab element and content container. Tab should have either a <code class="highlighter-rouge">data-target</code> or an <code class="highlighter-rouge">href</code> targeting a container node in the DOM.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav nav-tabs"</span> <span class="na">id=</span><span class="s">"myTab"</span> <span class="na">role=</span><span class="s">"tablist"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link active"</span> <span class="na">id=</span><span class="s">"home-tab"</span> <span class="na">data-toggle=</span><span class="s">"tab"</span> <span class="na">href=</span><span class="s">"#home"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"home"</span> <span class="na">aria-selected=</span><span class="s">"true"</span><span class="nt">></span>Home<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">id=</span><span class="s">"profile-tab"</span> <span class="na">data-toggle=</span><span class="s">"tab"</span> <span class="na">href=</span><span class="s">"#profile"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"profile"</span> <span class="na">aria-selected=</span><span class="s">"false"</span><span class="nt">></span>Profile<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">id=</span><span class="s">"messages-tab"</span> <span class="na">data-toggle=</span><span class="s">"tab"</span> <span class="na">href=</span><span class="s">"#messages"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"messages"</span> <span class="na">aria-selected=</span><span class="s">"false"</span><span class="nt">></span>Messages<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">id=</span><span class="s">"settings-tab"</span> <span class="na">data-toggle=</span><span class="s">"tab"</span> <span class="na">href=</span><span class="s">"#settings"</span> <span class="na">role=</span><span class="s">"tab"</span> <span class="na">aria-controls=</span><span class="s">"settings"</span> <span class="na">aria-selected=</span><span class="s">"false"</span><span class="nt">></span>Settings<span class="nt"></a></span> + <span class="nt"></li></span> +<span class="nt"></ul></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-content"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane active"</span> <span class="na">id=</span><span class="s">"home"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"home-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane"</span> <span class="na">id=</span><span class="s">"profile"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"profile-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane"</span> <span class="na">id=</span><span class="s">"messages"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"messages-tab"</span><span class="nt">></span>...<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tab-pane"</span> <span class="na">id=</span><span class="s">"settings"</span> <span class="na">role=</span><span class="s">"tabpanel"</span> <span class="na">aria-labelledby=</span><span class="s">"settings-tab"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><script></span> + <span class="nx">$</span><span class="p">(</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> + <span class="nx">$</span><span class="p">(</span><span class="s1">'#myTab li:last-child a'</span><span class="p">).</span><span class="nx">tab</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span> + <span class="p">})</span> +<span class="nt"></script></span></code></pre></figure> + +<h4 id="tabshow">.tab(‘show’)</h4> + +<p>Selects the given tab and shows its associated pane. Any other tab that was previously selected becomes unselected and its associated pane is hidden. <strong>Returns to the caller before the tab pane has actually been shown</strong> (i.e. before the <code class="highlighter-rouge">shown.bs.tab</code> event occurs).</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#someTab'</span><span class="p">).</span><span class="nx">tab</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span></code></pre></figure> + +<h4 id="tabdispose">.tab(‘dispose’)</h4> + +<p>Destroys an element’s tab.</p> + +<h3 id="events">Events</h3> + +<p>When showing a new tab, the events fire in the following order:</p> + +<ol> + <li><code class="highlighter-rouge">hide.bs.tab</code> (on the current active tab)</li> + <li><code class="highlighter-rouge">show.bs.tab</code> (on the to-be-shown tab)</li> + <li><code class="highlighter-rouge">hidden.bs.tab</code> (on the previous active tab, the same one as for the <code class="highlighter-rouge">hide.bs.tab</code> event)</li> + <li><code class="highlighter-rouge">shown.bs.tab</code> (on the newly-active just-shown tab, the same one as for the <code class="highlighter-rouge">show.bs.tab</code> event)</li> +</ol> + +<p>If no tab was already active, then the <code class="highlighter-rouge">hide.bs.tab</code> and <code class="highlighter-rouge">hidden.bs.tab</code> events will not be fired.</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 150px;">Event Type</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>show.bs.tab</td> + <td>This event fires on tab show, but before the new tab has been shown. Use <code>event.target</code> and <code>event.relatedTarget</code> to target the active tab and the previous active tab (if available) respectively.</td> + </tr> + <tr> + <td>shown.bs.tab</td> + <td>This event fires on tab show after a tab has been shown. Use <code>event.target</code> and <code>event.relatedTarget</code> to target the active tab and the previous active tab (if available) respectively.</td> + </tr> + <tr> + <td>hide.bs.tab</td> + <td>This event fires when a new tab is to be shown (and thus the previous active tab is to be hidden). Use <code>event.target</code> and <code>event.relatedTarget</code> to target the current active tab and the new soon-to-be-active tab, respectively.</td> + </tr> + <tr> + <td>hidden.bs.tab</td> + <td>This event fires after a new tab is shown (and thus the previous active tab is hidden). Use <code>event.target</code> and <code>event.relatedTarget</code> to target the previous active tab and the new active tab, respectively.</td> + </tr> + </tbody> +</table> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'a[data-toggle="tab"]'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'shown.bs.tab'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span> + <span class="nx">e</span><span class="p">.</span><span class="nx">target</span> <span class="c1">// newly activated tab</span> + <span class="nx">e</span><span class="p">.</span><span class="nx">relatedTarget</span> <span class="c1">// previous active tab</span> +<span class="p">})</span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/pagination/index.html b/docs/4.3/components/pagination/index.html new file mode 100644 index 0000000000..f6d8e3fdca --- /dev/null +++ b/docs/4.3/components/pagination/index.html @@ -0,0 +1,758 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Documentation and examples for showing pagination to indicate a series of related content exists across multiple pages."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Pagination · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/pagination/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Pagination"> +<meta name="twitter:description" content="Documentation and examples for showing pagination to indicate a series of related content exists across multiple pages."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/pagination/"> +<meta property="og:title" content="Pagination"> +<meta property="og:description" content="Documentation and examples for showing pagination to indicate a series of related content exists across multiple pages."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#overview">Overview</a></li> +<li class="toc-entry toc-h2"><a href="#working-with-icons">Working with icons</a></li> +<li class="toc-entry toc-h2"><a href="#disabled-and-active-states">Disabled and active states</a></li> +<li class="toc-entry toc-h2"><a href="#sizing">Sizing</a></li> +<li class="toc-entry toc-h2"><a href="#alignment">Alignment</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Pagination</h1> + <p class="bd-lead">Documentation and examples for showing pagination to indicate a series of related content exists across multiple pages.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="overview">Overview</h2> + +<p>We use a large block of connected links for our pagination, making links hard to miss and easily scalable—all while providing large hit areas. Pagination is built with list HTML elements so screen readers can announce the number of available links. Use a wrapping <code class="highlighter-rouge"><nav></code> element to identify it as a navigation section to screen readers and other assistive technologies.</p> + +<p>In addition, as pages likely have more than one such navigation section, it’s advisable to provide a descriptive <code class="highlighter-rouge">aria-label</code> for the <code class="highlighter-rouge"><nav></code> to reflect its purpose. For example, if the pagination component is used to navigate between a set of search results, an appropriate label could be <code class="highlighter-rouge">aria-label="Search results pages"</code>.</p> + +<div class="bd-example"> +<nav aria-label="Page navigation example"> + <ul class="pagination"> + <li class="page-item"><a class="page-link" href="#">Previous</a></li> + <li class="page-item"><a class="page-link" href="#">1</a></li> + <li class="page-item"><a class="page-link" href="#">2</a></li> + <li class="page-item"><a class="page-link" href="#">3</a></li> + <li class="page-item"><a class="page-link" href="#">Next</a></li> + </ul> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">aria-label=</span><span class="s">"Page navigation example"</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"pagination"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Previous<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>1<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>2<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>3<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Next<span class="nt"></a></li></span> + <span class="nt"></ul></span> +<span class="nt"></nav></span></code></pre></figure> + +<h2 id="working-with-icons">Working with icons</h2> + +<p>Looking to use an icon or symbol in place of text for some pagination links? Be sure to provide proper screen reader support with <code class="highlighter-rouge">aria</code> attributes.</p> + +<div class="bd-example"> +<nav aria-label="Page navigation example"> + <ul class="pagination"> + <li class="page-item"> + <a class="page-link" href="#" aria-label="Previous"> + <span aria-hidden="true">«</span> + </a> + </li> + <li class="page-item"><a class="page-link" href="#">1</a></li> + <li class="page-item"><a class="page-link" href="#">2</a></li> + <li class="page-item"><a class="page-link" href="#">3</a></li> + <li class="page-item"> + <a class="page-link" href="#" aria-label="Next"> + <span aria-hidden="true">»</span> + </a> + </li> + </ul> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">aria-label=</span><span class="s">"Page navigation example"</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"pagination"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">aria-label=</span><span class="s">"Previous"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&laquo;</span><span class="nt"></span></span> + <span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>1<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>2<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>3<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">aria-label=</span><span class="s">"Next"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&raquo;</span><span class="nt"></span></span> + <span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"></ul></span> +<span class="nt"></nav></span></code></pre></figure> + +<h2 id="disabled-and-active-states">Disabled and active states</h2> + +<p>Pagination links are customizable for different circumstances. Use <code class="highlighter-rouge">.disabled</code> for links that appear un-clickable and <code class="highlighter-rouge">.active</code> to indicate the current page.</p> + +<p>While the <code class="highlighter-rouge">.disabled</code> class uses <code class="highlighter-rouge">pointer-events: none</code> to <em>try</em> to disable the link functionality of <code class="highlighter-rouge"><a></code>s, that CSS property is not yet standardized and doesn’t account for keyboard navigation. As such, you should always add <code class="highlighter-rouge">tabindex="-1"</code> on disabled links and use custom JavaScript to fully disable their functionality.</p> + +<div class="bd-example"> +<nav aria-label="..."> + <ul class="pagination"> + <li class="page-item disabled"> + <a class="page-link" href="#" tabindex="-1" aria-disabled="true">Previous</a> + </li> + <li class="page-item"><a class="page-link" href="#">1</a></li> + <li class="page-item active" aria-current="page"> + <a class="page-link" href="#">2 <span class="sr-only">(current)</span></a> + </li> + <li class="page-item"><a class="page-link" href="#">3</a></li> + <li class="page-item"> + <a class="page-link" href="#">Next</a> + </li> + </ul> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">aria-label=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"pagination"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item disabled"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Previous<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>1<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item active"</span> <span class="na">aria-current=</span><span class="s">"page"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>2 <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>(current)<span class="nt"></span></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>3<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Next<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"></ul></span> +<span class="nt"></nav></span></code></pre></figure> + +<p>You can optionally swap out active or disabled anchors for <code class="highlighter-rouge"><span></code>, or omit the anchor in the case of the prev/next arrows, to remove click functionality and prevent keyboard focus while retaining intended styles.</p> + +<div class="bd-example"> +<nav aria-label="..."> + <ul class="pagination"> + <li class="page-item disabled"> + <span class="page-link">Previous</span> + </li> + <li class="page-item"><a class="page-link" href="#">1</a></li> + <li class="page-item active" aria-current="page"> + <span class="page-link"> + 2 + <span class="sr-only">(current)</span> + </span> + </li> + <li class="page-item"><a class="page-link" href="#">3</a></li> + <li class="page-item"> + <a class="page-link" href="#">Next</a> + </li> + </ul> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">aria-label=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"pagination"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item disabled"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"page-link"</span><span class="nt">></span>Previous<span class="nt"></span></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>1<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item active"</span> <span class="na">aria-current=</span><span class="s">"page"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"page-link"</span><span class="nt">></span> + 2 + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>(current)<span class="nt"></span></span> + <span class="nt"></span></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>3<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Next<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"></ul></span> +<span class="nt"></nav></span></code></pre></figure> + +<h2 id="sizing">Sizing</h2> + +<p>Fancy larger or smaller pagination? Add <code class="highlighter-rouge">.pagination-lg</code> or <code class="highlighter-rouge">.pagination-sm</code> for additional sizes.</p> + +<div class="bd-example"> +<nav aria-label="..."> + <ul class="pagination pagination-lg"> + <li class="page-item active" aria-current="page"> + <span class="page-link"> + 1 + <span class="sr-only">(current)</span> + </span> + </li> + <li class="page-item"><a class="page-link" href="#">2</a></li> + <li class="page-item"><a class="page-link" href="#">3</a></li> + </ul> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">aria-label=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"pagination pagination-lg"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item active"</span> <span class="na">aria-current=</span><span class="s">"page"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"page-link"</span><span class="nt">></span> + 1 + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>(current)<span class="nt"></span></span> + <span class="nt"></span></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>2<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>3<span class="nt"></a></li></span> + <span class="nt"></ul></span> +<span class="nt"></nav></span></code></pre></figure> + +<div class="bd-example"> +<nav aria-label="..."> + <ul class="pagination pagination-sm"> + <li class="page-item active" aria-current="page"> + <span class="page-link"> + 1 + <span class="sr-only">(current)</span> + </span> + </li> + <li class="page-item"><a class="page-link" href="#">2</a></li> + <li class="page-item"><a class="page-link" href="#">3</a></li> + </ul> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">aria-label=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"pagination pagination-sm"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item active"</span> <span class="na">aria-current=</span><span class="s">"page"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"page-link"</span><span class="nt">></span> + 1 + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>(current)<span class="nt"></span></span> + <span class="nt"></span></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>2<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>3<span class="nt"></a></li></span> + <span class="nt"></ul></span> +<span class="nt"></nav></span></code></pre></figure> + +<h2 id="alignment">Alignment</h2> + +<p>Change the alignment of pagination components with <a href="/docs/4.3/utilities/flex/">flexbox utilities</a>.</p> + +<div class="bd-example"> +<nav aria-label="Page navigation example"> + <ul class="pagination justify-content-center"> + <li class="page-item disabled"> + <a class="page-link" href="#" tabindex="-1" aria-disabled="true">Previous</a> + </li> + <li class="page-item"><a class="page-link" href="#">1</a></li> + <li class="page-item"><a class="page-link" href="#">2</a></li> + <li class="page-item"><a class="page-link" href="#">3</a></li> + <li class="page-item"> + <a class="page-link" href="#">Next</a> + </li> + </ul> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">aria-label=</span><span class="s">"Page navigation example"</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"pagination justify-content-center"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item disabled"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Previous<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>1<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>2<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>3<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Next<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"></ul></span> +<span class="nt"></nav></span></code></pre></figure> + +<div class="bd-example"> +<nav aria-label="Page navigation example"> + <ul class="pagination justify-content-end"> + <li class="page-item disabled"> + <a class="page-link" href="#" tabindex="-1" aria-disabled="true">Previous</a> + </li> + <li class="page-item"><a class="page-link" href="#">1</a></li> + <li class="page-item"><a class="page-link" href="#">2</a></li> + <li class="page-item"><a class="page-link" href="#">3</a></li> + <li class="page-item"> + <a class="page-link" href="#">Next</a> + </li> + </ul> +</nav> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">aria-label=</span><span class="s">"Page navigation example"</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"pagination justify-content-end"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item disabled"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">tabindex=</span><span class="s">"-1"</span> <span class="na">aria-disabled=</span><span class="s">"true"</span><span class="nt">></span>Previous<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>1<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>2<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>3<span class="nt"></a></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"page-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"page-link"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Next<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"></ul></span> +<span class="nt"></nav></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/popovers/index.html b/docs/4.3/components/popovers/index.html new file mode 100644 index 0000000000..e4486e50c4 --- /dev/null +++ b/docs/4.3/components/popovers/index.html @@ -0,0 +1,863 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Documentation and examples for adding Bootstrap popovers, like those found in iOS, to any element on your site."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Popovers · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/popovers/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Popovers"> +<meta name="twitter:description" content="Documentation and examples for adding Bootstrap popovers, like those found in iOS, to any element on your site."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/popovers/"> +<meta property="og:title" content="Popovers"> +<meta property="og:description" content="Documentation and examples for adding Bootstrap popovers, like those found in iOS, to any element on your site."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#overview">Overview</a></li> +<li class="toc-entry toc-h2"><a href="#example-enable-popovers-everywhere">Example: Enable popovers everywhere</a></li> +<li class="toc-entry toc-h2"><a href="#example-using-the-container-option">Example: Using the container option</a></li> +<li class="toc-entry toc-h2"><a href="#example">Example</a> +<ul> +<li class="toc-entry toc-h3"><a href="#four-directions">Four directions</a></li> +<li class="toc-entry toc-h3"><a href="#dismiss-on-next-click">Dismiss on next click</a></li> +<li class="toc-entry toc-h3"><a href="#disabled-elements">Disabled elements</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#usage">Usage</a> +<ul> +<li class="toc-entry toc-h3"><a href="#options">Options</a></li> +<li class="toc-entry toc-h3"><a href="#methods">Methods</a> +<ul> +<li class="toc-entry toc-h4"><a href="#popoveroptions">$().popover(options)</a></li> +<li class="toc-entry toc-h4"><a href="#popovershow">.popover('show')</a></li> +<li class="toc-entry toc-h4"><a href="#popoverhide">.popover('hide')</a></li> +<li class="toc-entry toc-h4"><a href="#popovertoggle">.popover('toggle')</a></li> +<li class="toc-entry toc-h4"><a href="#popoverdispose">.popover('dispose')</a></li> +<li class="toc-entry toc-h4"><a href="#popoverenable">.popover('enable')</a></li> +<li class="toc-entry toc-h4"><a href="#popoverdisable">.popover('disable')</a></li> +<li class="toc-entry toc-h4"><a href="#popovertoggleenabled">.popover('toggleEnabled')</a></li> +<li class="toc-entry toc-h4"><a href="#popoverupdate">.popover('update')</a></li> +</ul> +</li> +<li class="toc-entry toc-h3"><a href="#events">Events</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Popovers</h1> + <p class="bd-lead">Documentation and examples for adding Bootstrap popovers, like those found in iOS, to any element on your site.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="overview">Overview</h2> + +<p>Things to know when using the popover plugin:</p> + +<ul> + <li>Popovers rely on the 3rd party library <a href="https://popper.js.org/">Popper.js</a> for positioning. You must include <a href="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js">popper.min.js</a> before bootstrap.js or use <code class="highlighter-rouge">bootstrap.bundle.min.js</code> / <code class="highlighter-rouge">bootstrap.bundle.js</code> which contains Popper.js in order for popovers to work!</li> + <li>Popovers require the <a href="/docs/4.3/components/tooltips/">tooltip plugin</a> as a dependency.</li> + <li>If you’re building our JavaScript from source, it <a href="/docs/4.3/getting-started/javascript/#util">requires <code class="highlighter-rouge">util.js</code></a>.</li> + <li>Popovers are opt-in for performance reasons, so <strong>you must initialize them yourself</strong>.</li> + <li>Zero-length <code class="highlighter-rouge">title</code> and <code class="highlighter-rouge">content</code> values will never show a popover.</li> + <li>Specify <code class="highlighter-rouge">container: 'body'</code> to avoid rendering problems in more complex components (like our input groups, button groups, etc).</li> + <li>Triggering popovers on hidden elements will not work.</li> + <li>Popovers for <code class="highlighter-rouge">.disabled</code> or <code class="highlighter-rouge">disabled</code> elements must be triggered on a wrapper element.</li> + <li>When triggered from anchors that wrap across multiple lines, popovers will be centered between the anchors’ overall width. Use <code class="highlighter-rouge">.text-nowrap</code> on your <code class="highlighter-rouge"><a></code>s to avoid this behavior.</li> + <li>Popovers must be hidden before their corresponding elements have been removed from the DOM.</li> + <li>Popovers can be triggered thanks to an element inside a shadow DOM.</li> +</ul> + +<div class="bd-callout bd-callout-info"> +<p>The animation effect of this component is dependent on the <code class="highlighter-rouge">prefers-reduced-motion</code> media query. See the <a href="/docs/4.3/getting-started/accessibility/#reduced-motion">reduced motion section of our accessibility documentation</a>.</p> +</div> + +<p>Keep reading to see how popovers work with some examples.</p> + +<h2 id="example-enable-popovers-everywhere">Example: Enable popovers everywhere</h2> + +<p>One way to initialize all popovers on a page would be to select them by their <code class="highlighter-rouge">data-toggle</code> attribute:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> + <span class="nx">$</span><span class="p">(</span><span class="s1">'[data-toggle="popover"]'</span><span class="p">).</span><span class="nx">popover</span><span class="p">()</span> +<span class="p">})</span></code></pre></figure> + +<h2 id="example-using-the-container-option">Example: Using the <code class="highlighter-rouge">container</code> option</h2> + +<p>When you have some styles on a parent element that interfere with a popover, you’ll want to specify a custom <code class="highlighter-rouge">container</code> so that the popover’s HTML appears within that element instead.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> + <span class="nx">$</span><span class="p">(</span><span class="s1">'.example-popover'</span><span class="p">).</span><span class="nx">popover</span><span class="p">({</span> + <span class="na">container</span><span class="p">:</span> <span class="s1">'body'</span> + <span class="p">})</span> +<span class="p">})</span></code></pre></figure> + +<h2 id="example">Example</h2> + +<div class="bd-example"> +<button type="button" class="btn btn-lg btn-danger" data-toggle="popover" title="Popover title" data-content="And here's some amazing content. It's very engaging. Right?">Click to toggle popover</button> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-lg btn-danger"</span> <span class="na">data-toggle=</span><span class="s">"popover"</span> <span class="na">title=</span><span class="s">"Popover title"</span> <span class="na">data-content=</span><span class="s">"And here's some amazing content. It's very engaging. Right?"</span><span class="nt">></span>Click to toggle popover<span class="nt"></button></span></code></pre></figure> + +<h3 id="four-directions">Four directions</h3> + +<p>Four options are available: top, right, bottom, and left aligned.</p> + +<div class="bd-example popover-demo"> + <div class="bd-example-popovers"> + <button type="button" class="btn btn-secondary" data-container="body" data-toggle="popover" data-placement="top" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus."> + Popover on top + </button> + <button type="button" class="btn btn-secondary" data-container="body" data-toggle="popover" data-placement="right" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus."> + Popover on right + </button> + <button type="button" class="btn btn-secondary" data-container="body" data-toggle="popover" data-placement="bottom" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus."> + Popover on bottom + </button> + <button type="button" class="btn btn-secondary" data-container="body" data-toggle="popover" data-placement="left" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus."> + Popover on left + </button> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span> <span class="na">data-container=</span><span class="s">"body"</span> <span class="na">data-toggle=</span><span class="s">"popover"</span> <span class="na">data-placement=</span><span class="s">"top"</span> <span class="na">data-content=</span><span class="s">"Vivamus sagittis lacus vel augue laoreet rutrum faucibus."</span><span class="nt">></span> + Popover on top +<span class="nt"></button></span> + +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span> <span class="na">data-container=</span><span class="s">"body"</span> <span class="na">data-toggle=</span><span class="s">"popover"</span> <span class="na">data-placement=</span><span class="s">"right"</span> <span class="na">data-content=</span><span class="s">"Vivamus sagittis lacus vel augue laoreet rutrum faucibus."</span><span class="nt">></span> + Popover on right +<span class="nt"></button></span> + +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span> <span class="na">data-container=</span><span class="s">"body"</span> <span class="na">data-toggle=</span><span class="s">"popover"</span> <span class="na">data-placement=</span><span class="s">"bottom"</span> <span class="na">data-content=</span><span class="s">"Vivamus +sagittis lacus vel augue laoreet rutrum faucibus."</span><span class="nt">></span> + Popover on bottom +<span class="nt"></button></span> + +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span> <span class="na">data-container=</span><span class="s">"body"</span> <span class="na">data-toggle=</span><span class="s">"popover"</span> <span class="na">data-placement=</span><span class="s">"left"</span> <span class="na">data-content=</span><span class="s">"Vivamus sagittis lacus vel augue laoreet rutrum faucibus."</span><span class="nt">></span> + Popover on left +<span class="nt"></button></span></code></pre></figure> + +<h3 id="dismiss-on-next-click">Dismiss on next click</h3> + +<p>Use the <code class="highlighter-rouge">focus</code> trigger to dismiss popovers on the user’s next click of a different element than the toggle element.</p> + +<div class="bd-callout bd-callout-danger"> +<h4 id="specific-markup-required-for-dismiss-on-next-click">Specific markup required for dismiss-on-next-click</h4> + +<p>For proper cross-browser and cross-platform behavior, you must use the <code class="highlighter-rouge"><a></code> tag, <em>not</em> the <code class="highlighter-rouge"><button></code> tag, and you also must include a <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex"><code class="highlighter-rouge">tabindex</code></a> attribute.</p> +</div> + +<div class="bd-example"> +<a tabindex="0" class="btn btn-lg btn-danger" role="button" data-toggle="popover" data-trigger="focus" title="Dismissible popover" data-content="And here's some amazing content. It's very engaging. Right?">Dismissible popover</a> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><a</span> <span class="na">tabindex=</span><span class="s">"0"</span> <span class="na">class=</span><span class="s">"btn btn-lg btn-danger"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">data-toggle=</span><span class="s">"popover"</span> <span class="na">data-trigger=</span><span class="s">"focus"</span> <span class="na">title=</span><span class="s">"Dismissible popover"</span> <span class="na">data-content=</span><span class="s">"And here's some amazing content. It's very engaging. Right?"</span><span class="nt">></span>Dismissible popover<span class="nt"></a></span></code></pre></figure> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'.popover-dismiss'</span><span class="p">).</span><span class="nx">popover</span><span class="p">({</span> + <span class="na">trigger</span><span class="p">:</span> <span class="s1">'focus'</span> +<span class="p">})</span></code></pre></figure> + +<h3 id="disabled-elements">Disabled elements</h3> + +<p>Elements with the <code class="highlighter-rouge">disabled</code> attribute aren’t interactive, meaning users cannot hover or click them to trigger a popover (or tooltip). As a workaround, you’ll want to trigger the popover from a wrapper <code class="highlighter-rouge"><div></code> or <code class="highlighter-rouge"><span></code> and override the <code class="highlighter-rouge">pointer-events</code> on the disabled element.</p> + +<p>For disabled popover triggers, you may also prefer <code class="highlighter-rouge">data-trigger="hover"</code> so that the popover appears as immediate visual feedback to your users as they may not expect to <em>click</em> on a disabled element.</p> + +<div class="bd-example"> +<span class="d-inline-block" data-toggle="popover" data-content="Disabled popover"> + <button class="btn btn-primary" style="pointer-events: none;" type="button" disabled="">Disabled button</button> +</span> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><span</span> <span class="na">class=</span><span class="s">"d-inline-block"</span> <span class="na">data-toggle=</span><span class="s">"popover"</span> <span class="na">data-content=</span><span class="s">"Disabled popover"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">style=</span><span class="s">"pointer-events: none;"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">disabled</span><span class="nt">></span>Disabled button<span class="nt"></button></span> +<span class="nt"></span></span></code></pre></figure> + +<h2 id="usage">Usage</h2> + +<p>Enable popovers via JavaScript:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#example'</span><span class="p">).</span><span class="nx">popover</span><span class="p">(</span><span class="nx">options</span><span class="p">)</span></code></pre></figure> + +<h3 id="options">Options</h3> + +<p>Options can be passed via data attributes or JavaScript. For data attributes, append the option name to <code class="highlighter-rouge">data-</code>, as in <code class="highlighter-rouge">data-animation=""</code>.</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 100px;">Name</th> + <th style="width: 100px;">Type</th> + <th style="width: 50px;">Default</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>animation</td> + <td>boolean</td> + <td>true</td> + <td>Apply a CSS fade transition to the popover</td> + </tr> + <tr> + <td>container</td> + <td>string | element | false</td> + <td>false</td> + <td> + <p>Appends the popover to a specific element. Example: <code>container: 'body'</code>. This option is particularly useful in that it allows you to position the popover in the flow of the document near the triggering element - which will prevent the popover from floating away from the triggering element during a window resize.</p> + </td> + </tr> + <tr> + <td>content</td> + <td>string | element | function</td> + <td>''</td> + <td> + <p>Default content value if <code>data-content</code> attribute isn't present.</p> + <p>If a function is given, it will be called with its <code>this</code> reference set to the element that the popover is attached to.</p> + </td> + </tr> + <tr> + <td>delay</td> + <td>number | object</td> + <td>0</td> + <td> + <p>Delay showing and hiding the popover (ms) - does not apply to manual trigger type</p> + <p>If a number is supplied, delay is applied to both hide/show</p> + <p>Object structure is: <code>delay: { "show": 500, "hide": 100 }</code></p> + </td> + </tr> + <tr> + <td>html</td> + <td>boolean</td> + <td>false</td> + <td>Insert HTML into the popover. If false, jQuery's <code>text</code> method will be used to insert content into the DOM. Use text if you're worried about XSS attacks.</td> + </tr> + <tr> + <td>placement</td> + <td>string | function</td> + <td>'right'</td> + <td> + <p>How to position the popover - auto | top | bottom | left | right.<br />When <code>auto</code> is specified, it will dynamically reorient the popover.</p> + <p>When a function is used to determine the placement, it is called with the popover DOM node as its first argument and the triggering element DOM node as its second. The <code>this</code> context is set to the popover instance.</p> + </td> + </tr> + <tr> + <td>selector</td> + <td>string | false</td> + <td>false</td> + <td>If a selector is provided, popover objects will be delegated to the specified targets. In practice, this is used to enable dynamic HTML content to have popovers added. See <a href="https://github.com/twbs/bootstrap/issues/4215">this</a> and <a href="https://codepen.io/Johann-S/pen/djJYPb">an informative example</a>.</td> + </tr> + <tr> + <td>template</td> + <td>string</td> + <td><code>'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'</code></td> + <td> + <p>Base HTML to use when creating the popover.</p> + <p>The popover's <code>title</code> will be injected into the <code>.popover-header</code>.</p> + <p>The popover's <code>content</code> will be injected into the <code>.popover-body</code>.</p> + <p><code>.arrow</code> will become the popover's arrow.</p> + <p>The outermost wrapper element should have the <code>.popover</code> class.</p> + </td> + </tr> + <tr> + <td>title</td> + <td>string | element | function</td> + <td>''</td> + <td> + <p>Default title value if <code>title</code> attribute isn't present.</p> + <p>If a function is given, it will be called with its <code>this</code> reference set to the element that the popover is attached to.</p> + </td> + </tr> + <tr> + <td>trigger</td> + <td>string</td> + <td>'click'</td> + <td>How popover is triggered - click | hover | focus | manual. You may pass multiple triggers; separate them with a space. <code>manual</code> cannot be combined with any other trigger.</td> + </tr> + <tr> + <td>offset</td> + <td>number | string</td> + <td>0</td> + <td>Offset of the popover relative to its target. For more information refer to Popper.js's <a href="https://popper.js.org/popper-documentation.html#modifiers..offset.offset">offset docs</a>.</td> + </tr> + <tr> + <td>fallbackPlacement</td> + <td>string | array</td> + <td>'flip'</td> + <td>Allow to specify which position Popper will use on fallback. For more information refer to + Popper.js's <a href="https://popper.js.org/popper-documentation.html#modifiers..flip.behavior">behavior docs</a></td> + </tr> + <tr> + <td>boundary</td> + <td>string | element</td> + <td>'scrollParent'</td> + <td>Overflow constraint boundary of the popover. Accepts the values of <code>'viewport'</code>, <code>'window'</code>, <code>'scrollParent'</code>, or an HTMLElement reference (JavaScript only). For more information refer to Popper.js's <a href="https://popper.js.org/popper-documentation.html#modifiers..preventOverflow.boundariesElement">preventOverflow docs</a>.</td> + </tr> + </tbody> +</table> + +<div class="bd-callout bd-callout-info"> +<h4 id="data-attributes-for-individual-popovers">Data attributes for individual popovers</h4> + +<p>Options for individual popovers can alternatively be specified through the use of data attributes, as explained above.</p> +</div> + +<h3 id="methods">Methods</h3> + +<div class="bd-callout bd-callout-danger"> +<h4 id="asynchronous-methods-and-transitions">Asynchronous methods and transitions</h4> + +<p>All API methods are <strong>asynchronous</strong> and start a <strong>transition</strong>. They return to the caller as soon as the transition is started but <strong>before it ends</strong>. In addition, a method call on a <strong>transitioning component will be ignored</strong>.</p> + +<p><a href="/docs/4.3/getting-started/javascript/">See our JavaScript documentation for more information</a>.</p> +</div> + +<h4 id="popoveroptions"><code class="highlighter-rouge">$().popover(options)</code></h4> + +<p>Initializes popovers for an element collection.</p> + +<h4 id="popovershow"><code class="highlighter-rouge">.popover('show')</code></h4> + +<p>Reveals an element’s popover. <strong>Returns to the caller before the popover has actually been shown</strong> (i.e. before the <code class="highlighter-rouge">shown.bs.popover</code> event occurs). This is considered a “manual†triggering of the popover. Popovers whose both title and content are zero-length are never displayed.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">popover</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span></code></pre></figure> + +<h4 id="popoverhide"><code class="highlighter-rouge">.popover('hide')</code></h4> + +<p>Hides an element’s popover. <strong>Returns to the caller before the popover has actually been hidden</strong> (i.e. before the <code class="highlighter-rouge">hidden.bs.popover</code> event occurs). This is considered a “manual†triggering of the popover.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">popover</span><span class="p">(</span><span class="s1">'hide'</span><span class="p">)</span></code></pre></figure> + +<h4 id="popovertoggle"><code class="highlighter-rouge">.popover('toggle')</code></h4> + +<p>Toggles an element’s popover. <strong>Returns to the caller before the popover has actually been shown or hidden</strong> (i.e. before the <code class="highlighter-rouge">shown.bs.popover</code> or <code class="highlighter-rouge">hidden.bs.popover</code> event occurs). This is considered a “manual†triggering of the popover.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">popover</span><span class="p">(</span><span class="s1">'toggle'</span><span class="p">)</span></code></pre></figure> + +<h4 id="popoverdispose"><code class="highlighter-rouge">.popover('dispose')</code></h4> + +<p>Hides and destroys an element’s popover. Popovers that use delegation (which are created using <a href="#options">the <code class="highlighter-rouge">selector</code> option</a>) cannot be individually destroyed on descendant trigger elements.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">popover</span><span class="p">(</span><span class="s1">'dispose'</span><span class="p">)</span></code></pre></figure> + +<h4 id="popoverenable"><code class="highlighter-rouge">.popover('enable')</code></h4> + +<p>Gives an element’s popover the ability to be shown. <strong>Popovers are enabled by default.</strong></p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">popover</span><span class="p">(</span><span class="s1">'enable'</span><span class="p">)</span></code></pre></figure> + +<h4 id="popoverdisable"><code class="highlighter-rouge">.popover('disable')</code></h4> + +<p>Removes the ability for an element’s popover to be shown. The popover will only be able to be shown if it is re-enabled.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">popover</span><span class="p">(</span><span class="s1">'disable'</span><span class="p">)</span></code></pre></figure> + +<h4 id="popovertoggleenabled"><code class="highlighter-rouge">.popover('toggleEnabled')</code></h4> + +<p>Toggles the ability for an element’s popover to be shown or hidden.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">popover</span><span class="p">(</span><span class="s1">'toggleEnabled'</span><span class="p">)</span></code></pre></figure> + +<h4 id="popoverupdate"><code class="highlighter-rouge">.popover('update')</code></h4> + +<p>Updates the position of an element’s popover.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">popover</span><span class="p">(</span><span class="s1">'update'</span><span class="p">)</span></code></pre></figure> + +<h3 id="events">Events</h3> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 150px;">Event Type</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>show.bs.popover</td> + <td>This event fires immediately when the <code>show</code> instance method is called.</td> + </tr> + <tr> + <td>shown.bs.popover</td> + <td>This event is fired when the popover has been made visible to the user (will wait for CSS transitions to complete).</td> + </tr> + <tr> + <td>hide.bs.popover</td> + <td>This event is fired immediately when the <code>hide</code> instance method has been called.</td> + </tr> + <tr> + <td>hidden.bs.popover</td> + <td>This event is fired when the popover has finished being hidden from the user (will wait for CSS transitions to complete).</td> + </tr> + <tr> + <td>inserted.bs.popover</td> + <td>This event is fired after the <code>show.bs.popover</code> event when the popover template has been added to the DOM.</td> + </tr> + </tbody> +</table> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myPopover'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'hidden.bs.popover'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> + <span class="c1">// do something...</span> +<span class="p">})</span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/progress/index.html b/docs/4.3/components/progress/index.html new file mode 100644 index 0000000000..8c49eba3f2 --- /dev/null +++ b/docs/4.3/components/progress/index.html @@ -0,0 +1,683 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Documentation and examples for using Bootstrap custom progress bars featuring support for stacked bars, animated backgrounds, and text labels."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Progress · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/progress/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Progress"> +<meta name="twitter:description" content="Documentation and examples for using Bootstrap custom progress bars featuring support for stacked bars, animated backgrounds, and text labels."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/progress/"> +<meta property="og:title" content="Progress"> +<meta property="og:description" content="Documentation and examples for using Bootstrap custom progress bars featuring support for stacked bars, animated backgrounds, and text labels."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#how-it-works">How it works</a></li> +<li class="toc-entry toc-h2"><a href="#labels">Labels</a></li> +<li class="toc-entry toc-h2"><a href="#height">Height</a></li> +<li class="toc-entry toc-h2"><a href="#backgrounds">Backgrounds</a></li> +<li class="toc-entry toc-h2"><a href="#multiple-bars">Multiple bars</a></li> +<li class="toc-entry toc-h2"><a href="#striped">Striped</a></li> +<li class="toc-entry toc-h2"><a href="#animated-stripes">Animated stripes</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Progress</h1> + <p class="bd-lead">Documentation and examples for using Bootstrap custom progress bars featuring support for stacked bars, animated backgrounds, and text labels.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="how-it-works">How it works</h2> + +<p>Progress components are built with two HTML elements, some CSS to set the width, and a few attributes. We don’t use <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/progress">the HTML5 <code class="highlighter-rouge"><progress></code> element</a>, ensuring you can stack progress bars, animate them, and place text labels over them.</p> + +<ul> + <li>We use the <code class="highlighter-rouge">.progress</code> as a wrapper to indicate the max value of the progress bar.</li> + <li>We use the inner <code class="highlighter-rouge">.progress-bar</code> to indicate the progress so far.</li> + <li>The <code class="highlighter-rouge">.progress-bar</code> requires an inline style, utility class, or custom CSS to set their width.</li> + <li>The <code class="highlighter-rouge">.progress-bar</code> also requires some <code class="highlighter-rouge">role</code> and <code class="highlighter-rouge">aria</code> attributes to make it accessible.</li> +</ul> + +<p>Put that all together, and you have the following examples.</p> + +<div class="bd-example"> +<div class="progress"> + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"></div> +</div> +<div class="progress"> + <div class="progress-bar" role="progressbar" style="width: 25%" aria-valuenow="25" aria-valuemin="0" aria-valuemax="100"></div> +</div> +<div class="progress"> + <div class="progress-bar" role="progressbar" style="width: 50%" aria-valuenow="50" aria-valuemin="0" aria-valuemax="100"></div> +</div> +<div class="progress"> + <div class="progress-bar" role="progressbar" style="width: 75%" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100"></div> +</div> +<div class="progress"> + <div class="progress-bar" role="progressbar" style="width: 100%" aria-valuenow="100" aria-valuemin="0" aria-valuemax="100"></div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">aria-valuenow=</span><span class="s">"0"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 25%"</span> <span class="na">aria-valuenow=</span><span class="s">"25"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 50%"</span> <span class="na">aria-valuenow=</span><span class="s">"50"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 75%"</span> <span class="na">aria-valuenow=</span><span class="s">"75"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 100%"</span> <span class="na">aria-valuenow=</span><span class="s">"100"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Bootstrap provides a handful of <a href="/docs/4.3/utilities/sizing/">utilities for setting width</a>. Depending on your needs, these may help with quickly configuring progress.</p> + +<div class="bd-example"> +<div class="progress"> + <div class="progress-bar w-75" role="progressbar" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100"></div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar w-75"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">aria-valuenow=</span><span class="s">"75"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="labels">Labels</h2> + +<p>Add labels to your progress bars by placing text within the <code class="highlighter-rouge">.progress-bar</code>.</p> + +<div class="bd-example"> +<div class="progress"> + <div class="progress-bar" role="progressbar" style="width: 25%;" aria-valuenow="25" aria-valuemin="0" aria-valuemax="100">25%</div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 25%;"</span> <span class="na">aria-valuenow=</span><span class="s">"25"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></span>25%<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="height">Height</h2> + +<p>We only set a <code class="highlighter-rouge">height</code> value on the <code class="highlighter-rouge">.progress</code>, so if you change that value the inner <code class="highlighter-rouge">.progress-bar</code> will automatically resize accordingly.</p> + +<div class="bd-example"> +<div class="progress" style="height: 1px;"> + <div class="progress-bar" role="progressbar" style="width: 25%;" aria-valuenow="25" aria-valuemin="0" aria-valuemax="100"></div> +</div> +<div class="progress" style="height: 20px;"> + <div class="progress-bar" role="progressbar" style="width: 25%;" aria-valuenow="25" aria-valuemin="0" aria-valuemax="100"></div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span> <span class="na">style=</span><span class="s">"height: 1px;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 25%;"</span> <span class="na">aria-valuenow=</span><span class="s">"25"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span> <span class="na">style=</span><span class="s">"height: 20px;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 25%;"</span> <span class="na">aria-valuenow=</span><span class="s">"25"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="backgrounds">Backgrounds</h2> + +<p>Use background utility classes to change the appearance of individual progress bars.</p> + +<div class="bd-example"> +<div class="progress"> + <div class="progress-bar bg-success" role="progressbar" style="width: 25%" aria-valuenow="25" aria-valuemin="0" aria-valuemax="100"></div> +</div> +<div class="progress"> + <div class="progress-bar bg-info" role="progressbar" style="width: 50%" aria-valuenow="50" aria-valuemin="0" aria-valuemax="100"></div> +</div> +<div class="progress"> + <div class="progress-bar bg-warning" role="progressbar" style="width: 75%" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100"></div> +</div> +<div class="progress"> + <div class="progress-bar bg-danger" role="progressbar" style="width: 100%" aria-valuenow="100" aria-valuemin="0" aria-valuemax="100"></div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar bg-success"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 25%"</span> <span class="na">aria-valuenow=</span><span class="s">"25"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar bg-info"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 50%"</span> <span class="na">aria-valuenow=</span><span class="s">"50"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar bg-warning"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 75%"</span> <span class="na">aria-valuenow=</span><span class="s">"75"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar bg-danger"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 100%"</span> <span class="na">aria-valuenow=</span><span class="s">"100"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="multiple-bars">Multiple bars</h2> + +<p>Include multiple progress bars in a progress component if you need.</p> + +<div class="bd-example"> +<div class="progress"> + <div class="progress-bar" role="progressbar" style="width: 15%" aria-valuenow="15" aria-valuemin="0" aria-valuemax="100"></div> + <div class="progress-bar bg-success" role="progressbar" style="width: 30%" aria-valuenow="30" aria-valuemin="0" aria-valuemax="100"></div> + <div class="progress-bar bg-info" role="progressbar" style="width: 20%" aria-valuenow="20" aria-valuemin="0" aria-valuemax="100"></div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 15%"</span> <span class="na">aria-valuenow=</span><span class="s">"15"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar bg-success"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 30%"</span> <span class="na">aria-valuenow=</span><span class="s">"30"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar bg-info"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 20%"</span> <span class="na">aria-valuenow=</span><span class="s">"20"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="striped">Striped</h2> + +<p>Add <code class="highlighter-rouge">.progress-bar-striped</code> to any <code class="highlighter-rouge">.progress-bar</code> to apply a stripe via CSS gradient over the progress bar’s background color.</p> + +<div class="bd-example"> +<div class="progress"> + <div class="progress-bar progress-bar-striped" role="progressbar" style="width: 10%" aria-valuenow="10" aria-valuemin="0" aria-valuemax="100"></div> +</div> +<div class="progress"> + <div class="progress-bar progress-bar-striped bg-success" role="progressbar" style="width: 25%" aria-valuenow="25" aria-valuemin="0" aria-valuemax="100"></div> +</div> +<div class="progress"> + <div class="progress-bar progress-bar-striped bg-info" role="progressbar" style="width: 50%" aria-valuenow="50" aria-valuemin="0" aria-valuemax="100"></div> +</div> +<div class="progress"> + <div class="progress-bar progress-bar-striped bg-warning" role="progressbar" style="width: 75%" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100"></div> +</div> +<div class="progress"> + <div class="progress-bar progress-bar-striped bg-danger" role="progressbar" style="width: 100%" aria-valuenow="100" aria-valuemin="0" aria-valuemax="100"></div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar progress-bar-striped"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 10%"</span> <span class="na">aria-valuenow=</span><span class="s">"10"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar progress-bar-striped bg-success"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 25%"</span> <span class="na">aria-valuenow=</span><span class="s">"25"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar progress-bar-striped bg-info"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 50%"</span> <span class="na">aria-valuenow=</span><span class="s">"50"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar progress-bar-striped bg-warning"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 75%"</span> <span class="na">aria-valuenow=</span><span class="s">"75"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar progress-bar-striped bg-danger"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">style=</span><span class="s">"width: 100%"</span> <span class="na">aria-valuenow=</span><span class="s">"100"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span><span class="nt">></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="animated-stripes">Animated stripes</h2> + +<p>The striped gradient can also be animated. Add <code class="highlighter-rouge">.progress-bar-animated</code> to <code class="highlighter-rouge">.progress-bar</code> to animate the stripes right to left via CSS3 animations.</p> + +<div class="bd-example"> + <div class="progress"> + <div class="progress-bar progress-bar-striped" role="progressbar" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100" style="width: 75%"></div> + </div> + <button type="button" class="btn btn-secondary bd-toggle-animated-progress" data-toggle="button" aria-pressed="false" autocomplete="off"> + Toggle animation + </button> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"progress-bar progress-bar-striped progress-bar-animated"</span> <span class="na">role=</span><span class="s">"progressbar"</span> <span class="na">aria-valuenow=</span><span class="s">"75"</span> <span class="na">aria-valuemin=</span><span class="s">"0"</span> <span class="na">aria-valuemax=</span><span class="s">"100"</span> <span class="na">style=</span><span class="s">"width: 75%"</span><span class="nt">></div></span> +<span class="nt"></div></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/scrollspy/index.html b/docs/4.3/components/scrollspy/index.html new file mode 100644 index 0000000000..35aad920e1 --- /dev/null +++ b/docs/4.3/components/scrollspy/index.html @@ -0,0 +1,824 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Automatically update Bootstrap navigation or list group components based on scroll position to indicate which link is currently active in the viewport."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Scrollspy · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/scrollspy/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Scrollspy"> +<meta name="twitter:description" content="Automatically update Bootstrap navigation or list group components based on scroll position to indicate which link is currently active in the viewport."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/scrollspy/"> +<meta property="og:title" content="Scrollspy"> +<meta property="og:description" content="Automatically update Bootstrap navigation or list group components based on scroll position to indicate which link is currently active in the viewport."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#how-it-works">How it works</a></li> +<li class="toc-entry toc-h2"><a href="#example-in-navbar">Example in navbar</a></li> +<li class="toc-entry toc-h2"><a href="#example-with-nested-nav">Example with nested nav</a></li> +<li class="toc-entry toc-h2"><a href="#example-with-list-group">Example with list-group</a></li> +<li class="toc-entry toc-h2"><a href="#usage">Usage</a> +<ul> +<li class="toc-entry toc-h3"><a href="#via-data-attributes">Via data attributes</a></li> +<li class="toc-entry toc-h3"><a href="#via-javascript">Via JavaScript</a></li> +<li class="toc-entry toc-h3"><a href="#methods">Methods</a> +<ul> +<li class="toc-entry toc-h4"><a href="#scrollspyrefresh">.scrollspy('refresh')</a></li> +<li class="toc-entry toc-h4"><a href="#scrollspydispose">.scrollspy('dispose')</a></li> +</ul> +</li> +<li class="toc-entry toc-h3"><a href="#options">Options</a></li> +<li class="toc-entry toc-h3"><a href="#events">Events</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Scrollspy</h1> + <p class="bd-lead">Automatically update Bootstrap navigation or list group components based on scroll position to indicate which link is currently active in the viewport.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="how-it-works">How it works</h2> + +<p>Scrollspy has a few requirements to function properly:</p> + +<ul> + <li>If you’re building our JavaScript from source, it <a href="/docs/4.3/getting-started/javascript/#util">requires <code class="highlighter-rouge">util.js</code></a>.</li> + <li>It must be used on a Bootstrap <a href="/docs/4.3/components/navs/">nav component</a> or <a href="/docs/4.3/components/list-group/">list group</a>.</li> + <li>Scrollspy requires <code class="highlighter-rouge">position: relative;</code> on the element you’re spying on, usually the <code class="highlighter-rouge"><body></code>.</li> + <li>When spying on elements other than the <code class="highlighter-rouge"><body></code>, be sure to have a <code class="highlighter-rouge">height</code> set and <code class="highlighter-rouge">overflow-y: scroll;</code> applied.</li> + <li>Anchors (<code class="highlighter-rouge"><a></code>) are required and must point to an element with that <code class="highlighter-rouge">id</code>.</li> +</ul> + +<p>When successfully implemented, your nav or list group will update accordingly, moving the <code class="highlighter-rouge">.active</code> class from one item to the next based on their associated targets.</p> + +<h2 id="example-in-navbar">Example in navbar</h2> + +<p>Scroll the area below the navbar and watch the active class change. The dropdown items will be highlighted as well.</p> + +<div class="bd-example"> + <nav id="navbar-example2" class="navbar navbar-light bg-light"> + <a class="navbar-brand" href="#">Navbar</a> + <ul class="nav nav-pills"> + <li class="nav-item"> + <a class="nav-link" href="#fat">@fat</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#mdo">@mdo</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button" aria-haspopup="true" aria-expanded="false">Dropdown</a> + <div class="dropdown-menu"> + <a class="dropdown-item" href="#one">one</a> + <a class="dropdown-item" href="#two">two</a> + <div role="separator" class="dropdown-divider"></div> + <a class="dropdown-item" href="#three">three</a> + </div> + </li> + </ul> + </nav> + <div data-spy="scroll" data-target="#navbar-example2" data-offset="0" class="scrollspy-example"> + <h4 id="fat">@fat</h4> + <p>Ad leggings keytar, brunch id art party dolor labore. Pitchfork yr enim lo-fi before they sold out qui. Tumblr farm-to-table bicycle rights whatever. Anim keffiyeh carles cardigan. Velit seitan mcsweeney's photo booth 3 wolf moon irure. Cosby sweater lomo jean shorts, williamsburg hoodie minim qui you probably haven't heard of them et cardigan trust fund culpa biodiesel wes anderson aesthetic. Nihil tattooed accusamus, cred irony biodiesel keffiyeh artisan ullamco consequat.</p> + <h4 id="mdo">@mdo</h4> + <p>Veniam marfa mustache skateboard, adipisicing fugiat velit pitchfork beard. Freegan beard aliqua cupidatat mcsweeney's vero. Cupidatat four loko nisi, ea helvetica nulla carles. Tattooed cosby sweater food truck, mcsweeney's quis non freegan vinyl. Lo-fi wes anderson +1 sartorial. Carles non aesthetic exercitation quis gentrify. Brooklyn adipisicing craft beer vice keytar deserunt.</p> + <h4 id="one">one</h4> + <p>Occaecat commodo aliqua delectus. Fap craft beer deserunt skateboard ea. Lomo bicycle rights adipisicing banh mi, velit ea sunt next level locavore single-origin coffee in magna veniam. High life id vinyl, echo park consequat quis aliquip banh mi pitchfork. Vero VHS est adipisicing. Consectetur nisi DIY minim messenger bag. Cred ex in, sustainable delectus consectetur fanny pack iphone.</p> + <h4 id="two">two</h4> + <p>In incididunt echo park, officia deserunt mcsweeney's proident master cleanse thundercats sapiente veniam. Excepteur VHS elit, proident shoreditch +1 biodiesel laborum craft beer. Single-origin coffee wayfarers irure four loko, cupidatat terry richardson master cleanse. Assumenda you probably haven't heard of them art party fanny pack, tattooed nulla cardigan tempor ad. Proident wolf nesciunt sartorial keffiyeh eu banh mi sustainable. Elit wolf voluptate, lo-fi ea portland before they sold out four loko. Locavore enim nostrud mlkshk brooklyn nesciunt.</p> + <h4 id="three">three</h4> + <p>Ad leggings keytar, brunch id art party dolor labore. Pitchfork yr enim lo-fi before they sold out qui. Tumblr farm-to-table bicycle rights whatever. Anim keffiyeh carles cardigan. Velit seitan mcsweeney's photo booth 3 wolf moon irure. Cosby sweater lomo jean shorts, williamsburg hoodie minim qui you probably haven't heard of them et cardigan trust fund culpa biodiesel wes anderson aesthetic. Nihil tattooed accusamus, cred irony biodiesel keffiyeh artisan ullamco consequat.</p> + <p>Keytar twee blog, culpa messenger bag marfa whatever delectus food truck. Sapiente synth id assumenda. Locavore sed helvetica cliche irony, thundercats you probably haven't heard of them consequat hoodie gluten-free lo-fi fap aliquip. Labore elit placeat before they sold out, terry richardson proident brunch nesciunt quis cosby sweater pariatur keffiyeh ut helvetica artisan. Cardigan craft beer seitan readymade velit. VHS chambray laboris tempor veniam. Anim mollit minim commodo ullamco thundercats. + </p> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">id=</span><span class="s">"navbar-example2"</span> <span class="na">class=</span><span class="s">"navbar navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Navbar<span class="nt"></a></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav nav-pills"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#fat"</span><span class="nt">></span>@fat<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#mdo"</span><span class="nt">></span>@mdo<span class="nt"></a></span> + <span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"nav-item dropdown"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link dropdown-toggle"</span> <span class="na">data-toggle=</span><span class="s">"dropdown"</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">role=</span><span class="s">"button"</span> <span class="na">aria-haspopup=</span><span class="s">"true"</span> <span class="na">aria-expanded=</span><span class="s">"false"</span><span class="nt">></span>Dropdown<span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"dropdown-menu"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#one"</span><span class="nt">></span>one<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#two"</span><span class="nt">></span>two<span class="nt"></a></span> + <span class="nt"><div</span> <span class="na">role=</span><span class="s">"separator"</span> <span class="na">class=</span><span class="s">"dropdown-divider"</span><span class="nt">></div></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"dropdown-item"</span> <span class="na">href=</span><span class="s">"#three"</span><span class="nt">></span>three<span class="nt"></a></span> + <span class="nt"></div></span> + <span class="nt"></li></span> + <span class="nt"></ul></span> +<span class="nt"></nav></span> +<span class="nt"><div</span> <span class="na">data-spy=</span><span class="s">"scroll"</span> <span class="na">data-target=</span><span class="s">"#navbar-example2"</span> <span class="na">data-offset=</span><span class="s">"0"</span><span class="nt">></span> + <span class="nt"><h4</span> <span class="na">id=</span><span class="s">"fat"</span><span class="nt">></span>@fat<span class="nt"></h4></span> + <span class="nt"><p></span>...<span class="nt"></p></span> + <span class="nt"><h4</span> <span class="na">id=</span><span class="s">"mdo"</span><span class="nt">></span>@mdo<span class="nt"></h4></span> + <span class="nt"><p></span>...<span class="nt"></p></span> + <span class="nt"><h4</span> <span class="na">id=</span><span class="s">"one"</span><span class="nt">></span>one<span class="nt"></h4></span> + <span class="nt"><p></span>...<span class="nt"></p></span> + <span class="nt"><h4</span> <span class="na">id=</span><span class="s">"two"</span><span class="nt">></span>two<span class="nt"></h4></span> + <span class="nt"><p></span>...<span class="nt"></p></span> + <span class="nt"><h4</span> <span class="na">id=</span><span class="s">"three"</span><span class="nt">></span>three<span class="nt"></h4></span> + <span class="nt"><p></span>...<span class="nt"></p></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="example-with-nested-nav">Example with nested nav</h2> + +<p>Scrollspy also works with nested <code class="highlighter-rouge">.nav</code>s. If a nested <code class="highlighter-rouge">.nav</code> is <code class="highlighter-rouge">.active</code>, its parents will also be <code class="highlighter-rouge">.active</code>. Scroll the area next to the navbar and watch the active class change.</p> + +<div class="bd-example"> + <div class="row"> + <div class="col-4"> + <nav id="navbar-example3" class="navbar navbar-light bg-light flex-column"> + <a class="navbar-brand" href="#">Navbar</a> + <nav class="nav nav-pills flex-column"> + <a class="nav-link" href="#item-1">Item 1</a> + <nav class="nav nav-pills flex-column"> + <a class="nav-link ml-3 my-1" href="#item-1-1">Item 1-1</a> + <a class="nav-link ml-3 my-1" href="#item-1-2">Item 1-2</a> + </nav> + <a class="nav-link" href="#item-2">Item 2</a> + <a class="nav-link" href="#item-3">Item 3</a> + <nav class="nav nav-pills flex-column"> + <a class="nav-link ml-3 my-1" href="#item-3-1">Item 3-1</a> + <a class="nav-link ml-3 my-1" href="#item-3-2">Item 3-2</a> + </nav> + </nav> + </nav> + </div> + <div class="col-8"> + <div data-spy="scroll" data-target="#navbar-example3" data-offset="0" class="scrollspy-example-2"> + <h4 id="item-1">Item 1</h4> + <p>Ex consequat commodo adipisicing exercitation aute excepteur occaecat ullamco duis aliqua id magna ullamco eu. Do aute ipsum ipsum ullamco cillum consectetur ut et aute consectetur labore. Fugiat laborum incididunt tempor eu consequat enim dolore proident. Qui laborum do non excepteur nulla magna eiusmod consectetur in. Aliqua et aliqua officia quis et incididunt voluptate non anim reprehenderit adipisicing dolore ut consequat deserunt mollit dolore. Aliquip nulla enim veniam non fugiat id cupidatat nulla elit cupidatat commodo velit ut eiusmod cupidatat elit dolore.</p> + <h5 id="item-1-1">Item 1-1</h5> + <p>Amet tempor mollit aliquip pariatur excepteur commodo do ea cillum commodo Lorem et occaecat elit qui et. Aliquip labore ex ex esse voluptate occaecat Lorem ullamco deserunt. Aliqua cillum excepteur irure consequat id quis ea. Sit proident ullamco aute magna pariatur nostrud labore. Reprehenderit aliqua commodo eiusmod aliquip est do duis amet proident magna consectetur consequat eu commodo fugiat non quis. Enim aliquip exercitation ullamco adipisicing voluptate excepteur minim exercitation minim minim commodo adipisicing exercitation officia nisi adipisicing. Anim id duis qui consequat labore adipisicing sint dolor elit cillum anim et fugiat.</p> + <h5 id="item-1-2">Item 1-2</h5> + <p>Cillum nisi deserunt magna eiusmod qui eiusmod velit voluptate pariatur laborum sunt enim. Irure laboris mollit consequat incididunt sint et culpa culpa incididunt adipisicing magna magna occaecat. Nulla ipsum cillum eiusmod sint elit excepteur ea labore enim consectetur in labore anim. Proident ullamco ipsum esse elit ut Lorem eiusmod dolor et eiusmod. Anim occaecat nulla in non consequat eiusmod velit incididunt.</p> + <h4 id="item-2">Item 2</h4> + <p>Quis magna Lorem anim amet ipsum do mollit sit cillum voluptate ex nulla tempor. Laborum consequat non elit enim exercitation cillum aliqua consequat id aliqua. Esse ex consectetur mollit voluptate est in duis laboris ad sit ipsum anim Lorem. Incididunt veniam velit elit elit veniam Lorem aliqua quis ullamco deserunt sit enim elit aliqua esse irure. Laborum nisi sit est tempor laborum mollit labore officia laborum excepteur commodo non commodo dolor excepteur commodo. Ipsum fugiat ex est consectetur ipsum commodo tempor sunt in proident.</p> + <h4 id="item-3">Item 3</h4> + <p>Quis anim sit do amet fugiat dolor velit sit ea ea do reprehenderit culpa duis. Nostrud aliqua ipsum fugiat minim proident occaecat excepteur aliquip culpa aute tempor reprehenderit. Deserunt tempor mollit elit ex pariatur dolore velit fugiat mollit culpa irure ullamco est ex ullamco excepteur.</p> + <h5 id="item-3-1">Item 3-1</h5> + <p>Deserunt quis elit Lorem eiusmod amet enim enim amet minim Lorem proident nostrud. Ea id dolore anim exercitation aute fugiat labore voluptate cillum do laboris labore. Ex velit exercitation nisi enim labore reprehenderit labore nostrud ut ut. Esse officia sunt duis aliquip ullamco tempor eiusmod deserunt irure nostrud irure. Ullamco proident veniam laboris ea consectetur magna sunt ex exercitation aliquip minim enim culpa occaecat exercitation. Est tempor excepteur aliquip laborum consequat do deserunt laborum esse eiusmod irure proident ipsum esse qui.</p> + <h5 id="item-3-2">Item 3-2</h5> + <p>Labore sit culpa commodo elit adipisicing sit aliquip elit proident voluptate minim mollit nostrud aute reprehenderit do. Mollit excepteur eu Lorem ipsum anim commodo sint labore Lorem in exercitation velit incididunt. Occaecat consectetur nisi in occaecat proident minim enim sunt reprehenderit exercitation cupidatat et do officia. Aliquip consequat ad labore labore mollit ut amet. Sit pariatur tempor proident in veniam culpa aliqua excepteur elit magna fugiat eiusmod amet officia.</p> + </div> + </div> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><nav</span> <span class="na">id=</span><span class="s">"navbar-example3"</span> <span class="na">class=</span><span class="s">"navbar navbar-light bg-light"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"navbar-brand"</span> <span class="na">href=</span><span class="s">"#"</span><span class="nt">></span>Navbar<span class="nt"></a></span> + <span class="nt"><nav</span> <span class="na">class=</span><span class="s">"nav nav-pills flex-column"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#item-1"</span><span class="nt">></span>Item 1<span class="nt"></a></span> + <span class="nt"><nav</span> <span class="na">class=</span><span class="s">"nav nav-pills flex-column"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link ml-3 my-1"</span> <span class="na">href=</span><span class="s">"#item-1-1"</span><span class="nt">></span>Item 1-1<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link ml-3 my-1"</span> <span class="na">href=</span><span class="s">"#item-1-2"</span><span class="nt">></span>Item 1-2<span class="nt"></a></span> + <span class="nt"></nav></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#item-2"</span><span class="nt">></span>Item 2<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link"</span> <span class="na">href=</span><span class="s">"#item-3"</span><span class="nt">></span>Item 3<span class="nt"></a></span> + <span class="nt"><nav</span> <span class="na">class=</span><span class="s">"nav nav-pills flex-column"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link ml-3 my-1"</span> <span class="na">href=</span><span class="s">"#item-3-1"</span><span class="nt">></span>Item 3-1<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"nav-link ml-3 my-1"</span> <span class="na">href=</span><span class="s">"#item-3-2"</span><span class="nt">></span>Item 3-2<span class="nt"></a></span> + <span class="nt"></nav></span> + <span class="nt"></nav></span> +<span class="nt"></nav></span> + +<span class="nt"><div</span> <span class="na">data-spy=</span><span class="s">"scroll"</span> <span class="na">data-target=</span><span class="s">"#navbar-example3"</span> <span class="na">data-offset=</span><span class="s">"0"</span><span class="nt">></span> + <span class="nt"><h4</span> <span class="na">id=</span><span class="s">"item-1"</span><span class="nt">></span>Item 1<span class="nt"></h4></span> + <span class="nt"><p></span>...<span class="nt"></p></span> + <span class="nt"><h5</span> <span class="na">id=</span><span class="s">"item-1-1"</span><span class="nt">></span>Item 1-1<span class="nt"></h5></span> + <span class="nt"><p></span>...<span class="nt"></p></span> + <span class="nt"><h5</span> <span class="na">id=</span><span class="s">"item-1-2"</span><span class="nt">></span>Item 1-2<span class="nt"></h5></span> + <span class="nt"><p></span>...<span class="nt"></p></span> + <span class="nt"><h4</span> <span class="na">id=</span><span class="s">"item-2"</span><span class="nt">></span>Item 2<span class="nt"></h4></span> + <span class="nt"><p></span>...<span class="nt"></p></span> + <span class="nt"><h4</span> <span class="na">id=</span><span class="s">"item-3"</span><span class="nt">></span>Item 3<span class="nt"></h4></span> + <span class="nt"><p></span>...<span class="nt"></p></span> + <span class="nt"><h5</span> <span class="na">id=</span><span class="s">"item-3-1"</span><span class="nt">></span>Item 3-1<span class="nt"></h5></span> + <span class="nt"><p></span>...<span class="nt"></p></span> + <span class="nt"><h5</span> <span class="na">id=</span><span class="s">"item-3-2"</span><span class="nt">></span>Item 3-2<span class="nt"></h5></span> + <span class="nt"><p></span>...<span class="nt"></p></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="example-with-list-group">Example with list-group</h2> + +<p>Scrollspy also works with <code class="highlighter-rouge">.list-group</code>s. Scroll the area next to the list group and watch the active class change.</p> + +<div class="bd-example"> + <div class="row"> + <div class="col-4"> + <div id="list-example" class="list-group"> + <a class="list-group-item list-group-item-action" href="#list-item-1">Item 1</a> + <a class="list-group-item list-group-item-action" href="#list-item-2">Item 2</a> + <a class="list-group-item list-group-item-action" href="#list-item-3">Item 3</a> + <a class="list-group-item list-group-item-action" href="#list-item-4">Item 4</a> + </div> + </div> + <div class="col-8"> + <div data-spy="scroll" data-target="#list-example" data-offset="0" class="scrollspy-example"> + <h4 id="list-item-1">Item 1</h4> + <p>Ex consequat commodo adipisicing exercitation aute excepteur occaecat ullamco duis aliqua id magna ullamco eu. Do aute ipsum ipsum ullamco cillum consectetur ut et aute consectetur labore. Fugiat laborum incididunt tempor eu consequat enim dolore proident. Qui laborum do non excepteur nulla magna eiusmod consectetur in. Aliqua et aliqua officia quis et incididunt voluptate non anim reprehenderit adipisicing dolore ut consequat deserunt mollit dolore. Aliquip nulla enim veniam non fugiat id cupidatat nulla elit cupidatat commodo velit ut eiusmod cupidatat elit dolore.</p> + <h4 id="list-item-2">Item 2</h4> + <p>Quis magna Lorem anim amet ipsum do mollit sit cillum voluptate ex nulla tempor. Laborum consequat non elit enim exercitation cillum aliqua consequat id aliqua. Esse ex consectetur mollit voluptate est in duis laboris ad sit ipsum anim Lorem. Incididunt veniam velit elit elit veniam Lorem aliqua quis ullamco deserunt sit enim elit aliqua esse irure. Laborum nisi sit est tempor laborum mollit labore officia laborum excepteur commodo non commodo dolor excepteur commodo. Ipsum fugiat ex est consectetur ipsum commodo tempor sunt in proident.</p> + <h4 id="list-item-3">Item 3</h4> + <p>Quis anim sit do amet fugiat dolor velit sit ea ea do reprehenderit culpa duis. Nostrud aliqua ipsum fugiat minim proident occaecat excepteur aliquip culpa aute tempor reprehenderit. Deserunt tempor mollit elit ex pariatur dolore velit fugiat mollit culpa irure ullamco est ex ullamco excepteur.</p> + <h4 id="list-item-4">Item 4</h4> + <p>Quis anim sit do amet fugiat dolor velit sit ea ea do reprehenderit culpa duis. Nostrud aliqua ipsum fugiat minim proident occaecat excepteur aliquip culpa aute tempor reprehenderit. Deserunt tempor mollit elit ex pariatur dolore velit fugiat mollit culpa irure ullamco est ex ullamco excepteur.</p> + </div> + </div> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">id=</span><span class="s">"list-example"</span> <span class="na">class=</span><span class="s">"list-group"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span> <span class="na">href=</span><span class="s">"#list-item-1"</span><span class="nt">></span>Item 1<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span> <span class="na">href=</span><span class="s">"#list-item-2"</span><span class="nt">></span>Item 2<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span> <span class="na">href=</span><span class="s">"#list-item-3"</span><span class="nt">></span>Item 3<span class="nt"></a></span> + <span class="nt"><a</span> <span class="na">class=</span><span class="s">"list-group-item list-group-item-action"</span> <span class="na">href=</span><span class="s">"#list-item-4"</span><span class="nt">></span>Item 4<span class="nt"></a></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">data-spy=</span><span class="s">"scroll"</span> <span class="na">data-target=</span><span class="s">"#list-example"</span> <span class="na">data-offset=</span><span class="s">"0"</span> <span class="na">class=</span><span class="s">"scrollspy-example"</span><span class="nt">></span> + <span class="nt"><h4</span> <span class="na">id=</span><span class="s">"list-item-1"</span><span class="nt">></span>Item 1<span class="nt"></h4></span> + <span class="nt"><p></span>...<span class="nt"></p></span> + <span class="nt"><h4</span> <span class="na">id=</span><span class="s">"list-item-2"</span><span class="nt">></span>Item 2<span class="nt"></h4></span> + <span class="nt"><p></span>...<span class="nt"></p></span> + <span class="nt"><h4</span> <span class="na">id=</span><span class="s">"list-item-3"</span><span class="nt">></span>Item 3<span class="nt"></h4></span> + <span class="nt"><p></span>...<span class="nt"></p></span> + <span class="nt"><h4</span> <span class="na">id=</span><span class="s">"list-item-4"</span><span class="nt">></span>Item 4<span class="nt"></h4></span> + <span class="nt"><p></span>...<span class="nt"></p></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="usage">Usage</h2> + +<h3 id="via-data-attributes">Via data attributes</h3> + +<p>To easily add scrollspy behavior to your topbar navigation, add <code class="highlighter-rouge">data-spy="scroll"</code> to the element you want to spy on (most typically this would be the <code class="highlighter-rouge"><body></code>). Then add the <code class="highlighter-rouge">data-target</code> attribute with the ID or class of the parent element of any Bootstrap <code class="highlighter-rouge">.nav</code> component.</p> + +<figure class="highlight"><pre><code class="language-css" data-lang="css"><span class="nt">body</span> <span class="p">{</span> + <span class="nl">position</span><span class="p">:</span> <span class="nb">relative</span><span class="p">;</span> +<span class="p">}</span></code></pre></figure> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><body</span> <span class="na">data-spy=</span><span class="s">"scroll"</span> <span class="na">data-target=</span><span class="s">"#navbar-example"</span><span class="nt">></span> + ... + <span class="nt"><div</span> <span class="na">id=</span><span class="s">"navbar-example"</span><span class="nt">></span> + <span class="nt"><ul</span> <span class="na">class=</span><span class="s">"nav nav-tabs"</span> <span class="na">role=</span><span class="s">"tablist"</span><span class="nt">></span> + ... + <span class="nt"></ul></span> + <span class="nt"></div></span> + ... +<span class="nt"></body></span></code></pre></figure> + +<h3 id="via-javascript">Via JavaScript</h3> + +<p>After adding <code class="highlighter-rouge">position: relative;</code> in your CSS, call the scrollspy via JavaScript:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'body'</span><span class="p">).</span><span class="nx">scrollspy</span><span class="p">({</span> <span class="na">target</span><span class="p">:</span> <span class="s1">'#navbar-example'</span> <span class="p">})</span></code></pre></figure> + +<div class="bd-callout bd-callout-danger"> +<h4 id="resolvable-id-targets-required">Resolvable ID targets required</h4> + +<p>Navbar links must have resolvable id targets. For example, a <code class="highlighter-rouge"><a href="#home">home</a></code> must correspond to something in the DOM like <code class="highlighter-rouge"><div id="home"></div></code>.</p> +</div> + +<div class="bd-callout bd-callout-info"> +<h4 id="non-visible-target-elements-ignored">Non-<code class="highlighter-rouge">:visible</code> target elements ignored</h4> + +<p>Target elements that are not <a href="https://api.jquery.com/visible-selector/"><code class="highlighter-rouge">:visible</code> according to jQuery</a> will be ignored and their corresponding nav items will never be highlighted.</p> +</div> + +<h3 id="methods">Methods</h3> + +<h4 id="scrollspyrefresh"><code class="highlighter-rouge">.scrollspy('refresh')</code></h4> + +<p>When using scrollspy in conjunction with adding or removing of elements from the DOM, you’ll need to call the refresh method like so:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'[data-spy="scroll"]'</span><span class="p">).</span><span class="nx">each</span><span class="p">(</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> + <span class="kd">var</span> <span class="nx">$spy</span> <span class="o">=</span> <span class="nx">$</span><span class="p">(</span><span class="k">this</span><span class="p">).</span><span class="nx">scrollspy</span><span class="p">(</span><span class="s1">'refresh'</span><span class="p">)</span> +<span class="p">})</span></code></pre></figure> + +<h4 id="scrollspydispose"><code class="highlighter-rouge">.scrollspy('dispose')</code></h4> + +<p>Destroys an element’s scrollspy.</p> + +<h3 id="options">Options</h3> + +<p>Options can be passed via data attributes or JavaScript. For data attributes, append the option name to <code class="highlighter-rouge">data-</code>, as in <code class="highlighter-rouge">data-offset=""</code>.</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 100px;">Name</th> + <th style="width: 100px;">Type</th> + <th style="width: 50px;">Default</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>offset</td> + <td>number</td> + <td>10</td> + <td>Pixels to offset from top when calculating position of scroll.</td> + </tr> + <tr> + <td>method</td> + <td>string</td> + <td>auto</td> + <td>Finds which section the spied element is in. <code>auto</code> will choose the best method get scroll coordinates. <code>offset</code> will use jQuery offset method to get scroll coordinates. <code>position</code> will use jQuery position method to get scroll coordinates.</td> + </tr> + <tr> + <td>target</td> + <td>string</td> + <td></td> + <td>Specifies element to apply Scrollspy plugin.</td> + </tr> + </tbody> +</table> + +<h3 id="events">Events</h3> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 150px;">Event Type</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>activate.bs.scrollspy</td> + <td>This event fires on the scroll element whenever a new item becomes activated by the scrollspy.</td> + </tr> + </tbody> +</table> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'[data-spy="scroll"]'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'activate.bs.scrollspy'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> + <span class="c1">// do something...</span> +<span class="p">})</span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/spinners/index.html b/docs/4.3/components/spinners/index.html new file mode 100644 index 0000000000..b8b43d272d --- /dev/null +++ b/docs/4.3/components/spinners/index.html @@ -0,0 +1,807 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Indicate the loading state of a component or page with Bootstrap spinners, built entirely with HTML, CSS, and no JavaScript."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Spinners · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/spinners/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Spinners"> +<meta name="twitter:description" content="Indicate the loading state of a component or page with Bootstrap spinners, built entirely with HTML, CSS, and no JavaScript."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/spinners/"> +<meta property="og:title" content="Spinners"> +<meta property="og:description" content="Indicate the loading state of a component or page with Bootstrap spinners, built entirely with HTML, CSS, and no JavaScript."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#about">About</a></li> +<li class="toc-entry toc-h2"><a href="#border-spinner">Border spinner</a> +<ul> +<li class="toc-entry toc-h3"><a href="#colors">Colors</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#growing-spinner">Growing spinner</a></li> +<li class="toc-entry toc-h2"><a href="#alignment">Alignment</a> +<ul> +<li class="toc-entry toc-h3"><a href="#margin">Margin</a></li> +<li class="toc-entry toc-h3"><a href="#placement">Placement</a> +<ul> +<li class="toc-entry toc-h4"><a href="#flex">Flex</a></li> +<li class="toc-entry toc-h4"><a href="#floats">Floats</a></li> +<li class="toc-entry toc-h4"><a href="#text-align">Text align</a></li> +</ul> +</li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#size">Size</a></li> +<li class="toc-entry toc-h2"><a href="#buttons">Buttons</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Spinners</h1> + <p class="bd-lead">Indicate the loading state of a component or page with Bootstrap spinners, built entirely with HTML, CSS, and no JavaScript.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="about">About</h2> + +<p>Bootstrap “spinners†can be used to show the loading state in your projects. They’re built only with HTML and CSS, meaning you don’t need any JavaScript to create them. You will, however, need some custom JavaScript to toggle their visibility. Their appearance, alignment, and sizing can be easily customized with our amazing utility classes.</p> + +<p>For accessibility purposes, each loader here includes <code class="highlighter-rouge">role="status"</code> and a nested <code class="highlighter-rouge"><span class="sr-only">Loading...</span></code>.</p> + +<h2 id="border-spinner">Border spinner</h2> + +<p>Use the border spinners for a lightweight loading indicator.</p> + +<div class="bd-example"> +<div class="spinner-border" role="status"> + <span class="sr-only">Loading...</span> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-border"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="colors">Colors</h3> + +<p>The border spinner uses <code class="highlighter-rouge">currentColor</code> for its <code class="highlighter-rouge">border-color</code>, meaning you can customize the color with <a href="/docs/4.3/utilities/colors/">text color utilities</a>. You can use any of our text color utilities on the standard spinner.</p> + +<div class="bd-example"> + +<div class="spinner-border text-primary" role="status"> + <span class="sr-only">Loading...</span> +</div> +<div class="spinner-border text-secondary" role="status"> + <span class="sr-only">Loading...</span> +</div> +<div class="spinner-border text-success" role="status"> + <span class="sr-only">Loading...</span> +</div> +<div class="spinner-border text-danger" role="status"> + <span class="sr-only">Loading...</span> +</div> +<div class="spinner-border text-warning" role="status"> + <span class="sr-only">Loading...</span> +</div> +<div class="spinner-border text-info" role="status"> + <span class="sr-only">Loading...</span> +</div> +<div class="spinner-border text-light" role="status"> + <span class="sr-only">Loading...</span> +</div> +<div class="spinner-border text-dark" role="status"> + <span class="sr-only">Loading...</span> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-border text-primary"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-border text-secondary"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-border text-success"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-border text-danger"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-border text-warning"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-border text-info"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-border text-light"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-border text-dark"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-callout bd-callout-info"> +<p><strong>Why not use <code class="highlighter-rouge">border-color</code> utilities?</strong> Each border spinner specifies a <code class="highlighter-rouge">transparent</code> border for at least one side, so <code class="highlighter-rouge">.border-{color}</code> utilities would override that.</p> +</div> + +<h2 id="growing-spinner">Growing spinner</h2> + +<p>If you don’t fancy a border spinner, switch to the grow spinner. While it doesn’t technically spin, it does repeatedly grow!</p> + +<div class="bd-example"> +<div class="spinner-grow" role="status"> + <span class="sr-only">Loading...</span> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-grow"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Once again, this spinner is built with <code class="highlighter-rouge">currentColor</code>, so you can easily change its appearance with <a href="/docs/4.3/utilities/colors/">text color utilities</a>. Here it is in blue, along with the supported variants.</p> + +<div class="bd-example"> + +<div class="spinner-grow text-primary" role="status"> + <span class="sr-only">Loading...</span> +</div> +<div class="spinner-grow text-secondary" role="status"> + <span class="sr-only">Loading...</span> +</div> +<div class="spinner-grow text-success" role="status"> + <span class="sr-only">Loading...</span> +</div> +<div class="spinner-grow text-danger" role="status"> + <span class="sr-only">Loading...</span> +</div> +<div class="spinner-grow text-warning" role="status"> + <span class="sr-only">Loading...</span> +</div> +<div class="spinner-grow text-info" role="status"> + <span class="sr-only">Loading...</span> +</div> +<div class="spinner-grow text-light" role="status"> + <span class="sr-only">Loading...</span> +</div> +<div class="spinner-grow text-dark" role="status"> + <span class="sr-only">Loading...</span> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-grow text-primary"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-grow text-secondary"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-grow text-success"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-grow text-danger"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-grow text-warning"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-grow text-info"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-grow text-light"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-grow text-dark"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="alignment">Alignment</h2> + +<p>Spinners in Bootstrap are built with <code class="highlighter-rouge">rem</code>s, <code class="highlighter-rouge">currentColor</code>, and <code class="highlighter-rouge">display: inline-flex</code>. This means they can easily be resized, recolored, and quickly aligned.</p> + +<h3 id="margin">Margin</h3> + +<p>Use <a href="/docs/4.3/utilities/spacing/">margin utilities</a> like <code class="highlighter-rouge">.m-5</code> for easy spacing.</p> + +<div class="bd-example"> +<div class="spinner-border m-5" role="status"> + <span class="sr-only">Loading...</span> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-border m-5"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="placement">Placement</h3> + +<p>Use <a href="/docs/4.3/utilities/flex/">flexbox utilities</a>, <a href="/docs/4.3/utilities/float/">float utilities</a>, or <a href="/docs/4.3/content/typography/">text alignment</a> utilities to place spinners exactly where you need them in any situation.</p> + +<h4 id="flex">Flex</h4> + +<div class="bd-example"> +<div class="d-flex justify-content-center"> + <div class="spinner-border" role="status"> + <span class="sr-only">Loading...</span> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex justify-content-center"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-border"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<div class="d-flex align-items-center"> + <strong>Loading...</strong> + <div class="spinner-border ml-auto" role="status" aria-hidden="true"></div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex align-items-center"</span><span class="nt">></span> + <span class="nt"><strong></span>Loading...<span class="nt"></strong></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-border ml-auto"</span> <span class="na">role=</span><span class="s">"status"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h4 id="floats">Floats</h4> + +<div class="bd-example"> +<div class="clearfix"> + <div class="spinner-border float-right" role="status"> + <span class="sr-only">Loading...</span> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"clearfix"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-border float-right"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h4 id="text-align">Text align</h4> + +<div class="bd-example"> +<div class="text-center"> + <div class="spinner-border" role="status"> + <span class="sr-only">Loading...</span> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"text-center"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-border"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="size">Size</h2> + +<p>Add <code class="highlighter-rouge">.spinner-border-sm</code> and <code class="highlighter-rouge">.spinner-grow-sm</code> to make a smaller spinner that can quickly be used within other components.</p> + +<div class="bd-example"> +<div class="spinner-border spinner-border-sm" role="status"> + <span class="sr-only">Loading...</span> +</div> +<div class="spinner-grow spinner-grow-sm" role="status"> + <span class="sr-only">Loading...</span> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-border spinner-border-sm"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-grow spinner-grow-sm"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Or, use custom CSS or inline styles to change the dimensions as needed.</p> + +<div class="bd-example"> +<div class="spinner-border" style="width: 3rem; height: 3rem;" role="status"> + <span class="sr-only">Loading...</span> +</div> +<div class="spinner-grow" style="width: 3rem; height: 3rem;" role="status"> + <span class="sr-only">Loading...</span> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-border"</span> <span class="na">style=</span><span class="s">"width: 3rem; height: 3rem;"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"spinner-grow"</span> <span class="na">style=</span><span class="s">"width: 3rem; height: 3rem;"</span> <span class="na">role=</span><span class="s">"status"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="buttons">Buttons</h2> + +<p>Use spinners within buttons to indicate an action is currently processing or taking place. You may also swap the text out of the spinner element and utilize button text as needed.</p> + +<div class="bd-example"> +<button class="btn btn-primary" type="button" disabled=""> + <span class="spinner-border spinner-border-sm" role="status" aria-hidden="true"></span> + <span class="sr-only">Loading...</span> +</button> +<button class="btn btn-primary" type="button" disabled=""> + <span class="spinner-border spinner-border-sm" role="status" aria-hidden="true"></span> + Loading... +</button> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">disabled</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"spinner-border spinner-border-sm"</span> <span class="na">role=</span><span class="s">"status"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">disabled</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"spinner-border spinner-border-sm"</span> <span class="na">role=</span><span class="s">"status"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span></span> + Loading... +<span class="nt"></button></span></code></pre></figure> + +<div class="bd-example"> +<button class="btn btn-primary" type="button" disabled=""> + <span class="spinner-grow spinner-grow-sm" role="status" aria-hidden="true"></span> + <span class="sr-only">Loading...</span> +</button> +<button class="btn btn-primary" type="button" disabled=""> + <span class="spinner-grow spinner-grow-sm" role="status" aria-hidden="true"></span> + Loading... +</button> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">disabled</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"spinner-grow spinner-grow-sm"</span> <span class="na">role=</span><span class="s">"status"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Loading...<span class="nt"></span></span> +<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">disabled</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"spinner-grow spinner-grow-sm"</span> <span class="na">role=</span><span class="s">"status"</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span></span> + Loading... +<span class="nt"></button></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/toasts/index.html b/docs/4.3/components/toasts/index.html new file mode 100644 index 0000000000..9754594377 --- /dev/null +++ b/docs/4.3/components/toasts/index.html @@ -0,0 +1,961 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Push notifications to your visitors with a toast, a lightweight and easily customizable alert message."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Toasts · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/toasts/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Toasts"> +<meta name="twitter:description" content="Push notifications to your visitors with a toast, a lightweight and easily customizable alert message."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/toasts/"> +<meta property="og:title" content="Toasts"> +<meta property="og:description" content="Push notifications to your visitors with a toast, a lightweight and easily customizable alert message."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#overview">Overview</a></li> +<li class="toc-entry toc-h2"><a href="#examples">Examples</a> +<ul> +<li class="toc-entry toc-h3"><a href="#basic">Basic</a></li> +<li class="toc-entry toc-h3"><a href="#translucent">Translucent</a></li> +<li class="toc-entry toc-h3"><a href="#stacking">Stacking</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#placement">Placement</a></li> +<li class="toc-entry toc-h2"><a href="#accessibility">Accessibility</a></li> +<li class="toc-entry toc-h2"><a href="#javascript-behavior">JavaScript behavior</a> +<ul> +<li class="toc-entry toc-h3"><a href="#usage">Usage</a></li> +<li class="toc-entry toc-h3"><a href="#options">Options</a></li> +<li class="toc-entry toc-h3"><a href="#methods">Methods</a> +<ul> +<li class="toc-entry toc-h4"><a href="#toastoptions">$().toast(options)</a></li> +<li class="toc-entry toc-h4"><a href="#toastshow">.toast('show')</a></li> +<li class="toc-entry toc-h4"><a href="#toasthide">.toast('hide')</a></li> +<li class="toc-entry toc-h4"><a href="#toastdispose">.toast('dispose')</a></li> +</ul> +</li> +<li class="toc-entry toc-h3"><a href="#events">Events</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Toasts</h1> + <p class="bd-lead">Push notifications to your visitors with a toast, a lightweight and easily customizable alert message.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>Toasts are lightweight notifications designed to mimic the push notifications that have been popularized by mobile and desktop operating systems. They’re built with flexbox, so they’re easy to align and position.</p> + +<h2 id="overview">Overview</h2> + +<p>Things to know when using the toast plugin:</p> + +<ul> + <li>If you’re building our JavaScript from source, it <a href="/docs/4.3/getting-started/javascript/#util">requires <code class="highlighter-rouge">util.js</code></a>.</li> + <li>Toasts are opt-in for performance reasons, so <strong>you must initialize them yourself</strong>.</li> + <li><strong>Please note that you are responsible for positioning toasts.</strong></li> + <li>Toasts will automatically hide if you do not specify <code class="highlighter-rouge">autohide: false</code>.</li> +</ul> + +<h2 id="examples">Examples</h2> + +<h3 id="basic">Basic</h3> + +<p>To encourage extensible and predictable toasts, we recommend a header and body. Toast headers use <code class="highlighter-rouge">display: flex</code>, allowing easy alignment of content thanks to our margin and flexbox utilities.</p> + +<p>Toasts are as flexible as you need and have very little required markup. At a minimum, we require a single element to contain your “toasted†content and strongly encourage a dismiss button.</p> + +<div class="bd-example bg-light"> +<div class="toast" role="alert" aria-live="assertive" aria-atomic="true"> + <div class="toast-header"> + <svg class="bd-placeholder-img rounded mr-2" width="20" height="20" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img"><rect width="100%" height="100%" fill="#007aff" /></svg> + <strong class="mr-auto">Bootstrap</strong> + <small>11 mins ago</small> + <button type="button" class="ml-2 mb-1 close" data-dismiss="toast" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="toast-body"> + Hello, world! This is a toast message. + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast"</span> <span class="na">role=</span><span class="s">"alert"</span> <span class="na">aria-live=</span><span class="s">"assertive"</span> <span class="na">aria-atomic=</span><span class="s">"true"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-header"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded mr-2"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><strong</span> <span class="na">class=</span><span class="s">"mr-auto"</span><span class="nt">></span>Bootstrap<span class="nt"></strong></span> + <span class="nt"><small></span>11 mins ago<span class="nt"></small></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"ml-2 mb-1 close"</span> <span class="na">data-dismiss=</span><span class="s">"toast"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-body"</span><span class="nt">></span> + Hello, world! This is a toast message. + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="translucent">Translucent</h3> + +<p>Toasts are slightly translucent, too, so they blend over whatever they might appear over. For browsers that support the <code class="highlighter-rouge">backdrop-filter</code> CSS property, we’ll also attempt to blur the elements under a toast.</p> + +<div class="bd-example bg-dark"> +<div class="toast" role="alert" aria-live="assertive" aria-atomic="true"> + <div class="toast-header"> + <svg class="bd-placeholder-img rounded mr-2" width="20" height="20" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img"><rect width="100%" height="100%" fill="#007aff" /></svg> + <strong class="mr-auto">Bootstrap</strong> + <small class="text-muted">11 mins ago</small> + <button type="button" class="ml-2 mb-1 close" data-dismiss="toast" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="toast-body"> + Hello, world! This is a toast message. + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast"</span> <span class="na">role=</span><span class="s">"alert"</span> <span class="na">aria-live=</span><span class="s">"assertive"</span> <span class="na">aria-atomic=</span><span class="s">"true"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-header"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded mr-2"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><strong</span> <span class="na">class=</span><span class="s">"mr-auto"</span><span class="nt">></span>Bootstrap<span class="nt"></strong></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>11 mins ago<span class="nt"></small></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"ml-2 mb-1 close"</span> <span class="na">data-dismiss=</span><span class="s">"toast"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-body"</span><span class="nt">></span> + Hello, world! This is a toast message. + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="stacking">Stacking</h3> + +<p>When you have multiple toasts, we default to vertically stacking them in a readable manner.</p> + +<div class="bd-example bg-light"> +<div class="toast" role="alert" aria-live="assertive" aria-atomic="true"> + <div class="toast-header"> + <svg class="bd-placeholder-img rounded mr-2" width="20" height="20" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img"><rect width="100%" height="100%" fill="#007aff" /></svg> + <strong class="mr-auto">Bootstrap</strong> + <small class="text-muted">just now</small> + <button type="button" class="ml-2 mb-1 close" data-dismiss="toast" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="toast-body"> + See? Just like this. + </div> +</div> + +<div class="toast" role="alert" aria-live="assertive" aria-atomic="true"> + <div class="toast-header"> + <svg class="bd-placeholder-img rounded mr-2" width="20" height="20" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img"><rect width="100%" height="100%" fill="#007aff" /></svg> + <strong class="mr-auto">Bootstrap</strong> + <small class="text-muted">2 seconds ago</small> + <button type="button" class="ml-2 mb-1 close" data-dismiss="toast" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="toast-body"> + Heads up, toasts will stack automatically + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast"</span> <span class="na">role=</span><span class="s">"alert"</span> <span class="na">aria-live=</span><span class="s">"assertive"</span> <span class="na">aria-atomic=</span><span class="s">"true"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-header"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded mr-2"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><strong</span> <span class="na">class=</span><span class="s">"mr-auto"</span><span class="nt">></span>Bootstrap<span class="nt"></strong></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>just now<span class="nt"></small></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"ml-2 mb-1 close"</span> <span class="na">data-dismiss=</span><span class="s">"toast"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-body"</span><span class="nt">></span> + See? Just like this. + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast"</span> <span class="na">role=</span><span class="s">"alert"</span> <span class="na">aria-live=</span><span class="s">"assertive"</span> <span class="na">aria-atomic=</span><span class="s">"true"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-header"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded mr-2"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><strong</span> <span class="na">class=</span><span class="s">"mr-auto"</span><span class="nt">></span>Bootstrap<span class="nt"></strong></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>2 seconds ago<span class="nt"></small></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"ml-2 mb-1 close"</span> <span class="na">data-dismiss=</span><span class="s">"toast"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-body"</span><span class="nt">></span> + Heads up, toasts will stack automatically + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="placement">Placement</h2> + +<p>Place toasts with custom CSS as you need them. The top right is often used for notifications, as is the top middle. If you’re only ever going to show one toast at a time, put the positioning styles right on the <code class="highlighter-rouge">.toast</code>.</p> + +<div class="bd-example bg-dark"> +<div aria-live="polite" aria-atomic="true" style="position: relative; min-height: 200px;"> + <div class="toast" style="position: absolute; top: 0; right: 0;"> + <div class="toast-header"> + <svg class="bd-placeholder-img rounded mr-2" width="20" height="20" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img"><rect width="100%" height="100%" fill="#007aff" /></svg> + <strong class="mr-auto">Bootstrap</strong> + <small>11 mins ago</small> + <button type="button" class="ml-2 mb-1 close" data-dismiss="toast" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="toast-body"> + Hello, world! This is a toast message. + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">aria-live=</span><span class="s">"polite"</span> <span class="na">aria-atomic=</span><span class="s">"true"</span> <span class="na">style=</span><span class="s">"position: relative; min-height: 200px;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast"</span> <span class="na">style=</span><span class="s">"position: absolute; top: 0; right: 0;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-header"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded mr-2"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><strong</span> <span class="na">class=</span><span class="s">"mr-auto"</span><span class="nt">></span>Bootstrap<span class="nt"></strong></span> + <span class="nt"><small></span>11 mins ago<span class="nt"></small></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"ml-2 mb-1 close"</span> <span class="na">data-dismiss=</span><span class="s">"toast"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-body"</span><span class="nt">></span> + Hello, world! This is a toast message. + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>For systems that generate more notifications, consider using a wrapping element so they can easily stack.</p> + +<div class="bd-example bg-dark"> +<div aria-live="polite" aria-atomic="true" style="position: relative; min-height: 200px;"> + <!-- Position it --> + <div style="position: absolute; top: 0; right: 0;"> + + <!-- Then put toasts within --> + <div class="toast" role="alert" aria-live="assertive" aria-atomic="true"> + <div class="toast-header"> + <svg class="bd-placeholder-img rounded mr-2" width="20" height="20" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img"><rect width="100%" height="100%" fill="#007aff" /></svg> + <strong class="mr-auto">Bootstrap</strong> + <small class="text-muted">just now</small> + <button type="button" class="ml-2 mb-1 close" data-dismiss="toast" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="toast-body"> + See? Just like this. + </div> + </div> + + <div class="toast" role="alert" aria-live="assertive" aria-atomic="true"> + <div class="toast-header"> + <svg class="bd-placeholder-img rounded mr-2" width="20" height="20" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img"><rect width="100%" height="100%" fill="#007aff" /></svg> + <strong class="mr-auto">Bootstrap</strong> + <small class="text-muted">2 seconds ago</small> + <button type="button" class="ml-2 mb-1 close" data-dismiss="toast" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="toast-body"> + Heads up, toasts will stack automatically + </div> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">aria-live=</span><span class="s">"polite"</span> <span class="na">aria-atomic=</span><span class="s">"true"</span> <span class="na">style=</span><span class="s">"position: relative; min-height: 200px;"</span><span class="nt">></span> + <span class="c"><!-- Position it --></span> + <span class="nt"><div</span> <span class="na">style=</span><span class="s">"position: absolute; top: 0; right: 0;"</span><span class="nt">></span> + + <span class="c"><!-- Then put toasts within --></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast"</span> <span class="na">role=</span><span class="s">"alert"</span> <span class="na">aria-live=</span><span class="s">"assertive"</span> <span class="na">aria-atomic=</span><span class="s">"true"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-header"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded mr-2"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><strong</span> <span class="na">class=</span><span class="s">"mr-auto"</span><span class="nt">></span>Bootstrap<span class="nt"></strong></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>just now<span class="nt"></small></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"ml-2 mb-1 close"</span> <span class="na">data-dismiss=</span><span class="s">"toast"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-body"</span><span class="nt">></span> + See? Just like this. + <span class="nt"></div></span> + <span class="nt"></div></span> + + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast"</span> <span class="na">role=</span><span class="s">"alert"</span> <span class="na">aria-live=</span><span class="s">"assertive"</span> <span class="na">aria-atomic=</span><span class="s">"true"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-header"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded mr-2"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><strong</span> <span class="na">class=</span><span class="s">"mr-auto"</span><span class="nt">></span>Bootstrap<span class="nt"></strong></span> + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>2 seconds ago<span class="nt"></small></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"ml-2 mb-1 close"</span> <span class="na">data-dismiss=</span><span class="s">"toast"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-body"</span><span class="nt">></span> + Heads up, toasts will stack automatically + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>You can also get fancy with flexbox utilities to align toasts horizontally and/or vertically.</p> + +<div class="bd-example bg-dark"> +<!-- Flexbox container for aligning the toasts --> +<div aria-live="polite" aria-atomic="true" class="d-flex justify-content-center align-items-center" style="min-height: 200px;"> + + <!-- Then put toasts within --> + <div class="toast" role="alert" aria-live="assertive" aria-atomic="true"> + <div class="toast-header"> + <svg class="bd-placeholder-img rounded mr-2" width="20" height="20" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img"><rect width="100%" height="100%" fill="#007aff" /></svg> + <strong class="mr-auto">Bootstrap</strong> + <small>11 mins ago</small> + <button type="button" class="ml-2 mb-1 close" data-dismiss="toast" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="toast-body"> + Hello, world! This is a toast message. + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Flexbox container for aligning the toasts --></span> +<span class="nt"><div</span> <span class="na">aria-live=</span><span class="s">"polite"</span> <span class="na">aria-atomic=</span><span class="s">"true"</span> <span class="na">class=</span><span class="s">"d-flex justify-content-center align-items-center"</span> <span class="na">style=</span><span class="s">"min-height: 200px;"</span><span class="nt">></span> + + <span class="c"><!-- Then put toasts within --></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast"</span> <span class="na">role=</span><span class="s">"alert"</span> <span class="na">aria-live=</span><span class="s">"assertive"</span> <span class="na">aria-atomic=</span><span class="s">"true"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-header"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded mr-2"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><strong</span> <span class="na">class=</span><span class="s">"mr-auto"</span><span class="nt">></span>Bootstrap<span class="nt"></strong></span> + <span class="nt"><small></span>11 mins ago<span class="nt"></small></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"ml-2 mb-1 close"</span> <span class="na">data-dismiss=</span><span class="s">"toast"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-body"</span><span class="nt">></span> + Hello, world! This is a toast message. + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="accessibility">Accessibility</h2> + +<p>Toasts are intended to be small interruptions to your visitors or users, so to help those with screen readers and similar assistive technologies, you should wrap your toasts in an <a href="https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/ARIA_Live_Regions"><code class="highlighter-rouge">aria-live</code> region</a>. Changes to live regions (such as injecting/updating a toast component) are automatically announced by screen readers without needing to move the user’s focus or otherwise interrupt the user. Additionally, include <code class="highlighter-rouge">aria-atomic="true"</code> to ensure that the entire toast is always announced as a single (atomic) unit, rather than announcing what was changed (which could lead to problems if you only update part of the toast’s content, or if displaying the same toast content at a later point in time). If the information needed is important for the process, e.g. for a list of errors in a form, then use the <a href="/docs/4.3/components/alerts/">alert component</a> instead of toast.</p> + +<p>Note that the live region needs to be present in the markup <em>before</em> the toast is generated or updated. If you dynamically generate both at the same time and inject them into the page, they will generally not be announced by assistive technologies.</p> + +<p>You also need to adapt the <code class="highlighter-rouge">role</code> and <code class="highlighter-rouge">aria-live</code> level depending on the content. If it’s an important message like an error, use <code class="highlighter-rouge">role="alert" aria-live="assertive"</code>, otherwise use <code class="highlighter-rouge">role="status" aria-live="polite"</code> attributes.</p> + +<p>As the content you’re displaying changes, be sure to update the <a href="#options"><code class="highlighter-rouge">delay</code> timeout</a> to ensure people have enough time to read the toast.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast"</span> <span class="na">role=</span><span class="s">"alert"</span> <span class="na">aria-live=</span><span class="s">"polite"</span> <span class="na">aria-atomic=</span><span class="s">"true"</span> <span class="na">data-delay=</span><span class="s">"10000"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">role=</span><span class="s">"alert"</span> <span class="na">aria-live=</span><span class="s">"assertive"</span> <span class="na">aria-atomic=</span><span class="s">"true"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>When using <code class="highlighter-rouge">autohide: false</code>, you must add a close button to allow users to dismiss the toast.</p> + +<div class="bd-example bg-light"> +<div role="alert" aria-live="assertive" aria-atomic="true" class="toast" data-autohide="false"> + <div class="toast-header"> + <svg class="bd-placeholder-img rounded mr-2" width="20" height="20" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img"><rect width="100%" height="100%" fill="#007aff" /></svg> + <strong class="mr-auto">Bootstrap</strong> + <small>11 mins ago</small> + <button type="button" class="ml-2 mb-1 close" data-dismiss="toast" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="toast-body"> + Hello, world! This is a toast message. + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">role=</span><span class="s">"alert"</span> <span class="na">aria-live=</span><span class="s">"assertive"</span> <span class="na">aria-atomic=</span><span class="s">"true"</span> <span class="na">class=</span><span class="s">"toast"</span> <span class="na">data-autohide=</span><span class="s">"false"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-header"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded mr-2"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><strong</span> <span class="na">class=</span><span class="s">"mr-auto"</span><span class="nt">></span>Bootstrap<span class="nt"></strong></span> + <span class="nt"><small></span>11 mins ago<span class="nt"></small></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"ml-2 mb-1 close"</span> <span class="na">data-dismiss=</span><span class="s">"toast"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> + <span class="nt"></button></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"toast-body"</span><span class="nt">></span> + Hello, world! This is a toast message. + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="javascript-behavior">JavaScript behavior</h2> + +<h3 id="usage">Usage</h3> + +<p>Initialize toasts via JavaScript:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'.toast'</span><span class="p">).</span><span class="nx">toast</span><span class="p">(</span><span class="nx">option</span><span class="p">)</span></code></pre></figure> + +<h3 id="options">Options</h3> + +<p>Options can be passed via data attributes or JavaScript. For data attributes, append the option name to <code class="highlighter-rouge">data-</code>, as in <code class="highlighter-rouge">data-animation=""</code>.</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 100px;">Name</th> + <th style="width: 100px;">Type</th> + <th style="width: 50px;">Default</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>animation</td> + <td>boolean</td> + <td>true</td> + <td>Apply a CSS fade transition to the toast</td> + </tr> + <tr> + <td>autohide</td> + <td>boolean</td> + <td>true</td> + <td>Auto hide the toast</td> + </tr> + <tr> + <td>delay</td> + <td>number</td> + <td> + <code>500</code> + </td> + <td>Delay hiding the toast (ms)</td> + </tr> + </tbody> +</table> + +<h3 id="methods">Methods</h3> + +<div class="bd-callout bd-callout-danger"> +<h4 id="asynchronous-methods-and-transitions">Asynchronous methods and transitions</h4> + +<p>All API methods are <strong>asynchronous</strong> and start a <strong>transition</strong>. They return to the caller as soon as the transition is started but <strong>before it ends</strong>. In addition, a method call on a <strong>transitioning component will be ignored</strong>.</p> + +<p><a href="/docs/4.3/getting-started/javascript/">See our JavaScript documentation for more information</a>.</p> +</div> + +<h4 id="toastoptions"><code class="highlighter-rouge">$().toast(options)</code></h4> + +<p>Attaches a toast handler to an element collection.</p> + +<h4 id="toastshow"><code class="highlighter-rouge">.toast('show')</code></h4> + +<p>Reveals an element’s toast. <strong>Returns to the caller before the toast has actually been shown</strong> (i.e. before the <code class="highlighter-rouge">shown.bs.toast</code> event occurs). +You have to manually call this method, instead your toast won’t show.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">toast</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span></code></pre></figure> + +<h4 id="toasthide"><code class="highlighter-rouge">.toast('hide')</code></h4> + +<p>Hides an element’s toast. <strong>Returns to the caller before the toast has actually been hidden</strong> (i.e. before the <code class="highlighter-rouge">hidden.bs.toast</code> event occurs). You have to manually call this method if you made <code class="highlighter-rouge">autohide</code> to <code class="highlighter-rouge">false</code>.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">toast</span><span class="p">(</span><span class="s1">'hide'</span><span class="p">)</span></code></pre></figure> + +<h4 id="toastdispose"><code class="highlighter-rouge">.toast('dispose')</code></h4> + +<p>Hides an element’s toast. Your toast will remain on the DOM but won’t show anymore.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">toast</span><span class="p">(</span><span class="s1">'dispose'</span><span class="p">)</span></code></pre></figure> + +<h3 id="events">Events</h3> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 150px;">Event Type</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>show.bs.toast</td> + <td>This event fires immediately when the <code>show</code> instance method is called.</td> + </tr> + <tr> + <td>shown.bs.toast</td> + <td>This event is fired when the toast has been made visible to the user.</td> + </tr> + <tr> + <td>hide.bs.toast</td> + <td>This event is fired immediately when the <code>hide</code> instance method has been called.</td> + </tr> + <tr> + <td>hidden.bs.toast</td> + <td>This event is fired when the toast has finished being hidden from the user.</td> + </tr> + </tbody> +</table> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myToast'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'hidden.bs.toast'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> + <span class="c1">// do something...</span> +<span class="p">})</span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/components/tooltips/index.html b/docs/4.3/components/tooltips/index.html new file mode 100644 index 0000000000..6531430e5e --- /dev/null +++ b/docs/4.3/components/tooltips/index.html @@ -0,0 +1,861 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Documentation and examples for adding custom Bootstrap tooltips with CSS and JavaScript using CSS3 for animations and data-attributes for local title storage."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Tooltips · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/components/tooltips/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Tooltips"> +<meta name="twitter:description" content="Documentation and examples for adding custom Bootstrap tooltips with CSS and JavaScript using CSS3 for animations and data-attributes for local title storage."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/components/tooltips/"> +<meta property="og:title" content="Tooltips"> +<meta property="og:description" content="Documentation and examples for adding custom Bootstrap tooltips with CSS and JavaScript using CSS3 for animations and data-attributes for local title storage."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#overview">Overview</a></li> +<li class="toc-entry toc-h2"><a href="#example-enable-tooltips-everywhere">Example: Enable tooltips everywhere</a></li> +<li class="toc-entry toc-h2"><a href="#examples">Examples</a></li> +<li class="toc-entry toc-h2"><a href="#usage">Usage</a> +<ul> +<li class="toc-entry toc-h3"><a href="#markup">Markup</a></li> +<li class="toc-entry toc-h3"><a href="#disabled-elements">Disabled elements</a></li> +<li class="toc-entry toc-h3"><a href="#options">Options</a></li> +<li class="toc-entry toc-h3"><a href="#methods">Methods</a> +<ul> +<li class="toc-entry toc-h4"><a href="#tooltipoptions">$().tooltip(options)</a></li> +<li class="toc-entry toc-h4"><a href="#tooltipshow">.tooltip('show')</a></li> +<li class="toc-entry toc-h4"><a href="#tooltiphide">.tooltip('hide')</a></li> +<li class="toc-entry toc-h4"><a href="#tooltiptoggle">.tooltip('toggle')</a></li> +<li class="toc-entry toc-h4"><a href="#tooltipdispose">.tooltip('dispose')</a></li> +<li class="toc-entry toc-h4"><a href="#tooltipenable">.tooltip('enable')</a></li> +<li class="toc-entry toc-h4"><a href="#tooltipdisable">.tooltip('disable')</a></li> +<li class="toc-entry toc-h4"><a href="#tooltiptoggleenabled">.tooltip('toggleEnabled')</a></li> +<li class="toc-entry toc-h4"><a href="#tooltipupdate">.tooltip('update')</a></li> +</ul> +</li> +<li class="toc-entry toc-h3"><a href="#events">Events</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Tooltips</h1> + <p class="bd-lead">Documentation and examples for adding custom Bootstrap tooltips with CSS and JavaScript using CSS3 for animations and data-attributes for local title storage.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="overview">Overview</h2> + +<p>Things to know when using the tooltip plugin:</p> + +<ul> + <li>Tooltips rely on the 3rd party library <a href="https://popper.js.org/">Popper.js</a> for positioning. You must include <a href="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js">popper.min.js</a> before bootstrap.js or use <code class="highlighter-rouge">bootstrap.bundle.min.js</code> / <code class="highlighter-rouge">bootstrap.bundle.js</code> which contains Popper.js in order for tooltips to work!</li> + <li>If you’re building our JavaScript from source, it <a href="/docs/4.3/getting-started/javascript/#util">requires <code class="highlighter-rouge">util.js</code></a>.</li> + <li>Tooltips are opt-in for performance reasons, so <strong>you must initialize them yourself</strong>.</li> + <li>Tooltips with zero-length titles are never displayed.</li> + <li>Specify <code class="highlighter-rouge">container: 'body'</code> to avoid rendering problems in more complex components (like our input groups, button groups, etc).</li> + <li>Triggering tooltips on hidden elements will not work.</li> + <li>Tooltips for <code class="highlighter-rouge">.disabled</code> or <code class="highlighter-rouge">disabled</code> elements must be triggered on a wrapper element.</li> + <li>When triggered from hyperlinks that span multiple lines, tooltips will be centered. Use <code class="highlighter-rouge">white-space: nowrap;</code> on your <code class="highlighter-rouge"><a></code>s to avoid this behavior.</li> + <li>Tooltips must be hidden before their corresponding elements have been removed from the DOM.</li> + <li>Tooltips can be triggered thanks to an element inside a shadow DOM.</li> +</ul> + +<div class="bd-callout bd-callout-info"> +<p>The animation effect of this component is dependent on the <code class="highlighter-rouge">prefers-reduced-motion</code> media query. See the <a href="/docs/4.3/getting-started/accessibility/#reduced-motion">reduced motion section of our accessibility documentation</a>.</p> +</div> + +<p>Got all that? Great, let’s see how they work with some examples.</p> + +<h2 id="example-enable-tooltips-everywhere">Example: Enable tooltips everywhere</h2> + +<p>One way to initialize all tooltips on a page would be to select them by their <code class="highlighter-rouge">data-toggle</code> attribute:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> + <span class="nx">$</span><span class="p">(</span><span class="s1">'[data-toggle="tooltip"]'</span><span class="p">).</span><span class="nx">tooltip</span><span class="p">()</span> +<span class="p">})</span></code></pre></figure> + +<h2 id="examples">Examples</h2> + +<p>Hover over the links below to see tooltips:</p> + +<div class="bd-example tooltip-demo"> + <p class="muted">Tight pants next level keffiyeh <a href="#" data-toggle="tooltip" title="Default tooltip">you probably</a> haven't heard of them. Photo booth beard raw denim letterpress vegan messenger bag stumptown. Farm-to-table seitan, mcsweeney's fixie sustainable quinoa 8-bit american apparel <a href="#" data-toggle="tooltip" title="Another tooltip">have a</a> terry richardson vinyl chambray. Beard stumptown, cardigans banh mi lomo thundercats. Tofu biodiesel williamsburg marfa, four loko mcsweeney's cleanse vegan chambray. A really ironic artisan <a href="#" data-toggle="tooltip" title="Another one here too">whatever keytar</a>, scenester farm-to-table banksy Austin <a href="#" data-toggle="tooltip" title="The last tip!">twitter handle</a> freegan cred raw denim single-origin coffee viral. + </p> +</div> + +<p>Hover over the buttons below to see the four tooltips directions: top, right, bottom, and left.</p> + +<div class="bd-example tooltip-demo"> + <div class="bd-example-tooltips"> + <button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="top" title="Tooltip on top">Tooltip on top</button> + <button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="right" title="Tooltip on right">Tooltip on right</button> + <button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="bottom" title="Tooltip on bottom">Tooltip on bottom</button> + <button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="left" title="Tooltip on left">Tooltip on left</button> + <button type="button" class="btn btn-secondary" data-toggle="tooltip" data-html="true" title="<em>Tooltip</em> <u>with</u> <b>HTML</b>">Tooltip with HTML</button> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span> <span class="na">data-toggle=</span><span class="s">"tooltip"</span> <span class="na">data-placement=</span><span class="s">"top"</span> <span class="na">title=</span><span class="s">"Tooltip on top"</span><span class="nt">></span> + Tooltip on top +<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span> <span class="na">data-toggle=</span><span class="s">"tooltip"</span> <span class="na">data-placement=</span><span class="s">"right"</span> <span class="na">title=</span><span class="s">"Tooltip on right"</span><span class="nt">></span> + Tooltip on right +<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span> <span class="na">data-toggle=</span><span class="s">"tooltip"</span> <span class="na">data-placement=</span><span class="s">"bottom"</span> <span class="na">title=</span><span class="s">"Tooltip on bottom"</span><span class="nt">></span> + Tooltip on bottom +<span class="nt"></button></span> +<span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span> <span class="na">data-toggle=</span><span class="s">"tooltip"</span> <span class="na">data-placement=</span><span class="s">"left"</span> <span class="na">title=</span><span class="s">"Tooltip on left"</span><span class="nt">></span> + Tooltip on left +<span class="nt"></button></span></code></pre></figure> + +<p>And with custom HTML added:</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary"</span> <span class="na">data-toggle=</span><span class="s">"tooltip"</span> <span class="na">data-html=</span><span class="s">"true"</span> <span class="na">title=</span><span class="s">"<em>Tooltip</em> <u>with</u> <b>HTML</b>"</span><span class="nt">></span> + Tooltip with HTML +<span class="nt"></button></span></code></pre></figure> + +<h2 id="usage">Usage</h2> + +<p>The tooltip plugin generates content and markup on demand, and by default places tooltips after their trigger element.</p> + +<p>Trigger the tooltip via JavaScript:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#example'</span><span class="p">).</span><span class="nx">tooltip</span><span class="p">(</span><span class="nx">options</span><span class="p">)</span></code></pre></figure> + +<div class="bd-callout bd-callout-warning"> +<h5 id="overflow-auto-and-scroll">Overflow <code class="highlighter-rouge">auto</code> and <code class="highlighter-rouge">scroll</code></h5> + +<p>Tooltip position attempts to automatically change when a parent container has <code class="highlighter-rouge">overflow: auto</code> or <code class="highlighter-rouge">overflow: scroll</code> like our <code class="highlighter-rouge">.table-responsive</code>, but still keeps the original placement’s positioning. To resolve, set the <code class="highlighter-rouge">boundary</code> option to anything other than default value, <code class="highlighter-rouge">'scrollParent'</code>, such as <code class="highlighter-rouge">'window'</code>:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#example'</span><span class="p">).</span><span class="nx">tooltip</span><span class="p">({</span> <span class="na">boundary</span><span class="p">:</span> <span class="s1">'window'</span> <span class="p">})</span></code></pre></figure> + +</div> + +<h3 id="markup">Markup</h3> + +<p>The required markup for a tooltip is only a <code class="highlighter-rouge">data</code> attribute and <code class="highlighter-rouge">title</code> on the HTML element you wish to have a tooltip. The generated markup of a tooltip is rather simple, though it does require a position (by default, set to <code class="highlighter-rouge">top</code> by the plugin).</p> + +<div class="bd-callout bd-callout-warning"> +<h5 id="making-tooltips-work-for-keyboard-and-assistive-technology-users">Making tooltips work for keyboard and assistive technology users</h5> + +<p>You should only add tooltips to HTML elements that are traditionally keyboard-focusable and interactive (such as links or form controls). Although arbitrary HTML elements (such as <code class="highlighter-rouge"><span></code>s) can be made focusable by adding the <code class="highlighter-rouge">tabindex="0"</code> attribute, this will add potentially annoying and confusing tab stops on non-interactive elements for keyboard users. In addition, most assistive technologies currently do not announce the tooltip in this situation.</p> + +<p>Additionally, do not rely solely on <code class="highlighter-rouge">hover</code> as the trigger for your tooltip, as this will make your tooltips impossible to trigger for keyboard users.</p> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- HTML to write --></span> +<span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">data-toggle=</span><span class="s">"tooltip"</span> <span class="na">title=</span><span class="s">"Some tooltip text!"</span><span class="nt">></span>Hover over me<span class="nt"></a></span> + +<span class="c"><!-- Generated markup by the plugin --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"tooltip bs-tooltip-top"</span> <span class="na">role=</span><span class="s">"tooltip"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"arrow"</span><span class="nt">></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"tooltip-inner"</span><span class="nt">></span> + Some tooltip text! + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="disabled-elements">Disabled elements</h3> + +<p>Elements with the <code class="highlighter-rouge">disabled</code> attribute aren’t interactive, meaning users cannot focus, hover, or click them to trigger a tooltip (or popover). As a workaround, you’ll want to trigger the tooltip from a wrapper <code class="highlighter-rouge"><div></code> or <code class="highlighter-rouge"><span></code>, ideally made keyboard-focusable using <code class="highlighter-rouge">tabindex="0"</code>, and override the <code class="highlighter-rouge">pointer-events</code> on the disabled element.</p> + +<div class="tooltip-demo"> + +<div class="bd-example"> +<span class="d-inline-block" tabindex="0" data-toggle="tooltip" title="Disabled tooltip"> + <button class="btn btn-primary" style="pointer-events: none;" type="button" disabled="">Disabled button</button> +</span> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><span</span> <span class="na">class=</span><span class="s">"d-inline-block"</span> <span class="na">tabindex=</span><span class="s">"0"</span> <span class="na">data-toggle=</span><span class="s">"tooltip"</span> <span class="na">title=</span><span class="s">"Disabled tooltip"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">class=</span><span class="s">"btn btn-primary"</span> <span class="na">style=</span><span class="s">"pointer-events: none;"</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">disabled</span><span class="nt">></span>Disabled button<span class="nt"></button></span> +<span class="nt"></span></span></code></pre></figure> + +</div> + +<h3 id="options">Options</h3> + +<p>Options can be passed via data attributes or JavaScript. For data attributes, append the option name to <code class="highlighter-rouge">data-</code>, as in <code class="highlighter-rouge">data-animation=""</code>.</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 100px;">Name</th> + <th style="width: 100px;">Type</th> + <th style="width: 50px;">Default</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>animation</td> + <td>boolean</td> + <td>true</td> + <td>Apply a CSS fade transition to the tooltip</td> + </tr> + <tr> + <td>container</td> + <td>string | element | false</td> + <td>false</td> + <td> + <p>Appends the tooltip to a specific element. Example: <code>container: 'body'</code>. This option is particularly useful in that it allows you to position the tooltip in the flow of the document near the triggering element - which will prevent the tooltip from floating away from the triggering element during a window resize.</p> + </td> + </tr> + <tr> + <td>delay</td> + <td>number | object</td> + <td>0</td> + <td> + <p>Delay showing and hiding the tooltip (ms) - does not apply to manual trigger type</p> + <p>If a number is supplied, delay is applied to both hide/show</p> + <p>Object structure is: <code>delay: { "show": 500, "hide": 100 }</code></p> + </td> + </tr> + <tr> + <td>html</td> + <td>boolean</td> + <td>false</td> + <td> + <p>Allow HTML in the tooltip.</p> + <p>If true, HTML tags in the tooltip's <code>title</code> will be rendered in the tooltip. If false, jQuery's <code>text</code> method will be used to insert content into the DOM.</p> + <p>Use text if you're worried about XSS attacks.</p> + </td> + </tr> + <tr> + <td>placement</td> + <td>string | function</td> + <td>'top'</td> + <td> + <p>How to position the tooltip - auto | top | bottom | left | right.<br />When <code>auto</code> is specified, it will dynamically reorient the tooltip.</p> + <p>When a function is used to determine the placement, it is called with the tooltip DOM node as its first argument and the triggering element DOM node as its second. The <code>this</code> context is set to the tooltip instance.</p> + </td> + </tr> + <tr> + <td>selector</td> + <td>string | false</td> + <td>false</td> + <td>If a selector is provided, tooltip objects will be delegated to the specified targets. In practice, this is used to also apply tooltips to dynamically added DOM elements (<code>jQuery.on</code> support). See <a href="https://github.com/twbs/bootstrap/issues/4215">this</a> and <a href="https://codepen.io/Johann-S/pen/djJYPb">an informative example</a>.</td> + </tr> + <tr> + <td>template</td> + <td>string</td> + <td><code>'<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>'</code></td> + <td> + <p>Base HTML to use when creating the tooltip.</p> + <p>The tooltip's <code>title</code> will be injected into the <code>.tooltip-inner</code>.</p> + <p><code>.arrow</code> will become the tooltip's arrow.</p> + <p>The outermost wrapper element should have the <code>.tooltip</code> class and <code>role="tooltip"</code>.</p> + </td> + </tr> + <tr> + <td>title</td> + <td>string | element | function</td> + <td>''</td> + <td> + <p>Default title value if <code>title</code> attribute isn't present.</p> + <p>If a function is given, it will be called with its <code>this</code> reference set to the element that the tooltip is attached to.</p> + </td> + </tr> + <tr> + <td>trigger</td> + <td>string</td> + <td>'hover focus'</td> + <td> + <p>How tooltip is triggered - click | hover | focus | manual. You may pass multiple triggers; separate them with a space.</p> + <p><code>'manual'</code> indicates that the tooltip will be triggered programmatically via the <code>.tooltip('show')</code>, <code>.tooltip('hide')</code> and <code>.tooltip('toggle')</code> methods; this value cannot be combined with any other trigger.</p> + <p><code>'hover'</code> on its own will result in tooltips that cannot be triggered via the keyboard, and should only be used if alternative methods for conveying the same information for keyboard users is present.</p> + </td> + </tr> + <tr> + <td>offset</td> + <td>number | string | function</td> + <td>0</td> + <td> + <p>Offset of the tooltip relative to its target.</p> + <p>When a function is used to determine the offset, it is called with an object containing the offset data as its first argument. The function must return an object with the same structure. The triggering element DOM node is passed as the second argument.</p> + <p>For more information refer to Popper.js's <a href="https://popper.js.org/popper-documentation.html#modifiers..offset.offset">offset docs</a>.</p> + </td> + </tr> + <tr> + <td>fallbackPlacement</td> + <td>string | array</td> + <td>'flip'</td> + <td>Allow to specify which position Popper will use on fallback. For more information refer to + Popper.js's <a href="https://popper.js.org/popper-documentation.html#modifiers..flip.behavior">behavior docs</a></td> + </tr> + <tr> + <td>boundary</td> + <td>string | element</td> + <td>'scrollParent'</td> + <td>Overflow constraint boundary of the tooltip. Accepts the values of <code>'viewport'</code>, <code>'window'</code>, <code>'scrollParent'</code>, or an HTMLElement reference (JavaScript only). For more information refer to Popper.js's <a href="https://popper.js.org/popper-documentation.html#modifiers..preventOverflow.boundariesElement">preventOverflow docs</a>.</td> + </tr> + </tbody> +</table> + +<div class="bd-callout bd-callout-info"> +<h4 id="data-attributes-for-individual-tooltips">Data attributes for individual tooltips</h4> + +<p>Options for individual tooltips can alternatively be specified through the use of data attributes, as explained above.</p> +</div> + +<h3 id="methods">Methods</h3> + +<div class="bd-callout bd-callout-danger"> +<h4 id="asynchronous-methods-and-transitions">Asynchronous methods and transitions</h4> + +<p>All API methods are <strong>asynchronous</strong> and start a <strong>transition</strong>. They return to the caller as soon as the transition is started but <strong>before it ends</strong>. In addition, a method call on a <strong>transitioning component will be ignored</strong>.</p> + +<p><a href="/docs/4.3/getting-started/javascript/">See our JavaScript documentation for more information</a>.</p> +</div> + +<h4 id="tooltipoptions"><code class="highlighter-rouge">$().tooltip(options)</code></h4> + +<p>Attaches a tooltip handler to an element collection.</p> + +<h4 id="tooltipshow"><code class="highlighter-rouge">.tooltip('show')</code></h4> + +<p>Reveals an element’s tooltip. <strong>Returns to the caller before the tooltip has actually been shown</strong> (i.e. before the <code class="highlighter-rouge">shown.bs.tooltip</code> event occurs). This is considered a “manual†triggering of the tooltip. Tooltips with zero-length titles are never displayed.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">tooltip</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span></code></pre></figure> + +<h4 id="tooltiphide"><code class="highlighter-rouge">.tooltip('hide')</code></h4> + +<p>Hides an element’s tooltip. <strong>Returns to the caller before the tooltip has actually been hidden</strong> (i.e. before the <code class="highlighter-rouge">hidden.bs.tooltip</code> event occurs). This is considered a “manual†triggering of the tooltip.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">tooltip</span><span class="p">(</span><span class="s1">'hide'</span><span class="p">)</span></code></pre></figure> + +<h4 id="tooltiptoggle"><code class="highlighter-rouge">.tooltip('toggle')</code></h4> + +<p>Toggles an element’s tooltip. <strong>Returns to the caller before the tooltip has actually been shown or hidden</strong> (i.e. before the <code class="highlighter-rouge">shown.bs.tooltip</code> or <code class="highlighter-rouge">hidden.bs.tooltip</code> event occurs). This is considered a “manual†triggering of the tooltip.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">tooltip</span><span class="p">(</span><span class="s1">'toggle'</span><span class="p">)</span></code></pre></figure> + +<h4 id="tooltipdispose"><code class="highlighter-rouge">.tooltip('dispose')</code></h4> + +<p>Hides and destroys an element’s tooltip. Tooltips that use delegation (which are created using <a href="#options">the <code class="highlighter-rouge">selector</code> option</a>) cannot be individually destroyed on descendant trigger elements.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">tooltip</span><span class="p">(</span><span class="s1">'dispose'</span><span class="p">)</span></code></pre></figure> + +<h4 id="tooltipenable"><code class="highlighter-rouge">.tooltip('enable')</code></h4> + +<p>Gives an element’s tooltip the ability to be shown. <strong>Tooltips are enabled by default.</strong></p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">tooltip</span><span class="p">(</span><span class="s1">'enable'</span><span class="p">)</span></code></pre></figure> + +<h4 id="tooltipdisable"><code class="highlighter-rouge">.tooltip('disable')</code></h4> + +<p>Removes the ability for an element’s tooltip to be shown. The tooltip will only be able to be shown if it is re-enabled.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">tooltip</span><span class="p">(</span><span class="s1">'disable'</span><span class="p">)</span></code></pre></figure> + +<h4 id="tooltiptoggleenabled"><code class="highlighter-rouge">.tooltip('toggleEnabled')</code></h4> + +<p>Toggles the ability for an element’s tooltip to be shown or hidden.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">tooltip</span><span class="p">(</span><span class="s1">'toggleEnabled'</span><span class="p">)</span></code></pre></figure> + +<h4 id="tooltipupdate"><code class="highlighter-rouge">.tooltip('update')</code></h4> + +<p>Updates the position of an element’s tooltip.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#element'</span><span class="p">).</span><span class="nx">tooltip</span><span class="p">(</span><span class="s1">'update'</span><span class="p">)</span></code></pre></figure> + +<h3 id="events">Events</h3> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th style="width: 150px;">Event Type</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td>show.bs.tooltip</td> + <td>This event fires immediately when the <code>show</code> instance method is called.</td> + </tr> + <tr> + <td>shown.bs.tooltip</td> + <td>This event is fired when the tooltip has been made visible to the user (will wait for CSS transitions to complete).</td> + </tr> + <tr> + <td>hide.bs.tooltip</td> + <td>This event is fired immediately when the <code>hide</code> instance method has been called.</td> + </tr> + <tr> + <td>hidden.bs.tooltip</td> + <td>This event is fired when the tooltip has finished being hidden from the user (will wait for CSS transitions to complete).</td> + </tr> + <tr> + <td>inserted.bs.tooltip</td> + <td>This event is fired after the <code>show.bs.tooltip</code> event when the tooltip template has been added to the DOM.</td> + </tr> + </tbody> +</table> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myTooltip'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'hidden.bs.tooltip'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> + <span class="c1">// do something...</span> +<span class="p">})</span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/content/code/index.html b/docs/4.3/content/code/index.html new file mode 100644 index 0000000000..841858b732 --- /dev/null +++ b/docs/4.3/content/code/index.html @@ -0,0 +1,541 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Documentation and examples for displaying inline and multiline blocks of code with Bootstrap."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Code · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/content/code/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Code"> +<meta name="twitter:description" content="Documentation and examples for displaying inline and multiline blocks of code with Bootstrap."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/content/code/"> +<meta property="og:title" content="Code"> +<meta property="og:description" content="Documentation and examples for displaying inline and multiline blocks of code with Bootstrap."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#inline-code">Inline code</a></li> +<li class="toc-entry toc-h2"><a href="#code-blocks">Code blocks</a></li> +<li class="toc-entry toc-h2"><a href="#variables">Variables</a></li> +<li class="toc-entry toc-h2"><a href="#user-input">User input</a></li> +<li class="toc-entry toc-h2"><a href="#sample-output">Sample output</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Code</h1> + <p class="bd-lead">Documentation and examples for displaying inline and multiline blocks of code with Bootstrap.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="inline-code">Inline code</h2> + +<p>Wrap inline snippets of code with <code class="highlighter-rouge"><code></code>. Be sure to escape HTML angle brackets.</p> + +<div class="bd-example"> +For example, <code><section></code> should be wrapped as inline. +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html">For example, <span class="nt"><code></span><span class="ni">&lt;</span>section<span class="ni">&gt;</span><span class="nt"></code></span> should be wrapped as inline.</code></pre></figure> + +<h2 id="code-blocks">Code blocks</h2> + +<p>Use <code class="highlighter-rouge"><pre></code>s for multiple lines of code. Once again, be sure to escape any angle brackets in the code for proper rendering. You may optionally add the <code class="highlighter-rouge">.pre-scrollable</code> class, which will set a max-height of 340px and provide a y-axis scrollbar.</p> + +<div class="bd-example"> +<pre><code><p>Sample text here...</p> +<p>And another line of sample text here...</p> +</code></pre> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><pre><code></span><span class="ni">&lt;</span>p<span class="ni">&gt;</span>Sample text here...<span class="ni">&lt;</span>/p<span class="ni">&gt;</span> +<span class="ni">&lt;</span>p<span class="ni">&gt;</span>And another line of sample text here...<span class="ni">&lt;</span>/p<span class="ni">&gt;</span> +<span class="nt"></code></pre></span></code></pre></figure> + +<h2 id="variables">Variables</h2> + +<p>For indicating variables use the <code class="highlighter-rouge"><var></code> tag.</p> + +<div class="bd-example"> +<var>y</var> = <var>m</var><var>x</var> + <var>b</var> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><var></span>y<span class="nt"></var></span> = <span class="nt"><var></span>m<span class="nt"></var><var></span>x<span class="nt"></var></span> + <span class="nt"><var></span>b<span class="nt"></var></span></code></pre></figure> + +<h2 id="user-input">User input</h2> + +<p>Use the <code class="highlighter-rouge"><kbd></code> to indicate input that is typically entered via keyboard.</p> + +<div class="bd-example"> +To switch directories, type <kbd>cd</kbd> followed by the name of the directory.<br /> +To edit settings, press <kbd><kbd>ctrl</kbd> + <kbd>,</kbd></kbd> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html">To switch directories, type <span class="nt"><kbd></span>cd<span class="nt"></kbd></span> followed by the name of the directory.<span class="nt"><br></span> +To edit settings, press <span class="nt"><kbd><kbd></span>ctrl<span class="nt"></kbd></span> + <span class="nt"><kbd></span>,<span class="nt"></kbd></kbd></span></code></pre></figure> + +<h2 id="sample-output">Sample output</h2> + +<p>For indicating sample output from a program use the <code class="highlighter-rouge"><samp></code> tag.</p> + +<div class="bd-example"> +<samp>This text is meant to be treated as sample output from a computer program.</samp> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><samp></span>This text is meant to be treated as sample output from a computer program.<span class="nt"></samp></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/content/figures/index.html b/docs/4.3/content/figures/index.html new file mode 100644 index 0000000000..97b4e8c125 --- /dev/null +++ b/docs/4.3/content/figures/index.html @@ -0,0 +1,508 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Documentation and examples for displaying related images and text with the figure component in Bootstrap."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Figures · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/content/figures/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Figures"> +<meta name="twitter:description" content="Documentation and examples for displaying related images and text with the figure component in Bootstrap."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/content/figures/"> +<meta property="og:title" content="Figures"> +<meta property="og:description" content="Documentation and examples for displaying related images and text with the figure component in Bootstrap."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Figures</h1> + <p class="bd-lead">Documentation and examples for displaying related images and text with the figure component in Bootstrap.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>Anytime you need to display a piece of content—like an image with an optional caption, consider using a <code class="highlighter-rouge"><figure></code>.</p> + +<p>Use the included <code class="highlighter-rouge">.figure</code> , <code class="highlighter-rouge">.figure-img</code> and <code class="highlighter-rouge">.figure-caption</code> classes to provide some baseline styles for the HTML5 <code class="highlighter-rouge"><figure></code> and <code class="highlighter-rouge"><figcaption></code> elements. Images in figures have no explicit size, so be sure to add the <code class="highlighter-rouge">.img-fluid</code> class to your <code class="highlighter-rouge"><img></code> to make it responsive.</p> + +<div class="bd-example"> +<figure class="figure"> + <svg class="bd-placeholder-img figure-img img-fluid rounded" width="400" height="300" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 400x300"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">400x300</text></svg> + <figcaption class="figure-caption">A caption for the above image.</figcaption> +</figure> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><figure</span> <span class="na">class=</span><span class="s">"figure"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"figure-img img-fluid rounded"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><figcaption</span> <span class="na">class=</span><span class="s">"figure-caption"</span><span class="nt">></span>A caption for the above image.<span class="nt"></figcaption></span> +<span class="nt"></figure></span></code></pre></figure> + +<p>Aligning the figure’s caption is easy with our <a href="/docs/4.3/utilities/text/#text-alignment">text utilities</a>.</p> + +<div class="bd-example"> +<figure class="figure"> + <svg class="bd-placeholder-img figure-img img-fluid rounded" width="400" height="300" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 400x300"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">400x300</text></svg> + <figcaption class="figure-caption text-right">A caption for the above image.</figcaption> +</figure> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><figure</span> <span class="na">class=</span><span class="s">"figure"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"figure-img img-fluid rounded"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><figcaption</span> <span class="na">class=</span><span class="s">"figure-caption text-right"</span><span class="nt">></span>A caption for the above image.<span class="nt"></figcaption></span> +<span class="nt"></figure></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/content/images/index.html b/docs/4.3/content/images/index.html new file mode 100644 index 0000000000..bd96862e43 --- /dev/null +++ b/docs/4.3/content/images/index.html @@ -0,0 +1,552 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Documentation and examples for opting images into responsive behavior (so they never become larger than their parent elements) and add lightweight styles to them—all via classes."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Images · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/content/images/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Images"> +<meta name="twitter:description" content="Documentation and examples for opting images into responsive behavior (so they never become larger than their parent elements) and add lightweight styles to them—all via classes."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/content/images/"> +<meta property="og:title" content="Images"> +<meta property="og:description" content="Documentation and examples for opting images into responsive behavior (so they never become larger than their parent elements) and add lightweight styles to them—all via classes."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#responsive-images">Responsive images</a></li> +<li class="toc-entry toc-h2"><a href="#image-thumbnails">Image thumbnails</a></li> +<li class="toc-entry toc-h2"><a href="#aligning-images">Aligning images</a></li> +<li class="toc-entry toc-h2"><a href="#picture">Picture</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Images</h1> + <p class="bd-lead">Documentation and examples for opting images into responsive behavior (so they never become larger than their parent elements) and add lightweight styles to them—all via classes.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="responsive-images">Responsive images</h2> + +<p>Images in Bootstrap are made responsive with <code class="highlighter-rouge">.img-fluid</code>. <code class="highlighter-rouge">max-width: 100%;</code> and <code class="highlighter-rouge">height: auto;</code> are applied to the image so that it scales with the parent element.</p> + +<div class="bd-example"> + <svg class="bd-placeholder-img bd-placeholder-img-lg img-fluid" width="100%" height="250" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Responsive image"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Responsive image</text></svg> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"img-fluid"</span> <span class="na">alt=</span><span class="s">"Responsive image"</span><span class="nt">></span></code></pre></figure> + +<div class="bd-callout bd-callout-warning"> +<h5 id="svg-images-and-ie-10">SVG images and IE 10</h5> + +<p>In Internet Explorer 10, SVG images with <code class="highlighter-rouge">.img-fluid</code> are disproportionately sized. To fix this, add <code class="highlighter-rouge">width: 100% \9;</code> where necessary. This fix improperly sizes other image formats, so Bootstrap doesn’t apply it automatically.</p> +</div> + +<h2 id="image-thumbnails">Image thumbnails</h2> + +<p>In addition to our <a href="/docs/4.3/utilities/borders/">border-radius utilities</a>, you can use <code class="highlighter-rouge">.img-thumbnail</code> to give an image a rounded 1px border appearance.</p> + +<div class="bd-example bd-example-images"> + <svg class="bd-placeholder-img img-thumbnail" width="200" height="200" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="A generic square placeholder image with a white border around it, making it resemble a photograph taken with an old instant camera: 200x200"><title>A generic square placeholder image with a white border around it, making it resemble a photograph taken with an old instant camera</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">200x200</text></svg> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">alt=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"img-thumbnail"</span><span class="nt">></span></code></pre></figure> + +<h2 id="aligning-images">Aligning images</h2> + +<p>Align images with the <a href="/docs/4.3/utilities/float/">helper float classes</a> or <a href="/docs/4.3/utilities/text/#text-alignment">text alignment classes</a>. <code class="highlighter-rouge">block</code>-level images can be centered using <a href="/docs/4.3/utilities/spacing/#horizontal-centering">the <code class="highlighter-rouge">.mx-auto</code> margin utility class</a>.</p> + +<div class="bd-example bd-example-images"> + <svg class="bd-placeholder-img rounded float-left" width="200" height="200" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 200x200"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">200x200</text></svg> + <svg class="bd-placeholder-img rounded float-right" width="200" height="200" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 200x200"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">200x200</text></svg> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded float-left"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> +<span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded float-right"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span></code></pre></figure> + +<div class="bd-example bd-example-images"> + <svg class="bd-placeholder-img rounded mx-auto d-block" width="200" height="200" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 200x200"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">200x200</text></svg> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded mx-auto d-block"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span></code></pre></figure> + +<div class="bd-example bd-example-images"> + <div class="text-center"> + <svg class="bd-placeholder-img rounded" width="200" height="200" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 200x200"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">200x200</text></svg> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"text-center"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="picture">Picture</h2> + +<p>If you are using the <code class="highlighter-rouge"><picture></code> element to specify multiple <code class="highlighter-rouge"><source></code> elements for a specific <code class="highlighter-rouge"><img></code>, make sure to add the <code class="highlighter-rouge">.img-*</code> classes to the <code class="highlighter-rouge"><img></code> and not to the <code class="highlighter-rouge"><picture></code> tag.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html">​<span class="nt"><picture></span> + <span class="nt"><source</span> <span class="na">srcset=</span><span class="s">"..."</span> <span class="na">type=</span><span class="s">"image/svg+xml"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"img-fluid img-thumbnail"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> +<span class="nt"></picture></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/content/index.html b/docs/4.3/content/index.html new file mode 100644 index 0000000000..aa2691eb69 --- /dev/null +++ b/docs/4.3/content/index.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<html lang="en-US"> + <meta charset="utf-8"> + <title>Redirecting…</title> + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/content/reboot/"> + <script>location="https://getbootstrap.com/docs/4.3/content/reboot/"</script> + <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.3/content/reboot/"> + <meta name="robots" content="noindex"> + <h1>Redirecting…</h1> + <a href="https://getbootstrap.com/docs/4.3/content/reboot/">Click here if you are not redirected.</a> +</html> diff --git a/docs/4.3/content/reboot/index.html b/docs/4.3/content/reboot/index.html new file mode 100644 index 0000000000..8dfbb0f4ef --- /dev/null +++ b/docs/4.3/content/reboot/index.html @@ -0,0 +1,877 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Reboot, a collection of element-specific CSS changes in a single file, kickstart Bootstrap to provide an elegant, consistent, and simple baseline to build upon."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Reboot · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/content/reboot/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Reboot"> +<meta name="twitter:description" content="Reboot, a collection of element-specific CSS changes in a single file, kickstart Bootstrap to provide an elegant, consistent, and simple baseline to build upon."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/content/reboot/"> +<meta property="og:title" content="Reboot"> +<meta property="og:description" content="Reboot, a collection of element-specific CSS changes in a single file, kickstart Bootstrap to provide an elegant, consistent, and simple baseline to build upon."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li class="active bd-sidenav-active"> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#approach">Approach</a></li> +<li class="toc-entry toc-h2"><a href="#page-defaults">Page defaults</a></li> +<li class="toc-entry toc-h2"><a href="#native-font-stack">Native font stack</a></li> +<li class="toc-entry toc-h2"><a href="#headings-and-paragraphs">Headings and paragraphs</a></li> +<li class="toc-entry toc-h2"><a href="#lists">Lists</a></li> +<li class="toc-entry toc-h2"><a href="#preformatted-text">Preformatted text</a></li> +<li class="toc-entry toc-h2"><a href="#tables">Tables</a></li> +<li class="toc-entry toc-h2"><a href="#forms">Forms</a></li> +<li class="toc-entry toc-h2"><a href="#misc-elements">Misc elements</a> +<ul> +<li class="toc-entry toc-h3"><a href="#address">Address</a></li> +<li class="toc-entry toc-h3"><a href="#blockquote">Blockquote</a></li> +<li class="toc-entry toc-h3"><a href="#inline-elements">Inline elements</a></li> +<li class="toc-entry toc-h3"><a href="#summary">Summary</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#html5-hidden-attribute">HTML5 [hidden] attribute</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Reboot</h1> + <p class="bd-lead">Reboot, a collection of element-specific CSS changes in a single file, kickstart Bootstrap to provide an elegant, consistent, and simple baseline to build upon.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="approach">Approach</h2> + +<p>Reboot builds upon Normalize, providing many HTML elements with somewhat opinionated styles using only element selectors. Additional styling is done only with classes. For example, we reboot some <code class="highlighter-rouge"><table></code> styles for a simpler baseline and later provide <code class="highlighter-rouge">.table</code>, <code class="highlighter-rouge">.table-bordered</code>, and more.</p> + +<p>Here are our guidelines and reasons for choosing what to override in Reboot:</p> + +<ul> + <li>Update some browser default values to use <code class="highlighter-rouge">rem</code>s instead of <code class="highlighter-rouge">em</code>s for scalable component spacing.</li> + <li>Avoid <code class="highlighter-rouge">margin-top</code>. Vertical margins can collapse, yielding unexpected results. More importantly though, a single direction of <code class="highlighter-rouge">margin</code> is a simpler mental model.</li> + <li>For easier scaling across device sizes, block elements should use <code class="highlighter-rouge">rem</code>s for <code class="highlighter-rouge">margin</code>s.</li> + <li>Keep declarations of <code class="highlighter-rouge">font</code>-related properties to a minimum, using <code class="highlighter-rouge">inherit</code> whenever possible.</li> +</ul> + +<h2 id="page-defaults">Page defaults</h2> + +<p>The <code class="highlighter-rouge"><span class="nt"><html></span></code> and <code class="highlighter-rouge"><body></code> elements are updated to provide better page-wide defaults. More specifically:</p> + +<ul> + <li>The <code class="highlighter-rouge">box-sizing</code> is globally set on every element—including <code class="highlighter-rouge">*::before</code> and <code class="highlighter-rouge">*::after</code>, to <code class="highlighter-rouge">border-box</code>. This ensures that the declared width of element is never exceeded due to padding or border. + <ul> + <li>No base <code class="highlighter-rouge">font-size</code> is declared on the <code class="highlighter-rouge"><span class="nt"><html></span></code>, but <code class="highlighter-rouge">16px</code> is assumed (the browser default). <code class="highlighter-rouge">font-size: 1rem</code> is applied on the <code class="highlighter-rouge"><body></code> for easy responsive type-scaling via media queries while respecting user preferences and ensuring a more accessible approach.</li> + </ul> + </li> + <li>The <code class="highlighter-rouge"><body></code> also sets a global <code class="highlighter-rouge">font-family</code>, <code class="highlighter-rouge">line-height</code>, and <code class="highlighter-rouge">text-align</code>. This is inherited later by some form elements to prevent font inconsistencies.</li> + <li>For safety, the <code class="highlighter-rouge"><body></code> has a declared <code class="highlighter-rouge">background-color</code>, defaulting to <code class="highlighter-rouge">#fff</code>.</li> +</ul> + +<h2 id="native-font-stack">Native font stack</h2> + +<p>The default web fonts (Helvetica Neue, Helvetica, and Arial) have been dropped in Bootstrap 4 and replaced with a “native font stack†for optimum text rendering on every device and OS. Read more about <a href="https://www.smashingmagazine.com/2015/11/using-system-ui-fonts-practical-guide/">native font stacks in this <em>Smashing Magazine</em> article</a>.</p> + +<figure class="highlight"><pre><code class="language-sass" data-lang="sass"><span class="nv">$font-family-sans-serif</span><span class="p">:</span> + <span class="c1">// Safari for macOS and iOS (San Francisco)</span> + <span class="nt">-apple-system</span><span class="o">,</span> + <span class="c1">// Chrome < 56 for macOS (San Francisco)</span> + <span class="nt">BlinkMacSystemFont</span><span class="o">,</span> + <span class="c1">// Windows</span> + <span class="s2">"Segoe UI"</span><span class="o">,</span> + <span class="c1">// Android</span> + <span class="s2">"Roboto"</span><span class="o">,</span> + <span class="c1">// Basic web fallback</span> + <span class="s2">"Helvetica Neue"</span><span class="o">,</span> <span class="nt">Arial</span><span class="o">,</span> <span class="nt">sans-serif</span><span class="o">,</span> + <span class="c1">// Emoji fonts</span> + <span class="s2">"Apple Color Emoji"</span><span class="o">,</span> <span class="s2">"Segoe UI Emoji"</span><span class="o">,</span> <span class="s2">"Segoe UI Symbol"</span> <span class="o">!</span><span class="nt">default</span><span class="o">;</span></code></pre></figure> + +<p>This <code class="highlighter-rouge">font-family</code> is applied to the <code class="highlighter-rouge"><body></code> and automatically inherited globally throughout Bootstrap. To switch the global <code class="highlighter-rouge">font-family</code>, update <code class="highlighter-rouge">$font-family-base</code> and recompile Bootstrap.</p> + +<h2 id="headings-and-paragraphs">Headings and paragraphs</h2> + +<p>All heading elements—e.g., <code class="highlighter-rouge"><h1></code>—and <code class="highlighter-rouge"><p></code> are reset to have their <code class="highlighter-rouge">margin-top</code> removed. Headings have <code class="highlighter-rouge">margin-bottom: .5rem</code> added and paragraphs <code class="highlighter-rouge">margin-bottom: 1rem</code> for easy spacing.</p> + +<table> + <thead> + <tr> + <th>Heading</th> + <th>Example</th> + </tr> + </thead> + <tbody> + <tr> + <td> + <p><code class="highlighter-rouge"><h1></h1></code></p> + + </td> + <td><span class="h1">h1. Bootstrap heading</span></td> + </tr> + <tr> + <td> + <p><code class="highlighter-rouge"><h2></h2></code></p> + + </td> + <td><span class="h2">h2. Bootstrap heading</span></td> + </tr> + <tr> + <td> + <p><code class="highlighter-rouge"><h3></h3></code></p> + + </td> + <td><span class="h3">h3. Bootstrap heading</span></td> + </tr> + <tr> + <td> + <p><code class="highlighter-rouge"><h4></h4></code></p> + + </td> + <td><span class="h4">h4. Bootstrap heading</span></td> + </tr> + <tr> + <td> + <p><code class="highlighter-rouge"><h5></h5></code></p> + + </td> + <td><span class="h5">h5. Bootstrap heading</span></td> + </tr> + <tr> + <td> + <p><code class="highlighter-rouge"><h6></h6></code></p> + + </td> + <td><span class="h6">h6. Bootstrap heading</span></td> + </tr> + </tbody> +</table> + +<h2 id="lists">Lists</h2> + +<p>All lists—<code class="highlighter-rouge"><ul></code>, <code class="highlighter-rouge"><ol></code>, and <code class="highlighter-rouge"><dl></code>—have their <code class="highlighter-rouge">margin-top</code> removed and a <code class="highlighter-rouge">margin-bottom: 1rem</code>. Nested lists have no <code class="highlighter-rouge">margin-bottom</code>.</p> + +<div class="bd-example"> + + +<ul> + <li>Lorem ipsum dolor sit amet</li> + <li>Consectetur adipiscing elit</li> + <li>Integer molestie lorem at massa</li> + <li>Facilisis in pretium nisl aliquet</li> + <li>Nulla volutpat aliquam velit + <ul> + <li>Phasellus iaculis neque</li> + <li>Purus sodales ultricies</li> + <li>Vestibulum laoreet porttitor sem</li> + <li>Ac tristique libero volutpat at</li> + </ul> + </li> + <li>Faucibus porta lacus fringilla vel</li> + <li>Aenean sit amet erat nunc</li> + <li>Eget porttitor lorem</li> +</ul> + +<ol> + <li>Lorem ipsum dolor sit amet</li> + <li>Consectetur adipiscing elit</li> + <li>Integer molestie lorem at massa</li> + <li>Facilisis in pretium nisl aliquet</li> + <li>Nulla volutpat aliquam velit</li> + <li>Faucibus porta lacus fringilla vel</li> + <li>Aenean sit amet erat nunc</li> + <li>Eget porttitor lorem</li> +</ol> + +</div> + +<p>For simpler styling, clear hierarchy, and better spacing, description lists have updated <code class="highlighter-rouge">margin</code>s. <code class="highlighter-rouge"><dd></code>s reset <code class="highlighter-rouge">margin-left</code> to <code class="highlighter-rouge">0</code> and add <code class="highlighter-rouge">margin-bottom: .5rem</code>. <code class="highlighter-rouge"><dt></code>s are <strong>bolded</strong>.</p> + +<div class="bd-example"> + <dl> + <dt>Description lists</dt> + <dd>A description list is perfect for defining terms.</dd> + <dt>Euismod</dt> + <dd>Vestibulum id ligula porta felis euismod semper eget lacinia odio sem.</dd> + <dd>Donec id elit non mi porta gravida at eget metus.</dd> + <dt>Malesuada porta</dt> + <dd>Etiam porta sem malesuada magna mollis euismod.</dd> + </dl> +</div> + +<h2 id="preformatted-text">Preformatted text</h2> + +<p>The <code class="highlighter-rouge"><pre></code> element is reset to remove its <code class="highlighter-rouge">margin-top</code> and use <code class="highlighter-rouge">rem</code> units for its <code class="highlighter-rouge">margin-bottom</code>.</p> + +<div class="bd-example"> +<pre> +.example-element { + margin-bottom: 1rem; +} +</pre> +</div> + +<h2 id="tables">Tables</h2> + +<p>Tables are slightly adjusted to style <code class="highlighter-rouge"><caption></code>s, collapse borders, and ensure consistent <code class="highlighter-rouge">text-align</code> throughout. Additional changes for borders, padding, and more come with <a href="/docs/4.3/content/tables/">the <code class="highlighter-rouge">.table</code> class</a>.</p> + +<div class="bd-example"> + <table> + <caption> + This is an example table, and this is its caption to describe the contents. + </caption> + <thead> + <tr> + <th>Table heading</th> + <th>Table heading</th> + <th>Table heading</th> + <th>Table heading</th> + </tr> + </thead> + <tbody> + <tr> + <td>Table cell</td> + <td>Table cell</td> + <td>Table cell</td> + <td>Table cell</td> + </tr> + <tr> + <td>Table cell</td> + <td>Table cell</td> + <td>Table cell</td> + <td>Table cell</td> + </tr> + <tr> + <td>Table cell</td> + <td>Table cell</td> + <td>Table cell</td> + <td>Table cell</td> + </tr> + </tbody> + </table> +</div> + +<h2 id="forms">Forms</h2> + +<p>Various form elements have been rebooted for simpler base styles. Here are some of the most notable changes:</p> + +<ul> + <li><code class="highlighter-rouge"><fieldset></code>s have no borders, padding, or margin so they can be easily used as wrappers for individual inputs or groups of inputs.</li> + <li><code class="highlighter-rouge"><legend></code>s, like fieldsets, have also been restyled to be displayed as a heading of sorts.</li> + <li><code class="highlighter-rouge"><label></code>s are set to <code class="highlighter-rouge">display: inline-block</code> to allow <code class="highlighter-rouge">margin</code> to be applied.</li> + <li><code class="highlighter-rouge"><input></code>s, <code class="highlighter-rouge"><select></code>s, <code class="highlighter-rouge"><textarea></code>s, and <code class="highlighter-rouge"><button></code>s are mostly addressed by Normalize, but Reboot removes their <code class="highlighter-rouge">margin</code> and sets <code class="highlighter-rouge">line-height: inherit</code>, too.</li> + <li><code class="highlighter-rouge"><textarea></code>s are modified to only be resizable vertically as horizontal resizing often “breaks†page layout.</li> + <li><code class="highlighter-rouge"><button></code>s and <code class="highlighter-rouge"><input></code> button elements have <code class="highlighter-rouge">cursor: pointer</code> when <code class="highlighter-rouge">:not(:disabled)</code>.</li> +</ul> + +<p>These changes, and more, are demonstrated below.</p> + +<form class="bd-example"> + <fieldset> + <legend>Example legend</legend> + + <p> + <label for="input">Example input</label> + <input type="text" id="input" placeholder="Example input" /> + </p> + + <p> + <label for="select">Example select</label> + <select id="select"> + <option value="">Choose...</option> + <optgroup label="Option group 1"> + <option value="">Option 1</option> + <option value="">Option 2</option> + <option value="">Option 3</option> + </optgroup> + <optgroup label="Option group 2"> + <option value="">Option 4</option> + <option value="">Option 5</option> + <option value="">Option 6</option> + </optgroup> + </select> + </p> + + <p> + <label> + <input type="checkbox" value="" /> + Check this checkbox + </label> + </p> + + <p> + <label> + <input type="radio" name="optionsRadios" id="optionsRadios1" value="option1" checked="" /> + Option one is this and that + </label> + <label> + <input type="radio" name="optionsRadios" id="optionsRadios2" value="option2" /> + Option two is something else that's also super long to demonstrate the wrapping of these fancy form controls. + </label> + <label> + <input type="radio" name="optionsRadios" id="optionsRadios3" value="option3" disabled="" /> + Option three is disabled + </label> + </p> + + <p> + <label for="textarea">Example textarea</label> + <textarea id="textarea" rows="3"></textarea> + </p> + + <p> + <label for="date">Example date</label> + <input type="date" id="date" /> + </p> + + <p> + <label for="time">Example time</label> + <input type="time" id="time" /> + </p> + + <p> + <label for="output">Example output</label> + <output name="result" id="output">100</output> + </p> + + <p> + <button type="submit">Button submit</button> + <input type="submit" value="Input submit button" /> + <input type="reset" value="Input reset button" /> + <input type="button" value="Input button" /> + </p> + + <p> + <button type="submit" disabled="">Button submit</button> + <input type="submit" value="Input submit button" disabled="" /> + <input type="reset" value="Input reset button" disabled="" /> + <input type="button" value="Input button" disabled="" /> + </p> + </fieldset> +</form> + +<h2 id="misc-elements">Misc elements</h2> + +<h3 id="address">Address</h3> + +<p>The <code class="highlighter-rouge"><address></code> element is updated to reset the browser default <code class="highlighter-rouge">font-style</code> from <code class="highlighter-rouge">italic</code> to <code class="highlighter-rouge">normal</code>. <code class="highlighter-rouge">line-height</code> is also now inherited, and <code class="highlighter-rouge">margin-bottom: 1rem</code> has been added. <code class="highlighter-rouge"><address></code>s are for presenting contact information for the nearest ancestor (or an entire body of work). Preserve formatting by ending lines with <code class="highlighter-rouge"><br></code>.</p> + +<div class="bd-example"> + <address> + <strong>Twitter, Inc.</strong><br /> + 1355 Market St, Suite 900<br /> + San Francisco, CA 94103<br /> + <abbr title="Phone">P:</abbr> (123) 456-7890 + </address> + + <address> + <strong>Full Name</strong><br /> + <a href="mailto:first.last@example.com">first.last@example.com</a> + </address> +</div> + +<h3 id="blockquote">Blockquote</h3> + +<p>The default <code class="highlighter-rouge">margin</code> on blockquotes is <code class="highlighter-rouge">1em 40px</code>, so we reset that to <code class="highlighter-rouge">0 0 1rem</code> for something more consistent with other elements.</p> + +<div class="bd-example"> + <blockquote class="blockquote"> + <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p> + <footer>Someone famous in <cite title="Source Title">Source Title</cite></footer> + </blockquote> +</div> + +<h3 id="inline-elements">Inline elements</h3> + +<p>The <code class="highlighter-rouge"><abbr></code> element receives basic styling to make it stand out amongst paragraph text.</p> + +<div class="bd-example"> + Nulla <abbr title="attribute">attr</abbr> vitae elit libero, a pharetra augue. +</div> + +<h3 id="summary">Summary</h3> + +<p>The default <code class="highlighter-rouge">cursor</code> on summary is <code class="highlighter-rouge">text</code>, so we reset that to <code class="highlighter-rouge">pointer</code> to convey that the element can be interacted with by clicking on it.</p> + +<div class="bd-example"> + <details> + <summary>Some details</summary> + <p>More info about the details.</p> + </details> + + <details open=""> + <summary>Even more details</summary> + <p>Here are even more details about the details.</p> + </details> +</div> + +<h2 id="html5-hidden-attribute">HTML5 <code class="highlighter-rouge">[hidden]</code> attribute</h2> + +<p>HTML5 adds <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/hidden">a new global attribute named <code class="highlighter-rouge">[hidden]</code></a>, which is styled as <code class="highlighter-rouge">display: none</code> by default. Borrowing an idea from <a href="https://purecss.io/">PureCSS</a>, we improve upon this default by making <code class="highlighter-rouge">[hidden] { display: none !important; }</code> to help prevent its <code class="highlighter-rouge">display</code> from getting accidentally overridden. While <code class="highlighter-rouge">[hidden]</code> isn’t natively supported by IE10, the explicit declaration in our CSS gets around that problem.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><input</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">hidden</span><span class="nt">></span></code></pre></figure> + +<div class="bd-callout bd-callout-warning"> +<h5 id="jquery-incompatibility">jQuery incompatibility</h5> + +<p><code class="highlighter-rouge">[hidden]</code> is not compatible with jQuery’s <code class="highlighter-rouge">$(...).hide()</code> and <code class="highlighter-rouge">$(...).show()</code> methods. Therefore, we don’t currently especially endorse <code class="highlighter-rouge">[hidden]</code> over other techniques for managing the <code class="highlighter-rouge">display</code> of elements.</p> +</div> + +<p>To merely toggle the visibility of an element, meaning its <code class="highlighter-rouge">display</code> is not modified and the element can still affect the flow of the document, use <a href="/docs/4.3/utilities/visibility/">the <code class="highlighter-rouge">.invisible</code> class</a> instead.</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/content/tables/index.html b/docs/4.3/content/tables/index.html new file mode 100644 index 0000000000..bf190518f6 --- /dev/null +++ b/docs/4.3/content/tables/index.html @@ -0,0 +1,1982 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Documentation and examples for opt-in styling of tables (given their prevalent use in JavaScript plugins) with Bootstrap."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Tables · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/content/tables/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Tables"> +<meta name="twitter:description" content="Documentation and examples for opt-in styling of tables (given their prevalent use in JavaScript plugins) with Bootstrap."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/content/tables/"> +<meta property="og:title" content="Tables"> +<meta property="og:description" content="Documentation and examples for opt-in styling of tables (given their prevalent use in JavaScript plugins) with Bootstrap."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#examples">Examples</a></li> +<li class="toc-entry toc-h2"><a href="#table-head-options">Table head options</a></li> +<li class="toc-entry toc-h2"><a href="#striped-rows">Striped rows</a></li> +<li class="toc-entry toc-h2"><a href="#bordered-table">Bordered table</a></li> +<li class="toc-entry toc-h2"><a href="#borderless-table">Borderless table</a></li> +<li class="toc-entry toc-h2"><a href="#hoverable-rows">Hoverable rows</a></li> +<li class="toc-entry toc-h2"><a href="#small-table">Small table</a></li> +<li class="toc-entry toc-h2"><a href="#contextual-classes">Contextual classes</a></li> +<li class="toc-entry toc-h2"><a href="#captions">Captions</a></li> +<li class="toc-entry toc-h2"><a href="#responsive-tables">Responsive tables</a> +<ul> +<li class="toc-entry toc-h3"><a href="#always-responsive">Always responsive</a></li> +<li class="toc-entry toc-h3"><a href="#breakpoint-specific">Breakpoint specific</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Tables</h1> + <p class="bd-lead">Documentation and examples for opt-in styling of tables (given their prevalent use in JavaScript plugins) with Bootstrap.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="examples">Examples</h2> + +<p>Due to the widespread use of tables across third-party widgets like calendars and date pickers, we’ve designed our tables to be <strong>opt-in</strong>. Just add the base class <code class="highlighter-rouge">.table</code> to any <code class="highlighter-rouge"><table></code>, then extend with custom styles or our various included modifier classes.</p> + +<p>Using the most basic table markup, here’s how <code class="highlighter-rouge">.table</code>-based tables look in Bootstrap. <strong>All table styles are inherited in Bootstrap 4</strong>, meaning any nested tables will be styled in the same manner as the parent.</p> + +<div class="bd-example"> +<table class="table"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">First</th> + <th scope="col">Last</th> + <th scope="col">Handle</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Mark</td> + <td>Otto</td> + <td>@mdo</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Jacob</td> + <td>Thornton</td> + <td>@fat</td> + </tr> + <tr> + <th scope="row">3</th> + <td>Larry</td> + <td>the Bird</td> + <td>@twitter</td> + </tr> + </tbody> +</table> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><table</span> <span class="na">class=</span><span class="s">"table"</span><span class="nt">></span> + <span class="nt"><thead></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>#<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>First<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Last<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Handle<span class="nt"></th></span> + <span class="nt"></tr></span> + <span class="nt"></thead></span> + <span class="nt"><tbody></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>1<span class="nt"></th></span> + <span class="nt"><td></span>Mark<span class="nt"></td></span> + <span class="nt"><td></span>Otto<span class="nt"></td></span> + <span class="nt"><td></span>@mdo<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>2<span class="nt"></th></span> + <span class="nt"><td></span>Jacob<span class="nt"></td></span> + <span class="nt"><td></span>Thornton<span class="nt"></td></span> + <span class="nt"><td></span>@fat<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>3<span class="nt"></th></span> + <span class="nt"><td></span>Larry<span class="nt"></td></span> + <span class="nt"><td></span>the Bird<span class="nt"></td></span> + <span class="nt"><td></span>@twitter<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"></tbody></span> +<span class="nt"></table></span></code></pre></figure> + +<p>You can also invert the colors—with light text on dark backgrounds—with <code class="highlighter-rouge">.table-dark</code>.</p> + +<div class="bd-example"> +<table class="table table-dark"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">First</th> + <th scope="col">Last</th> + <th scope="col">Handle</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Mark</td> + <td>Otto</td> + <td>@mdo</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Jacob</td> + <td>Thornton</td> + <td>@fat</td> + </tr> + <tr> + <th scope="row">3</th> + <td>Larry</td> + <td>the Bird</td> + <td>@twitter</td> + </tr> + </tbody> +</table> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><table</span> <span class="na">class=</span><span class="s">"table table-dark"</span><span class="nt">></span> + <span class="nt"><thead></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>#<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>First<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Last<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Handle<span class="nt"></th></span> + <span class="nt"></tr></span> + <span class="nt"></thead></span> + <span class="nt"><tbody></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>1<span class="nt"></th></span> + <span class="nt"><td></span>Mark<span class="nt"></td></span> + <span class="nt"><td></span>Otto<span class="nt"></td></span> + <span class="nt"><td></span>@mdo<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>2<span class="nt"></th></span> + <span class="nt"><td></span>Jacob<span class="nt"></td></span> + <span class="nt"><td></span>Thornton<span class="nt"></td></span> + <span class="nt"><td></span>@fat<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>3<span class="nt"></th></span> + <span class="nt"><td></span>Larry<span class="nt"></td></span> + <span class="nt"><td></span>the Bird<span class="nt"></td></span> + <span class="nt"><td></span>@twitter<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"></tbody></span> +<span class="nt"></table></span></code></pre></figure> + +<h2 id="table-head-options">Table head options</h2> + +<p>Similar to tables and dark tables, use the modifier classes <code class="highlighter-rouge">.thead-light</code> or <code class="highlighter-rouge">.thead-dark</code> to make <code class="highlighter-rouge"><thead></code>s appear light or dark gray.</p> + +<div class="bd-example"> +<table class="table"> + <thead class="thead-dark"> + <tr> + <th scope="col">#</th> + <th scope="col">First</th> + <th scope="col">Last</th> + <th scope="col">Handle</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Mark</td> + <td>Otto</td> + <td>@mdo</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Jacob</td> + <td>Thornton</td> + <td>@fat</td> + </tr> + <tr> + <th scope="row">3</th> + <td>Larry</td> + <td>the Bird</td> + <td>@twitter</td> + </tr> + </tbody> +</table> + +<table class="table"> + <thead class="thead-light"> + <tr> + <th scope="col">#</th> + <th scope="col">First</th> + <th scope="col">Last</th> + <th scope="col">Handle</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Mark</td> + <td>Otto</td> + <td>@mdo</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Jacob</td> + <td>Thornton</td> + <td>@fat</td> + </tr> + <tr> + <th scope="row">3</th> + <td>Larry</td> + <td>the Bird</td> + <td>@twitter</td> + </tr> + </tbody> +</table> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><table</span> <span class="na">class=</span><span class="s">"table"</span><span class="nt">></span> + <span class="nt"><thead</span> <span class="na">class=</span><span class="s">"thead-dark"</span><span class="nt">></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>#<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>First<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Last<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Handle<span class="nt"></th></span> + <span class="nt"></tr></span> + <span class="nt"></thead></span> + <span class="nt"><tbody></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>1<span class="nt"></th></span> + <span class="nt"><td></span>Mark<span class="nt"></td></span> + <span class="nt"><td></span>Otto<span class="nt"></td></span> + <span class="nt"><td></span>@mdo<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>2<span class="nt"></th></span> + <span class="nt"><td></span>Jacob<span class="nt"></td></span> + <span class="nt"><td></span>Thornton<span class="nt"></td></span> + <span class="nt"><td></span>@fat<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>3<span class="nt"></th></span> + <span class="nt"><td></span>Larry<span class="nt"></td></span> + <span class="nt"><td></span>the Bird<span class="nt"></td></span> + <span class="nt"><td></span>@twitter<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"></tbody></span> +<span class="nt"></table></span> + +<span class="nt"><table</span> <span class="na">class=</span><span class="s">"table"</span><span class="nt">></span> + <span class="nt"><thead</span> <span class="na">class=</span><span class="s">"thead-light"</span><span class="nt">></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>#<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>First<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Last<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Handle<span class="nt"></th></span> + <span class="nt"></tr></span> + <span class="nt"></thead></span> + <span class="nt"><tbody></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>1<span class="nt"></th></span> + <span class="nt"><td></span>Mark<span class="nt"></td></span> + <span class="nt"><td></span>Otto<span class="nt"></td></span> + <span class="nt"><td></span>@mdo<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>2<span class="nt"></th></span> + <span class="nt"><td></span>Jacob<span class="nt"></td></span> + <span class="nt"><td></span>Thornton<span class="nt"></td></span> + <span class="nt"><td></span>@fat<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>3<span class="nt"></th></span> + <span class="nt"><td></span>Larry<span class="nt"></td></span> + <span class="nt"><td></span>the Bird<span class="nt"></td></span> + <span class="nt"><td></span>@twitter<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"></tbody></span> +<span class="nt"></table></span></code></pre></figure> + +<h2 id="striped-rows">Striped rows</h2> + +<p>Use <code class="highlighter-rouge">.table-striped</code> to add zebra-striping to any table row within the <code class="highlighter-rouge"><tbody></code>.</p> + +<div class="bd-example"> +<table class="table table-striped"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">First</th> + <th scope="col">Last</th> + <th scope="col">Handle</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Mark</td> + <td>Otto</td> + <td>@mdo</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Jacob</td> + <td>Thornton</td> + <td>@fat</td> + </tr> + <tr> + <th scope="row">3</th> + <td>Larry</td> + <td>the Bird</td> + <td>@twitter</td> + </tr> + </tbody> +</table> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><table</span> <span class="na">class=</span><span class="s">"table table-striped"</span><span class="nt">></span> + <span class="nt"><thead></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>#<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>First<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Last<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Handle<span class="nt"></th></span> + <span class="nt"></tr></span> + <span class="nt"></thead></span> + <span class="nt"><tbody></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>1<span class="nt"></th></span> + <span class="nt"><td></span>Mark<span class="nt"></td></span> + <span class="nt"><td></span>Otto<span class="nt"></td></span> + <span class="nt"><td></span>@mdo<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>2<span class="nt"></th></span> + <span class="nt"><td></span>Jacob<span class="nt"></td></span> + <span class="nt"><td></span>Thornton<span class="nt"></td></span> + <span class="nt"><td></span>@fat<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>3<span class="nt"></th></span> + <span class="nt"><td></span>Larry<span class="nt"></td></span> + <span class="nt"><td></span>the Bird<span class="nt"></td></span> + <span class="nt"><td></span>@twitter<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"></tbody></span> +<span class="nt"></table></span></code></pre></figure> + +<div class="bd-example"> +<table class="table table-striped table-dark"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">First</th> + <th scope="col">Last</th> + <th scope="col">Handle</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Mark</td> + <td>Otto</td> + <td>@mdo</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Jacob</td> + <td>Thornton</td> + <td>@fat</td> + </tr> + <tr> + <th scope="row">3</th> + <td>Larry</td> + <td>the Bird</td> + <td>@twitter</td> + </tr> + </tbody> +</table> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><table</span> <span class="na">class=</span><span class="s">"table table-striped table-dark"</span><span class="nt">></span> + <span class="nt"><thead></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>#<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>First<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Last<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Handle<span class="nt"></th></span> + <span class="nt"></tr></span> + <span class="nt"></thead></span> + <span class="nt"><tbody></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>1<span class="nt"></th></span> + <span class="nt"><td></span>Mark<span class="nt"></td></span> + <span class="nt"><td></span>Otto<span class="nt"></td></span> + <span class="nt"><td></span>@mdo<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>2<span class="nt"></th></span> + <span class="nt"><td></span>Jacob<span class="nt"></td></span> + <span class="nt"><td></span>Thornton<span class="nt"></td></span> + <span class="nt"><td></span>@fat<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>3<span class="nt"></th></span> + <span class="nt"><td></span>Larry<span class="nt"></td></span> + <span class="nt"><td></span>the Bird<span class="nt"></td></span> + <span class="nt"><td></span>@twitter<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"></tbody></span> +<span class="nt"></table></span></code></pre></figure> + +<h2 id="bordered-table">Bordered table</h2> + +<p>Add <code class="highlighter-rouge">.table-bordered</code> for borders on all sides of the table and cells.</p> + +<div class="bd-example"> +<table class="table table-bordered"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">First</th> + <th scope="col">Last</th> + <th scope="col">Handle</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Mark</td> + <td>Otto</td> + <td>@mdo</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Jacob</td> + <td>Thornton</td> + <td>@fat</td> + </tr> + <tr> + <th scope="row">3</th> + <td colspan="2">Larry the Bird</td> + <td>@twitter</td> + </tr> + </tbody> +</table> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><table</span> <span class="na">class=</span><span class="s">"table table-bordered"</span><span class="nt">></span> + <span class="nt"><thead></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>#<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>First<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Last<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Handle<span class="nt"></th></span> + <span class="nt"></tr></span> + <span class="nt"></thead></span> + <span class="nt"><tbody></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>1<span class="nt"></th></span> + <span class="nt"><td></span>Mark<span class="nt"></td></span> + <span class="nt"><td></span>Otto<span class="nt"></td></span> + <span class="nt"><td></span>@mdo<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>2<span class="nt"></th></span> + <span class="nt"><td></span>Jacob<span class="nt"></td></span> + <span class="nt"><td></span>Thornton<span class="nt"></td></span> + <span class="nt"><td></span>@fat<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>3<span class="nt"></th></span> + <span class="nt"><td</span> <span class="na">colspan=</span><span class="s">"2"</span><span class="nt">></span>Larry the Bird<span class="nt"></td></span> + <span class="nt"><td></span>@twitter<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"></tbody></span> +<span class="nt"></table></span></code></pre></figure> + +<div class="bd-example"> +<table class="table table-bordered table-dark"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">First</th> + <th scope="col">Last</th> + <th scope="col">Handle</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Mark</td> + <td>Otto</td> + <td>@mdo</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Jacob</td> + <td>Thornton</td> + <td>@fat</td> + </tr> + <tr> + <th scope="row">3</th> + <td colspan="2">Larry the Bird</td> + <td>@twitter</td> + </tr> + </tbody> +</table> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><table</span> <span class="na">class=</span><span class="s">"table table-bordered table-dark"</span><span class="nt">></span> + <span class="nt"><thead></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>#<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>First<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Last<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Handle<span class="nt"></th></span> + <span class="nt"></tr></span> + <span class="nt"></thead></span> + <span class="nt"><tbody></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>1<span class="nt"></th></span> + <span class="nt"><td></span>Mark<span class="nt"></td></span> + <span class="nt"><td></span>Otto<span class="nt"></td></span> + <span class="nt"><td></span>@mdo<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>2<span class="nt"></th></span> + <span class="nt"><td></span>Jacob<span class="nt"></td></span> + <span class="nt"><td></span>Thornton<span class="nt"></td></span> + <span class="nt"><td></span>@fat<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>3<span class="nt"></th></span> + <span class="nt"><td</span> <span class="na">colspan=</span><span class="s">"2"</span><span class="nt">></span>Larry the Bird<span class="nt"></td></span> + <span class="nt"><td></span>@twitter<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"></tbody></span> +<span class="nt"></table></span></code></pre></figure> + +<h2 id="borderless-table">Borderless table</h2> + +<p>Add <code class="highlighter-rouge">.table-borderless</code> for a table without borders.</p> + +<div class="bd-example"> +<table class="table table-borderless"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">First</th> + <th scope="col">Last</th> + <th scope="col">Handle</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Mark</td> + <td>Otto</td> + <td>@mdo</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Jacob</td> + <td>Thornton</td> + <td>@fat</td> + </tr> + <tr> + <th scope="row">3</th> + <td colspan="2">Larry the Bird</td> + <td>@twitter</td> + </tr> + </tbody> +</table> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><table</span> <span class="na">class=</span><span class="s">"table table-borderless"</span><span class="nt">></span> + <span class="nt"><thead></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>#<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>First<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Last<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Handle<span class="nt"></th></span> + <span class="nt"></tr></span> + <span class="nt"></thead></span> + <span class="nt"><tbody></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>1<span class="nt"></th></span> + <span class="nt"><td></span>Mark<span class="nt"></td></span> + <span class="nt"><td></span>Otto<span class="nt"></td></span> + <span class="nt"><td></span>@mdo<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>2<span class="nt"></th></span> + <span class="nt"><td></span>Jacob<span class="nt"></td></span> + <span class="nt"><td></span>Thornton<span class="nt"></td></span> + <span class="nt"><td></span>@fat<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>3<span class="nt"></th></span> + <span class="nt"><td</span> <span class="na">colspan=</span><span class="s">"2"</span><span class="nt">></span>Larry the Bird<span class="nt"></td></span> + <span class="nt"><td></span>@twitter<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"></tbody></span> +<span class="nt"></table></span></code></pre></figure> + +<p><code class="highlighter-rouge">.table-borderless</code> can also be used on dark tables.</p> + +<div class="bd-example"> +<table class="table table-borderless table-dark"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">First</th> + <th scope="col">Last</th> + <th scope="col">Handle</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Mark</td> + <td>Otto</td> + <td>@mdo</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Jacob</td> + <td>Thornton</td> + <td>@fat</td> + </tr> + <tr> + <th scope="row">3</th> + <td colspan="2">Larry the Bird</td> + <td>@twitter</td> + </tr> + </tbody> +</table> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><table</span> <span class="na">class=</span><span class="s">"table table-borderless table-dark"</span><span class="nt">></span> + <span class="nt"><thead></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>#<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>First<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Last<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Handle<span class="nt"></th></span> + <span class="nt"></tr></span> + <span class="nt"></thead></span> + <span class="nt"><tbody></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>1<span class="nt"></th></span> + <span class="nt"><td></span>Mark<span class="nt"></td></span> + <span class="nt"><td></span>Otto<span class="nt"></td></span> + <span class="nt"><td></span>@mdo<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>2<span class="nt"></th></span> + <span class="nt"><td></span>Jacob<span class="nt"></td></span> + <span class="nt"><td></span>Thornton<span class="nt"></td></span> + <span class="nt"><td></span>@fat<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>3<span class="nt"></th></span> + <span class="nt"><td</span> <span class="na">colspan=</span><span class="s">"2"</span><span class="nt">></span>Larry the Bird<span class="nt"></td></span> + <span class="nt"><td></span>@twitter<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"></tbody></span> +<span class="nt"></table></span></code></pre></figure> + +<h2 id="hoverable-rows">Hoverable rows</h2> + +<p>Add <code class="highlighter-rouge">.table-hover</code> to enable a hover state on table rows within a <code class="highlighter-rouge"><tbody></code>.</p> + +<div class="bd-example"> +<table class="table table-hover"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">First</th> + <th scope="col">Last</th> + <th scope="col">Handle</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Mark</td> + <td>Otto</td> + <td>@mdo</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Jacob</td> + <td>Thornton</td> + <td>@fat</td> + </tr> + <tr> + <th scope="row">3</th> + <td colspan="2">Larry the Bird</td> + <td>@twitter</td> + </tr> + </tbody> +</table> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><table</span> <span class="na">class=</span><span class="s">"table table-hover"</span><span class="nt">></span> + <span class="nt"><thead></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>#<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>First<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Last<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Handle<span class="nt"></th></span> + <span class="nt"></tr></span> + <span class="nt"></thead></span> + <span class="nt"><tbody></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>1<span class="nt"></th></span> + <span class="nt"><td></span>Mark<span class="nt"></td></span> + <span class="nt"><td></span>Otto<span class="nt"></td></span> + <span class="nt"><td></span>@mdo<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>2<span class="nt"></th></span> + <span class="nt"><td></span>Jacob<span class="nt"></td></span> + <span class="nt"><td></span>Thornton<span class="nt"></td></span> + <span class="nt"><td></span>@fat<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>3<span class="nt"></th></span> + <span class="nt"><td</span> <span class="na">colspan=</span><span class="s">"2"</span><span class="nt">></span>Larry the Bird<span class="nt"></td></span> + <span class="nt"><td></span>@twitter<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"></tbody></span> +<span class="nt"></table></span></code></pre></figure> + +<div class="bd-example"> +<table class="table table-hover table-dark"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">First</th> + <th scope="col">Last</th> + <th scope="col">Handle</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Mark</td> + <td>Otto</td> + <td>@mdo</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Jacob</td> + <td>Thornton</td> + <td>@fat</td> + </tr> + <tr> + <th scope="row">3</th> + <td colspan="2">Larry the Bird</td> + <td>@twitter</td> + </tr> + </tbody> +</table> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><table</span> <span class="na">class=</span><span class="s">"table table-hover table-dark"</span><span class="nt">></span> + <span class="nt"><thead></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>#<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>First<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Last<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Handle<span class="nt"></th></span> + <span class="nt"></tr></span> + <span class="nt"></thead></span> + <span class="nt"><tbody></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>1<span class="nt"></th></span> + <span class="nt"><td></span>Mark<span class="nt"></td></span> + <span class="nt"><td></span>Otto<span class="nt"></td></span> + <span class="nt"><td></span>@mdo<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>2<span class="nt"></th></span> + <span class="nt"><td></span>Jacob<span class="nt"></td></span> + <span class="nt"><td></span>Thornton<span class="nt"></td></span> + <span class="nt"><td></span>@fat<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>3<span class="nt"></th></span> + <span class="nt"><td</span> <span class="na">colspan=</span><span class="s">"2"</span><span class="nt">></span>Larry the Bird<span class="nt"></td></span> + <span class="nt"><td></span>@twitter<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"></tbody></span> +<span class="nt"></table></span></code></pre></figure> + +<h2 id="small-table">Small table</h2> + +<p>Add <code class="highlighter-rouge">.table-sm</code> to make tables more compact by cutting cell padding in half.</p> + +<div class="bd-example"> +<table class="table table-sm"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">First</th> + <th scope="col">Last</th> + <th scope="col">Handle</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Mark</td> + <td>Otto</td> + <td>@mdo</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Jacob</td> + <td>Thornton</td> + <td>@fat</td> + </tr> + <tr> + <th scope="row">3</th> + <td colspan="2">Larry the Bird</td> + <td>@twitter</td> + </tr> + </tbody> +</table> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><table</span> <span class="na">class=</span><span class="s">"table table-sm"</span><span class="nt">></span> + <span class="nt"><thead></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>#<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>First<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Last<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Handle<span class="nt"></th></span> + <span class="nt"></tr></span> + <span class="nt"></thead></span> + <span class="nt"><tbody></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>1<span class="nt"></th></span> + <span class="nt"><td></span>Mark<span class="nt"></td></span> + <span class="nt"><td></span>Otto<span class="nt"></td></span> + <span class="nt"><td></span>@mdo<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>2<span class="nt"></th></span> + <span class="nt"><td></span>Jacob<span class="nt"></td></span> + <span class="nt"><td></span>Thornton<span class="nt"></td></span> + <span class="nt"><td></span>@fat<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>3<span class="nt"></th></span> + <span class="nt"><td</span> <span class="na">colspan=</span><span class="s">"2"</span><span class="nt">></span>Larry the Bird<span class="nt"></td></span> + <span class="nt"><td></span>@twitter<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"></tbody></span> +<span class="nt"></table></span></code></pre></figure> + +<div class="bd-example"> +<table class="table table-sm table-dark"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">First</th> + <th scope="col">Last</th> + <th scope="col">Handle</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Mark</td> + <td>Otto</td> + <td>@mdo</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Jacob</td> + <td>Thornton</td> + <td>@fat</td> + </tr> + <tr> + <th scope="row">3</th> + <td colspan="2">Larry the Bird</td> + <td>@twitter</td> + </tr> + </tbody> +</table> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><table</span> <span class="na">class=</span><span class="s">"table table-sm table-dark"</span><span class="nt">></span> + <span class="nt"><thead></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>#<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>First<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Last<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Handle<span class="nt"></th></span> + <span class="nt"></tr></span> + <span class="nt"></thead></span> + <span class="nt"><tbody></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>1<span class="nt"></th></span> + <span class="nt"><td></span>Mark<span class="nt"></td></span> + <span class="nt"><td></span>Otto<span class="nt"></td></span> + <span class="nt"><td></span>@mdo<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>2<span class="nt"></th></span> + <span class="nt"><td></span>Jacob<span class="nt"></td></span> + <span class="nt"><td></span>Thornton<span class="nt"></td></span> + <span class="nt"><td></span>@fat<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>3<span class="nt"></th></span> + <span class="nt"><td</span> <span class="na">colspan=</span><span class="s">"2"</span><span class="nt">></span>Larry the Bird<span class="nt"></td></span> + <span class="nt"><td></span>@twitter<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"></tbody></span> +<span class="nt"></table></span></code></pre></figure> + +<h2 id="contextual-classes">Contextual classes</h2> + +<p>Use contextual classes to color table rows or individual cells.</p> + +<div class="bd-example"> + <table class="table"> + <thead> + <tr> + <th scope="col">Class</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + </tr> + </thead> + <tbody> + <tr class="table-active"> + <th scope="row">Active</th> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr> + <th scope="row">Default</th> + <td>Cell</td> + <td>Cell</td> + </tr> + + + <tr class="table-primary"> + <th scope="row">Primary</th> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr class="table-secondary"> + <th scope="row">Secondary</th> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr class="table-success"> + <th scope="row">Success</th> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr class="table-danger"> + <th scope="row">Danger</th> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr class="table-warning"> + <th scope="row">Warning</th> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr class="table-info"> + <th scope="row">Info</th> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr class="table-light"> + <th scope="row">Light</th> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr class="table-dark"> + <th scope="row">Dark</th> + <td>Cell</td> + <td>Cell</td> + </tr> + </tbody> + </table> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- On rows --></span> +<span class="nt"><tr</span> <span class="na">class=</span><span class="s">"table-active"</span><span class="nt">></span>...<span class="nt"></tr></span> + +<span class="nt"><tr</span> <span class="na">class=</span><span class="s">"table-primary"</span><span class="nt">></span>...<span class="nt"></tr></span> +<span class="nt"><tr</span> <span class="na">class=</span><span class="s">"table-secondary"</span><span class="nt">></span>...<span class="nt"></tr></span> +<span class="nt"><tr</span> <span class="na">class=</span><span class="s">"table-success"</span><span class="nt">></span>...<span class="nt"></tr></span> +<span class="nt"><tr</span> <span class="na">class=</span><span class="s">"table-danger"</span><span class="nt">></span>...<span class="nt"></tr></span> +<span class="nt"><tr</span> <span class="na">class=</span><span class="s">"table-warning"</span><span class="nt">></span>...<span class="nt"></tr></span> +<span class="nt"><tr</span> <span class="na">class=</span><span class="s">"table-info"</span><span class="nt">></span>...<span class="nt"></tr></span> +<span class="nt"><tr</span> <span class="na">class=</span><span class="s">"table-light"</span><span class="nt">></span>...<span class="nt"></tr></span> +<span class="nt"><tr</span> <span class="na">class=</span><span class="s">"table-dark"</span><span class="nt">></span>...<span class="nt"></tr></span> + +<span class="c"><!-- On cells (`td` or `th`) --></span> +<span class="nt"><tr></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"table-active"</span><span class="nt">></span>...<span class="nt"></td></span> + + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"table-primary"</span><span class="nt">></span>...<span class="nt"></td></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"table-secondary"</span><span class="nt">></span>...<span class="nt"></td></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"table-success"</span><span class="nt">></span>...<span class="nt"></td></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"table-danger"</span><span class="nt">></span>...<span class="nt"></td></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"table-warning"</span><span class="nt">></span>...<span class="nt"></td></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"table-info"</span><span class="nt">></span>...<span class="nt"></td></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"table-light"</span><span class="nt">></span>...<span class="nt"></td></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"table-dark"</span><span class="nt">></span>...<span class="nt"></td></span> +<span class="nt"></tr></span></code></pre></figure> + +<p>Regular table background variants are not available with the dark table, however, you may use <a href="/docs/4.3/utilities/colors/">text or background utilities</a> to achieve similar styles.</p> + +<div class="bd-example"> + <table class="table table-dark"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + </tr> + </thead> + <tbody> + <tr class="bg-primary"> + <th scope="row">1</th> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr class="bg-success"> + <th scope="row">3</th> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr> + <th scope="row">4</th> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr class="bg-info"> + <th scope="row">5</th> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr> + <th scope="row">6</th> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr class="bg-warning"> + <th scope="row">7</th> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr> + <th scope="row">8</th> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr class="bg-danger"> + <th scope="row">9</th> + <td>Cell</td> + <td>Cell</td> + </tr> + </tbody> + </table> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- On rows --></span> +<span class="nt"><tr</span> <span class="na">class=</span><span class="s">"bg-primary"</span><span class="nt">></span>...<span class="nt"></tr></span> +<span class="nt"><tr</span> <span class="na">class=</span><span class="s">"bg-success"</span><span class="nt">></span>...<span class="nt"></tr></span> +<span class="nt"><tr</span> <span class="na">class=</span><span class="s">"bg-warning"</span><span class="nt">></span>...<span class="nt"></tr></span> +<span class="nt"><tr</span> <span class="na">class=</span><span class="s">"bg-danger"</span><span class="nt">></span>...<span class="nt"></tr></span> +<span class="nt"><tr</span> <span class="na">class=</span><span class="s">"bg-info"</span><span class="nt">></span>...<span class="nt"></tr></span> + +<span class="c"><!-- On cells (`td` or `th`) --></span> +<span class="nt"><tr></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"bg-primary"</span><span class="nt">></span>...<span class="nt"></td></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"bg-success"</span><span class="nt">></span>...<span class="nt"></td></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"bg-warning"</span><span class="nt">></span>...<span class="nt"></td></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"bg-danger"</span><span class="nt">></span>...<span class="nt"></td></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"bg-info"</span><span class="nt">></span>...<span class="nt"></td></span> +<span class="nt"></tr></span></code></pre></figure> + +<div class="bd-callout bd-callout-warning"> +<h5 id="conveying-meaning-to-assistive-technologies">Conveying meaning to assistive technologies</h5> + +<p>Using color to add meaning only provides a visual indication, which will not be conveyed to users of assistive technologies – such as screen readers. Ensure that information denoted by the color is either obvious from the content itself (e.g. the visible text), or is included through alternative means, such as additional text hidden with the <code class="highlighter-rouge">.sr-only</code> class.</p> +</div> + +<p>Create responsive tables by wrapping any <code class="highlighter-rouge">.table</code> with <code class="highlighter-rouge">.table-responsive{-sm|-md|-lg|-xl}</code>, making the table scroll horizontally at each <code class="highlighter-rouge">max-width</code> breakpoint of up to (but not including) 576px, 768px, 992px, and 1120px, respectively.</p> + +<div class="bd-callout bd-callout-info"> +<p>Note that since browsers do not currently support <a href="https://www.w3.org/TR/mediaqueries-4/#range-context">range context queries</a>, we work around the limitations of <a href="https://www.w3.org/TR/mediaqueries-4/#mq-min-max"><code class="highlighter-rouge">min-</code> and <code class="highlighter-rouge">max-</code> prefixes</a> and viewports with fractional widths (which can occur under certain conditions on high-dpi devices, for instance) by using values with higher precision for these comparisons.</p> +</div> + +<h2 id="captions">Captions</h2> + +<p>A <code class="highlighter-rouge"><caption></code> functions like a heading for a table. It helps users with screen readers to find a table and understand what it’s about and decide if they want to read it.</p> + +<div class="bd-example"> +<table class="table"> + <caption>List of users</caption> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">First</th> + <th scope="col">Last</th> + <th scope="col">Handle</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Mark</td> + <td>Otto</td> + <td>@mdo</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Jacob</td> + <td>Thornton</td> + <td>@fat</td> + </tr> + <tr> + <th scope="row">3</th> + <td>Larry</td> + <td>the Bird</td> + <td>@twitter</td> + </tr> + </tbody> +</table> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><table</span> <span class="na">class=</span><span class="s">"table"</span><span class="nt">></span> + <span class="nt"><caption></span>List of users<span class="nt"></caption></span> + <span class="nt"><thead></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>#<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>First<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Last<span class="nt"></th></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"col"</span><span class="nt">></span>Handle<span class="nt"></th></span> + <span class="nt"></tr></span> + <span class="nt"></thead></span> + <span class="nt"><tbody></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>1<span class="nt"></th></span> + <span class="nt"><td></span>Mark<span class="nt"></td></span> + <span class="nt"><td></span>Otto<span class="nt"></td></span> + <span class="nt"><td></span>@mdo<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>2<span class="nt"></th></span> + <span class="nt"><td></span>Jacob<span class="nt"></td></span> + <span class="nt"><td></span>Thornton<span class="nt"></td></span> + <span class="nt"><td></span>@fat<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"><tr></span> + <span class="nt"><th</span> <span class="na">scope=</span><span class="s">"row"</span><span class="nt">></span>3<span class="nt"></th></span> + <span class="nt"><td></span>Larry<span class="nt"></td></span> + <span class="nt"><td></span>the Bird<span class="nt"></td></span> + <span class="nt"><td></span>@twitter<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"></tbody></span> +<span class="nt"></table></span></code></pre></figure> + +<h2 id="responsive-tables">Responsive tables</h2> + +<p>Responsive tables allow tables to be scrolled horizontally with ease. Make any table responsive across all viewports by wrapping a <code class="highlighter-rouge">.table</code> with <code class="highlighter-rouge">.table-responsive</code>. Or, pick a maximum breakpoint with which to have a responsive table up to by using <code class="highlighter-rouge">.table-responsive{-sm|-md|-lg|-xl}</code>.</p> + +<div class="bd-callout bd-callout-warning"> +<h5 id="vertical-clippingtruncation">Vertical clipping/truncation</h5> + +<p>Responsive tables make use of <code class="highlighter-rouge">overflow-y: hidden</code>, which clips off any content that goes beyond the bottom or top edges of the table. In particular, this can clip off dropdown menus and other third-party widgets.</p> +</div> + +<h3 id="always-responsive">Always responsive</h3> + +<p>Across every breakpoint, use <code class="highlighter-rouge">.table-responsive</code> for horizontally scrolling tables.</p> + +<div class="bd-example"> + <div class="table-responsive"> + <table class="table"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr> + <th scope="row">3</th> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + </tr> + </tbody> + </table> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"table-responsive"</span><span class="nt">></span> + <span class="nt"><table</span> <span class="na">class=</span><span class="s">"table"</span><span class="nt">></span> + ... + <span class="nt"></table></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="breakpoint-specific">Breakpoint specific</h3> + +<p>Use <code class="highlighter-rouge">.table-responsive{-sm|-md|-lg|-xl}</code> as needed to create responsive tables up to a particular breakpoint. From that breakpoint and up, the table will behave normally and not scroll horizontally.</p> + +<p><strong>These tables may appear broken until their responsive styles apply at specific viewport widths.</strong></p> + +<div class="bd-example"> +<div class="table-responsive-sm"> + <table class="table"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr> + <th scope="row">3</th> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + </tr> + </tbody> + </table> +</div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"table-responsive-sm"</span><span class="nt">></span> + <span class="nt"><table</span> <span class="na">class=</span><span class="s">"table"</span><span class="nt">></span> + ... + <span class="nt"></table></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<div class="table-responsive-md"> + <table class="table"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr> + <th scope="row">3</th> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + </tr> + </tbody> + </table> +</div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"table-responsive-md"</span><span class="nt">></span> + <span class="nt"><table</span> <span class="na">class=</span><span class="s">"table"</span><span class="nt">></span> + ... + <span class="nt"></table></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<div class="table-responsive-lg"> + <table class="table"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr> + <th scope="row">3</th> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + </tr> + </tbody> + </table> +</div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"table-responsive-lg"</span><span class="nt">></span> + <span class="nt"><table</span> <span class="na">class=</span><span class="s">"table"</span><span class="nt">></span> + ... + <span class="nt"></table></span> +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<div class="table-responsive-xl"> + <table class="table"> + <thead> + <tr> + <th scope="col">#</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + <th scope="col">Heading</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">1</th> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr> + <th scope="row">2</th> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + </tr> + <tr> + <th scope="row">3</th> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + <td>Cell</td> + </tr> + </tbody> + </table> +</div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"table-responsive-xl"</span><span class="nt">></span> + <span class="nt"><table</span> <span class="na">class=</span><span class="s">"table"</span><span class="nt">></span> + ... + <span class="nt"></table></span> +<span class="nt"></div></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/content/typography/index.html b/docs/4.3/content/typography/index.html new file mode 100644 index 0000000000..241158108f --- /dev/null +++ b/docs/4.3/content/typography/index.html @@ -0,0 +1,879 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Documentation and examples for Bootstrap typography, including global settings, headings, body text, lists, and more."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Typography · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/content/typography/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Typography"> +<meta name="twitter:description" content="Documentation and examples for Bootstrap typography, including global settings, headings, body text, lists, and more."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/content/typography/"> +<meta property="og:title" content="Typography"> +<meta property="og:description" content="Documentation and examples for Bootstrap typography, including global settings, headings, body text, lists, and more."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#global-settings">Global settings</a></li> +<li class="toc-entry toc-h2"><a href="#headings">Headings</a> +<ul> +<li class="toc-entry toc-h3"><a href="#customizing-headings">Customizing headings</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#display-headings">Display headings</a></li> +<li class="toc-entry toc-h2"><a href="#lead">Lead</a></li> +<li class="toc-entry toc-h2"><a href="#inline-text-elements">Inline text elements</a></li> +<li class="toc-entry toc-h2"><a href="#text-utilities">Text utilities</a></li> +<li class="toc-entry toc-h2"><a href="#abbreviations">Abbreviations</a></li> +<li class="toc-entry toc-h2"><a href="#blockquotes">Blockquotes</a> +<ul> +<li class="toc-entry toc-h3"><a href="#naming-a-source">Naming a source</a></li> +<li class="toc-entry toc-h3"><a href="#alignment">Alignment</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#lists">Lists</a> +<ul> +<li class="toc-entry toc-h3"><a href="#unstyled">Unstyled</a></li> +<li class="toc-entry toc-h3"><a href="#inline">Inline</a></li> +<li class="toc-entry toc-h3"><a href="#description-list-alignment">Description list alignment</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#responsive-font-sizes">Responsive font sizes</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Typography</h1> + <p class="bd-lead">Documentation and examples for Bootstrap typography, including global settings, headings, body text, lists, and more.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="global-settings">Global settings</h2> + +<p>Bootstrap sets basic global display, typography, and link styles. When more control is needed, check out the <a href="/docs/4.3/utilities/text/">textual utility classes</a>.</p> + +<ul> + <li>Use a <a href="/docs/4.3/content/reboot/#native-font-stack">native font stack</a> that selects the best <code class="highlighter-rouge">font-family</code> for each OS and device.</li> + <li>For a more inclusive and accessible type scale, we assume the browser default root <code class="highlighter-rouge">font-size</code> (typically 16px) so visitors can customize their browser defaults as needed.</li> + <li>Use the <code class="highlighter-rouge">$font-family-base</code>, <code class="highlighter-rouge">$font-size-base</code>, and <code class="highlighter-rouge">$line-height-base</code> attributes as our typographic base applied to the <code class="highlighter-rouge"><body></code>.</li> + <li>Set the global link color via <code class="highlighter-rouge">$link-color</code> and apply link underlines only on <code class="highlighter-rouge">:hover</code>.</li> + <li>Use <code class="highlighter-rouge">$body-bg</code> to set a <code class="highlighter-rouge">background-color</code> on the <code class="highlighter-rouge"><body></code> (<code class="highlighter-rouge">#fff</code> by default).</li> +</ul> + +<p>These styles can be found within <code class="highlighter-rouge">_reboot.scss</code>, and the global variables are defined in <code class="highlighter-rouge">_variables.scss</code>. Make sure to set <code class="highlighter-rouge">$font-size-base</code> in <code class="highlighter-rouge">rem</code>.</p> + +<h2 id="headings">Headings</h2> + +<p>All HTML headings, <code class="highlighter-rouge"><h1></code> through <code class="highlighter-rouge"><h6></code>, are available.</p> + +<table> + <thead> + <tr> + <th>Heading</th> + <th>Example</th> + </tr> + </thead> + <tbody> + <tr> + <td> + <p><code class="highlighter-rouge"><h1></h1></code></p> + + </td> + <td><span class="h1">h1. Bootstrap heading</span></td> + </tr> + <tr> + <td> + <p><code class="highlighter-rouge"><h2></h2></code></p> + + </td> + <td><span class="h2">h2. Bootstrap heading</span></td> + </tr> + <tr> + <td> + <p><code class="highlighter-rouge"><h3></h3></code></p> + + </td> + <td><span class="h3">h3. Bootstrap heading</span></td> + </tr> + <tr> + <td> + <p><code class="highlighter-rouge"><h4></h4></code></p> + + </td> + <td><span class="h4">h4. Bootstrap heading</span></td> + </tr> + <tr> + <td> + <p><code class="highlighter-rouge"><h5></h5></code></p> + + </td> + <td><span class="h5">h5. Bootstrap heading</span></td> + </tr> + <tr> + <td> + <p><code class="highlighter-rouge"><h6></h6></code></p> + + </td> + <td><span class="h6">h6. Bootstrap heading</span></td> + </tr> + </tbody> +</table> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><h1></span>h1. Bootstrap heading<span class="nt"></h1></span> +<span class="nt"><h2></span>h2. Bootstrap heading<span class="nt"></h2></span> +<span class="nt"><h3></span>h3. Bootstrap heading<span class="nt"></h3></span> +<span class="nt"><h4></span>h4. Bootstrap heading<span class="nt"></h4></span> +<span class="nt"><h5></span>h5. Bootstrap heading<span class="nt"></h5></span> +<span class="nt"><h6></span>h6. Bootstrap heading<span class="nt"></h6></span></code></pre></figure> + +<p><code class="highlighter-rouge">.h1</code> through <code class="highlighter-rouge">.h6</code> classes are also available, for when you want to match the font styling of a heading but cannot use the associated HTML element.</p> + +<div class="bd-example"> +<p class="h1">h1. Bootstrap heading</p> +<p class="h2">h2. Bootstrap heading</p> +<p class="h3">h3. Bootstrap heading</p> +<p class="h4">h4. Bootstrap heading</p> +<p class="h5">h5. Bootstrap heading</p> +<p class="h6">h6. Bootstrap heading</p> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><p</span> <span class="na">class=</span><span class="s">"h1"</span><span class="nt">></span>h1. Bootstrap heading<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"h2"</span><span class="nt">></span>h2. Bootstrap heading<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"h3"</span><span class="nt">></span>h3. Bootstrap heading<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"h4"</span><span class="nt">></span>h4. Bootstrap heading<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"h5"</span><span class="nt">></span>h5. Bootstrap heading<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"h6"</span><span class="nt">></span>h6. Bootstrap heading<span class="nt"></p></span></code></pre></figure> + +<h3 id="customizing-headings">Customizing headings</h3> + +<p>Use the included utility classes to recreate the small secondary heading text from Bootstrap 3.</p> + +<div class="bd-example"> +<h3> + Fancy display heading + <small class="text-muted">With faded secondary text</small> +</h3> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><h3></span> + Fancy display heading + <span class="nt"><small</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>With faded secondary text<span class="nt"></small></span> +<span class="nt"></h3></span></code></pre></figure> + +<h2 id="display-headings">Display headings</h2> + +<p>Traditional heading elements are designed to work best in the meat of your page content. When you need a heading to stand out, consider using a <strong>display heading</strong>—a larger, slightly more opinionated heading style. Keep in mind these headings are not responsive by default, but it’s possible to enable <a href="#responsive-font-sizes">responsive font sizes</a>.</p> + +<div class="bd-example bd-example-type"> + <table class="table"> + <tbody> + <tr> + <td><span class="display-1">Display 1</span></td> + </tr> + <tr> + <td><span class="display-2">Display 2</span></td> + </tr> + <tr> + <td><span class="display-3">Display 3</span></td> + </tr> + <tr> + <td><span class="display-4">Display 4</span></td> + </tr> + </tbody> + </table> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><h1</span> <span class="na">class=</span><span class="s">"display-1"</span><span class="nt">></span>Display 1<span class="nt"></h1></span> +<span class="nt"><h1</span> <span class="na">class=</span><span class="s">"display-2"</span><span class="nt">></span>Display 2<span class="nt"></h1></span> +<span class="nt"><h1</span> <span class="na">class=</span><span class="s">"display-3"</span><span class="nt">></span>Display 3<span class="nt"></h1></span> +<span class="nt"><h1</span> <span class="na">class=</span><span class="s">"display-4"</span><span class="nt">></span>Display 4<span class="nt"></h1></span></code></pre></figure> + +<h2 id="lead">Lead</h2> + +<p>Make a paragraph stand out by adding <code class="highlighter-rouge">.lead</code>.</p> + +<div class="bd-example"> +<p class="lead"> + Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Duis mollis, est non commodo luctus. +</p> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><p</span> <span class="na">class=</span><span class="s">"lead"</span><span class="nt">></span> + Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Duis mollis, est non commodo luctus. +<span class="nt"></p></span></code></pre></figure> + +<h2 id="inline-text-elements">Inline text elements</h2> + +<p>Styling for common inline HTML5 elements.</p> + +<div class="bd-example"> +<p>You can use the mark tag to <mark>highlight</mark> text.</p> +<p><del>This line of text is meant to be treated as deleted text.</del></p> +<p><s>This line of text is meant to be treated as no longer accurate.</s></p> +<p><ins>This line of text is meant to be treated as an addition to the document.</ins></p> +<p><u>This line of text will render as underlined</u></p> +<p><small>This line of text is meant to be treated as fine print.</small></p> +<p><strong>This line rendered as bold text.</strong></p> +<p><em>This line rendered as italicized text.</em></p> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><p></span>You can use the mark tag to <span class="nt"><mark></span>highlight<span class="nt"></mark></span> text.<span class="nt"></p></span> +<span class="nt"><p><del></span>This line of text is meant to be treated as deleted text.<span class="nt"></del></p></span> +<span class="nt"><p><s></span>This line of text is meant to be treated as no longer accurate.<span class="nt"></s></p></span> +<span class="nt"><p><ins></span>This line of text is meant to be treated as an addition to the document.<span class="nt"></ins></p></span> +<span class="nt"><p><u></span>This line of text will render as underlined<span class="nt"></u></p></span> +<span class="nt"><p><small></span>This line of text is meant to be treated as fine print.<span class="nt"></small></p></span> +<span class="nt"><p><strong></span>This line rendered as bold text.<span class="nt"></strong></p></span> +<span class="nt"><p><em></span>This line rendered as italicized text.<span class="nt"></em></p></span></code></pre></figure> + +<p><code class="highlighter-rouge">.mark</code> and <code class="highlighter-rouge">.small</code> classes are also available to apply the same styles as <code class="highlighter-rouge"><mark></code> and <code class="highlighter-rouge"><small></code> while avoiding any unwanted semantic implications that the tags would bring.</p> + +<p>While not shown above, feel free to use <code class="highlighter-rouge"><b></code> and <code class="highlighter-rouge"><i></code> in HTML5. <code class="highlighter-rouge"><b></code> is meant to highlight words or phrases without conveying additional importance while <code class="highlighter-rouge"><i></code> is mostly for voice, technical terms, etc.</p> + +<h2 id="text-utilities">Text utilities</h2> + +<p>Change text alignment, transform, style, weight, and color with our <a href="/docs/4.3/utilities/text/">text utilities</a> and <a href="/docs/4.3/utilities/colors/">color utilities</a>.</p> + +<h2 id="abbreviations">Abbreviations</h2> + +<p>Stylized implementation of HTML’s <code class="highlighter-rouge"><abbr></code> element for abbreviations and acronyms to show the expanded version on hover. Abbreviations have a default underline and gain a help cursor to provide additional context on hover and to users of assistive technologies.</p> + +<p>Add <code class="highlighter-rouge">.initialism</code> to an abbreviation for a slightly smaller font-size.</p> + +<div class="bd-example"> +<p><abbr title="attribute">attr</abbr></p> +<p><abbr title="HyperText Markup Language" class="initialism">HTML</abbr></p> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><p><abbr</span> <span class="na">title=</span><span class="s">"attribute"</span><span class="nt">></span>attr<span class="nt"></abbr></p></span> +<span class="nt"><p><abbr</span> <span class="na">title=</span><span class="s">"HyperText Markup Language"</span> <span class="na">class=</span><span class="s">"initialism"</span><span class="nt">></span>HTML<span class="nt"></abbr></p></span></code></pre></figure> + +<h2 id="blockquotes">Blockquotes</h2> + +<p>For quoting blocks of content from another source within your document. Wrap <code class="highlighter-rouge"><blockquote class="blockquote"></code> around any <abbr title="HyperText Markup Language">HTML</abbr> as the quote.</p> + +<div class="bd-example"> +<blockquote class="blockquote"> + <p class="mb-0">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p> +</blockquote> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><blockquote</span> <span class="na">class=</span><span class="s">"blockquote"</span><span class="nt">></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"mb-0"</span><span class="nt">></span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.<span class="nt"></p></span> +<span class="nt"></blockquote></span></code></pre></figure> + +<h3 id="naming-a-source">Naming a source</h3> + +<p>Add a <code class="highlighter-rouge"><footer class="blockquote-footer"></code> for identifying the source. Wrap the name of the source work in <code class="highlighter-rouge"><cite></code>.</p> + +<div class="bd-example"> +<blockquote class="blockquote"> + <p class="mb-0">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p> + <footer class="blockquote-footer">Someone famous in <cite title="Source Title">Source Title</cite></footer> +</blockquote> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><blockquote</span> <span class="na">class=</span><span class="s">"blockquote"</span><span class="nt">></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"mb-0"</span><span class="nt">></span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.<span class="nt"></p></span> + <span class="nt"><footer</span> <span class="na">class=</span><span class="s">"blockquote-footer"</span><span class="nt">></span>Someone famous in <span class="nt"><cite</span> <span class="na">title=</span><span class="s">"Source Title"</span><span class="nt">></span>Source Title<span class="nt"></cite></footer></span> +<span class="nt"></blockquote></span></code></pre></figure> + +<h3 id="alignment">Alignment</h3> + +<p>Use text utilities as needed to change the alignment of your blockquote.</p> + +<div class="bd-example"> +<blockquote class="blockquote text-center"> + <p class="mb-0">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p> + <footer class="blockquote-footer">Someone famous in <cite title="Source Title">Source Title</cite></footer> +</blockquote> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><blockquote</span> <span class="na">class=</span><span class="s">"blockquote text-center"</span><span class="nt">></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"mb-0"</span><span class="nt">></span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.<span class="nt"></p></span> + <span class="nt"><footer</span> <span class="na">class=</span><span class="s">"blockquote-footer"</span><span class="nt">></span>Someone famous in <span class="nt"><cite</span> <span class="na">title=</span><span class="s">"Source Title"</span><span class="nt">></span>Source Title<span class="nt"></cite></footer></span> +<span class="nt"></blockquote></span></code></pre></figure> + +<div class="bd-example"> +<blockquote class="blockquote text-right"> + <p class="mb-0">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p> + <footer class="blockquote-footer">Someone famous in <cite title="Source Title">Source Title</cite></footer> +</blockquote> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><blockquote</span> <span class="na">class=</span><span class="s">"blockquote text-right"</span><span class="nt">></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"mb-0"</span><span class="nt">></span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.<span class="nt"></p></span> + <span class="nt"><footer</span> <span class="na">class=</span><span class="s">"blockquote-footer"</span><span class="nt">></span>Someone famous in <span class="nt"><cite</span> <span class="na">title=</span><span class="s">"Source Title"</span><span class="nt">></span>Source Title<span class="nt"></cite></footer></span> +<span class="nt"></blockquote></span></code></pre></figure> + +<h2 id="lists">Lists</h2> + +<h3 id="unstyled">Unstyled</h3> + +<p>Remove the default <code class="highlighter-rouge">list-style</code> and left margin on list items (immediate children only). <strong>This only applies to immediate children list items</strong>, meaning you will need to add the class for any nested lists as well.</p> + +<div class="bd-example"> +<ul class="list-unstyled"> + <li>Lorem ipsum dolor sit amet</li> + <li>Consectetur adipiscing elit</li> + <li>Integer molestie lorem at massa</li> + <li>Facilisis in pretium nisl aliquet</li> + <li>Nulla volutpat aliquam velit + <ul> + <li>Phasellus iaculis neque</li> + <li>Purus sodales ultricies</li> + <li>Vestibulum laoreet porttitor sem</li> + <li>Ac tristique libero volutpat at</li> + </ul> + </li> + <li>Faucibus porta lacus fringilla vel</li> + <li>Aenean sit amet erat nunc</li> + <li>Eget porttitor lorem</li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-unstyled"</span><span class="nt">></span> + <span class="nt"><li></span>Lorem ipsum dolor sit amet<span class="nt"></li></span> + <span class="nt"><li></span>Consectetur adipiscing elit<span class="nt"></li></span> + <span class="nt"><li></span>Integer molestie lorem at massa<span class="nt"></li></span> + <span class="nt"><li></span>Facilisis in pretium nisl aliquet<span class="nt"></li></span> + <span class="nt"><li></span>Nulla volutpat aliquam velit + <span class="nt"><ul></span> + <span class="nt"><li></span>Phasellus iaculis neque<span class="nt"></li></span> + <span class="nt"><li></span>Purus sodales ultricies<span class="nt"></li></span> + <span class="nt"><li></span>Vestibulum laoreet porttitor sem<span class="nt"></li></span> + <span class="nt"><li></span>Ac tristique libero volutpat at<span class="nt"></li></span> + <span class="nt"></ul></span> + <span class="nt"></li></span> + <span class="nt"><li></span>Faucibus porta lacus fringilla vel<span class="nt"></li></span> + <span class="nt"><li></span>Aenean sit amet erat nunc<span class="nt"></li></span> + <span class="nt"><li></span>Eget porttitor lorem<span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<h3 id="inline">Inline</h3> + +<p>Remove a list’s bullets and apply some light <code class="highlighter-rouge">margin</code> with a combination of two classes, <code class="highlighter-rouge">.list-inline</code> and <code class="highlighter-rouge">.list-inline-item</code>.</p> + +<div class="bd-example"> +<ul class="list-inline"> + <li class="list-inline-item">Lorem ipsum</li> + <li class="list-inline-item">Phasellus iaculis</li> + <li class="list-inline-item">Nulla volutpat</li> +</ul> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><ul</span> <span class="na">class=</span><span class="s">"list-inline"</span><span class="nt">></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-inline-item"</span><span class="nt">></span>Lorem ipsum<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-inline-item"</span><span class="nt">></span>Phasellus iaculis<span class="nt"></li></span> + <span class="nt"><li</span> <span class="na">class=</span><span class="s">"list-inline-item"</span><span class="nt">></span>Nulla volutpat<span class="nt"></li></span> +<span class="nt"></ul></span></code></pre></figure> + +<h3 id="description-list-alignment">Description list alignment</h3> + +<p>Align terms and descriptions horizontally by using our grid system’s predefined classes (or semantic mixins). For longer terms, you can optionally add a <code class="highlighter-rouge">.text-truncate</code> class to truncate the text with an ellipsis.</p> + +<div class="bd-example"> +<dl class="row"> + <dt class="col-sm-3">Description lists</dt> + <dd class="col-sm-9">A description list is perfect for defining terms.</dd> + + <dt class="col-sm-3">Euismod</dt> + <dd class="col-sm-9"> + <p>Vestibulum id ligula porta felis euismod semper eget lacinia odio sem nec elit.</p> + <p>Donec id elit non mi porta gravida at eget metus.</p> + </dd> + + <dt class="col-sm-3">Malesuada porta</dt> + <dd class="col-sm-9">Etiam porta sem malesuada magna mollis euismod.</dd> + + <dt class="col-sm-3 text-truncate">Truncated term is truncated</dt> + <dd class="col-sm-9">Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</dd> + + <dt class="col-sm-3">Nesting</dt> + <dd class="col-sm-9"> + <dl class="row"> + <dt class="col-sm-4">Nested definition list</dt> + <dd class="col-sm-8">Aenean posuere, tortor sed cursus feugiat, nunc augue blandit nunc.</dd> + </dl> + </dd> +</dl> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><dl</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><dt</span> <span class="na">class=</span><span class="s">"col-sm-3"</span><span class="nt">></span>Description lists<span class="nt"></dt></span> + <span class="nt"><dd</span> <span class="na">class=</span><span class="s">"col-sm-9"</span><span class="nt">></span>A description list is perfect for defining terms.<span class="nt"></dd></span> + + <span class="nt"><dt</span> <span class="na">class=</span><span class="s">"col-sm-3"</span><span class="nt">></span>Euismod<span class="nt"></dt></span> + <span class="nt"><dd</span> <span class="na">class=</span><span class="s">"col-sm-9"</span><span class="nt">></span> + <span class="nt"><p></span>Vestibulum id ligula porta felis euismod semper eget lacinia odio sem nec elit.<span class="nt"></p></span> + <span class="nt"><p></span>Donec id elit non mi porta gravida at eget metus.<span class="nt"></p></span> + <span class="nt"></dd></span> + + <span class="nt"><dt</span> <span class="na">class=</span><span class="s">"col-sm-3"</span><span class="nt">></span>Malesuada porta<span class="nt"></dt></span> + <span class="nt"><dd</span> <span class="na">class=</span><span class="s">"col-sm-9"</span><span class="nt">></span>Etiam porta sem malesuada magna mollis euismod.<span class="nt"></dd></span> + + <span class="nt"><dt</span> <span class="na">class=</span><span class="s">"col-sm-3 text-truncate"</span><span class="nt">></span>Truncated term is truncated<span class="nt"></dt></span> + <span class="nt"><dd</span> <span class="na">class=</span><span class="s">"col-sm-9"</span><span class="nt">></span>Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.<span class="nt"></dd></span> + + <span class="nt"><dt</span> <span class="na">class=</span><span class="s">"col-sm-3"</span><span class="nt">></span>Nesting<span class="nt"></dt></span> + <span class="nt"><dd</span> <span class="na">class=</span><span class="s">"col-sm-9"</span><span class="nt">></span> + <span class="nt"><dl</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><dt</span> <span class="na">class=</span><span class="s">"col-sm-4"</span><span class="nt">></span>Nested definition list<span class="nt"></dt></span> + <span class="nt"><dd</span> <span class="na">class=</span><span class="s">"col-sm-8"</span><span class="nt">></span>Aenean posuere, tortor sed cursus feugiat, nunc augue blandit nunc.<span class="nt"></dd></span> + <span class="nt"></dl></span> + <span class="nt"></dd></span> +<span class="nt"></dl></span></code></pre></figure> + +<h2 id="responsive-font-sizes">Responsive font sizes</h2> + +<p>Bootstrap v4.3 ships with the option to enable responsive font sizes, allowing text to scale more naturally across device and viewport sizes. <abbr title="Responsive font sizes">RFS</abbr> can be enabled by changing the <code class="highlighter-rouge">$enable-responsive-font-sizes</code> Sass variable to <code class="highlighter-rouge">true</code> and recompiling Bootstrap.</p> + +<p>To support <abbr title="Responsive font sizes">RFS</abbr>, we use a Sass mixin to replace our normal <code class="highlighter-rouge">font-size</code> properties. Responsive font sizes will be compiled into <code class="highlighter-rouge">calc()</code> functions with a mix of <code class="highlighter-rouge">rem</code> and viewport units to enable the responsive scaling behavior. More about <abbr title="Responsive font sizes">RFS</abbr> and its configuration can be found on its <a href="https://github.com/twbs/rfs">GitHub repository</a>.</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/dist/css/bootstrap-grid.css b/docs/4.3/dist/css/bootstrap-grid.css new file mode 100644 index 0000000000..fc3aeaef35 --- /dev/null +++ b/docs/4.3/dist/css/bootstrap-grid.css @@ -0,0 +1,3719 @@ +/*! + * Bootstrap Grid v4.3.0 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors + * Copyright 2011-2019 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +html { + box-sizing: border-box; + -ms-overflow-style: scrollbar; +} + +*, +*::before, +*::after { + box-sizing: inherit; +} + +.container { + width: 100%; + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} + +@media (min-width: 576px) { + .container { + max-width: 540px; + } +} + +@media (min-width: 768px) { + .container { + max-width: 720px; + } +} + +@media (min-width: 992px) { + .container { + max-width: 960px; + } +} + +@media (min-width: 1200px) { + .container { + max-width: 1140px; + } +} + +.container-fluid { + width: 100%; + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} + +.row { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + margin-right: -15px; + margin-left: -15px; +} + +.no-gutters { + margin-right: 0; + margin-left: 0; +} + +.no-gutters > .col, +.no-gutters > [class*="col-"] { + padding-right: 0; + padding-left: 0; +} + +.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, +.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, +.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, +.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, +.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl, +.col-xl-auto { + position: relative; + width: 100%; + padding-right: 15px; + padding-left: 15px; +} + +.col { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; +} + +.col-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: 100%; +} + +.col-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; +} + +.col-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; +} + +.col-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; +} + +.col-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; +} + +.col-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; +} + +.col-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; +} + +.col-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; +} + +.col-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; +} + +.col-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; +} + +.col-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; +} + +.col-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; +} + +.col-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; +} + +.order-first { + -ms-flex-order: -1; + order: -1; +} + +.order-last { + -ms-flex-order: 13; + order: 13; +} + +.order-0 { + -ms-flex-order: 0; + order: 0; +} + +.order-1 { + -ms-flex-order: 1; + order: 1; +} + +.order-2 { + -ms-flex-order: 2; + order: 2; +} + +.order-3 { + -ms-flex-order: 3; + order: 3; +} + +.order-4 { + -ms-flex-order: 4; + order: 4; +} + +.order-5 { + -ms-flex-order: 5; + order: 5; +} + +.order-6 { + -ms-flex-order: 6; + order: 6; +} + +.order-7 { + -ms-flex-order: 7; + order: 7; +} + +.order-8 { + -ms-flex-order: 8; + order: 8; +} + +.order-9 { + -ms-flex-order: 9; + order: 9; +} + +.order-10 { + -ms-flex-order: 10; + order: 10; +} + +.order-11 { + -ms-flex-order: 11; + order: 11; +} + +.order-12 { + -ms-flex-order: 12; + order: 12; +} + +.offset-1 { + margin-left: 8.333333%; +} + +.offset-2 { + margin-left: 16.666667%; +} + +.offset-3 { + margin-left: 25%; +} + +.offset-4 { + margin-left: 33.333333%; +} + +.offset-5 { + margin-left: 41.666667%; +} + +.offset-6 { + margin-left: 50%; +} + +.offset-7 { + margin-left: 58.333333%; +} + +.offset-8 { + margin-left: 66.666667%; +} + +.offset-9 { + margin-left: 75%; +} + +.offset-10 { + margin-left: 83.333333%; +} + +.offset-11 { + margin-left: 91.666667%; +} + +@media (min-width: 576px) { + .col-sm { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; + } + .col-sm-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: 100%; + } + .col-sm-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; + } + .col-sm-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; + } + .col-sm-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; + } + .col-sm-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; + } + .col-sm-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; + } + .col-sm-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; + } + .col-sm-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; + } + .col-sm-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; + } + .col-sm-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + } + .col-sm-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; + } + .col-sm-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; + } + .col-sm-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; + } + .order-sm-first { + -ms-flex-order: -1; + order: -1; + } + .order-sm-last { + -ms-flex-order: 13; + order: 13; + } + .order-sm-0 { + -ms-flex-order: 0; + order: 0; + } + .order-sm-1 { + -ms-flex-order: 1; + order: 1; + } + .order-sm-2 { + -ms-flex-order: 2; + order: 2; + } + .order-sm-3 { + -ms-flex-order: 3; + order: 3; + } + .order-sm-4 { + -ms-flex-order: 4; + order: 4; + } + .order-sm-5 { + -ms-flex-order: 5; + order: 5; + } + .order-sm-6 { + -ms-flex-order: 6; + order: 6; + } + .order-sm-7 { + -ms-flex-order: 7; + order: 7; + } + .order-sm-8 { + -ms-flex-order: 8; + order: 8; + } + .order-sm-9 { + -ms-flex-order: 9; + order: 9; + } + .order-sm-10 { + -ms-flex-order: 10; + order: 10; + } + .order-sm-11 { + -ms-flex-order: 11; + order: 11; + } + .order-sm-12 { + -ms-flex-order: 12; + order: 12; + } + .offset-sm-0 { + margin-left: 0; + } + .offset-sm-1 { + margin-left: 8.333333%; + } + .offset-sm-2 { + margin-left: 16.666667%; + } + .offset-sm-3 { + margin-left: 25%; + } + .offset-sm-4 { + margin-left: 33.333333%; + } + .offset-sm-5 { + margin-left: 41.666667%; + } + .offset-sm-6 { + margin-left: 50%; + } + .offset-sm-7 { + margin-left: 58.333333%; + } + .offset-sm-8 { + margin-left: 66.666667%; + } + .offset-sm-9 { + margin-left: 75%; + } + .offset-sm-10 { + margin-left: 83.333333%; + } + .offset-sm-11 { + margin-left: 91.666667%; + } +} + +@media (min-width: 768px) { + .col-md { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; + } + .col-md-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: 100%; + } + .col-md-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; + } + .col-md-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; + } + .col-md-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; + } + .col-md-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; + } + .col-md-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; + } + .col-md-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; + } + .col-md-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; + } + .col-md-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; + } + .col-md-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + } + .col-md-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; + } + .col-md-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; + } + .col-md-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; + } + .order-md-first { + -ms-flex-order: -1; + order: -1; + } + .order-md-last { + -ms-flex-order: 13; + order: 13; + } + .order-md-0 { + -ms-flex-order: 0; + order: 0; + } + .order-md-1 { + -ms-flex-order: 1; + order: 1; + } + .order-md-2 { + -ms-flex-order: 2; + order: 2; + } + .order-md-3 { + -ms-flex-order: 3; + order: 3; + } + .order-md-4 { + -ms-flex-order: 4; + order: 4; + } + .order-md-5 { + -ms-flex-order: 5; + order: 5; + } + .order-md-6 { + -ms-flex-order: 6; + order: 6; + } + .order-md-7 { + -ms-flex-order: 7; + order: 7; + } + .order-md-8 { + -ms-flex-order: 8; + order: 8; + } + .order-md-9 { + -ms-flex-order: 9; + order: 9; + } + .order-md-10 { + -ms-flex-order: 10; + order: 10; + } + .order-md-11 { + -ms-flex-order: 11; + order: 11; + } + .order-md-12 { + -ms-flex-order: 12; + order: 12; + } + .offset-md-0 { + margin-left: 0; + } + .offset-md-1 { + margin-left: 8.333333%; + } + .offset-md-2 { + margin-left: 16.666667%; + } + .offset-md-3 { + margin-left: 25%; + } + .offset-md-4 { + margin-left: 33.333333%; + } + .offset-md-5 { + margin-left: 41.666667%; + } + .offset-md-6 { + margin-left: 50%; + } + .offset-md-7 { + margin-left: 58.333333%; + } + .offset-md-8 { + margin-left: 66.666667%; + } + .offset-md-9 { + margin-left: 75%; + } + .offset-md-10 { + margin-left: 83.333333%; + } + .offset-md-11 { + margin-left: 91.666667%; + } +} + +@media (min-width: 992px) { + .col-lg { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; + } + .col-lg-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: 100%; + } + .col-lg-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; + } + .col-lg-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; + } + .col-lg-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; + } + .col-lg-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; + } + .col-lg-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; + } + .col-lg-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; + } + .col-lg-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; + } + .col-lg-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; + } + .col-lg-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + } + .col-lg-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; + } + .col-lg-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; + } + .col-lg-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; + } + .order-lg-first { + -ms-flex-order: -1; + order: -1; + } + .order-lg-last { + -ms-flex-order: 13; + order: 13; + } + .order-lg-0 { + -ms-flex-order: 0; + order: 0; + } + .order-lg-1 { + -ms-flex-order: 1; + order: 1; + } + .order-lg-2 { + -ms-flex-order: 2; + order: 2; + } + .order-lg-3 { + -ms-flex-order: 3; + order: 3; + } + .order-lg-4 { + -ms-flex-order: 4; + order: 4; + } + .order-lg-5 { + -ms-flex-order: 5; + order: 5; + } + .order-lg-6 { + -ms-flex-order: 6; + order: 6; + } + .order-lg-7 { + -ms-flex-order: 7; + order: 7; + } + .order-lg-8 { + -ms-flex-order: 8; + order: 8; + } + .order-lg-9 { + -ms-flex-order: 9; + order: 9; + } + .order-lg-10 { + -ms-flex-order: 10; + order: 10; + } + .order-lg-11 { + -ms-flex-order: 11; + order: 11; + } + .order-lg-12 { + -ms-flex-order: 12; + order: 12; + } + .offset-lg-0 { + margin-left: 0; + } + .offset-lg-1 { + margin-left: 8.333333%; + } + .offset-lg-2 { + margin-left: 16.666667%; + } + .offset-lg-3 { + margin-left: 25%; + } + .offset-lg-4 { + margin-left: 33.333333%; + } + .offset-lg-5 { + margin-left: 41.666667%; + } + .offset-lg-6 { + margin-left: 50%; + } + .offset-lg-7 { + margin-left: 58.333333%; + } + .offset-lg-8 { + margin-left: 66.666667%; + } + .offset-lg-9 { + margin-left: 75%; + } + .offset-lg-10 { + margin-left: 83.333333%; + } + .offset-lg-11 { + margin-left: 91.666667%; + } +} + +@media (min-width: 1200px) { + .col-xl { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; + } + .col-xl-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: 100%; + } + .col-xl-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; + } + .col-xl-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; + } + .col-xl-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; + } + .col-xl-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; + } + .col-xl-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; + } + .col-xl-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; + } + .col-xl-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; + } + .col-xl-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; + } + .col-xl-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + } + .col-xl-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; + } + .col-xl-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; + } + .col-xl-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; + } + .order-xl-first { + -ms-flex-order: -1; + order: -1; + } + .order-xl-last { + -ms-flex-order: 13; + order: 13; + } + .order-xl-0 { + -ms-flex-order: 0; + order: 0; + } + .order-xl-1 { + -ms-flex-order: 1; + order: 1; + } + .order-xl-2 { + -ms-flex-order: 2; + order: 2; + } + .order-xl-3 { + -ms-flex-order: 3; + order: 3; + } + .order-xl-4 { + -ms-flex-order: 4; + order: 4; + } + .order-xl-5 { + -ms-flex-order: 5; + order: 5; + } + .order-xl-6 { + -ms-flex-order: 6; + order: 6; + } + .order-xl-7 { + -ms-flex-order: 7; + order: 7; + } + .order-xl-8 { + -ms-flex-order: 8; + order: 8; + } + .order-xl-9 { + -ms-flex-order: 9; + order: 9; + } + .order-xl-10 { + -ms-flex-order: 10; + order: 10; + } + .order-xl-11 { + -ms-flex-order: 11; + order: 11; + } + .order-xl-12 { + -ms-flex-order: 12; + order: 12; + } + .offset-xl-0 { + margin-left: 0; + } + .offset-xl-1 { + margin-left: 8.333333%; + } + .offset-xl-2 { + margin-left: 16.666667%; + } + .offset-xl-3 { + margin-left: 25%; + } + .offset-xl-4 { + margin-left: 33.333333%; + } + .offset-xl-5 { + margin-left: 41.666667%; + } + .offset-xl-6 { + margin-left: 50%; + } + .offset-xl-7 { + margin-left: 58.333333%; + } + .offset-xl-8 { + margin-left: 66.666667%; + } + .offset-xl-9 { + margin-left: 75%; + } + .offset-xl-10 { + margin-left: 83.333333%; + } + .offset-xl-11 { + margin-left: 91.666667%; + } +} + +.d-none { + display: none !important; +} + +.d-inline { + display: inline !important; +} + +.d-inline-block { + display: inline-block !important; +} + +.d-block { + display: block !important; +} + +.d-table { + display: table !important; +} + +.d-table-row { + display: table-row !important; +} + +.d-table-cell { + display: table-cell !important; +} + +.d-flex { + display: -ms-flexbox !important; + display: flex !important; +} + +.d-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; +} + +@media (min-width: 576px) { + .d-sm-none { + display: none !important; + } + .d-sm-inline { + display: inline !important; + } + .d-sm-inline-block { + display: inline-block !important; + } + .d-sm-block { + display: block !important; + } + .d-sm-table { + display: table !important; + } + .d-sm-table-row { + display: table-row !important; + } + .d-sm-table-cell { + display: table-cell !important; + } + .d-sm-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-sm-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +@media (min-width: 768px) { + .d-md-none { + display: none !important; + } + .d-md-inline { + display: inline !important; + } + .d-md-inline-block { + display: inline-block !important; + } + .d-md-block { + display: block !important; + } + .d-md-table { + display: table !important; + } + .d-md-table-row { + display: table-row !important; + } + .d-md-table-cell { + display: table-cell !important; + } + .d-md-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-md-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +@media (min-width: 992px) { + .d-lg-none { + display: none !important; + } + .d-lg-inline { + display: inline !important; + } + .d-lg-inline-block { + display: inline-block !important; + } + .d-lg-block { + display: block !important; + } + .d-lg-table { + display: table !important; + } + .d-lg-table-row { + display: table-row !important; + } + .d-lg-table-cell { + display: table-cell !important; + } + .d-lg-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-lg-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +@media (min-width: 1200px) { + .d-xl-none { + display: none !important; + } + .d-xl-inline { + display: inline !important; + } + .d-xl-inline-block { + display: inline-block !important; + } + .d-xl-block { + display: block !important; + } + .d-xl-table { + display: table !important; + } + .d-xl-table-row { + display: table-row !important; + } + .d-xl-table-cell { + display: table-cell !important; + } + .d-xl-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-xl-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +@media print { + .d-print-none { + display: none !important; + } + .d-print-inline { + display: inline !important; + } + .d-print-inline-block { + display: inline-block !important; + } + .d-print-block { + display: block !important; + } + .d-print-table { + display: table !important; + } + .d-print-table-row { + display: table-row !important; + } + .d-print-table-cell { + display: table-cell !important; + } + .d-print-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-print-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +.flex-row { + -ms-flex-direction: row !important; + flex-direction: row !important; +} + +.flex-column { + -ms-flex-direction: column !important; + flex-direction: column !important; +} + +.flex-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; +} + +.flex-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; +} + +.flex-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; +} + +.flex-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; +} + +.flex-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; +} + +.flex-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; +} + +.flex-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; +} + +.flex-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; +} + +.flex-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; +} + +.flex-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; +} + +.justify-content-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; +} + +.justify-content-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; +} + +.justify-content-center { + -ms-flex-pack: center !important; + justify-content: center !important; +} + +.justify-content-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; +} + +.justify-content-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; +} + +.align-items-start { + -ms-flex-align: start !important; + align-items: flex-start !important; +} + +.align-items-end { + -ms-flex-align: end !important; + align-items: flex-end !important; +} + +.align-items-center { + -ms-flex-align: center !important; + align-items: center !important; +} + +.align-items-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; +} + +.align-items-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; +} + +.align-content-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; +} + +.align-content-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; +} + +.align-content-center { + -ms-flex-line-pack: center !important; + align-content: center !important; +} + +.align-content-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; +} + +.align-content-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; +} + +.align-content-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; +} + +.align-self-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; +} + +.align-self-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; +} + +.align-self-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; +} + +.align-self-center { + -ms-flex-item-align: center !important; + align-self: center !important; +} + +.align-self-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; +} + +.align-self-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; +} + +@media (min-width: 576px) { + .flex-sm-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-sm-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-sm-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-sm-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-sm-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-sm-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-sm-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .flex-sm-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-sm-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-sm-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-sm-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-sm-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .justify-content-sm-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-sm-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-sm-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-sm-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-sm-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .align-items-sm-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-sm-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-sm-center { + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-sm-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-sm-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-sm-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-sm-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-sm-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-sm-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-sm-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-sm-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-sm-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-sm-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-sm-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-sm-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-sm-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-sm-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } +} + +@media (min-width: 768px) { + .flex-md-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-md-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-md-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-md-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-md-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-md-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-md-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .flex-md-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-md-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-md-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-md-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-md-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .justify-content-md-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-md-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-md-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-md-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-md-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .align-items-md-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-md-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-md-center { + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-md-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-md-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-md-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-md-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-md-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-md-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-md-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-md-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-md-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-md-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-md-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-md-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-md-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-md-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } +} + +@media (min-width: 992px) { + .flex-lg-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-lg-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-lg-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-lg-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-lg-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-lg-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-lg-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .flex-lg-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-lg-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-lg-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-lg-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-lg-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .justify-content-lg-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-lg-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-lg-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-lg-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-lg-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .align-items-lg-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-lg-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-lg-center { + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-lg-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-lg-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-lg-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-lg-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-lg-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-lg-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-lg-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-lg-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-lg-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-lg-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-lg-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-lg-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-lg-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-lg-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } +} + +@media (min-width: 1200px) { + .flex-xl-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-xl-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-xl-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-xl-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-xl-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-xl-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-xl-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .flex-xl-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-xl-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-xl-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-xl-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-xl-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .justify-content-xl-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-xl-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-xl-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-xl-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-xl-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .align-items-xl-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-xl-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-xl-center { + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-xl-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-xl-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-xl-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-xl-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-xl-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-xl-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-xl-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-xl-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-xl-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-xl-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-xl-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-xl-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-xl-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-xl-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } +} + +.m-0 { + margin: 0 !important; +} + +.mt-0, +.my-0 { + margin-top: 0 !important; +} + +.mr-0, +.mx-0 { + margin-right: 0 !important; +} + +.mb-0, +.my-0 { + margin-bottom: 0 !important; +} + +.ml-0, +.mx-0 { + margin-left: 0 !important; +} + +.m-1 { + margin: 0.25rem !important; +} + +.mt-1, +.my-1 { + margin-top: 0.25rem !important; +} + +.mr-1, +.mx-1 { + margin-right: 0.25rem !important; +} + +.mb-1, +.my-1 { + margin-bottom: 0.25rem !important; +} + +.ml-1, +.mx-1 { + margin-left: 0.25rem !important; +} + +.m-2 { + margin: 0.5rem !important; +} + +.mt-2, +.my-2 { + margin-top: 0.5rem !important; +} + +.mr-2, +.mx-2 { + margin-right: 0.5rem !important; +} + +.mb-2, +.my-2 { + margin-bottom: 0.5rem !important; +} + +.ml-2, +.mx-2 { + margin-left: 0.5rem !important; +} + +.m-3 { + margin: 1rem !important; +} + +.mt-3, +.my-3 { + margin-top: 1rem !important; +} + +.mr-3, +.mx-3 { + margin-right: 1rem !important; +} + +.mb-3, +.my-3 { + margin-bottom: 1rem !important; +} + +.ml-3, +.mx-3 { + margin-left: 1rem !important; +} + +.m-4 { + margin: 1.5rem !important; +} + +.mt-4, +.my-4 { + margin-top: 1.5rem !important; +} + +.mr-4, +.mx-4 { + margin-right: 1.5rem !important; +} + +.mb-4, +.my-4 { + margin-bottom: 1.5rem !important; +} + +.ml-4, +.mx-4 { + margin-left: 1.5rem !important; +} + +.m-5 { + margin: 3rem !important; +} + +.mt-5, +.my-5 { + margin-top: 3rem !important; +} + +.mr-5, +.mx-5 { + margin-right: 3rem !important; +} + +.mb-5, +.my-5 { + margin-bottom: 3rem !important; +} + +.ml-5, +.mx-5 { + margin-left: 3rem !important; +} + +.p-0 { + padding: 0 !important; +} + +.pt-0, +.py-0 { + padding-top: 0 !important; +} + +.pr-0, +.px-0 { + padding-right: 0 !important; +} + +.pb-0, +.py-0 { + padding-bottom: 0 !important; +} + +.pl-0, +.px-0 { + padding-left: 0 !important; +} + +.p-1 { + padding: 0.25rem !important; +} + +.pt-1, +.py-1 { + padding-top: 0.25rem !important; +} + +.pr-1, +.px-1 { + padding-right: 0.25rem !important; +} + +.pb-1, +.py-1 { + padding-bottom: 0.25rem !important; +} + +.pl-1, +.px-1 { + padding-left: 0.25rem !important; +} + +.p-2 { + padding: 0.5rem !important; +} + +.pt-2, +.py-2 { + padding-top: 0.5rem !important; +} + +.pr-2, +.px-2 { + padding-right: 0.5rem !important; +} + +.pb-2, +.py-2 { + padding-bottom: 0.5rem !important; +} + +.pl-2, +.px-2 { + padding-left: 0.5rem !important; +} + +.p-3 { + padding: 1rem !important; +} + +.pt-3, +.py-3 { + padding-top: 1rem !important; +} + +.pr-3, +.px-3 { + padding-right: 1rem !important; +} + +.pb-3, +.py-3 { + padding-bottom: 1rem !important; +} + +.pl-3, +.px-3 { + padding-left: 1rem !important; +} + +.p-4 { + padding: 1.5rem !important; +} + +.pt-4, +.py-4 { + padding-top: 1.5rem !important; +} + +.pr-4, +.px-4 { + padding-right: 1.5rem !important; +} + +.pb-4, +.py-4 { + padding-bottom: 1.5rem !important; +} + +.pl-4, +.px-4 { + padding-left: 1.5rem !important; +} + +.p-5 { + padding: 3rem !important; +} + +.pt-5, +.py-5 { + padding-top: 3rem !important; +} + +.pr-5, +.px-5 { + padding-right: 3rem !important; +} + +.pb-5, +.py-5 { + padding-bottom: 3rem !important; +} + +.pl-5, +.px-5 { + padding-left: 3rem !important; +} + +.m-n1 { + margin: -0.25rem !important; +} + +.mt-n1, +.my-n1 { + margin-top: -0.25rem !important; +} + +.mr-n1, +.mx-n1 { + margin-right: -0.25rem !important; +} + +.mb-n1, +.my-n1 { + margin-bottom: -0.25rem !important; +} + +.ml-n1, +.mx-n1 { + margin-left: -0.25rem !important; +} + +.m-n2 { + margin: -0.5rem !important; +} + +.mt-n2, +.my-n2 { + margin-top: -0.5rem !important; +} + +.mr-n2, +.mx-n2 { + margin-right: -0.5rem !important; +} + +.mb-n2, +.my-n2 { + margin-bottom: -0.5rem !important; +} + +.ml-n2, +.mx-n2 { + margin-left: -0.5rem !important; +} + +.m-n3 { + margin: -1rem !important; +} + +.mt-n3, +.my-n3 { + margin-top: -1rem !important; +} + +.mr-n3, +.mx-n3 { + margin-right: -1rem !important; +} + +.mb-n3, +.my-n3 { + margin-bottom: -1rem !important; +} + +.ml-n3, +.mx-n3 { + margin-left: -1rem !important; +} + +.m-n4 { + margin: -1.5rem !important; +} + +.mt-n4, +.my-n4 { + margin-top: -1.5rem !important; +} + +.mr-n4, +.mx-n4 { + margin-right: -1.5rem !important; +} + +.mb-n4, +.my-n4 { + margin-bottom: -1.5rem !important; +} + +.ml-n4, +.mx-n4 { + margin-left: -1.5rem !important; +} + +.m-n5 { + margin: -3rem !important; +} + +.mt-n5, +.my-n5 { + margin-top: -3rem !important; +} + +.mr-n5, +.mx-n5 { + margin-right: -3rem !important; +} + +.mb-n5, +.my-n5 { + margin-bottom: -3rem !important; +} + +.ml-n5, +.mx-n5 { + margin-left: -3rem !important; +} + +.m-auto { + margin: auto !important; +} + +.mt-auto, +.my-auto { + margin-top: auto !important; +} + +.mr-auto, +.mx-auto { + margin-right: auto !important; +} + +.mb-auto, +.my-auto { + margin-bottom: auto !important; +} + +.ml-auto, +.mx-auto { + margin-left: auto !important; +} + +@media (min-width: 576px) { + .m-sm-0 { + margin: 0 !important; + } + .mt-sm-0, + .my-sm-0 { + margin-top: 0 !important; + } + .mr-sm-0, + .mx-sm-0 { + margin-right: 0 !important; + } + .mb-sm-0, + .my-sm-0 { + margin-bottom: 0 !important; + } + .ml-sm-0, + .mx-sm-0 { + margin-left: 0 !important; + } + .m-sm-1 { + margin: 0.25rem !important; + } + .mt-sm-1, + .my-sm-1 { + margin-top: 0.25rem !important; + } + .mr-sm-1, + .mx-sm-1 { + margin-right: 0.25rem !important; + } + .mb-sm-1, + .my-sm-1 { + margin-bottom: 0.25rem !important; + } + .ml-sm-1, + .mx-sm-1 { + margin-left: 0.25rem !important; + } + .m-sm-2 { + margin: 0.5rem !important; + } + .mt-sm-2, + .my-sm-2 { + margin-top: 0.5rem !important; + } + .mr-sm-2, + .mx-sm-2 { + margin-right: 0.5rem !important; + } + .mb-sm-2, + .my-sm-2 { + margin-bottom: 0.5rem !important; + } + .ml-sm-2, + .mx-sm-2 { + margin-left: 0.5rem !important; + } + .m-sm-3 { + margin: 1rem !important; + } + .mt-sm-3, + .my-sm-3 { + margin-top: 1rem !important; + } + .mr-sm-3, + .mx-sm-3 { + margin-right: 1rem !important; + } + .mb-sm-3, + .my-sm-3 { + margin-bottom: 1rem !important; + } + .ml-sm-3, + .mx-sm-3 { + margin-left: 1rem !important; + } + .m-sm-4 { + margin: 1.5rem !important; + } + .mt-sm-4, + .my-sm-4 { + margin-top: 1.5rem !important; + } + .mr-sm-4, + .mx-sm-4 { + margin-right: 1.5rem !important; + } + .mb-sm-4, + .my-sm-4 { + margin-bottom: 1.5rem !important; + } + .ml-sm-4, + .mx-sm-4 { + margin-left: 1.5rem !important; + } + .m-sm-5 { + margin: 3rem !important; + } + .mt-sm-5, + .my-sm-5 { + margin-top: 3rem !important; + } + .mr-sm-5, + .mx-sm-5 { + margin-right: 3rem !important; + } + .mb-sm-5, + .my-sm-5 { + margin-bottom: 3rem !important; + } + .ml-sm-5, + .mx-sm-5 { + margin-left: 3rem !important; + } + .p-sm-0 { + padding: 0 !important; + } + .pt-sm-0, + .py-sm-0 { + padding-top: 0 !important; + } + .pr-sm-0, + .px-sm-0 { + padding-right: 0 !important; + } + .pb-sm-0, + .py-sm-0 { + padding-bottom: 0 !important; + } + .pl-sm-0, + .px-sm-0 { + padding-left: 0 !important; + } + .p-sm-1 { + padding: 0.25rem !important; + } + .pt-sm-1, + .py-sm-1 { + padding-top: 0.25rem !important; + } + .pr-sm-1, + .px-sm-1 { + padding-right: 0.25rem !important; + } + .pb-sm-1, + .py-sm-1 { + padding-bottom: 0.25rem !important; + } + .pl-sm-1, + .px-sm-1 { + padding-left: 0.25rem !important; + } + .p-sm-2 { + padding: 0.5rem !important; + } + .pt-sm-2, + .py-sm-2 { + padding-top: 0.5rem !important; + } + .pr-sm-2, + .px-sm-2 { + padding-right: 0.5rem !important; + } + .pb-sm-2, + .py-sm-2 { + padding-bottom: 0.5rem !important; + } + .pl-sm-2, + .px-sm-2 { + padding-left: 0.5rem !important; + } + .p-sm-3 { + padding: 1rem !important; + } + .pt-sm-3, + .py-sm-3 { + padding-top: 1rem !important; + } + .pr-sm-3, + .px-sm-3 { + padding-right: 1rem !important; + } + .pb-sm-3, + .py-sm-3 { + padding-bottom: 1rem !important; + } + .pl-sm-3, + .px-sm-3 { + padding-left: 1rem !important; + } + .p-sm-4 { + padding: 1.5rem !important; + } + .pt-sm-4, + .py-sm-4 { + padding-top: 1.5rem !important; + } + .pr-sm-4, + .px-sm-4 { + padding-right: 1.5rem !important; + } + .pb-sm-4, + .py-sm-4 { + padding-bottom: 1.5rem !important; + } + .pl-sm-4, + .px-sm-4 { + padding-left: 1.5rem !important; + } + .p-sm-5 { + padding: 3rem !important; + } + .pt-sm-5, + .py-sm-5 { + padding-top: 3rem !important; + } + .pr-sm-5, + .px-sm-5 { + padding-right: 3rem !important; + } + .pb-sm-5, + .py-sm-5 { + padding-bottom: 3rem !important; + } + .pl-sm-5, + .px-sm-5 { + padding-left: 3rem !important; + } + .m-sm-n1 { + margin: -0.25rem !important; + } + .mt-sm-n1, + .my-sm-n1 { + margin-top: -0.25rem !important; + } + .mr-sm-n1, + .mx-sm-n1 { + margin-right: -0.25rem !important; + } + .mb-sm-n1, + .my-sm-n1 { + margin-bottom: -0.25rem !important; + } + .ml-sm-n1, + .mx-sm-n1 { + margin-left: -0.25rem !important; + } + .m-sm-n2 { + margin: -0.5rem !important; + } + .mt-sm-n2, + .my-sm-n2 { + margin-top: -0.5rem !important; + } + .mr-sm-n2, + .mx-sm-n2 { + margin-right: -0.5rem !important; + } + .mb-sm-n2, + .my-sm-n2 { + margin-bottom: -0.5rem !important; + } + .ml-sm-n2, + .mx-sm-n2 { + margin-left: -0.5rem !important; + } + .m-sm-n3 { + margin: -1rem !important; + } + .mt-sm-n3, + .my-sm-n3 { + margin-top: -1rem !important; + } + .mr-sm-n3, + .mx-sm-n3 { + margin-right: -1rem !important; + } + .mb-sm-n3, + .my-sm-n3 { + margin-bottom: -1rem !important; + } + .ml-sm-n3, + .mx-sm-n3 { + margin-left: -1rem !important; + } + .m-sm-n4 { + margin: -1.5rem !important; + } + .mt-sm-n4, + .my-sm-n4 { + margin-top: -1.5rem !important; + } + .mr-sm-n4, + .mx-sm-n4 { + margin-right: -1.5rem !important; + } + .mb-sm-n4, + .my-sm-n4 { + margin-bottom: -1.5rem !important; + } + .ml-sm-n4, + .mx-sm-n4 { + margin-left: -1.5rem !important; + } + .m-sm-n5 { + margin: -3rem !important; + } + .mt-sm-n5, + .my-sm-n5 { + margin-top: -3rem !important; + } + .mr-sm-n5, + .mx-sm-n5 { + margin-right: -3rem !important; + } + .mb-sm-n5, + .my-sm-n5 { + margin-bottom: -3rem !important; + } + .ml-sm-n5, + .mx-sm-n5 { + margin-left: -3rem !important; + } + .m-sm-auto { + margin: auto !important; + } + .mt-sm-auto, + .my-sm-auto { + margin-top: auto !important; + } + .mr-sm-auto, + .mx-sm-auto { + margin-right: auto !important; + } + .mb-sm-auto, + .my-sm-auto { + margin-bottom: auto !important; + } + .ml-sm-auto, + .mx-sm-auto { + margin-left: auto !important; + } +} + +@media (min-width: 768px) { + .m-md-0 { + margin: 0 !important; + } + .mt-md-0, + .my-md-0 { + margin-top: 0 !important; + } + .mr-md-0, + .mx-md-0 { + margin-right: 0 !important; + } + .mb-md-0, + .my-md-0 { + margin-bottom: 0 !important; + } + .ml-md-0, + .mx-md-0 { + margin-left: 0 !important; + } + .m-md-1 { + margin: 0.25rem !important; + } + .mt-md-1, + .my-md-1 { + margin-top: 0.25rem !important; + } + .mr-md-1, + .mx-md-1 { + margin-right: 0.25rem !important; + } + .mb-md-1, + .my-md-1 { + margin-bottom: 0.25rem !important; + } + .ml-md-1, + .mx-md-1 { + margin-left: 0.25rem !important; + } + .m-md-2 { + margin: 0.5rem !important; + } + .mt-md-2, + .my-md-2 { + margin-top: 0.5rem !important; + } + .mr-md-2, + .mx-md-2 { + margin-right: 0.5rem !important; + } + .mb-md-2, + .my-md-2 { + margin-bottom: 0.5rem !important; + } + .ml-md-2, + .mx-md-2 { + margin-left: 0.5rem !important; + } + .m-md-3 { + margin: 1rem !important; + } + .mt-md-3, + .my-md-3 { + margin-top: 1rem !important; + } + .mr-md-3, + .mx-md-3 { + margin-right: 1rem !important; + } + .mb-md-3, + .my-md-3 { + margin-bottom: 1rem !important; + } + .ml-md-3, + .mx-md-3 { + margin-left: 1rem !important; + } + .m-md-4 { + margin: 1.5rem !important; + } + .mt-md-4, + .my-md-4 { + margin-top: 1.5rem !important; + } + .mr-md-4, + .mx-md-4 { + margin-right: 1.5rem !important; + } + .mb-md-4, + .my-md-4 { + margin-bottom: 1.5rem !important; + } + .ml-md-4, + .mx-md-4 { + margin-left: 1.5rem !important; + } + .m-md-5 { + margin: 3rem !important; + } + .mt-md-5, + .my-md-5 { + margin-top: 3rem !important; + } + .mr-md-5, + .mx-md-5 { + margin-right: 3rem !important; + } + .mb-md-5, + .my-md-5 { + margin-bottom: 3rem !important; + } + .ml-md-5, + .mx-md-5 { + margin-left: 3rem !important; + } + .p-md-0 { + padding: 0 !important; + } + .pt-md-0, + .py-md-0 { + padding-top: 0 !important; + } + .pr-md-0, + .px-md-0 { + padding-right: 0 !important; + } + .pb-md-0, + .py-md-0 { + padding-bottom: 0 !important; + } + .pl-md-0, + .px-md-0 { + padding-left: 0 !important; + } + .p-md-1 { + padding: 0.25rem !important; + } + .pt-md-1, + .py-md-1 { + padding-top: 0.25rem !important; + } + .pr-md-1, + .px-md-1 { + padding-right: 0.25rem !important; + } + .pb-md-1, + .py-md-1 { + padding-bottom: 0.25rem !important; + } + .pl-md-1, + .px-md-1 { + padding-left: 0.25rem !important; + } + .p-md-2 { + padding: 0.5rem !important; + } + .pt-md-2, + .py-md-2 { + padding-top: 0.5rem !important; + } + .pr-md-2, + .px-md-2 { + padding-right: 0.5rem !important; + } + .pb-md-2, + .py-md-2 { + padding-bottom: 0.5rem !important; + } + .pl-md-2, + .px-md-2 { + padding-left: 0.5rem !important; + } + .p-md-3 { + padding: 1rem !important; + } + .pt-md-3, + .py-md-3 { + padding-top: 1rem !important; + } + .pr-md-3, + .px-md-3 { + padding-right: 1rem !important; + } + .pb-md-3, + .py-md-3 { + padding-bottom: 1rem !important; + } + .pl-md-3, + .px-md-3 { + padding-left: 1rem !important; + } + .p-md-4 { + padding: 1.5rem !important; + } + .pt-md-4, + .py-md-4 { + padding-top: 1.5rem !important; + } + .pr-md-4, + .px-md-4 { + padding-right: 1.5rem !important; + } + .pb-md-4, + .py-md-4 { + padding-bottom: 1.5rem !important; + } + .pl-md-4, + .px-md-4 { + padding-left: 1.5rem !important; + } + .p-md-5 { + padding: 3rem !important; + } + .pt-md-5, + .py-md-5 { + padding-top: 3rem !important; + } + .pr-md-5, + .px-md-5 { + padding-right: 3rem !important; + } + .pb-md-5, + .py-md-5 { + padding-bottom: 3rem !important; + } + .pl-md-5, + .px-md-5 { + padding-left: 3rem !important; + } + .m-md-n1 { + margin: -0.25rem !important; + } + .mt-md-n1, + .my-md-n1 { + margin-top: -0.25rem !important; + } + .mr-md-n1, + .mx-md-n1 { + margin-right: -0.25rem !important; + } + .mb-md-n1, + .my-md-n1 { + margin-bottom: -0.25rem !important; + } + .ml-md-n1, + .mx-md-n1 { + margin-left: -0.25rem !important; + } + .m-md-n2 { + margin: -0.5rem !important; + } + .mt-md-n2, + .my-md-n2 { + margin-top: -0.5rem !important; + } + .mr-md-n2, + .mx-md-n2 { + margin-right: -0.5rem !important; + } + .mb-md-n2, + .my-md-n2 { + margin-bottom: -0.5rem !important; + } + .ml-md-n2, + .mx-md-n2 { + margin-left: -0.5rem !important; + } + .m-md-n3 { + margin: -1rem !important; + } + .mt-md-n3, + .my-md-n3 { + margin-top: -1rem !important; + } + .mr-md-n3, + .mx-md-n3 { + margin-right: -1rem !important; + } + .mb-md-n3, + .my-md-n3 { + margin-bottom: -1rem !important; + } + .ml-md-n3, + .mx-md-n3 { + margin-left: -1rem !important; + } + .m-md-n4 { + margin: -1.5rem !important; + } + .mt-md-n4, + .my-md-n4 { + margin-top: -1.5rem !important; + } + .mr-md-n4, + .mx-md-n4 { + margin-right: -1.5rem !important; + } + .mb-md-n4, + .my-md-n4 { + margin-bottom: -1.5rem !important; + } + .ml-md-n4, + .mx-md-n4 { + margin-left: -1.5rem !important; + } + .m-md-n5 { + margin: -3rem !important; + } + .mt-md-n5, + .my-md-n5 { + margin-top: -3rem !important; + } + .mr-md-n5, + .mx-md-n5 { + margin-right: -3rem !important; + } + .mb-md-n5, + .my-md-n5 { + margin-bottom: -3rem !important; + } + .ml-md-n5, + .mx-md-n5 { + margin-left: -3rem !important; + } + .m-md-auto { + margin: auto !important; + } + .mt-md-auto, + .my-md-auto { + margin-top: auto !important; + } + .mr-md-auto, + .mx-md-auto { + margin-right: auto !important; + } + .mb-md-auto, + .my-md-auto { + margin-bottom: auto !important; + } + .ml-md-auto, + .mx-md-auto { + margin-left: auto !important; + } +} + +@media (min-width: 992px) { + .m-lg-0 { + margin: 0 !important; + } + .mt-lg-0, + .my-lg-0 { + margin-top: 0 !important; + } + .mr-lg-0, + .mx-lg-0 { + margin-right: 0 !important; + } + .mb-lg-0, + .my-lg-0 { + margin-bottom: 0 !important; + } + .ml-lg-0, + .mx-lg-0 { + margin-left: 0 !important; + } + .m-lg-1 { + margin: 0.25rem !important; + } + .mt-lg-1, + .my-lg-1 { + margin-top: 0.25rem !important; + } + .mr-lg-1, + .mx-lg-1 { + margin-right: 0.25rem !important; + } + .mb-lg-1, + .my-lg-1 { + margin-bottom: 0.25rem !important; + } + .ml-lg-1, + .mx-lg-1 { + margin-left: 0.25rem !important; + } + .m-lg-2 { + margin: 0.5rem !important; + } + .mt-lg-2, + .my-lg-2 { + margin-top: 0.5rem !important; + } + .mr-lg-2, + .mx-lg-2 { + margin-right: 0.5rem !important; + } + .mb-lg-2, + .my-lg-2 { + margin-bottom: 0.5rem !important; + } + .ml-lg-2, + .mx-lg-2 { + margin-left: 0.5rem !important; + } + .m-lg-3 { + margin: 1rem !important; + } + .mt-lg-3, + .my-lg-3 { + margin-top: 1rem !important; + } + .mr-lg-3, + .mx-lg-3 { + margin-right: 1rem !important; + } + .mb-lg-3, + .my-lg-3 { + margin-bottom: 1rem !important; + } + .ml-lg-3, + .mx-lg-3 { + margin-left: 1rem !important; + } + .m-lg-4 { + margin: 1.5rem !important; + } + .mt-lg-4, + .my-lg-4 { + margin-top: 1.5rem !important; + } + .mr-lg-4, + .mx-lg-4 { + margin-right: 1.5rem !important; + } + .mb-lg-4, + .my-lg-4 { + margin-bottom: 1.5rem !important; + } + .ml-lg-4, + .mx-lg-4 { + margin-left: 1.5rem !important; + } + .m-lg-5 { + margin: 3rem !important; + } + .mt-lg-5, + .my-lg-5 { + margin-top: 3rem !important; + } + .mr-lg-5, + .mx-lg-5 { + margin-right: 3rem !important; + } + .mb-lg-5, + .my-lg-5 { + margin-bottom: 3rem !important; + } + .ml-lg-5, + .mx-lg-5 { + margin-left: 3rem !important; + } + .p-lg-0 { + padding: 0 !important; + } + .pt-lg-0, + .py-lg-0 { + padding-top: 0 !important; + } + .pr-lg-0, + .px-lg-0 { + padding-right: 0 !important; + } + .pb-lg-0, + .py-lg-0 { + padding-bottom: 0 !important; + } + .pl-lg-0, + .px-lg-0 { + padding-left: 0 !important; + } + .p-lg-1 { + padding: 0.25rem !important; + } + .pt-lg-1, + .py-lg-1 { + padding-top: 0.25rem !important; + } + .pr-lg-1, + .px-lg-1 { + padding-right: 0.25rem !important; + } + .pb-lg-1, + .py-lg-1 { + padding-bottom: 0.25rem !important; + } + .pl-lg-1, + .px-lg-1 { + padding-left: 0.25rem !important; + } + .p-lg-2 { + padding: 0.5rem !important; + } + .pt-lg-2, + .py-lg-2 { + padding-top: 0.5rem !important; + } + .pr-lg-2, + .px-lg-2 { + padding-right: 0.5rem !important; + } + .pb-lg-2, + .py-lg-2 { + padding-bottom: 0.5rem !important; + } + .pl-lg-2, + .px-lg-2 { + padding-left: 0.5rem !important; + } + .p-lg-3 { + padding: 1rem !important; + } + .pt-lg-3, + .py-lg-3 { + padding-top: 1rem !important; + } + .pr-lg-3, + .px-lg-3 { + padding-right: 1rem !important; + } + .pb-lg-3, + .py-lg-3 { + padding-bottom: 1rem !important; + } + .pl-lg-3, + .px-lg-3 { + padding-left: 1rem !important; + } + .p-lg-4 { + padding: 1.5rem !important; + } + .pt-lg-4, + .py-lg-4 { + padding-top: 1.5rem !important; + } + .pr-lg-4, + .px-lg-4 { + padding-right: 1.5rem !important; + } + .pb-lg-4, + .py-lg-4 { + padding-bottom: 1.5rem !important; + } + .pl-lg-4, + .px-lg-4 { + padding-left: 1.5rem !important; + } + .p-lg-5 { + padding: 3rem !important; + } + .pt-lg-5, + .py-lg-5 { + padding-top: 3rem !important; + } + .pr-lg-5, + .px-lg-5 { + padding-right: 3rem !important; + } + .pb-lg-5, + .py-lg-5 { + padding-bottom: 3rem !important; + } + .pl-lg-5, + .px-lg-5 { + padding-left: 3rem !important; + } + .m-lg-n1 { + margin: -0.25rem !important; + } + .mt-lg-n1, + .my-lg-n1 { + margin-top: -0.25rem !important; + } + .mr-lg-n1, + .mx-lg-n1 { + margin-right: -0.25rem !important; + } + .mb-lg-n1, + .my-lg-n1 { + margin-bottom: -0.25rem !important; + } + .ml-lg-n1, + .mx-lg-n1 { + margin-left: -0.25rem !important; + } + .m-lg-n2 { + margin: -0.5rem !important; + } + .mt-lg-n2, + .my-lg-n2 { + margin-top: -0.5rem !important; + } + .mr-lg-n2, + .mx-lg-n2 { + margin-right: -0.5rem !important; + } + .mb-lg-n2, + .my-lg-n2 { + margin-bottom: -0.5rem !important; + } + .ml-lg-n2, + .mx-lg-n2 { + margin-left: -0.5rem !important; + } + .m-lg-n3 { + margin: -1rem !important; + } + .mt-lg-n3, + .my-lg-n3 { + margin-top: -1rem !important; + } + .mr-lg-n3, + .mx-lg-n3 { + margin-right: -1rem !important; + } + .mb-lg-n3, + .my-lg-n3 { + margin-bottom: -1rem !important; + } + .ml-lg-n3, + .mx-lg-n3 { + margin-left: -1rem !important; + } + .m-lg-n4 { + margin: -1.5rem !important; + } + .mt-lg-n4, + .my-lg-n4 { + margin-top: -1.5rem !important; + } + .mr-lg-n4, + .mx-lg-n4 { + margin-right: -1.5rem !important; + } + .mb-lg-n4, + .my-lg-n4 { + margin-bottom: -1.5rem !important; + } + .ml-lg-n4, + .mx-lg-n4 { + margin-left: -1.5rem !important; + } + .m-lg-n5 { + margin: -3rem !important; + } + .mt-lg-n5, + .my-lg-n5 { + margin-top: -3rem !important; + } + .mr-lg-n5, + .mx-lg-n5 { + margin-right: -3rem !important; + } + .mb-lg-n5, + .my-lg-n5 { + margin-bottom: -3rem !important; + } + .ml-lg-n5, + .mx-lg-n5 { + margin-left: -3rem !important; + } + .m-lg-auto { + margin: auto !important; + } + .mt-lg-auto, + .my-lg-auto { + margin-top: auto !important; + } + .mr-lg-auto, + .mx-lg-auto { + margin-right: auto !important; + } + .mb-lg-auto, + .my-lg-auto { + margin-bottom: auto !important; + } + .ml-lg-auto, + .mx-lg-auto { + margin-left: auto !important; + } +} + +@media (min-width: 1200px) { + .m-xl-0 { + margin: 0 !important; + } + .mt-xl-0, + .my-xl-0 { + margin-top: 0 !important; + } + .mr-xl-0, + .mx-xl-0 { + margin-right: 0 !important; + } + .mb-xl-0, + .my-xl-0 { + margin-bottom: 0 !important; + } + .ml-xl-0, + .mx-xl-0 { + margin-left: 0 !important; + } + .m-xl-1 { + margin: 0.25rem !important; + } + .mt-xl-1, + .my-xl-1 { + margin-top: 0.25rem !important; + } + .mr-xl-1, + .mx-xl-1 { + margin-right: 0.25rem !important; + } + .mb-xl-1, + .my-xl-1 { + margin-bottom: 0.25rem !important; + } + .ml-xl-1, + .mx-xl-1 { + margin-left: 0.25rem !important; + } + .m-xl-2 { + margin: 0.5rem !important; + } + .mt-xl-2, + .my-xl-2 { + margin-top: 0.5rem !important; + } + .mr-xl-2, + .mx-xl-2 { + margin-right: 0.5rem !important; + } + .mb-xl-2, + .my-xl-2 { + margin-bottom: 0.5rem !important; + } + .ml-xl-2, + .mx-xl-2 { + margin-left: 0.5rem !important; + } + .m-xl-3 { + margin: 1rem !important; + } + .mt-xl-3, + .my-xl-3 { + margin-top: 1rem !important; + } + .mr-xl-3, + .mx-xl-3 { + margin-right: 1rem !important; + } + .mb-xl-3, + .my-xl-3 { + margin-bottom: 1rem !important; + } + .ml-xl-3, + .mx-xl-3 { + margin-left: 1rem !important; + } + .m-xl-4 { + margin: 1.5rem !important; + } + .mt-xl-4, + .my-xl-4 { + margin-top: 1.5rem !important; + } + .mr-xl-4, + .mx-xl-4 { + margin-right: 1.5rem !important; + } + .mb-xl-4, + .my-xl-4 { + margin-bottom: 1.5rem !important; + } + .ml-xl-4, + .mx-xl-4 { + margin-left: 1.5rem !important; + } + .m-xl-5 { + margin: 3rem !important; + } + .mt-xl-5, + .my-xl-5 { + margin-top: 3rem !important; + } + .mr-xl-5, + .mx-xl-5 { + margin-right: 3rem !important; + } + .mb-xl-5, + .my-xl-5 { + margin-bottom: 3rem !important; + } + .ml-xl-5, + .mx-xl-5 { + margin-left: 3rem !important; + } + .p-xl-0 { + padding: 0 !important; + } + .pt-xl-0, + .py-xl-0 { + padding-top: 0 !important; + } + .pr-xl-0, + .px-xl-0 { + padding-right: 0 !important; + } + .pb-xl-0, + .py-xl-0 { + padding-bottom: 0 !important; + } + .pl-xl-0, + .px-xl-0 { + padding-left: 0 !important; + } + .p-xl-1 { + padding: 0.25rem !important; + } + .pt-xl-1, + .py-xl-1 { + padding-top: 0.25rem !important; + } + .pr-xl-1, + .px-xl-1 { + padding-right: 0.25rem !important; + } + .pb-xl-1, + .py-xl-1 { + padding-bottom: 0.25rem !important; + } + .pl-xl-1, + .px-xl-1 { + padding-left: 0.25rem !important; + } + .p-xl-2 { + padding: 0.5rem !important; + } + .pt-xl-2, + .py-xl-2 { + padding-top: 0.5rem !important; + } + .pr-xl-2, + .px-xl-2 { + padding-right: 0.5rem !important; + } + .pb-xl-2, + .py-xl-2 { + padding-bottom: 0.5rem !important; + } + .pl-xl-2, + .px-xl-2 { + padding-left: 0.5rem !important; + } + .p-xl-3 { + padding: 1rem !important; + } + .pt-xl-3, + .py-xl-3 { + padding-top: 1rem !important; + } + .pr-xl-3, + .px-xl-3 { + padding-right: 1rem !important; + } + .pb-xl-3, + .py-xl-3 { + padding-bottom: 1rem !important; + } + .pl-xl-3, + .px-xl-3 { + padding-left: 1rem !important; + } + .p-xl-4 { + padding: 1.5rem !important; + } + .pt-xl-4, + .py-xl-4 { + padding-top: 1.5rem !important; + } + .pr-xl-4, + .px-xl-4 { + padding-right: 1.5rem !important; + } + .pb-xl-4, + .py-xl-4 { + padding-bottom: 1.5rem !important; + } + .pl-xl-4, + .px-xl-4 { + padding-left: 1.5rem !important; + } + .p-xl-5 { + padding: 3rem !important; + } + .pt-xl-5, + .py-xl-5 { + padding-top: 3rem !important; + } + .pr-xl-5, + .px-xl-5 { + padding-right: 3rem !important; + } + .pb-xl-5, + .py-xl-5 { + padding-bottom: 3rem !important; + } + .pl-xl-5, + .px-xl-5 { + padding-left: 3rem !important; + } + .m-xl-n1 { + margin: -0.25rem !important; + } + .mt-xl-n1, + .my-xl-n1 { + margin-top: -0.25rem !important; + } + .mr-xl-n1, + .mx-xl-n1 { + margin-right: -0.25rem !important; + } + .mb-xl-n1, + .my-xl-n1 { + margin-bottom: -0.25rem !important; + } + .ml-xl-n1, + .mx-xl-n1 { + margin-left: -0.25rem !important; + } + .m-xl-n2 { + margin: -0.5rem !important; + } + .mt-xl-n2, + .my-xl-n2 { + margin-top: -0.5rem !important; + } + .mr-xl-n2, + .mx-xl-n2 { + margin-right: -0.5rem !important; + } + .mb-xl-n2, + .my-xl-n2 { + margin-bottom: -0.5rem !important; + } + .ml-xl-n2, + .mx-xl-n2 { + margin-left: -0.5rem !important; + } + .m-xl-n3 { + margin: -1rem !important; + } + .mt-xl-n3, + .my-xl-n3 { + margin-top: -1rem !important; + } + .mr-xl-n3, + .mx-xl-n3 { + margin-right: -1rem !important; + } + .mb-xl-n3, + .my-xl-n3 { + margin-bottom: -1rem !important; + } + .ml-xl-n3, + .mx-xl-n3 { + margin-left: -1rem !important; + } + .m-xl-n4 { + margin: -1.5rem !important; + } + .mt-xl-n4, + .my-xl-n4 { + margin-top: -1.5rem !important; + } + .mr-xl-n4, + .mx-xl-n4 { + margin-right: -1.5rem !important; + } + .mb-xl-n4, + .my-xl-n4 { + margin-bottom: -1.5rem !important; + } + .ml-xl-n4, + .mx-xl-n4 { + margin-left: -1.5rem !important; + } + .m-xl-n5 { + margin: -3rem !important; + } + .mt-xl-n5, + .my-xl-n5 { + margin-top: -3rem !important; + } + .mr-xl-n5, + .mx-xl-n5 { + margin-right: -3rem !important; + } + .mb-xl-n5, + .my-xl-n5 { + margin-bottom: -3rem !important; + } + .ml-xl-n5, + .mx-xl-n5 { + margin-left: -3rem !important; + } + .m-xl-auto { + margin: auto !important; + } + .mt-xl-auto, + .my-xl-auto { + margin-top: auto !important; + } + .mr-xl-auto, + .mx-xl-auto { + margin-right: auto !important; + } + .mb-xl-auto, + .my-xl-auto { + margin-bottom: auto !important; + } + .ml-xl-auto, + .mx-xl-auto { + margin-left: auto !important; + } +} +/*# sourceMappingURL=bootstrap-grid.css.map */ \ No newline at end of file diff --git a/docs/4.3/dist/css/bootstrap-grid.css.map b/docs/4.3/dist/css/bootstrap-grid.css.map new file mode 100644 index 0000000000000000000000000000000000000000..564180c4ee85d34c4a8596f2e5367a5b2beebcca GIT binary patch literal 151749 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 M!5;j3@;_hy59SlElmGw# literal 0 HcmV?d00001 diff --git a/docs/4.3/dist/css/bootstrap-grid.min.css b/docs/4.3/dist/css/bootstrap-grid.min.css new file mode 100644 index 0000000000..bfb735d09e --- /dev/null +++ b/docs/4.3/dist/css/bootstrap-grid.min.css @@ -0,0 +1,7 @@ +/*! + * Bootstrap Grid v4.3.0 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors + * Copyright 2011-2019 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */html{box-sizing:border-box;-ms-overflow-style:scrollbar}*,::after,::before{box-sizing:inherit}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-first{-ms-flex-order:-1;order:-1}.order-last{-ms-flex-order:13;order:13}.order-0{-ms-flex-order:0;order:0}.order-1{-ms-flex-order:1;order:1}.order-2{-ms-flex-order:2;order:2}.order-3{-ms-flex-order:3;order:3}.order-4{-ms-flex-order:4;order:4}.order-5{-ms-flex-order:5;order:5}.order-6{-ms-flex-order:6;order:6}.order-7{-ms-flex-order:7;order:7}.order-8{-ms-flex-order:8;order:8}.order-9{-ms-flex-order:9;order:9}.order-10{-ms-flex-order:10;order:10}.order-11{-ms-flex-order:11;order:11}.order-12{-ms-flex-order:12;order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-sm-first{-ms-flex-order:-1;order:-1}.order-sm-last{-ms-flex-order:13;order:13}.order-sm-0{-ms-flex-order:0;order:0}.order-sm-1{-ms-flex-order:1;order:1}.order-sm-2{-ms-flex-order:2;order:2}.order-sm-3{-ms-flex-order:3;order:3}.order-sm-4{-ms-flex-order:4;order:4}.order-sm-5{-ms-flex-order:5;order:5}.order-sm-6{-ms-flex-order:6;order:6}.order-sm-7{-ms-flex-order:7;order:7}.order-sm-8{-ms-flex-order:8;order:8}.order-sm-9{-ms-flex-order:9;order:9}.order-sm-10{-ms-flex-order:10;order:10}.order-sm-11{-ms-flex-order:11;order:11}.order-sm-12{-ms-flex-order:12;order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-md-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-md-first{-ms-flex-order:-1;order:-1}.order-md-last{-ms-flex-order:13;order:13}.order-md-0{-ms-flex-order:0;order:0}.order-md-1{-ms-flex-order:1;order:1}.order-md-2{-ms-flex-order:2;order:2}.order-md-3{-ms-flex-order:3;order:3}.order-md-4{-ms-flex-order:4;order:4}.order-md-5{-ms-flex-order:5;order:5}.order-md-6{-ms-flex-order:6;order:6}.order-md-7{-ms-flex-order:7;order:7}.order-md-8{-ms-flex-order:8;order:8}.order-md-9{-ms-flex-order:9;order:9}.order-md-10{-ms-flex-order:10;order:10}.order-md-11{-ms-flex-order:11;order:11}.order-md-12{-ms-flex-order:12;order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-lg-first{-ms-flex-order:-1;order:-1}.order-lg-last{-ms-flex-order:13;order:13}.order-lg-0{-ms-flex-order:0;order:0}.order-lg-1{-ms-flex-order:1;order:1}.order-lg-2{-ms-flex-order:2;order:2}.order-lg-3{-ms-flex-order:3;order:3}.order-lg-4{-ms-flex-order:4;order:4}.order-lg-5{-ms-flex-order:5;order:5}.order-lg-6{-ms-flex-order:6;order:6}.order-lg-7{-ms-flex-order:7;order:7}.order-lg-8{-ms-flex-order:8;order:8}.order-lg-9{-ms-flex-order:9;order:9}.order-lg-10{-ms-flex-order:10;order:10}.order-lg-11{-ms-flex-order:11;order:11}.order-lg-12{-ms-flex-order:12;order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-xl-first{-ms-flex-order:-1;order:-1}.order-xl-last{-ms-flex-order:13;order:13}.order-xl-0{-ms-flex-order:0;order:0}.order-xl-1{-ms-flex-order:1;order:1}.order-xl-2{-ms-flex-order:2;order:2}.order-xl-3{-ms-flex-order:3;order:3}.order-xl-4{-ms-flex-order:4;order:4}.order-xl-5{-ms-flex-order:5;order:5}.order-xl-6{-ms-flex-order:6;order:6}.order-xl-7{-ms-flex-order:7;order:7}.order-xl-8{-ms-flex-order:8;order:8}.order-xl-9{-ms-flex-order:9;order:9}.order-xl-10{-ms-flex-order:10;order:10}.order-xl-11{-ms-flex-order:11;order:11}.order-xl-12{-ms-flex-order:12;order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}.flex-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}@media (min-width:576px){.flex-sm-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-sm-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-sm-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-sm-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:768px){.flex-md-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-md-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-md-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-md-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-md-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-md-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-lg-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-lg-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-lg-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-lg-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-lg-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-xl-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xl-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-xl-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-xl-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-xl-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}} +/*# sourceMappingURL=bootstrap-grid.min.css.map */ \ No newline at end of file diff --git a/docs/4.3/dist/css/bootstrap-grid.min.css.map b/docs/4.3/dist/css/bootstrap-grid.min.css.map new file mode 100644 index 0000000000000000000000000000000000000000..0c03cfa703ad694f4c8222f316e3021959096c2e GIT binary patch literal 108539 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 Uf?wr4PjUqu1_1xv`1>#aA84?vQ~&?~ literal 0 HcmV?d00001 diff --git a/docs/4.3/dist/css/bootstrap-reboot.css b/docs/4.3/dist/css/bootstrap-reboot.css new file mode 100644 index 0000000000..caec2a0c1c --- /dev/null +++ b/docs/4.3/dist/css/bootstrap-reboot.css @@ -0,0 +1,331 @@ +/*! + * Bootstrap Reboot v4.3.0 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors + * Copyright 2011-2019 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md) + */ +*, +*::before, +*::after { + box-sizing: border-box; +} + +html { + font-family: sans-serif; + line-height: 1.15; + -webkit-text-size-adjust: 100%; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +article, aside, figcaption, figure, footer, header, hgroup, main, nav, section { + display: block; +} + +body { + margin: 0; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + text-align: left; + background-color: #fff; +} + +[tabindex="-1"]:focus { + outline: 0 !important; +} + +hr { + box-sizing: content-box; + height: 0; + overflow: visible; +} + +h1, h2, h3, h4, h5, h6 { + margin-top: 0; + margin-bottom: 0.5rem; +} + +p { + margin-top: 0; + margin-bottom: 1rem; +} + +abbr[title], +abbr[data-original-title] { + text-decoration: underline; + -webkit-text-decoration: underline dotted; + text-decoration: underline dotted; + cursor: help; + border-bottom: 0; + -webkit-text-decoration-skip-ink: none; + text-decoration-skip-ink: none; +} + +address { + margin-bottom: 1rem; + font-style: normal; + line-height: inherit; +} + +ol, +ul, +dl { + margin-top: 0; + margin-bottom: 1rem; +} + +ol ol, +ul ul, +ol ul, +ul ol { + margin-bottom: 0; +} + +dt { + font-weight: 700; +} + +dd { + margin-bottom: .5rem; + margin-left: 0; +} + +blockquote { + margin: 0 0 1rem; +} + +b, +strong { + font-weight: bolder; +} + +small { + font-size: 80%; +} + +sub, +sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} + +sub { + bottom: -.25em; +} + +sup { + top: -.5em; +} + +a { + color: #007bff; + text-decoration: none; + background-color: transparent; +} + +a:hover { + color: #0056b3; + text-decoration: underline; +} + +a:not([href]):not([tabindex]) { + color: inherit; + text-decoration: none; +} + +a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus { + color: inherit; + text-decoration: none; +} + +a:not([href]):not([tabindex]):focus { + outline: 0; +} + +pre, +code, +kbd, +samp { + font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; + font-size: 1em; +} + +pre { + margin-top: 0; + margin-bottom: 1rem; + overflow: auto; +} + +figure { + margin: 0 0 1rem; +} + +img { + vertical-align: middle; + border-style: none; +} + +svg { + overflow: hidden; + vertical-align: middle; +} + +table { + border-collapse: collapse; +} + +caption { + padding-top: 0.75rem; + padding-bottom: 0.75rem; + color: #6c757d; + text-align: left; + caption-side: bottom; +} + +th { + text-align: inherit; +} + +label { + display: inline-block; + margin-bottom: 0.5rem; +} + +button { + border-radius: 0; +} + +button:focus { + outline: 1px dotted; + outline: 5px auto -webkit-focus-ring-color; +} + +input, +button, +select, +optgroup, +textarea { + margin: 0; + font-family: inherit; + font-size: inherit; + line-height: inherit; +} + +button, +input { + overflow: visible; +} + +button, +select { + text-transform: none; +} + +select { + word-wrap: normal; +} + +button, +[type="button"], +[type="reset"], +[type="submit"] { + -webkit-appearance: button; +} + +button:not(:disabled), +[type="button"]:not(:disabled), +[type="reset"]:not(:disabled), +[type="submit"]:not(:disabled) { + cursor: pointer; +} + +button::-moz-focus-inner, +[type="button"]::-moz-focus-inner, +[type="reset"]::-moz-focus-inner, +[type="submit"]::-moz-focus-inner { + padding: 0; + border-style: none; +} + +input[type="radio"], +input[type="checkbox"] { + box-sizing: border-box; + padding: 0; +} + +input[type="date"], +input[type="time"], +input[type="datetime-local"], +input[type="month"] { + -webkit-appearance: listbox; +} + +textarea { + overflow: auto; + resize: vertical; +} + +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0; +} + +legend { + display: block; + width: 100%; + max-width: 100%; + padding: 0; + margin-bottom: .5rem; + font-size: 1.5rem; + line-height: inherit; + color: inherit; + white-space: normal; +} + +progress { + vertical-align: baseline; +} + +[type="number"]::-webkit-inner-spin-button, +[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +[type="search"] { + outline-offset: -2px; + -webkit-appearance: none; +} + +[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +::-webkit-file-upload-button { + font: inherit; + -webkit-appearance: button; +} + +output { + display: inline-block; +} + +summary { + display: list-item; + cursor: pointer; +} + +template { + display: none; +} + +[hidden] { + display: none !important; +} +/*# sourceMappingURL=bootstrap-reboot.css.map */ \ No newline at end of file diff --git a/docs/4.3/dist/css/bootstrap-reboot.css.map b/docs/4.3/dist/css/bootstrap-reboot.css.map new file mode 100644 index 0000000000000000000000000000000000000000..1f9883ee24b6409d98441f5ef6dbb87256e1b9e0 GIT binary patch literal 76633 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/dist/css/bootstrap-reboot.min.css b/docs/4.3/dist/css/bootstrap-reboot.min.css new file mode 100644 index 0000000000..3ebca14fc9 --- /dev/null +++ b/docs/4.3/dist/css/bootstrap-reboot.min.css @@ -0,0 +1,8 @@ +/*! + * Bootstrap Reboot v4.3.0 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors + * Copyright 2011-2019 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md) + */*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important} +/*# sourceMappingURL=bootstrap-reboot.min.css.map */ \ No newline at end of file diff --git a/docs/4.3/dist/css/bootstrap-reboot.min.css.map b/docs/4.3/dist/css/bootstrap-reboot.min.css.map new file mode 100644 index 0000000000000000000000000000000000000000..3f15a290697f9d2e9c88758f3b97b8450700224b GIT binary patch literal 32611 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 BTi*Zx literal 0 HcmV?d00001 diff --git a/docs/4.3/dist/css/bootstrap.css b/docs/4.3/dist/css/bootstrap.css new file mode 100644 index 0000000000..25703b986b --- /dev/null +++ b/docs/4.3/dist/css/bootstrap.css @@ -0,0 +1,10038 @@ +/*! + * Bootstrap v4.3.0 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors + * Copyright 2011-2019 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +:root { + --blue: #007bff; + --indigo: #6610f2; + --purple: #6f42c1; + --pink: #e83e8c; + --red: #dc3545; + --orange: #fd7e14; + --yellow: #ffc107; + --green: #28a745; + --teal: #20c997; + --cyan: #17a2b8; + --white: #fff; + --gray: #6c757d; + --gray-dark: #343a40; + --primary: #007bff; + --secondary: #6c757d; + --success: #28a745; + --info: #17a2b8; + --warning: #ffc107; + --danger: #dc3545; + --light: #f8f9fa; + --dark: #343a40; + --breakpoint-xs: 0; + --breakpoint-sm: 576px; + --breakpoint-md: 768px; + --breakpoint-lg: 992px; + --breakpoint-xl: 1200px; + --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; +} + +*, +*::before, +*::after { + box-sizing: border-box; +} + +html { + font-family: sans-serif; + line-height: 1.15; + -webkit-text-size-adjust: 100%; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +article, aside, figcaption, figure, footer, header, hgroup, main, nav, section { + display: block; +} + +body { + margin: 0; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + text-align: left; + background-color: #fff; +} + +[tabindex="-1"]:focus { + outline: 0 !important; +} + +hr { + box-sizing: content-box; + height: 0; + overflow: visible; +} + +h1, h2, h3, h4, h5, h6 { + margin-top: 0; + margin-bottom: 0.5rem; +} + +p { + margin-top: 0; + margin-bottom: 1rem; +} + +abbr[title], +abbr[data-original-title] { + text-decoration: underline; + -webkit-text-decoration: underline dotted; + text-decoration: underline dotted; + cursor: help; + border-bottom: 0; + -webkit-text-decoration-skip-ink: none; + text-decoration-skip-ink: none; +} + +address { + margin-bottom: 1rem; + font-style: normal; + line-height: inherit; +} + +ol, +ul, +dl { + margin-top: 0; + margin-bottom: 1rem; +} + +ol ol, +ul ul, +ol ul, +ul ol { + margin-bottom: 0; +} + +dt { + font-weight: 700; +} + +dd { + margin-bottom: .5rem; + margin-left: 0; +} + +blockquote { + margin: 0 0 1rem; +} + +b, +strong { + font-weight: bolder; +} + +small { + font-size: 80%; +} + +sub, +sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} + +sub { + bottom: -.25em; +} + +sup { + top: -.5em; +} + +a { + color: #007bff; + text-decoration: none; + background-color: transparent; +} + +a:hover { + color: #0056b3; + text-decoration: underline; +} + +a:not([href]):not([tabindex]) { + color: inherit; + text-decoration: none; +} + +a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus { + color: inherit; + text-decoration: none; +} + +a:not([href]):not([tabindex]):focus { + outline: 0; +} + +pre, +code, +kbd, +samp { + font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; + font-size: 1em; +} + +pre { + margin-top: 0; + margin-bottom: 1rem; + overflow: auto; +} + +figure { + margin: 0 0 1rem; +} + +img { + vertical-align: middle; + border-style: none; +} + +svg { + overflow: hidden; + vertical-align: middle; +} + +table { + border-collapse: collapse; +} + +caption { + padding-top: 0.75rem; + padding-bottom: 0.75rem; + color: #6c757d; + text-align: left; + caption-side: bottom; +} + +th { + text-align: inherit; +} + +label { + display: inline-block; + margin-bottom: 0.5rem; +} + +button { + border-radius: 0; +} + +button:focus { + outline: 1px dotted; + outline: 5px auto -webkit-focus-ring-color; +} + +input, +button, +select, +optgroup, +textarea { + margin: 0; + font-family: inherit; + font-size: inherit; + line-height: inherit; +} + +button, +input { + overflow: visible; +} + +button, +select { + text-transform: none; +} + +select { + word-wrap: normal; +} + +button, +[type="button"], +[type="reset"], +[type="submit"] { + -webkit-appearance: button; +} + +button:not(:disabled), +[type="button"]:not(:disabled), +[type="reset"]:not(:disabled), +[type="submit"]:not(:disabled) { + cursor: pointer; +} + +button::-moz-focus-inner, +[type="button"]::-moz-focus-inner, +[type="reset"]::-moz-focus-inner, +[type="submit"]::-moz-focus-inner { + padding: 0; + border-style: none; +} + +input[type="radio"], +input[type="checkbox"] { + box-sizing: border-box; + padding: 0; +} + +input[type="date"], +input[type="time"], +input[type="datetime-local"], +input[type="month"] { + -webkit-appearance: listbox; +} + +textarea { + overflow: auto; + resize: vertical; +} + +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0; +} + +legend { + display: block; + width: 100%; + max-width: 100%; + padding: 0; + margin-bottom: .5rem; + font-size: 1.5rem; + line-height: inherit; + color: inherit; + white-space: normal; +} + +progress { + vertical-align: baseline; +} + +[type="number"]::-webkit-inner-spin-button, +[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +[type="search"] { + outline-offset: -2px; + -webkit-appearance: none; +} + +[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +::-webkit-file-upload-button { + font: inherit; + -webkit-appearance: button; +} + +output { + display: inline-block; +} + +summary { + display: list-item; + cursor: pointer; +} + +template { + display: none; +} + +[hidden] { + display: none !important; +} + +h1, h2, h3, h4, h5, h6, +.h1, .h2, .h3, .h4, .h5, .h6 { + margin-bottom: 0.5rem; + font-weight: 500; + line-height: 1.2; +} + +h1, .h1 { + font-size: 2.5rem; +} + +h2, .h2 { + font-size: 2rem; +} + +h3, .h3 { + font-size: 1.75rem; +} + +h4, .h4 { + font-size: 1.5rem; +} + +h5, .h5 { + font-size: 1.25rem; +} + +h6, .h6 { + font-size: 1rem; +} + +.lead { + font-size: 1.25rem; + font-weight: 300; +} + +.display-1 { + font-size: 6rem; + font-weight: 300; + line-height: 1.2; +} + +.display-2 { + font-size: 5.5rem; + font-weight: 300; + line-height: 1.2; +} + +.display-3 { + font-size: 4.5rem; + font-weight: 300; + line-height: 1.2; +} + +.display-4 { + font-size: 3.5rem; + font-weight: 300; + line-height: 1.2; +} + +hr { + margin-top: 1rem; + margin-bottom: 1rem; + border: 0; + border-top: 1px solid rgba(0, 0, 0, 0.1); +} + +small, +.small { + font-size: 80%; + font-weight: 400; +} + +mark, +.mark { + padding: 0.2em; + background-color: #fcf8e3; +} + +.list-unstyled { + padding-left: 0; + list-style: none; +} + +.list-inline { + padding-left: 0; + list-style: none; +} + +.list-inline-item { + display: inline-block; +} + +.list-inline-item:not(:last-child) { + margin-right: 0.5rem; +} + +.initialism { + font-size: 90%; + text-transform: uppercase; +} + +.blockquote { + margin-bottom: 1rem; + font-size: 1.25rem; +} + +.blockquote-footer { + display: block; + font-size: 80%; + color: #6c757d; +} + +.blockquote-footer::before { + content: "\2014\00A0"; +} + +.img-fluid { + max-width: 100%; + height: auto; +} + +.img-thumbnail { + padding: 0.25rem; + background-color: #fff; + border: 1px solid #dee2e6; + border-radius: 0.25rem; + max-width: 100%; + height: auto; +} + +.figure { + display: inline-block; +} + +.figure-img { + margin-bottom: 0.5rem; + line-height: 1; +} + +.figure-caption { + font-size: 90%; + color: #6c757d; +} + +code { + font-size: 87.5%; + color: #e83e8c; + word-break: break-word; +} + +a > code { + color: inherit; +} + +kbd { + padding: 0.2rem 0.4rem; + font-size: 87.5%; + color: #fff; + background-color: #212529; + border-radius: 0.2rem; +} + +kbd kbd { + padding: 0; + font-size: 100%; + font-weight: 700; +} + +pre { + display: block; + font-size: 87.5%; + color: #212529; +} + +pre code { + font-size: inherit; + color: inherit; + word-break: normal; +} + +.pre-scrollable { + max-height: 340px; + overflow-y: scroll; +} + +.container { + width: 100%; + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} + +@media (min-width: 576px) { + .container { + max-width: 540px; + } +} + +@media (min-width: 768px) { + .container { + max-width: 720px; + } +} + +@media (min-width: 992px) { + .container { + max-width: 960px; + } +} + +@media (min-width: 1200px) { + .container { + max-width: 1140px; + } +} + +.container-fluid { + width: 100%; + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} + +.row { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + margin-right: -15px; + margin-left: -15px; +} + +.no-gutters { + margin-right: 0; + margin-left: 0; +} + +.no-gutters > .col, +.no-gutters > [class*="col-"] { + padding-right: 0; + padding-left: 0; +} + +.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, +.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, +.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, +.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, +.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl, +.col-xl-auto { + position: relative; + width: 100%; + padding-right: 15px; + padding-left: 15px; +} + +.col { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; +} + +.col-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: 100%; +} + +.col-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; +} + +.col-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; +} + +.col-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; +} + +.col-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; +} + +.col-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; +} + +.col-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; +} + +.col-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; +} + +.col-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; +} + +.col-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; +} + +.col-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; +} + +.col-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; +} + +.col-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; +} + +.order-first { + -ms-flex-order: -1; + order: -1; +} + +.order-last { + -ms-flex-order: 13; + order: 13; +} + +.order-0 { + -ms-flex-order: 0; + order: 0; +} + +.order-1 { + -ms-flex-order: 1; + order: 1; +} + +.order-2 { + -ms-flex-order: 2; + order: 2; +} + +.order-3 { + -ms-flex-order: 3; + order: 3; +} + +.order-4 { + -ms-flex-order: 4; + order: 4; +} + +.order-5 { + -ms-flex-order: 5; + order: 5; +} + +.order-6 { + -ms-flex-order: 6; + order: 6; +} + +.order-7 { + -ms-flex-order: 7; + order: 7; +} + +.order-8 { + -ms-flex-order: 8; + order: 8; +} + +.order-9 { + -ms-flex-order: 9; + order: 9; +} + +.order-10 { + -ms-flex-order: 10; + order: 10; +} + +.order-11 { + -ms-flex-order: 11; + order: 11; +} + +.order-12 { + -ms-flex-order: 12; + order: 12; +} + +.offset-1 { + margin-left: 8.333333%; +} + +.offset-2 { + margin-left: 16.666667%; +} + +.offset-3 { + margin-left: 25%; +} + +.offset-4 { + margin-left: 33.333333%; +} + +.offset-5 { + margin-left: 41.666667%; +} + +.offset-6 { + margin-left: 50%; +} + +.offset-7 { + margin-left: 58.333333%; +} + +.offset-8 { + margin-left: 66.666667%; +} + +.offset-9 { + margin-left: 75%; +} + +.offset-10 { + margin-left: 83.333333%; +} + +.offset-11 { + margin-left: 91.666667%; +} + +@media (min-width: 576px) { + .col-sm { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; + } + .col-sm-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: 100%; + } + .col-sm-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; + } + .col-sm-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; + } + .col-sm-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; + } + .col-sm-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; + } + .col-sm-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; + } + .col-sm-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; + } + .col-sm-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; + } + .col-sm-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; + } + .col-sm-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + } + .col-sm-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; + } + .col-sm-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; + } + .col-sm-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; + } + .order-sm-first { + -ms-flex-order: -1; + order: -1; + } + .order-sm-last { + -ms-flex-order: 13; + order: 13; + } + .order-sm-0 { + -ms-flex-order: 0; + order: 0; + } + .order-sm-1 { + -ms-flex-order: 1; + order: 1; + } + .order-sm-2 { + -ms-flex-order: 2; + order: 2; + } + .order-sm-3 { + -ms-flex-order: 3; + order: 3; + } + .order-sm-4 { + -ms-flex-order: 4; + order: 4; + } + .order-sm-5 { + -ms-flex-order: 5; + order: 5; + } + .order-sm-6 { + -ms-flex-order: 6; + order: 6; + } + .order-sm-7 { + -ms-flex-order: 7; + order: 7; + } + .order-sm-8 { + -ms-flex-order: 8; + order: 8; + } + .order-sm-9 { + -ms-flex-order: 9; + order: 9; + } + .order-sm-10 { + -ms-flex-order: 10; + order: 10; + } + .order-sm-11 { + -ms-flex-order: 11; + order: 11; + } + .order-sm-12 { + -ms-flex-order: 12; + order: 12; + } + .offset-sm-0 { + margin-left: 0; + } + .offset-sm-1 { + margin-left: 8.333333%; + } + .offset-sm-2 { + margin-left: 16.666667%; + } + .offset-sm-3 { + margin-left: 25%; + } + .offset-sm-4 { + margin-left: 33.333333%; + } + .offset-sm-5 { + margin-left: 41.666667%; + } + .offset-sm-6 { + margin-left: 50%; + } + .offset-sm-7 { + margin-left: 58.333333%; + } + .offset-sm-8 { + margin-left: 66.666667%; + } + .offset-sm-9 { + margin-left: 75%; + } + .offset-sm-10 { + margin-left: 83.333333%; + } + .offset-sm-11 { + margin-left: 91.666667%; + } +} + +@media (min-width: 768px) { + .col-md { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; + } + .col-md-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: 100%; + } + .col-md-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; + } + .col-md-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; + } + .col-md-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; + } + .col-md-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; + } + .col-md-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; + } + .col-md-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; + } + .col-md-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; + } + .col-md-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; + } + .col-md-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + } + .col-md-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; + } + .col-md-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; + } + .col-md-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; + } + .order-md-first { + -ms-flex-order: -1; + order: -1; + } + .order-md-last { + -ms-flex-order: 13; + order: 13; + } + .order-md-0 { + -ms-flex-order: 0; + order: 0; + } + .order-md-1 { + -ms-flex-order: 1; + order: 1; + } + .order-md-2 { + -ms-flex-order: 2; + order: 2; + } + .order-md-3 { + -ms-flex-order: 3; + order: 3; + } + .order-md-4 { + -ms-flex-order: 4; + order: 4; + } + .order-md-5 { + -ms-flex-order: 5; + order: 5; + } + .order-md-6 { + -ms-flex-order: 6; + order: 6; + } + .order-md-7 { + -ms-flex-order: 7; + order: 7; + } + .order-md-8 { + -ms-flex-order: 8; + order: 8; + } + .order-md-9 { + -ms-flex-order: 9; + order: 9; + } + .order-md-10 { + -ms-flex-order: 10; + order: 10; + } + .order-md-11 { + -ms-flex-order: 11; + order: 11; + } + .order-md-12 { + -ms-flex-order: 12; + order: 12; + } + .offset-md-0 { + margin-left: 0; + } + .offset-md-1 { + margin-left: 8.333333%; + } + .offset-md-2 { + margin-left: 16.666667%; + } + .offset-md-3 { + margin-left: 25%; + } + .offset-md-4 { + margin-left: 33.333333%; + } + .offset-md-5 { + margin-left: 41.666667%; + } + .offset-md-6 { + margin-left: 50%; + } + .offset-md-7 { + margin-left: 58.333333%; + } + .offset-md-8 { + margin-left: 66.666667%; + } + .offset-md-9 { + margin-left: 75%; + } + .offset-md-10 { + margin-left: 83.333333%; + } + .offset-md-11 { + margin-left: 91.666667%; + } +} + +@media (min-width: 992px) { + .col-lg { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; + } + .col-lg-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: 100%; + } + .col-lg-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; + } + .col-lg-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; + } + .col-lg-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; + } + .col-lg-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; + } + .col-lg-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; + } + .col-lg-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; + } + .col-lg-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; + } + .col-lg-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; + } + .col-lg-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + } + .col-lg-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; + } + .col-lg-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; + } + .col-lg-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; + } + .order-lg-first { + -ms-flex-order: -1; + order: -1; + } + .order-lg-last { + -ms-flex-order: 13; + order: 13; + } + .order-lg-0 { + -ms-flex-order: 0; + order: 0; + } + .order-lg-1 { + -ms-flex-order: 1; + order: 1; + } + .order-lg-2 { + -ms-flex-order: 2; + order: 2; + } + .order-lg-3 { + -ms-flex-order: 3; + order: 3; + } + .order-lg-4 { + -ms-flex-order: 4; + order: 4; + } + .order-lg-5 { + -ms-flex-order: 5; + order: 5; + } + .order-lg-6 { + -ms-flex-order: 6; + order: 6; + } + .order-lg-7 { + -ms-flex-order: 7; + order: 7; + } + .order-lg-8 { + -ms-flex-order: 8; + order: 8; + } + .order-lg-9 { + -ms-flex-order: 9; + order: 9; + } + .order-lg-10 { + -ms-flex-order: 10; + order: 10; + } + .order-lg-11 { + -ms-flex-order: 11; + order: 11; + } + .order-lg-12 { + -ms-flex-order: 12; + order: 12; + } + .offset-lg-0 { + margin-left: 0; + } + .offset-lg-1 { + margin-left: 8.333333%; + } + .offset-lg-2 { + margin-left: 16.666667%; + } + .offset-lg-3 { + margin-left: 25%; + } + .offset-lg-4 { + margin-left: 33.333333%; + } + .offset-lg-5 { + margin-left: 41.666667%; + } + .offset-lg-6 { + margin-left: 50%; + } + .offset-lg-7 { + margin-left: 58.333333%; + } + .offset-lg-8 { + margin-left: 66.666667%; + } + .offset-lg-9 { + margin-left: 75%; + } + .offset-lg-10 { + margin-left: 83.333333%; + } + .offset-lg-11 { + margin-left: 91.666667%; + } +} + +@media (min-width: 1200px) { + .col-xl { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 100%; + } + .col-xl-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + max-width: 100%; + } + .col-xl-1 { + -ms-flex: 0 0 8.333333%; + flex: 0 0 8.333333%; + max-width: 8.333333%; + } + .col-xl-2 { + -ms-flex: 0 0 16.666667%; + flex: 0 0 16.666667%; + max-width: 16.666667%; + } + .col-xl-3 { + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; + } + .col-xl-4 { + -ms-flex: 0 0 33.333333%; + flex: 0 0 33.333333%; + max-width: 33.333333%; + } + .col-xl-5 { + -ms-flex: 0 0 41.666667%; + flex: 0 0 41.666667%; + max-width: 41.666667%; + } + .col-xl-6 { + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; + } + .col-xl-7 { + -ms-flex: 0 0 58.333333%; + flex: 0 0 58.333333%; + max-width: 58.333333%; + } + .col-xl-8 { + -ms-flex: 0 0 66.666667%; + flex: 0 0 66.666667%; + max-width: 66.666667%; + } + .col-xl-9 { + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + } + .col-xl-10 { + -ms-flex: 0 0 83.333333%; + flex: 0 0 83.333333%; + max-width: 83.333333%; + } + .col-xl-11 { + -ms-flex: 0 0 91.666667%; + flex: 0 0 91.666667%; + max-width: 91.666667%; + } + .col-xl-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; + } + .order-xl-first { + -ms-flex-order: -1; + order: -1; + } + .order-xl-last { + -ms-flex-order: 13; + order: 13; + } + .order-xl-0 { + -ms-flex-order: 0; + order: 0; + } + .order-xl-1 { + -ms-flex-order: 1; + order: 1; + } + .order-xl-2 { + -ms-flex-order: 2; + order: 2; + } + .order-xl-3 { + -ms-flex-order: 3; + order: 3; + } + .order-xl-4 { + -ms-flex-order: 4; + order: 4; + } + .order-xl-5 { + -ms-flex-order: 5; + order: 5; + } + .order-xl-6 { + -ms-flex-order: 6; + order: 6; + } + .order-xl-7 { + -ms-flex-order: 7; + order: 7; + } + .order-xl-8 { + -ms-flex-order: 8; + order: 8; + } + .order-xl-9 { + -ms-flex-order: 9; + order: 9; + } + .order-xl-10 { + -ms-flex-order: 10; + order: 10; + } + .order-xl-11 { + -ms-flex-order: 11; + order: 11; + } + .order-xl-12 { + -ms-flex-order: 12; + order: 12; + } + .offset-xl-0 { + margin-left: 0; + } + .offset-xl-1 { + margin-left: 8.333333%; + } + .offset-xl-2 { + margin-left: 16.666667%; + } + .offset-xl-3 { + margin-left: 25%; + } + .offset-xl-4 { + margin-left: 33.333333%; + } + .offset-xl-5 { + margin-left: 41.666667%; + } + .offset-xl-6 { + margin-left: 50%; + } + .offset-xl-7 { + margin-left: 58.333333%; + } + .offset-xl-8 { + margin-left: 66.666667%; + } + .offset-xl-9 { + margin-left: 75%; + } + .offset-xl-10 { + margin-left: 83.333333%; + } + .offset-xl-11 { + margin-left: 91.666667%; + } +} + +.table { + width: 100%; + margin-bottom: 1rem; + color: #212529; +} + +.table th, +.table td { + padding: 0.75rem; + vertical-align: top; + border-top: 1px solid #dee2e6; +} + +.table thead th { + vertical-align: bottom; + border-bottom: 2px solid #dee2e6; +} + +.table tbody + tbody { + border-top: 2px solid #dee2e6; +} + +.table-sm th, +.table-sm td { + padding: 0.3rem; +} + +.table-bordered { + border: 1px solid #dee2e6; +} + +.table-bordered th, +.table-bordered td { + border: 1px solid #dee2e6; +} + +.table-bordered thead th, +.table-bordered thead td { + border-bottom-width: 2px; +} + +.table-borderless th, +.table-borderless td, +.table-borderless thead th, +.table-borderless tbody + tbody { + border: 0; +} + +.table-striped tbody tr:nth-of-type(odd) { + background-color: rgba(0, 0, 0, 0.05); +} + +.table-hover tbody tr:hover { + color: #212529; + background-color: rgba(0, 0, 0, 0.075); +} + +.table-primary, +.table-primary > th, +.table-primary > td { + background-color: #b8daff; +} + +.table-primary th, +.table-primary td, +.table-primary thead th, +.table-primary tbody + tbody { + border-color: #7abaff; +} + +.table-hover .table-primary:hover { + background-color: #9fcdff; +} + +.table-hover .table-primary:hover > td, +.table-hover .table-primary:hover > th { + background-color: #9fcdff; +} + +.table-secondary, +.table-secondary > th, +.table-secondary > td { + background-color: #d6d8db; +} + +.table-secondary th, +.table-secondary td, +.table-secondary thead th, +.table-secondary tbody + tbody { + border-color: #b3b7bb; +} + +.table-hover .table-secondary:hover { + background-color: #c8cbcf; +} + +.table-hover .table-secondary:hover > td, +.table-hover .table-secondary:hover > th { + background-color: #c8cbcf; +} + +.table-success, +.table-success > th, +.table-success > td { + background-color: #c3e6cb; +} + +.table-success th, +.table-success td, +.table-success thead th, +.table-success tbody + tbody { + border-color: #8fd19e; +} + +.table-hover .table-success:hover { + background-color: #b1dfbb; +} + +.table-hover .table-success:hover > td, +.table-hover .table-success:hover > th { + background-color: #b1dfbb; +} + +.table-info, +.table-info > th, +.table-info > td { + background-color: #bee5eb; +} + +.table-info th, +.table-info td, +.table-info thead th, +.table-info tbody + tbody { + border-color: #86cfda; +} + +.table-hover .table-info:hover { + background-color: #abdde5; +} + +.table-hover .table-info:hover > td, +.table-hover .table-info:hover > th { + background-color: #abdde5; +} + +.table-warning, +.table-warning > th, +.table-warning > td { + background-color: #ffeeba; +} + +.table-warning th, +.table-warning td, +.table-warning thead th, +.table-warning tbody + tbody { + border-color: #ffdf7e; +} + +.table-hover .table-warning:hover { + background-color: #ffe8a1; +} + +.table-hover .table-warning:hover > td, +.table-hover .table-warning:hover > th { + background-color: #ffe8a1; +} + +.table-danger, +.table-danger > th, +.table-danger > td { + background-color: #f5c6cb; +} + +.table-danger th, +.table-danger td, +.table-danger thead th, +.table-danger tbody + tbody { + border-color: #ed969e; +} + +.table-hover .table-danger:hover { + background-color: #f1b0b7; +} + +.table-hover .table-danger:hover > td, +.table-hover .table-danger:hover > th { + background-color: #f1b0b7; +} + +.table-light, +.table-light > th, +.table-light > td { + background-color: #fdfdfe; +} + +.table-light th, +.table-light td, +.table-light thead th, +.table-light tbody + tbody { + border-color: #fbfcfc; +} + +.table-hover .table-light:hover { + background-color: #ececf6; +} + +.table-hover .table-light:hover > td, +.table-hover .table-light:hover > th { + background-color: #ececf6; +} + +.table-dark, +.table-dark > th, +.table-dark > td { + background-color: #c6c8ca; +} + +.table-dark th, +.table-dark td, +.table-dark thead th, +.table-dark tbody + tbody { + border-color: #95999c; +} + +.table-hover .table-dark:hover { + background-color: #b9bbbe; +} + +.table-hover .table-dark:hover > td, +.table-hover .table-dark:hover > th { + background-color: #b9bbbe; +} + +.table-active, +.table-active > th, +.table-active > td { + background-color: rgba(0, 0, 0, 0.075); +} + +.table-hover .table-active:hover { + background-color: rgba(0, 0, 0, 0.075); +} + +.table-hover .table-active:hover > td, +.table-hover .table-active:hover > th { + background-color: rgba(0, 0, 0, 0.075); +} + +.table .thead-dark th { + color: #fff; + background-color: #343a40; + border-color: #454d55; +} + +.table .thead-light th { + color: #495057; + background-color: #e9ecef; + border-color: #dee2e6; +} + +.table-dark { + color: #fff; + background-color: #343a40; +} + +.table-dark th, +.table-dark td, +.table-dark thead th { + border-color: #454d55; +} + +.table-dark.table-bordered { + border: 0; +} + +.table-dark.table-striped tbody tr:nth-of-type(odd) { + background-color: rgba(255, 255, 255, 0.05); +} + +.table-dark.table-hover tbody tr:hover { + color: #fff; + background-color: rgba(255, 255, 255, 0.075); +} + +@media (max-width: 575.98px) { + .table-responsive-sm { + display: block; + width: 100%; + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } + .table-responsive-sm > .table-bordered { + border: 0; + } +} + +@media (max-width: 767.98px) { + .table-responsive-md { + display: block; + width: 100%; + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } + .table-responsive-md > .table-bordered { + border: 0; + } +} + +@media (max-width: 991.98px) { + .table-responsive-lg { + display: block; + width: 100%; + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } + .table-responsive-lg > .table-bordered { + border: 0; + } +} + +@media (max-width: 1199.98px) { + .table-responsive-xl { + display: block; + width: 100%; + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } + .table-responsive-xl > .table-bordered { + border: 0; + } +} + +.table-responsive { + display: block; + width: 100%; + overflow-x: auto; + -webkit-overflow-scrolling: touch; +} + +.table-responsive > .table-bordered { + border: 0; +} + +.form-control { + display: block; + width: 100%; + height: calc(1.5em + 0.75rem + 2px); + padding: 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #495057; + background-color: #fff; + background-clip: padding-box; + border: 1px solid #ced4da; + border-radius: 0.25rem; + transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .form-control { + transition: none; + } +} + +.form-control::-ms-expand { + background-color: transparent; + border: 0; +} + +.form-control:focus { + color: #495057; + background-color: #fff; + border-color: #80bdff; + outline: 0; + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.form-control::-webkit-input-placeholder { + color: #6c757d; + opacity: 1; +} + +.form-control::-moz-placeholder { + color: #6c757d; + opacity: 1; +} + +.form-control:-ms-input-placeholder { + color: #6c757d; + opacity: 1; +} + +.form-control::-ms-input-placeholder { + color: #6c757d; + opacity: 1; +} + +.form-control::placeholder { + color: #6c757d; + opacity: 1; +} + +.form-control:disabled, .form-control[readonly] { + background-color: #e9ecef; + opacity: 1; +} + +select.form-control:focus::-ms-value { + color: #495057; + background-color: #fff; +} + +.form-control-file, +.form-control-range { + display: block; + width: 100%; +} + +.col-form-label { + padding-top: calc(0.375rem + 1px); + padding-bottom: calc(0.375rem + 1px); + margin-bottom: 0; + font-size: inherit; + line-height: 1.5; +} + +.col-form-label-lg { + padding-top: calc(0.5rem + 1px); + padding-bottom: calc(0.5rem + 1px); + font-size: 1.25rem; + line-height: 1.5; +} + +.col-form-label-sm { + padding-top: calc(0.25rem + 1px); + padding-bottom: calc(0.25rem + 1px); + font-size: 0.875rem; + line-height: 1.5; +} + +.form-control-plaintext { + display: block; + width: 100%; + padding-top: 0.375rem; + padding-bottom: 0.375rem; + margin-bottom: 0; + line-height: 1.5; + color: #212529; + background-color: transparent; + border: solid transparent; + border-width: 1px 0; +} + +.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg { + padding-right: 0; + padding-left: 0; +} + +.form-control-sm { + height: calc(1.5em + 0.5rem + 2px); + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + line-height: 1.5; + border-radius: 0.2rem; +} + +.form-control-lg { + height: calc(1.5em + 1rem + 2px); + padding: 0.5rem 1rem; + font-size: 1.25rem; + line-height: 1.5; + border-radius: 0.3rem; +} + +select.form-control[size], select.form-control[multiple] { + height: auto; +} + +textarea.form-control { + height: auto; +} + +.form-group { + margin-bottom: 1rem; +} + +.form-text { + display: block; + margin-top: 0.25rem; +} + +.form-row { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + margin-right: -5px; + margin-left: -5px; +} + +.form-row > .col, +.form-row > [class*="col-"] { + padding-right: 5px; + padding-left: 5px; +} + +.form-check { + position: relative; + display: block; + padding-left: 1.25rem; +} + +.form-check-input { + position: absolute; + margin-top: 0.3rem; + margin-left: -1.25rem; +} + +.form-check-input:disabled ~ .form-check-label { + color: #6c757d; +} + +.form-check-label { + margin-bottom: 0; +} + +.form-check-inline { + display: -ms-inline-flexbox; + display: inline-flex; + -ms-flex-align: center; + align-items: center; + padding-left: 0; + margin-right: 0.75rem; +} + +.form-check-inline .form-check-input { + position: static; + margin-top: 0; + margin-right: 0.3125rem; + margin-left: 0; +} + +.valid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 80%; + color: #28a745; +} + +.valid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.25rem 0.5rem; + margin-top: .1rem; + font-size: 0.875rem; + line-height: 1.5; + color: #fff; + background-color: rgba(40, 167, 69, 0.9); + border-radius: 0.25rem; +} + +.was-validated .form-control:valid, .form-control.is-valid { + border-color: #28a745; + padding-right: calc(1.5em + 0.75rem); + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: center right calc(0.375em + 0.1875rem); + background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} + +.was-validated .form-control:valid:focus, .form-control.is-valid:focus { + border-color: #28a745; + box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); +} + +.was-validated .form-control:valid ~ .valid-feedback, +.was-validated .form-control:valid ~ .valid-tooltip, .form-control.is-valid ~ .valid-feedback, +.form-control.is-valid ~ .valid-tooltip { + display: block; +} + +.was-validated textarea.form-control:valid, textarea.form-control.is-valid { + padding-right: calc(1.5em + 0.75rem); + background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); +} + +.was-validated .custom-select:valid, .custom-select.is-valid { + border-color: #28a745; + padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem); + background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} + +.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus { + border-color: #28a745; + box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); +} + +.was-validated .custom-select:valid ~ .valid-feedback, +.was-validated .custom-select:valid ~ .valid-tooltip, .custom-select.is-valid ~ .valid-feedback, +.custom-select.is-valid ~ .valid-tooltip { + display: block; +} + +.was-validated .form-control-file:valid ~ .valid-feedback, +.was-validated .form-control-file:valid ~ .valid-tooltip, .form-control-file.is-valid ~ .valid-feedback, +.form-control-file.is-valid ~ .valid-tooltip { + display: block; +} + +.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label { + color: #28a745; +} + +.was-validated .form-check-input:valid ~ .valid-feedback, +.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback, +.form-check-input.is-valid ~ .valid-tooltip { + display: block; +} + +.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label { + color: #28a745; +} + +.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before { + border-color: #28a745; +} + +.was-validated .custom-control-input:valid ~ .valid-feedback, +.was-validated .custom-control-input:valid ~ .valid-tooltip, .custom-control-input.is-valid ~ .valid-feedback, +.custom-control-input.is-valid ~ .valid-tooltip { + display: block; +} + +.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before { + border-color: #34ce57; + background-color: #34ce57; +} + +.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before { + box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); +} + +.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before { + border-color: #28a745; +} + +.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label { + border-color: #28a745; +} + +.was-validated .custom-file-input:valid ~ .valid-feedback, +.was-validated .custom-file-input:valid ~ .valid-tooltip, .custom-file-input.is-valid ~ .valid-feedback, +.custom-file-input.is-valid ~ .valid-tooltip { + display: block; +} + +.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label { + border-color: #28a745; + box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); +} + +.invalid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 80%; + color: #dc3545; +} + +.invalid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.25rem 0.5rem; + margin-top: .1rem; + font-size: 0.875rem; + line-height: 1.5; + color: #fff; + background-color: rgba(220, 53, 69, 0.9); + border-radius: 0.25rem; +} + +.was-validated .form-control:invalid, .form-control.is-invalid { + border-color: #dc3545; + padding-right: calc(1.5em + 0.75rem); + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E"); + background-repeat: no-repeat; + background-position: center right calc(0.375em + 0.1875rem); + background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} + +.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus { + border-color: #dc3545; + box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); +} + +.was-validated .form-control:invalid ~ .invalid-feedback, +.was-validated .form-control:invalid ~ .invalid-tooltip, .form-control.is-invalid ~ .invalid-feedback, +.form-control.is-invalid ~ .invalid-tooltip { + display: block; +} + +.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid { + padding-right: calc(1.5em + 0.75rem); + background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); +} + +.was-validated .custom-select:invalid, .custom-select.is-invalid { + border-color: #dc3545; + padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem); + background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} + +.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus { + border-color: #dc3545; + box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); +} + +.was-validated .custom-select:invalid ~ .invalid-feedback, +.was-validated .custom-select:invalid ~ .invalid-tooltip, .custom-select.is-invalid ~ .invalid-feedback, +.custom-select.is-invalid ~ .invalid-tooltip { + display: block; +} + +.was-validated .form-control-file:invalid ~ .invalid-feedback, +.was-validated .form-control-file:invalid ~ .invalid-tooltip, .form-control-file.is-invalid ~ .invalid-feedback, +.form-control-file.is-invalid ~ .invalid-tooltip { + display: block; +} + +.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label { + color: #dc3545; +} + +.was-validated .form-check-input:invalid ~ .invalid-feedback, +.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback, +.form-check-input.is-invalid ~ .invalid-tooltip { + display: block; +} + +.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label { + color: #dc3545; +} + +.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before { + border-color: #dc3545; +} + +.was-validated .custom-control-input:invalid ~ .invalid-feedback, +.was-validated .custom-control-input:invalid ~ .invalid-tooltip, .custom-control-input.is-invalid ~ .invalid-feedback, +.custom-control-input.is-invalid ~ .invalid-tooltip { + display: block; +} + +.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before { + border-color: #e4606d; + background-color: #e4606d; +} + +.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before { + box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); +} + +.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before { + border-color: #dc3545; +} + +.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label { + border-color: #dc3545; +} + +.was-validated .custom-file-input:invalid ~ .invalid-feedback, +.was-validated .custom-file-input:invalid ~ .invalid-tooltip, .custom-file-input.is-invalid ~ .invalid-feedback, +.custom-file-input.is-invalid ~ .invalid-tooltip { + display: block; +} + +.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label { + border-color: #dc3545; + box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); +} + +.form-inline { + display: -ms-flexbox; + display: flex; + -ms-flex-flow: row wrap; + flex-flow: row wrap; + -ms-flex-align: center; + align-items: center; +} + +.form-inline .form-check { + width: 100%; +} + +@media (min-width: 576px) { + .form-inline label { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: center; + justify-content: center; + margin-bottom: 0; + } + .form-inline .form-group { + display: -ms-flexbox; + display: flex; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + -ms-flex-flow: row wrap; + flex-flow: row wrap; + -ms-flex-align: center; + align-items: center; + margin-bottom: 0; + } + .form-inline .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .form-inline .form-control-plaintext { + display: inline-block; + } + .form-inline .input-group, + .form-inline .custom-select { + width: auto; + } + .form-inline .form-check { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: center; + justify-content: center; + width: auto; + padding-left: 0; + } + .form-inline .form-check-input { + position: relative; + -ms-flex-negative: 0; + flex-shrink: 0; + margin-top: 0; + margin-right: 0.25rem; + margin-left: 0; + } + .form-inline .custom-control { + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: center; + justify-content: center; + } + .form-inline .custom-control-label { + margin-bottom: 0; + } +} + +.btn { + display: inline-block; + font-weight: 400; + color: #212529; + text-align: center; + vertical-align: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-color: transparent; + border: 1px solid transparent; + padding: 0.375rem 0.75rem; + font-size: 1rem; + line-height: 1.5; + border-radius: 0.25rem; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .btn { + transition: none; + } +} + +.btn:hover { + color: #212529; + text-decoration: none; +} + +.btn:focus, .btn.focus { + outline: 0; + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.btn.disabled, .btn:disabled { + opacity: 0.65; +} + +a.btn.disabled, +fieldset:disabled a.btn { + pointer-events: none; +} + +.btn-primary { + color: #fff; + background-color: #007bff; + border-color: #007bff; +} + +.btn-primary:hover { + color: #fff; + background-color: #0069d9; + border-color: #0062cc; +} + +.btn-primary:focus, .btn-primary.focus { + box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5); +} + +.btn-primary.disabled, .btn-primary:disabled { + color: #fff; + background-color: #007bff; + border-color: #007bff; +} + +.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, +.show > .btn-primary.dropdown-toggle { + color: #fff; + background-color: #0062cc; + border-color: #005cbf; +} + +.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus, +.show > .btn-primary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5); +} + +.btn-secondary { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-secondary:hover { + color: #fff; + background-color: #5a6268; + border-color: #545b62; +} + +.btn-secondary:focus, .btn-secondary.focus { + box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5); +} + +.btn-secondary.disabled, .btn-secondary:disabled { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active, +.show > .btn-secondary.dropdown-toggle { + color: #fff; + background-color: #545b62; + border-color: #4e555b; +} + +.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus, +.show > .btn-secondary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5); +} + +.btn-success { + color: #fff; + background-color: #28a745; + border-color: #28a745; +} + +.btn-success:hover { + color: #fff; + background-color: #218838; + border-color: #1e7e34; +} + +.btn-success:focus, .btn-success.focus { + box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5); +} + +.btn-success.disabled, .btn-success:disabled { + color: #fff; + background-color: #28a745; + border-color: #28a745; +} + +.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active, +.show > .btn-success.dropdown-toggle { + color: #fff; + background-color: #1e7e34; + border-color: #1c7430; +} + +.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus, +.show > .btn-success.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5); +} + +.btn-info { + color: #fff; + background-color: #17a2b8; + border-color: #17a2b8; +} + +.btn-info:hover { + color: #fff; + background-color: #138496; + border-color: #117a8b; +} + +.btn-info:focus, .btn-info.focus { + box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5); +} + +.btn-info.disabled, .btn-info:disabled { + color: #fff; + background-color: #17a2b8; + border-color: #17a2b8; +} + +.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active, +.show > .btn-info.dropdown-toggle { + color: #fff; + background-color: #117a8b; + border-color: #10707f; +} + +.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus, +.show > .btn-info.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5); +} + +.btn-warning { + color: #212529; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-warning:hover { + color: #212529; + background-color: #e0a800; + border-color: #d39e00; +} + +.btn-warning:focus, .btn-warning.focus { + box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5); +} + +.btn-warning.disabled, .btn-warning:disabled { + color: #212529; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active, +.show > .btn-warning.dropdown-toggle { + color: #212529; + background-color: #d39e00; + border-color: #c69500; +} + +.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus, +.show > .btn-warning.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5); +} + +.btn-danger { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-danger:hover { + color: #fff; + background-color: #c82333; + border-color: #bd2130; +} + +.btn-danger:focus, .btn-danger.focus { + box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5); +} + +.btn-danger.disabled, .btn-danger:disabled { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active, +.show > .btn-danger.dropdown-toggle { + color: #fff; + background-color: #bd2130; + border-color: #b21f2d; +} + +.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus, +.show > .btn-danger.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5); +} + +.btn-light { + color: #212529; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-light:hover { + color: #212529; + background-color: #e2e6ea; + border-color: #dae0e5; +} + +.btn-light:focus, .btn-light.focus { + box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5); +} + +.btn-light.disabled, .btn-light:disabled { + color: #212529; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active, +.show > .btn-light.dropdown-toggle { + color: #212529; + background-color: #dae0e5; + border-color: #d3d9df; +} + +.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus, +.show > .btn-light.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5); +} + +.btn-dark { + color: #fff; + background-color: #343a40; + border-color: #343a40; +} + +.btn-dark:hover { + color: #fff; + background-color: #23272b; + border-color: #1d2124; +} + +.btn-dark:focus, .btn-dark.focus { + box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5); +} + +.btn-dark.disabled, .btn-dark:disabled { + color: #fff; + background-color: #343a40; + border-color: #343a40; +} + +.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active, +.show > .btn-dark.dropdown-toggle { + color: #fff; + background-color: #1d2124; + border-color: #171a1d; +} + +.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus, +.show > .btn-dark.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5); +} + +.btn-outline-primary { + color: #007bff; + border-color: #007bff; +} + +.btn-outline-primary:hover { + color: #fff; + background-color: #007bff; + border-color: #007bff; +} + +.btn-outline-primary:focus, .btn-outline-primary.focus { + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); +} + +.btn-outline-primary.disabled, .btn-outline-primary:disabled { + color: #007bff; + background-color: transparent; +} + +.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active, +.show > .btn-outline-primary.dropdown-toggle { + color: #fff; + background-color: #007bff; + border-color: #007bff; +} + +.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus, +.show > .btn-outline-primary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); +} + +.btn-outline-secondary { + color: #6c757d; + border-color: #6c757d; +} + +.btn-outline-secondary:hover { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-outline-secondary:focus, .btn-outline-secondary.focus { + box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); +} + +.btn-outline-secondary.disabled, .btn-outline-secondary:disabled { + color: #6c757d; + background-color: transparent; +} + +.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active, +.show > .btn-outline-secondary.dropdown-toggle { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus, +.show > .btn-outline-secondary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); +} + +.btn-outline-success { + color: #28a745; + border-color: #28a745; +} + +.btn-outline-success:hover { + color: #fff; + background-color: #28a745; + border-color: #28a745; +} + +.btn-outline-success:focus, .btn-outline-success.focus { + box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); +} + +.btn-outline-success.disabled, .btn-outline-success:disabled { + color: #28a745; + background-color: transparent; +} + +.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active, +.show > .btn-outline-success.dropdown-toggle { + color: #fff; + background-color: #28a745; + border-color: #28a745; +} + +.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus, +.show > .btn-outline-success.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); +} + +.btn-outline-info { + color: #17a2b8; + border-color: #17a2b8; +} + +.btn-outline-info:hover { + color: #fff; + background-color: #17a2b8; + border-color: #17a2b8; +} + +.btn-outline-info:focus, .btn-outline-info.focus { + box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); +} + +.btn-outline-info.disabled, .btn-outline-info:disabled { + color: #17a2b8; + background-color: transparent; +} + +.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active, +.show > .btn-outline-info.dropdown-toggle { + color: #fff; + background-color: #17a2b8; + border-color: #17a2b8; +} + +.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus, +.show > .btn-outline-info.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); +} + +.btn-outline-warning { + color: #ffc107; + border-color: #ffc107; +} + +.btn-outline-warning:hover { + color: #212529; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-outline-warning:focus, .btn-outline-warning.focus { + box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); +} + +.btn-outline-warning.disabled, .btn-outline-warning:disabled { + color: #ffc107; + background-color: transparent; +} + +.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active, +.show > .btn-outline-warning.dropdown-toggle { + color: #212529; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus, +.show > .btn-outline-warning.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); +} + +.btn-outline-danger { + color: #dc3545; + border-color: #dc3545; +} + +.btn-outline-danger:hover { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-outline-danger:focus, .btn-outline-danger.focus { + box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); +} + +.btn-outline-danger.disabled, .btn-outline-danger:disabled { + color: #dc3545; + background-color: transparent; +} + +.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active, +.show > .btn-outline-danger.dropdown-toggle { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus, +.show > .btn-outline-danger.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); +} + +.btn-outline-light { + color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-outline-light:hover { + color: #212529; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-outline-light:focus, .btn-outline-light.focus { + box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); +} + +.btn-outline-light.disabled, .btn-outline-light:disabled { + color: #f8f9fa; + background-color: transparent; +} + +.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active, +.show > .btn-outline-light.dropdown-toggle { + color: #212529; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus, +.show > .btn-outline-light.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); +} + +.btn-outline-dark { + color: #343a40; + border-color: #343a40; +} + +.btn-outline-dark:hover { + color: #fff; + background-color: #343a40; + border-color: #343a40; +} + +.btn-outline-dark:focus, .btn-outline-dark.focus { + box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); +} + +.btn-outline-dark.disabled, .btn-outline-dark:disabled { + color: #343a40; + background-color: transparent; +} + +.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active, +.show > .btn-outline-dark.dropdown-toggle { + color: #fff; + background-color: #343a40; + border-color: #343a40; +} + +.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus, +.show > .btn-outline-dark.dropdown-toggle:focus { + box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); +} + +.btn-link { + font-weight: 400; + color: #007bff; + text-decoration: none; +} + +.btn-link:hover { + color: #0056b3; + text-decoration: underline; +} + +.btn-link:focus, .btn-link.focus { + text-decoration: underline; + box-shadow: none; +} + +.btn-link:disabled, .btn-link.disabled { + color: #6c757d; + pointer-events: none; +} + +.btn-lg, .btn-group-lg > .btn { + padding: 0.5rem 1rem; + font-size: 1.25rem; + line-height: 1.5; + border-radius: 0.3rem; +} + +.btn-sm, .btn-group-sm > .btn { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + line-height: 1.5; + border-radius: 0.2rem; +} + +.btn-block { + display: block; + width: 100%; +} + +.btn-block + .btn-block { + margin-top: 0.5rem; +} + +input[type="submit"].btn-block, +input[type="reset"].btn-block, +input[type="button"].btn-block { + width: 100%; +} + +.fade { + transition: opacity 0.15s linear; +} + +@media (prefers-reduced-motion: reduce) { + .fade { + transition: none; + } +} + +.fade:not(.show) { + opacity: 0; +} + +.collapse:not(.show) { + display: none; +} + +.collapsing { + position: relative; + height: 0; + overflow: hidden; + transition: height 0.35s ease; +} + +@media (prefers-reduced-motion: reduce) { + .collapsing { + transition: none; + } +} + +.dropup, +.dropright, +.dropdown, +.dropleft { + position: relative; +} + +.dropdown-toggle { + white-space: nowrap; +} + +.dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid; + border-right: 0.3em solid transparent; + border-bottom: 0; + border-left: 0.3em solid transparent; +} + +.dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 10rem; + padding: 0.5rem 0; + margin: 0.125rem 0 0; + font-size: 1rem; + color: #212529; + text-align: left; + list-style: none; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.15); + border-radius: 0.25rem; +} + +.dropdown-menu-left { + right: auto; + left: 0; +} + +.dropdown-menu-right { + right: 0; + left: auto; +} + +@media (min-width: 576px) { + .dropdown-menu-sm-left { + right: auto; + left: 0; + } + .dropdown-menu-sm-right { + right: 0; + left: auto; + } +} + +@media (min-width: 768px) { + .dropdown-menu-md-left { + right: auto; + left: 0; + } + .dropdown-menu-md-right { + right: 0; + left: auto; + } +} + +@media (min-width: 992px) { + .dropdown-menu-lg-left { + right: auto; + left: 0; + } + .dropdown-menu-lg-right { + right: 0; + left: auto; + } +} + +@media (min-width: 1200px) { + .dropdown-menu-xl-left { + right: auto; + left: 0; + } + .dropdown-menu-xl-right { + right: 0; + left: auto; + } +} + +.dropup .dropdown-menu { + top: auto; + bottom: 100%; + margin-top: 0; + margin-bottom: 0.125rem; +} + +.dropup .dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0; + border-right: 0.3em solid transparent; + border-bottom: 0.3em solid; + border-left: 0.3em solid transparent; +} + +.dropup .dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropright .dropdown-menu { + top: 0; + right: auto; + left: 100%; + margin-top: 0; + margin-left: 0.125rem; +} + +.dropright .dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid transparent; + border-right: 0; + border-bottom: 0.3em solid transparent; + border-left: 0.3em solid; +} + +.dropright .dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropright .dropdown-toggle::after { + vertical-align: 0; +} + +.dropleft .dropdown-menu { + top: 0; + right: 100%; + left: auto; + margin-top: 0; + margin-right: 0.125rem; +} + +.dropleft .dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; +} + +.dropleft .dropdown-toggle::after { + display: none; +} + +.dropleft .dropdown-toggle::before { + display: inline-block; + margin-right: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid transparent; + border-right: 0.3em solid; + border-bottom: 0.3em solid transparent; +} + +.dropleft .dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropleft .dropdown-toggle::before { + vertical-align: 0; +} + +.dropdown-menu[x-placement^="top"], .dropdown-menu[x-placement^="right"], .dropdown-menu[x-placement^="bottom"], .dropdown-menu[x-placement^="left"] { + right: auto; + bottom: auto; +} + +.dropdown-divider { + height: 0; + margin: 0.5rem 0; + overflow: hidden; + border-top: 1px solid #e9ecef; +} + +.dropdown-item { + display: block; + width: 100%; + padding: 0.25rem 1.5rem; + clear: both; + font-weight: 400; + color: #212529; + text-align: inherit; + white-space: nowrap; + background-color: transparent; + border: 0; +} + +.dropdown-item:hover, .dropdown-item:focus { + color: #16181b; + text-decoration: none; + background-color: #f8f9fa; +} + +.dropdown-item.active, .dropdown-item:active { + color: #fff; + text-decoration: none; + background-color: #007bff; +} + +.dropdown-item.disabled, .dropdown-item:disabled { + color: #6c757d; + pointer-events: none; + background-color: transparent; +} + +.dropdown-menu.show { + display: block; +} + +.dropdown-header { + display: block; + padding: 0.5rem 1.5rem; + margin-bottom: 0; + font-size: 0.875rem; + color: #6c757d; + white-space: nowrap; +} + +.dropdown-item-text { + display: block; + padding: 0.25rem 1.5rem; + color: #212529; +} + +.btn-group, +.btn-group-vertical { + position: relative; + display: -ms-inline-flexbox; + display: inline-flex; + vertical-align: middle; +} + +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + -ms-flex: 1 1 auto; + flex: 1 1 auto; +} + +.btn-group > .btn:hover, +.btn-group-vertical > .btn:hover { + z-index: 1; +} + +.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active, +.btn-group-vertical > .btn:focus, +.btn-group-vertical > .btn:active, +.btn-group-vertical > .btn.active { + z-index: 1; +} + +.btn-toolbar { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -ms-flex-pack: start; + justify-content: flex-start; +} + +.btn-toolbar .input-group { + width: auto; +} + +.btn-group > .btn:not(:first-child), +.btn-group > .btn-group:not(:first-child) { + margin-left: -1px; +} + +.btn-group > .btn:not(:last-child):not(.dropdown-toggle), +.btn-group > .btn-group:not(:last-child) > .btn { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.btn-group > .btn:not(:first-child), +.btn-group > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.dropdown-toggle-split { + padding-right: 0.5625rem; + padding-left: 0.5625rem; +} + +.dropdown-toggle-split::after, +.dropup .dropdown-toggle-split::after, +.dropright .dropdown-toggle-split::after { + margin-left: 0; +} + +.dropleft .dropdown-toggle-split::before { + margin-right: 0; +} + +.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split { + padding-right: 0.375rem; + padding-left: 0.375rem; +} + +.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split { + padding-right: 0.75rem; + padding-left: 0.75rem; +} + +.btn-group-vertical { + -ms-flex-direction: column; + flex-direction: column; + -ms-flex-align: start; + align-items: flex-start; + -ms-flex-pack: center; + justify-content: center; +} + +.btn-group-vertical > .btn, +.btn-group-vertical > .btn-group { + width: 100%; +} + +.btn-group-vertical > .btn:not(:first-child), +.btn-group-vertical > .btn-group:not(:first-child) { + margin-top: -1px; +} + +.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle), +.btn-group-vertical > .btn-group:not(:last-child) > .btn { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.btn-group-vertical > .btn:not(:first-child), +.btn-group-vertical > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.btn-group-toggle > .btn, +.btn-group-toggle > .btn-group > .btn { + margin-bottom: 0; +} + +.btn-group-toggle > .btn input[type="radio"], +.btn-group-toggle > .btn input[type="checkbox"], +.btn-group-toggle > .btn-group > .btn input[type="radio"], +.btn-group-toggle > .btn-group > .btn input[type="checkbox"] { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none; +} + +.input-group { + position: relative; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -ms-flex-align: stretch; + align-items: stretch; + width: 100%; +} + +.input-group > .form-control, +.input-group > .form-control-plaintext, +.input-group > .custom-select, +.input-group > .custom-file { + position: relative; + -ms-flex: 1 1 auto; + flex: 1 1 auto; + width: 1%; + margin-bottom: 0; +} + +.input-group > .form-control + .form-control, +.input-group > .form-control + .custom-select, +.input-group > .form-control + .custom-file, +.input-group > .form-control-plaintext + .form-control, +.input-group > .form-control-plaintext + .custom-select, +.input-group > .form-control-plaintext + .custom-file, +.input-group > .custom-select + .form-control, +.input-group > .custom-select + .custom-select, +.input-group > .custom-select + .custom-file, +.input-group > .custom-file + .form-control, +.input-group > .custom-file + .custom-select, +.input-group > .custom-file + .custom-file { + margin-left: -1px; +} + +.input-group > .form-control:focus, +.input-group > .custom-select:focus, +.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label { + z-index: 3; +} + +.input-group > .custom-file .custom-file-input:focus { + z-index: 4; +} + +.input-group > .form-control:not(:last-child), +.input-group > .custom-select:not(:last-child) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.input-group > .form-control:not(:first-child), +.input-group > .custom-select:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.input-group > .custom-file { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; +} + +.input-group > .custom-file:not(:last-child) .custom-file-label, +.input-group > .custom-file:not(:last-child) .custom-file-label::after { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.input-group > .custom-file:not(:first-child) .custom-file-label { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.input-group-prepend, +.input-group-append { + display: -ms-flexbox; + display: flex; +} + +.input-group-prepend .btn, +.input-group-append .btn { + position: relative; + z-index: 2; +} + +.input-group-prepend .btn:focus, +.input-group-append .btn:focus { + z-index: 3; +} + +.input-group-prepend .btn + .btn, +.input-group-prepend .btn + .input-group-text, +.input-group-prepend .input-group-text + .input-group-text, +.input-group-prepend .input-group-text + .btn, +.input-group-append .btn + .btn, +.input-group-append .btn + .input-group-text, +.input-group-append .input-group-text + .input-group-text, +.input-group-append .input-group-text + .btn { + margin-left: -1px; +} + +.input-group-prepend { + margin-right: -1px; +} + +.input-group-append { + margin-left: -1px; +} + +.input-group-text { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + padding: 0.375rem 0.75rem; + margin-bottom: 0; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #495057; + text-align: center; + white-space: nowrap; + background-color: #e9ecef; + border: 1px solid #ced4da; + border-radius: 0.25rem; +} + +.input-group-text input[type="radio"], +.input-group-text input[type="checkbox"] { + margin-top: 0; +} + +.input-group-lg > .form-control:not(textarea), +.input-group-lg > .custom-select { + height: calc(1.5em + 1rem + 2px); +} + +.input-group-lg > .form-control, +.input-group-lg > .custom-select, +.input-group-lg > .input-group-prepend > .input-group-text, +.input-group-lg > .input-group-append > .input-group-text, +.input-group-lg > .input-group-prepend > .btn, +.input-group-lg > .input-group-append > .btn { + padding: 0.5rem 1rem; + font-size: 1.25rem; + line-height: 1.5; + border-radius: 0.3rem; +} + +.input-group-sm > .form-control:not(textarea), +.input-group-sm > .custom-select { + height: calc(1.5em + 0.5rem + 2px); +} + +.input-group-sm > .form-control, +.input-group-sm > .custom-select, +.input-group-sm > .input-group-prepend > .input-group-text, +.input-group-sm > .input-group-append > .input-group-text, +.input-group-sm > .input-group-prepend > .btn, +.input-group-sm > .input-group-append > .btn { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + line-height: 1.5; + border-radius: 0.2rem; +} + +.input-group-lg > .custom-select, +.input-group-sm > .custom-select { + padding-right: 1.75rem; +} + +.input-group > .input-group-prepend > .btn, +.input-group > .input-group-prepend > .input-group-text, +.input-group > .input-group-append:not(:last-child) > .btn, +.input-group > .input-group-append:not(:last-child) > .input-group-text, +.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle), +.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.input-group > .input-group-append > .btn, +.input-group > .input-group-append > .input-group-text, +.input-group > .input-group-prepend:not(:first-child) > .btn, +.input-group > .input-group-prepend:not(:first-child) > .input-group-text, +.input-group > .input-group-prepend:first-child > .btn:not(:first-child), +.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.custom-control { + position: relative; + display: block; + min-height: 1.5rem; + padding-left: 1.5rem; +} + +.custom-control-inline { + display: -ms-inline-flexbox; + display: inline-flex; + margin-right: 1rem; +} + +.custom-control-input { + position: absolute; + z-index: -1; + opacity: 0; +} + +.custom-control-input:checked ~ .custom-control-label::before { + color: #fff; + border-color: #007bff; + background-color: #007bff; +} + +.custom-control-input:focus ~ .custom-control-label::before { + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.custom-control-input:focus:not(:checked) ~ .custom-control-label::before { + border-color: #80bdff; +} + +.custom-control-input:not(:disabled):active ~ .custom-control-label::before { + color: #fff; + background-color: #b3d7ff; + border-color: #b3d7ff; +} + +.custom-control-input:disabled ~ .custom-control-label { + color: #6c757d; +} + +.custom-control-input:disabled ~ .custom-control-label::before { + background-color: #e9ecef; +} + +.custom-control-label { + position: relative; + margin-bottom: 0; + vertical-align: top; +} + +.custom-control-label::before { + position: absolute; + top: 0.25rem; + left: -1.5rem; + display: block; + width: 1rem; + height: 1rem; + pointer-events: none; + content: ""; + background-color: #fff; + border: #adb5bd solid 1px; +} + +.custom-control-label::after { + position: absolute; + top: 0.25rem; + left: -1.5rem; + display: block; + width: 1rem; + height: 1rem; + content: ""; + background: no-repeat 50% / 50% 50%; +} + +.custom-checkbox .custom-control-label::before { + border-radius: 0.25rem; +} + +.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e"); +} + +.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before { + border-color: #007bff; + background-color: #007bff; +} + +.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e"); +} + +.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before { + background-color: rgba(0, 123, 255, 0.5); +} + +.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before { + background-color: rgba(0, 123, 255, 0.5); +} + +.custom-radio .custom-control-label::before { + border-radius: 50%; +} + +.custom-radio .custom-control-input:checked ~ .custom-control-label::after { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e"); +} + +.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before { + background-color: rgba(0, 123, 255, 0.5); +} + +.custom-switch { + padding-left: 2.25rem; +} + +.custom-switch .custom-control-label::before { + left: -2.25rem; + width: 1.75rem; + pointer-events: all; + border-radius: 0.5rem; +} + +.custom-switch .custom-control-label::after { + top: calc(0.25rem + 2px); + left: calc(-2.25rem + 2px); + width: calc(1rem - 4px); + height: calc(1rem - 4px); + background-color: #adb5bd; + border-radius: 0.5rem; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out; + transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .custom-switch .custom-control-label::after { + transition: none; + } +} + +.custom-switch .custom-control-input:checked ~ .custom-control-label::after { + background-color: #fff; + -webkit-transform: translateX(0.75rem); + transform: translateX(0.75rem); +} + +.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before { + background-color: rgba(0, 123, 255, 0.5); +} + +.custom-select { + display: inline-block; + width: 100%; + height: calc(1.5em + 0.75rem + 2px); + padding: 0.375rem 1.75rem 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #495057; + vertical-align: middle; + background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px; + background-color: #fff; + border: 1px solid #ced4da; + border-radius: 0.25rem; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} + +.custom-select:focus { + border-color: #80bdff; + outline: 0; + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.custom-select:focus::-ms-value { + color: #495057; + background-color: #fff; +} + +.custom-select[multiple], .custom-select[size]:not([size="1"]) { + height: auto; + padding-right: 0.75rem; + background-image: none; +} + +.custom-select:disabled { + color: #6c757d; + background-color: #e9ecef; +} + +.custom-select::-ms-expand { + display: none; +} + +.custom-select-sm { + height: calc(1.5em + 0.5rem + 2px); + padding-top: 0.25rem; + padding-bottom: 0.25rem; + padding-left: 0.5rem; + font-size: 0.875rem; +} + +.custom-select-lg { + height: calc(1.5em + 1rem + 2px); + padding-top: 0.5rem; + padding-bottom: 0.5rem; + padding-left: 1rem; + font-size: 1.25rem; +} + +.custom-file { + position: relative; + display: inline-block; + width: 100%; + height: calc(1.5em + 0.75rem + 2px); + margin-bottom: 0; +} + +.custom-file-input { + position: relative; + z-index: 2; + width: 100%; + height: calc(1.5em + 0.75rem + 2px); + margin: 0; + opacity: 0; +} + +.custom-file-input:focus ~ .custom-file-label { + border-color: #80bdff; + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.custom-file-input:disabled ~ .custom-file-label { + background-color: #e9ecef; +} + +.custom-file-input:lang(en) ~ .custom-file-label::after { + content: "Browse"; +} + +.custom-file-input ~ .custom-file-label[data-browse]::after { + content: attr(data-browse); +} + +.custom-file-label { + position: absolute; + top: 0; + right: 0; + left: 0; + z-index: 1; + height: calc(1.5em + 0.75rem + 2px); + padding: 0.375rem 0.75rem; + font-weight: 400; + line-height: 1.5; + color: #495057; + background-color: #fff; + border: 1px solid #ced4da; + border-radius: 0.25rem; +} + +.custom-file-label::after { + position: absolute; + top: 0; + right: 0; + bottom: 0; + z-index: 3; + display: block; + height: calc(1.5em + 0.75rem); + padding: 0.375rem 0.75rem; + line-height: 1.5; + color: #495057; + content: "Browse"; + background-color: #e9ecef; + border-left: inherit; + border-radius: 0 0.25rem 0.25rem 0; +} + +.custom-range { + width: 100%; + height: calc(1rem + 0.4rem); + padding: 0; + background-color: transparent; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} + +.custom-range:focus { + outline: none; +} + +.custom-range:focus::-webkit-slider-thumb { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.custom-range:focus::-moz-range-thumb { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.custom-range:focus::-ms-thumb { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.custom-range::-moz-focus-outer { + border: 0; +} + +.custom-range::-webkit-slider-thumb { + width: 1rem; + height: 1rem; + margin-top: -0.25rem; + background-color: #007bff; + border: 0; + border-radius: 1rem; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -webkit-appearance: none; + appearance: none; +} + +@media (prefers-reduced-motion: reduce) { + .custom-range::-webkit-slider-thumb { + transition: none; + } +} + +.custom-range::-webkit-slider-thumb:active { + background-color: #b3d7ff; +} + +.custom-range::-webkit-slider-runnable-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: #dee2e6; + border-color: transparent; + border-radius: 1rem; +} + +.custom-range::-moz-range-thumb { + width: 1rem; + height: 1rem; + background-color: #007bff; + border: 0; + border-radius: 1rem; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -moz-appearance: none; + appearance: none; +} + +@media (prefers-reduced-motion: reduce) { + .custom-range::-moz-range-thumb { + transition: none; + } +} + +.custom-range::-moz-range-thumb:active { + background-color: #b3d7ff; +} + +.custom-range::-moz-range-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: #dee2e6; + border-color: transparent; + border-radius: 1rem; +} + +.custom-range::-ms-thumb { + width: 1rem; + height: 1rem; + margin-top: 0; + margin-right: 0.2rem; + margin-left: 0.2rem; + background-color: #007bff; + border: 0; + border-radius: 1rem; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + appearance: none; +} + +@media (prefers-reduced-motion: reduce) { + .custom-range::-ms-thumb { + transition: none; + } +} + +.custom-range::-ms-thumb:active { + background-color: #b3d7ff; +} + +.custom-range::-ms-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: transparent; + border-color: transparent; + border-width: 0.5rem; +} + +.custom-range::-ms-fill-lower { + background-color: #dee2e6; + border-radius: 1rem; +} + +.custom-range::-ms-fill-upper { + margin-right: 15px; + background-color: #dee2e6; + border-radius: 1rem; +} + +.custom-range:disabled::-webkit-slider-thumb { + background-color: #adb5bd; +} + +.custom-range:disabled::-webkit-slider-runnable-track { + cursor: default; +} + +.custom-range:disabled::-moz-range-thumb { + background-color: #adb5bd; +} + +.custom-range:disabled::-moz-range-track { + cursor: default; +} + +.custom-range:disabled::-ms-thumb { + background-color: #adb5bd; +} + +.custom-control-label::before, +.custom-file-label, +.custom-select { + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .custom-control-label::before, + .custom-file-label, + .custom-select { + transition: none; + } +} + +.nav { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + padding-left: 0; + margin-bottom: 0; + list-style: none; +} + +.nav-link { + display: block; + padding: 0.5rem 1rem; +} + +.nav-link:hover, .nav-link:focus { + text-decoration: none; +} + +.nav-link.disabled { + color: #6c757d; + pointer-events: none; + cursor: default; +} + +.nav-tabs { + border-bottom: 1px solid #dee2e6; +} + +.nav-tabs .nav-item { + margin-bottom: -1px; +} + +.nav-tabs .nav-link { + border: 1px solid transparent; + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} + +.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus { + border-color: #e9ecef #e9ecef #dee2e6; +} + +.nav-tabs .nav-link.disabled { + color: #6c757d; + background-color: transparent; + border-color: transparent; +} + +.nav-tabs .nav-link.active, +.nav-tabs .nav-item.show .nav-link { + color: #495057; + background-color: #fff; + border-color: #dee2e6 #dee2e6 #fff; +} + +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.nav-pills .nav-link { + border-radius: 0.25rem; +} + +.nav-pills .nav-link.active, +.nav-pills .show > .nav-link { + color: #fff; + background-color: #007bff; +} + +.nav-fill .nav-item { + -ms-flex: 1 1 auto; + flex: 1 1 auto; + text-align: center; +} + +.nav-justified .nav-item { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + flex-grow: 1; + text-align: center; +} + +.tab-content > .tab-pane { + display: none; +} + +.tab-content > .active { + display: block; +} + +.navbar { + position: relative; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: justify; + justify-content: space-between; + padding: 0.5rem 1rem; +} + +.navbar > .container, +.navbar > .container-fluid { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: justify; + justify-content: space-between; +} + +.navbar-brand { + display: inline-block; + padding-top: 0.3125rem; + padding-bottom: 0.3125rem; + margin-right: 1rem; + font-size: 1.25rem; + line-height: inherit; + white-space: nowrap; +} + +.navbar-brand:hover, .navbar-brand:focus { + text-decoration: none; +} + +.navbar-nav { + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + padding-left: 0; + margin-bottom: 0; + list-style: none; +} + +.navbar-nav .nav-link { + padding-right: 0; + padding-left: 0; +} + +.navbar-nav .dropdown-menu { + position: static; + float: none; +} + +.navbar-text { + display: inline-block; + padding-top: 0.5rem; + padding-bottom: 0.5rem; +} + +.navbar-collapse { + -ms-flex-preferred-size: 100%; + flex-basis: 100%; + -ms-flex-positive: 1; + flex-grow: 1; + -ms-flex-align: center; + align-items: center; +} + +.navbar-toggler { + padding: 0.25rem 0.75rem; + font-size: 1.25rem; + line-height: 1; + background-color: transparent; + border: 1px solid transparent; + border-radius: 0.25rem; +} + +.navbar-toggler:hover, .navbar-toggler:focus { + text-decoration: none; +} + +.navbar-toggler-icon { + display: inline-block; + width: 1.5em; + height: 1.5em; + vertical-align: middle; + content: ""; + background: no-repeat center center; + background-size: 100% 100%; +} + +@media (max-width: 575.98px) { + .navbar-expand-sm > .container, + .navbar-expand-sm > .container-fluid { + padding-right: 0; + padding-left: 0; + } +} + +@media (min-width: 576px) { + .navbar-expand-sm { + -ms-flex-flow: row nowrap; + flex-flow: row nowrap; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-sm .navbar-nav { + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-sm .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-sm .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-sm > .container, + .navbar-expand-sm > .container-fluid { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + } + .navbar-expand-sm .navbar-collapse { + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-sm .navbar-toggler { + display: none; + } +} + +@media (max-width: 767.98px) { + .navbar-expand-md > .container, + .navbar-expand-md > .container-fluid { + padding-right: 0; + padding-left: 0; + } +} + +@media (min-width: 768px) { + .navbar-expand-md { + -ms-flex-flow: row nowrap; + flex-flow: row nowrap; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-md .navbar-nav { + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-md .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-md .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-md > .container, + .navbar-expand-md > .container-fluid { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + } + .navbar-expand-md .navbar-collapse { + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-md .navbar-toggler { + display: none; + } +} + +@media (max-width: 991.98px) { + .navbar-expand-lg > .container, + .navbar-expand-lg > .container-fluid { + padding-right: 0; + padding-left: 0; + } +} + +@media (min-width: 992px) { + .navbar-expand-lg { + -ms-flex-flow: row nowrap; + flex-flow: row nowrap; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-lg .navbar-nav { + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-lg .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-lg .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-lg > .container, + .navbar-expand-lg > .container-fluid { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + } + .navbar-expand-lg .navbar-collapse { + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-lg .navbar-toggler { + display: none; + } +} + +@media (max-width: 1199.98px) { + .navbar-expand-xl > .container, + .navbar-expand-xl > .container-fluid { + padding-right: 0; + padding-left: 0; + } +} + +@media (min-width: 1200px) { + .navbar-expand-xl { + -ms-flex-flow: row nowrap; + flex-flow: row nowrap; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-xl .navbar-nav { + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-xl .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-xl .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-xl > .container, + .navbar-expand-xl > .container-fluid { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + } + .navbar-expand-xl .navbar-collapse { + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-xl .navbar-toggler { + display: none; + } +} + +.navbar-expand { + -ms-flex-flow: row nowrap; + flex-flow: row nowrap; + -ms-flex-pack: start; + justify-content: flex-start; +} + +.navbar-expand > .container, +.navbar-expand > .container-fluid { + padding-right: 0; + padding-left: 0; +} + +.navbar-expand .navbar-nav { + -ms-flex-direction: row; + flex-direction: row; +} + +.navbar-expand .navbar-nav .dropdown-menu { + position: absolute; +} + +.navbar-expand .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; +} + +.navbar-expand > .container, +.navbar-expand > .container-fluid { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; +} + +.navbar-expand .navbar-collapse { + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; +} + +.navbar-expand .navbar-toggler { + display: none; +} + +.navbar-light .navbar-brand { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-light .navbar-nav .nav-link { + color: rgba(0, 0, 0, 0.5); +} + +.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus { + color: rgba(0, 0, 0, 0.7); +} + +.navbar-light .navbar-nav .nav-link.disabled { + color: rgba(0, 0, 0, 0.3); +} + +.navbar-light .navbar-nav .show > .nav-link, +.navbar-light .navbar-nav .active > .nav-link, +.navbar-light .navbar-nav .nav-link.show, +.navbar-light .navbar-nav .nav-link.active { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-light .navbar-toggler { + color: rgba(0, 0, 0, 0.5); + border-color: rgba(0, 0, 0, 0.1); +} + +.navbar-light .navbar-toggler-icon { + background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +} + +.navbar-light .navbar-text { + color: rgba(0, 0, 0, 0.5); +} + +.navbar-light .navbar-text a { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-dark .navbar-brand { + color: #fff; +} + +.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus { + color: #fff; +} + +.navbar-dark .navbar-nav .nav-link { + color: rgba(255, 255, 255, 0.5); +} + +.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus { + color: rgba(255, 255, 255, 0.75); +} + +.navbar-dark .navbar-nav .nav-link.disabled { + color: rgba(255, 255, 255, 0.25); +} + +.navbar-dark .navbar-nav .show > .nav-link, +.navbar-dark .navbar-nav .active > .nav-link, +.navbar-dark .navbar-nav .nav-link.show, +.navbar-dark .navbar-nav .nav-link.active { + color: #fff; +} + +.navbar-dark .navbar-toggler { + color: rgba(255, 255, 255, 0.5); + border-color: rgba(255, 255, 255, 0.1); +} + +.navbar-dark .navbar-toggler-icon { + background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +} + +.navbar-dark .navbar-text { + color: rgba(255, 255, 255, 0.5); +} + +.navbar-dark .navbar-text a { + color: #fff; +} + +.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus { + color: #fff; +} + +.card { + position: relative; + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + min-width: 0; + word-wrap: break-word; + background-color: #fff; + background-clip: border-box; + border: 1px solid rgba(0, 0, 0, 0.125); + border-radius: 0.25rem; +} + +.card > hr { + margin-right: 0; + margin-left: 0; +} + +.card > .list-group:first-child .list-group-item:first-child { + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} + +.card > .list-group:last-child .list-group-item:last-child { + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} + +.card-body { + -ms-flex: 1 1 auto; + flex: 1 1 auto; + padding: 1.25rem; +} + +.card-title { + margin-bottom: 0.75rem; +} + +.card-subtitle { + margin-top: -0.375rem; + margin-bottom: 0; +} + +.card-text:last-child { + margin-bottom: 0; +} + +.card-link:hover { + text-decoration: none; +} + +.card-link + .card-link { + margin-left: 1.25rem; +} + +.card-header { + padding: 0.75rem 1.25rem; + margin-bottom: 0; + background-color: rgba(0, 0, 0, 0.03); + border-bottom: 1px solid rgba(0, 0, 0, 0.125); +} + +.card-header:first-child { + border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0; +} + +.card-header + .list-group .list-group-item:first-child { + border-top: 0; +} + +.card-footer { + padding: 0.75rem 1.25rem; + background-color: rgba(0, 0, 0, 0.03); + border-top: 1px solid rgba(0, 0, 0, 0.125); +} + +.card-footer:last-child { + border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px); +} + +.card-header-tabs { + margin-right: -0.625rem; + margin-bottom: -0.75rem; + margin-left: -0.625rem; + border-bottom: 0; +} + +.card-header-pills { + margin-right: -0.625rem; + margin-left: -0.625rem; +} + +.card-img-overlay { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + padding: 1.25rem; +} + +.card-img { + width: 100%; + border-radius: calc(0.25rem - 1px); +} + +.card-img-top { + width: 100%; + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} + +.card-img-bottom { + width: 100%; + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} + +.card-deck { + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; +} + +.card-deck .card { + margin-bottom: 15px; +} + +@media (min-width: 576px) { + .card-deck { + -ms-flex-flow: row wrap; + flex-flow: row wrap; + margin-right: -15px; + margin-left: -15px; + } + .card-deck .card { + display: -ms-flexbox; + display: flex; + -ms-flex: 1 0 0%; + flex: 1 0 0%; + -ms-flex-direction: column; + flex-direction: column; + margin-right: 15px; + margin-bottom: 0; + margin-left: 15px; + } +} + +.card-group { + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; +} + +.card-group > .card { + margin-bottom: 15px; +} + +@media (min-width: 576px) { + .card-group { + -ms-flex-flow: row wrap; + flex-flow: row wrap; + } + .card-group > .card { + -ms-flex: 1 0 0%; + flex: 1 0 0%; + margin-bottom: 0; + } + .card-group > .card + .card { + margin-left: 0; + border-left: 0; + } + .card-group > .card:not(:last-child) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + .card-group > .card:not(:last-child) .card-img-top, + .card-group > .card:not(:last-child) .card-header { + border-top-right-radius: 0; + } + .card-group > .card:not(:last-child) .card-img-bottom, + .card-group > .card:not(:last-child) .card-footer { + border-bottom-right-radius: 0; + } + .card-group > .card:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; + } + .card-group > .card:not(:first-child) .card-img-top, + .card-group > .card:not(:first-child) .card-header { + border-top-left-radius: 0; + } + .card-group > .card:not(:first-child) .card-img-bottom, + .card-group > .card:not(:first-child) .card-footer { + border-bottom-left-radius: 0; + } +} + +.card-columns .card { + margin-bottom: 0.75rem; +} + +@media (min-width: 576px) { + .card-columns { + -webkit-column-count: 3; + -moz-column-count: 3; + column-count: 3; + -webkit-column-gap: 1.25rem; + -moz-column-gap: 1.25rem; + column-gap: 1.25rem; + orphans: 1; + widows: 1; + } + .card-columns .card { + display: inline-block; + width: 100%; + } +} + +.accordion > .card { + overflow: hidden; +} + +.accordion > .card:not(:first-of-type) .card-header:first-child { + border-radius: 0; +} + +.accordion > .card:not(:first-of-type):not(:last-of-type) { + border-bottom: 0; + border-radius: 0; +} + +.accordion > .card:first-of-type { + border-bottom: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.accordion > .card:last-of-type { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.accordion > .card .card-header { + margin-bottom: -1px; +} + +.breadcrumb { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + padding: 0.75rem 1rem; + margin-bottom: 1rem; + list-style: none; + background-color: #e9ecef; + border-radius: 0.25rem; +} + +.breadcrumb-item + .breadcrumb-item { + padding-left: 0.5rem; +} + +.breadcrumb-item + .breadcrumb-item::before { + display: inline-block; + padding-right: 0.5rem; + color: #6c757d; + content: "/"; +} + +.breadcrumb-item + .breadcrumb-item:hover::before { + text-decoration: underline; +} + +.breadcrumb-item + .breadcrumb-item:hover::before { + text-decoration: none; +} + +.breadcrumb-item.active { + color: #6c757d; +} + +.pagination { + display: -ms-flexbox; + display: flex; + padding-left: 0; + list-style: none; + border-radius: 0.25rem; +} + +.page-link { + position: relative; + display: block; + padding: 0.5rem 0.75rem; + margin-left: -1px; + line-height: 1.25; + color: #007bff; + background-color: #fff; + border: 1px solid #dee2e6; +} + +.page-link:hover { + z-index: 2; + color: #0056b3; + text-decoration: none; + background-color: #e9ecef; + border-color: #dee2e6; +} + +.page-link:focus { + z-index: 2; + outline: 0; + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); +} + +.page-item:first-child .page-link { + margin-left: 0; + border-top-left-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} + +.page-item:last-child .page-link { + border-top-right-radius: 0.25rem; + border-bottom-right-radius: 0.25rem; +} + +.page-item.active .page-link { + z-index: 1; + color: #fff; + background-color: #007bff; + border-color: #007bff; +} + +.page-item.disabled .page-link { + color: #6c757d; + pointer-events: none; + cursor: auto; + background-color: #fff; + border-color: #dee2e6; +} + +.pagination-lg .page-link { + padding: 0.75rem 1.5rem; + font-size: 1.25rem; + line-height: 1.5; +} + +.pagination-lg .page-item:first-child .page-link { + border-top-left-radius: 0.3rem; + border-bottom-left-radius: 0.3rem; +} + +.pagination-lg .page-item:last-child .page-link { + border-top-right-radius: 0.3rem; + border-bottom-right-radius: 0.3rem; +} + +.pagination-sm .page-link { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + line-height: 1.5; +} + +.pagination-sm .page-item:first-child .page-link { + border-top-left-radius: 0.2rem; + border-bottom-left-radius: 0.2rem; +} + +.pagination-sm .page-item:last-child .page-link { + border-top-right-radius: 0.2rem; + border-bottom-right-radius: 0.2rem; +} + +.badge { + display: inline-block; + padding: 0.25em 0.4em; + font-size: 75%; + font-weight: 700; + line-height: 1; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: 0.25rem; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .badge { + transition: none; + } +} + +a.badge:hover, a.badge:focus { + text-decoration: none; +} + +.badge:empty { + display: none; +} + +.btn .badge { + position: relative; + top: -1px; +} + +.badge-pill { + padding-right: 0.6em; + padding-left: 0.6em; + border-radius: 10rem; +} + +.badge-primary { + color: #fff; + background-color: #007bff; +} + +a.badge-primary:hover, a.badge-primary:focus { + color: #fff; + background-color: #0062cc; +} + +a.badge-primary:focus, a.badge-primary.focus { + outline: 0; + box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); +} + +.badge-secondary { + color: #fff; + background-color: #6c757d; +} + +a.badge-secondary:hover, a.badge-secondary:focus { + color: #fff; + background-color: #545b62; +} + +a.badge-secondary:focus, a.badge-secondary.focus { + outline: 0; + box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); +} + +.badge-success { + color: #fff; + background-color: #28a745; +} + +a.badge-success:hover, a.badge-success:focus { + color: #fff; + background-color: #1e7e34; +} + +a.badge-success:focus, a.badge-success.focus { + outline: 0; + box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); +} + +.badge-info { + color: #fff; + background-color: #17a2b8; +} + +a.badge-info:hover, a.badge-info:focus { + color: #fff; + background-color: #117a8b; +} + +a.badge-info:focus, a.badge-info.focus { + outline: 0; + box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); +} + +.badge-warning { + color: #212529; + background-color: #ffc107; +} + +a.badge-warning:hover, a.badge-warning:focus { + color: #212529; + background-color: #d39e00; +} + +a.badge-warning:focus, a.badge-warning.focus { + outline: 0; + box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); +} + +.badge-danger { + color: #fff; + background-color: #dc3545; +} + +a.badge-danger:hover, a.badge-danger:focus { + color: #fff; + background-color: #bd2130; +} + +a.badge-danger:focus, a.badge-danger.focus { + outline: 0; + box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); +} + +.badge-light { + color: #212529; + background-color: #f8f9fa; +} + +a.badge-light:hover, a.badge-light:focus { + color: #212529; + background-color: #dae0e5; +} + +a.badge-light:focus, a.badge-light.focus { + outline: 0; + box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); +} + +.badge-dark { + color: #fff; + background-color: #343a40; +} + +a.badge-dark:hover, a.badge-dark:focus { + color: #fff; + background-color: #1d2124; +} + +a.badge-dark:focus, a.badge-dark.focus { + outline: 0; + box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); +} + +.jumbotron { + padding: 2rem 1rem; + margin-bottom: 2rem; + background-color: #e9ecef; + border-radius: 0.3rem; +} + +@media (min-width: 576px) { + .jumbotron { + padding: 4rem 2rem; + } +} + +.jumbotron-fluid { + padding-right: 0; + padding-left: 0; + border-radius: 0; +} + +.alert { + position: relative; + padding: 0.75rem 1.25rem; + margin-bottom: 1rem; + border: 1px solid transparent; + border-radius: 0.25rem; +} + +.alert-heading { + color: inherit; +} + +.alert-link { + font-weight: 700; +} + +.alert-dismissible { + padding-right: 4rem; +} + +.alert-dismissible .close { + position: absolute; + top: 0; + right: 0; + padding: 0.75rem 1.25rem; + color: inherit; +} + +.alert-primary { + color: #004085; + background-color: #cce5ff; + border-color: #b8daff; +} + +.alert-primary hr { + border-top-color: #9fcdff; +} + +.alert-primary .alert-link { + color: #002752; +} + +.alert-secondary { + color: #383d41; + background-color: #e2e3e5; + border-color: #d6d8db; +} + +.alert-secondary hr { + border-top-color: #c8cbcf; +} + +.alert-secondary .alert-link { + color: #202326; +} + +.alert-success { + color: #155724; + background-color: #d4edda; + border-color: #c3e6cb; +} + +.alert-success hr { + border-top-color: #b1dfbb; +} + +.alert-success .alert-link { + color: #0b2e13; +} + +.alert-info { + color: #0c5460; + background-color: #d1ecf1; + border-color: #bee5eb; +} + +.alert-info hr { + border-top-color: #abdde5; +} + +.alert-info .alert-link { + color: #062c33; +} + +.alert-warning { + color: #856404; + background-color: #fff3cd; + border-color: #ffeeba; +} + +.alert-warning hr { + border-top-color: #ffe8a1; +} + +.alert-warning .alert-link { + color: #533f03; +} + +.alert-danger { + color: #721c24; + background-color: #f8d7da; + border-color: #f5c6cb; +} + +.alert-danger hr { + border-top-color: #f1b0b7; +} + +.alert-danger .alert-link { + color: #491217; +} + +.alert-light { + color: #818182; + background-color: #fefefe; + border-color: #fdfdfe; +} + +.alert-light hr { + border-top-color: #ececf6; +} + +.alert-light .alert-link { + color: #686868; +} + +.alert-dark { + color: #1b1e21; + background-color: #d6d8d9; + border-color: #c6c8ca; +} + +.alert-dark hr { + border-top-color: #b9bbbe; +} + +.alert-dark .alert-link { + color: #040505; +} + +@-webkit-keyframes progress-bar-stripes { + from { + background-position: 1rem 0; + } + to { + background-position: 0 0; + } +} + +@keyframes progress-bar-stripes { + from { + background-position: 1rem 0; + } + to { + background-position: 0 0; + } +} + +.progress { + display: -ms-flexbox; + display: flex; + height: 1rem; + overflow: hidden; + font-size: 0.75rem; + background-color: #e9ecef; + border-radius: 0.25rem; +} + +.progress-bar { + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + -ms-flex-pack: center; + justify-content: center; + color: #fff; + text-align: center; + white-space: nowrap; + background-color: #007bff; + transition: width 0.6s ease; +} + +@media (prefers-reduced-motion: reduce) { + .progress-bar { + transition: none; + } +} + +.progress-bar-striped { + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-size: 1rem 1rem; +} + +.progress-bar-animated { + -webkit-animation: progress-bar-stripes 1s linear infinite; + animation: progress-bar-stripes 1s linear infinite; +} + +@media (prefers-reduced-motion: reduce) { + .progress-bar-animated { + -webkit-animation: none; + animation: none; + } +} + +.media { + display: -ms-flexbox; + display: flex; + -ms-flex-align: start; + align-items: flex-start; +} + +.media-body { + -ms-flex: 1; + flex: 1; +} + +.list-group { + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + padding-left: 0; + margin-bottom: 0; +} + +.list-group-item-action { + width: 100%; + color: #495057; + text-align: inherit; +} + +.list-group-item-action:hover, .list-group-item-action:focus { + z-index: 1; + color: #495057; + text-decoration: none; + background-color: #f8f9fa; +} + +.list-group-item-action:active { + color: #212529; + background-color: #e9ecef; +} + +.list-group-item { + position: relative; + display: block; + padding: 0.75rem 1.25rem; + margin-bottom: -1px; + background-color: #fff; + border: 1px solid rgba(0, 0, 0, 0.125); +} + +.list-group-item:first-child { + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} + +.list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} + +.list-group-item.disabled, .list-group-item:disabled { + color: #6c757d; + pointer-events: none; + background-color: #fff; +} + +.list-group-item.active { + z-index: 2; + color: #fff; + background-color: #007bff; + border-color: #007bff; +} + +.list-group-horizontal { + -ms-flex-direction: row; + flex-direction: row; +} + +.list-group-horizontal .list-group-item { + margin-right: -1px; + margin-bottom: 0; +} + +.list-group-horizontal .list-group-item:first-child { + border-top-left-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; +} + +.list-group-horizontal .list-group-item:last-child { + margin-right: 0; + border-top-right-radius: 0.25rem; + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0; +} + +@media (min-width: 576px) { + .list-group-horizontal-sm { + -ms-flex-direction: row; + flex-direction: row; + } + .list-group-horizontal-sm .list-group-item { + margin-right: -1px; + margin-bottom: 0; + } + .list-group-horizontal-sm .list-group-item:first-child { + border-top-left-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-sm .list-group-item:last-child { + margin-right: 0; + border-top-right-radius: 0.25rem; + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } +} + +@media (min-width: 768px) { + .list-group-horizontal-md { + -ms-flex-direction: row; + flex-direction: row; + } + .list-group-horizontal-md .list-group-item { + margin-right: -1px; + margin-bottom: 0; + } + .list-group-horizontal-md .list-group-item:first-child { + border-top-left-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-md .list-group-item:last-child { + margin-right: 0; + border-top-right-radius: 0.25rem; + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } +} + +@media (min-width: 992px) { + .list-group-horizontal-lg { + -ms-flex-direction: row; + flex-direction: row; + } + .list-group-horizontal-lg .list-group-item { + margin-right: -1px; + margin-bottom: 0; + } + .list-group-horizontal-lg .list-group-item:first-child { + border-top-left-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-lg .list-group-item:last-child { + margin-right: 0; + border-top-right-radius: 0.25rem; + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } +} + +@media (min-width: 1200px) { + .list-group-horizontal-xl { + -ms-flex-direction: row; + flex-direction: row; + } + .list-group-horizontal-xl .list-group-item { + margin-right: -1px; + margin-bottom: 0; + } + .list-group-horizontal-xl .list-group-item:first-child { + border-top-left-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-xl .list-group-item:last-child { + margin-right: 0; + border-top-right-radius: 0.25rem; + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } +} + +.list-group-flush .list-group-item { + border-right: 0; + border-left: 0; + border-radius: 0; +} + +.list-group-flush .list-group-item:last-child { + margin-bottom: -1px; +} + +.list-group-flush:first-child .list-group-item:first-child { + border-top: 0; +} + +.list-group-flush:last-child .list-group-item:last-child { + margin-bottom: 0; + border-bottom: 0; +} + +.list-group-item-primary { + color: #004085; + background-color: #b8daff; +} + +.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus { + color: #004085; + background-color: #9fcdff; +} + +.list-group-item-primary.list-group-item-action.active { + color: #fff; + background-color: #004085; + border-color: #004085; +} + +.list-group-item-secondary { + color: #383d41; + background-color: #d6d8db; +} + +.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus { + color: #383d41; + background-color: #c8cbcf; +} + +.list-group-item-secondary.list-group-item-action.active { + color: #fff; + background-color: #383d41; + border-color: #383d41; +} + +.list-group-item-success { + color: #155724; + background-color: #c3e6cb; +} + +.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus { + color: #155724; + background-color: #b1dfbb; +} + +.list-group-item-success.list-group-item-action.active { + color: #fff; + background-color: #155724; + border-color: #155724; +} + +.list-group-item-info { + color: #0c5460; + background-color: #bee5eb; +} + +.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus { + color: #0c5460; + background-color: #abdde5; +} + +.list-group-item-info.list-group-item-action.active { + color: #fff; + background-color: #0c5460; + border-color: #0c5460; +} + +.list-group-item-warning { + color: #856404; + background-color: #ffeeba; +} + +.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus { + color: #856404; + background-color: #ffe8a1; +} + +.list-group-item-warning.list-group-item-action.active { + color: #fff; + background-color: #856404; + border-color: #856404; +} + +.list-group-item-danger { + color: #721c24; + background-color: #f5c6cb; +} + +.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus { + color: #721c24; + background-color: #f1b0b7; +} + +.list-group-item-danger.list-group-item-action.active { + color: #fff; + background-color: #721c24; + border-color: #721c24; +} + +.list-group-item-light { + color: #818182; + background-color: #fdfdfe; +} + +.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus { + color: #818182; + background-color: #ececf6; +} + +.list-group-item-light.list-group-item-action.active { + color: #fff; + background-color: #818182; + border-color: #818182; +} + +.list-group-item-dark { + color: #1b1e21; + background-color: #c6c8ca; +} + +.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus { + color: #1b1e21; + background-color: #b9bbbe; +} + +.list-group-item-dark.list-group-item-action.active { + color: #fff; + background-color: #1b1e21; + border-color: #1b1e21; +} + +.close { + float: right; + font-size: 1.5rem; + font-weight: 700; + line-height: 1; + color: #000; + text-shadow: 0 1px 0 #fff; + opacity: .5; +} + +.close:hover { + color: #000; + text-decoration: none; +} + +.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus { + opacity: .75; +} + +button.close { + padding: 0; + background-color: transparent; + border: 0; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} + +a.close.disabled { + pointer-events: none; +} + +.toast { + max-width: 350px; + overflow: hidden; + font-size: 0.875rem; + background-color: rgba(255, 255, 255, 0.85); + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.1); + box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1); + -webkit-backdrop-filter: blur(10px); + backdrop-filter: blur(10px); + opacity: 0; + border-radius: 0.25rem; +} + +.toast:not(:last-child) { + margin-bottom: 0.75rem; +} + +.toast.showing { + opacity: 1; +} + +.toast.show { + display: block; + opacity: 1; +} + +.toast.hide { + display: none; +} + +.toast-header { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + padding: 0.25rem 0.75rem; + color: #6c757d; + background-color: rgba(255, 255, 255, 0.85); + background-clip: padding-box; + border-bottom: 1px solid rgba(0, 0, 0, 0.05); +} + +.toast-body { + padding: 0.75rem; +} + +.modal-open { + overflow: hidden; +} + +.modal-open .modal { + overflow-x: hidden; + overflow-y: auto; +} + +.modal { + position: fixed; + top: 0; + left: 0; + z-index: 1050; + display: none; + width: 100%; + height: 100%; + overflow: hidden; + outline: 0; +} + +.modal-dialog { + position: relative; + width: auto; + margin: 0.5rem; + pointer-events: none; +} + +.modal.fade .modal-dialog { + transition: -webkit-transform 0.3s ease-out; + transition: transform 0.3s ease-out; + transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out; + -webkit-transform: translate(0, -50px); + transform: translate(0, -50px); +} + +@media (prefers-reduced-motion: reduce) { + .modal.fade .modal-dialog { + transition: none; + } +} + +.modal.show .modal-dialog { + -webkit-transform: none; + transform: none; +} + +.modal-dialog-scrollable { + display: -ms-flexbox; + display: flex; + max-height: calc(100% - 1rem); +} + +.modal-dialog-scrollable .modal-content { + max-height: calc(100vh - 1rem); + overflow: hidden; +} + +.modal-dialog-scrollable .modal-header, +.modal-dialog-scrollable .modal-footer { + -ms-flex-negative: 0; + flex-shrink: 0; +} + +.modal-dialog-scrollable .modal-body { + overflow-y: auto; +} + +.modal-dialog-centered { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + min-height: calc(100% - 1rem); +} + +.modal-dialog-centered::before { + display: block; + height: calc(100vh - 1rem); + content: ""; +} + +.modal-dialog-centered.modal-dialog-scrollable { + -ms-flex-direction: column; + flex-direction: column; + -ms-flex-pack: center; + justify-content: center; + height: 100%; +} + +.modal-dialog-centered.modal-dialog-scrollable .modal-content { + max-height: none; +} + +.modal-dialog-centered.modal-dialog-scrollable::before { + content: none; +} + +.modal-content { + position: relative; + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + width: 100%; + pointer-events: auto; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 0.3rem; + outline: 0; +} + +.modal-backdrop { + position: fixed; + top: 0; + left: 0; + z-index: 1040; + width: 100vw; + height: 100vh; + background-color: #000; +} + +.modal-backdrop.fade { + opacity: 0; +} + +.modal-backdrop.show { + opacity: 0.5; +} + +.modal-header { + display: -ms-flexbox; + display: flex; + -ms-flex-align: start; + align-items: flex-start; + -ms-flex-pack: justify; + justify-content: space-between; + padding: 1rem 1rem; + border-bottom: 1px solid #dee2e6; + border-top-left-radius: 0.3rem; + border-top-right-radius: 0.3rem; +} + +.modal-header .close { + padding: 1rem 1rem; + margin: -1rem -1rem -1rem auto; +} + +.modal-title { + margin-bottom: 0; + line-height: 1.5; +} + +.modal-body { + position: relative; + -ms-flex: 1 1 auto; + flex: 1 1 auto; + padding: 1rem; +} + +.modal-footer { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: end; + justify-content: flex-end; + padding: 1rem; + border-top: 1px solid #dee2e6; + border-bottom-right-radius: 0.3rem; + border-bottom-left-radius: 0.3rem; +} + +.modal-footer > :not(:first-child) { + margin-left: .25rem; +} + +.modal-footer > :not(:last-child) { + margin-right: .25rem; +} + +.modal-scrollbar-measure { + position: absolute; + top: -9999px; + width: 50px; + height: 50px; + overflow: scroll; +} + +@media (min-width: 576px) { + .modal-dialog { + max-width: 500px; + margin: 1.75rem auto; + } + .modal-dialog-scrollable { + max-height: calc(100% - 3.5rem); + } + .modal-dialog-scrollable .modal-content { + max-height: calc(100vh - 3.5rem); + } + .modal-dialog-centered { + min-height: calc(100% - 3.5rem); + } + .modal-dialog-centered::before { + height: calc(100vh - 3.5rem); + } + .modal-sm { + max-width: 300px; + } +} + +@media (min-width: 992px) { + .modal-lg, + .modal-xl { + max-width: 800px; + } +} + +@media (min-width: 1200px) { + .modal-xl { + max-width: 1140px; + } +} + +.tooltip { + position: absolute; + z-index: 1070; + display: block; + margin: 0; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-style: normal; + font-weight: 400; + line-height: 1.5; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + white-space: normal; + line-break: auto; + font-size: 0.875rem; + word-wrap: break-word; + opacity: 0; +} + +.tooltip.show { + opacity: 0.9; +} + +.tooltip .arrow { + position: absolute; + display: block; + width: 0.8rem; + height: 0.4rem; +} + +.tooltip .arrow::before { + position: absolute; + content: ""; + border-color: transparent; + border-style: solid; +} + +.bs-tooltip-top, .bs-tooltip-auto[x-placement^="top"] { + padding: 0.4rem 0; +} + +.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^="top"] .arrow { + bottom: 0; +} + +.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before { + top: 0; + border-width: 0.4rem 0.4rem 0; + border-top-color: #000; +} + +.bs-tooltip-right, .bs-tooltip-auto[x-placement^="right"] { + padding: 0 0.4rem; +} + +.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^="right"] .arrow { + left: 0; + width: 0.4rem; + height: 0.8rem; +} + +.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before { + right: 0; + border-width: 0.4rem 0.4rem 0.4rem 0; + border-right-color: #000; +} + +.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^="bottom"] { + padding: 0.4rem 0; +} + +.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^="bottom"] .arrow { + top: 0; +} + +.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before { + bottom: 0; + border-width: 0 0.4rem 0.4rem; + border-bottom-color: #000; +} + +.bs-tooltip-left, .bs-tooltip-auto[x-placement^="left"] { + padding: 0 0.4rem; +} + +.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^="left"] .arrow { + right: 0; + width: 0.4rem; + height: 0.8rem; +} + +.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before { + left: 0; + border-width: 0.4rem 0 0.4rem 0.4rem; + border-left-color: #000; +} + +.tooltip-inner { + max-width: 200px; + padding: 0.25rem 0.5rem; + color: #fff; + text-align: center; + background-color: #000; + border-radius: 0.25rem; +} + +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1060; + display: block; + max-width: 276px; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-style: normal; + font-weight: 400; + line-height: 1.5; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + white-space: normal; + line-break: auto; + font-size: 0.875rem; + word-wrap: break-word; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 0.3rem; +} + +.popover .arrow { + position: absolute; + display: block; + width: 1rem; + height: 0.5rem; + margin: 0 0.3rem; +} + +.popover .arrow::before, .popover .arrow::after { + position: absolute; + display: block; + content: ""; + border-color: transparent; + border-style: solid; +} + +.bs-popover-top, .bs-popover-auto[x-placement^="top"] { + margin-bottom: 0.5rem; +} + +.bs-popover-top > .arrow, .bs-popover-auto[x-placement^="top"] > .arrow { + bottom: calc((0.5rem + 1px) * -1); +} + +.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^="top"] > .arrow::before { + bottom: 0; + border-width: 0.5rem 0.5rem 0; + border-top-color: rgba(0, 0, 0, 0.25); +} + +.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^="top"] > .arrow::after { + bottom: 1px; + border-width: 0.5rem 0.5rem 0; + border-top-color: #fff; +} + +.bs-popover-right, .bs-popover-auto[x-placement^="right"] { + margin-left: 0.5rem; +} + +.bs-popover-right > .arrow, .bs-popover-auto[x-placement^="right"] > .arrow { + left: calc((0.5rem + 1px) * -1); + width: 0.5rem; + height: 1rem; + margin: 0.3rem 0; +} + +.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^="right"] > .arrow::before { + left: 0; + border-width: 0.5rem 0.5rem 0.5rem 0; + border-right-color: rgba(0, 0, 0, 0.25); +} + +.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^="right"] > .arrow::after { + left: 1px; + border-width: 0.5rem 0.5rem 0.5rem 0; + border-right-color: #fff; +} + +.bs-popover-bottom, .bs-popover-auto[x-placement^="bottom"] { + margin-top: 0.5rem; +} + +.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^="bottom"] > .arrow { + top: calc((0.5rem + 1px) * -1); +} + +.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^="bottom"] > .arrow::before { + top: 0; + border-width: 0 0.5rem 0.5rem 0.5rem; + border-bottom-color: rgba(0, 0, 0, 0.25); +} + +.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^="bottom"] > .arrow::after { + top: 1px; + border-width: 0 0.5rem 0.5rem 0.5rem; + border-bottom-color: #fff; +} + +.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^="bottom"] .popover-header::before { + position: absolute; + top: 0; + left: 50%; + display: block; + width: 1rem; + margin-left: -0.5rem; + content: ""; + border-bottom: 1px solid #f7f7f7; +} + +.bs-popover-left, .bs-popover-auto[x-placement^="left"] { + margin-right: 0.5rem; +} + +.bs-popover-left > .arrow, .bs-popover-auto[x-placement^="left"] > .arrow { + right: calc((0.5rem + 1px) * -1); + width: 0.5rem; + height: 1rem; + margin: 0.3rem 0; +} + +.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^="left"] > .arrow::before { + right: 0; + border-width: 0.5rem 0 0.5rem 0.5rem; + border-left-color: rgba(0, 0, 0, 0.25); +} + +.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^="left"] > .arrow::after { + right: 1px; + border-width: 0.5rem 0 0.5rem 0.5rem; + border-left-color: #fff; +} + +.popover-header { + padding: 0.5rem 0.75rem; + margin-bottom: 0; + font-size: 1rem; + background-color: #f7f7f7; + border-bottom: 1px solid #ebebeb; + border-top-left-radius: calc(0.3rem - 1px); + border-top-right-radius: calc(0.3rem - 1px); +} + +.popover-header:empty { + display: none; +} + +.popover-body { + padding: 0.5rem 0.75rem; + color: #212529; +} + +.carousel { + position: relative; +} + +.carousel.pointer-event { + -ms-touch-action: pan-y; + touch-action: pan-y; +} + +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} + +.carousel-inner::after { + display: block; + clear: both; + content: ""; +} + +.carousel-item { + position: relative; + display: none; + float: left; + width: 100%; + margin-right: -100%; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + transition: -webkit-transform 0.6s ease-in-out; + transition: transform 0.6s ease-in-out; + transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .carousel-item { + transition: none; + } +} + +.carousel-item.active, +.carousel-item-next, +.carousel-item-prev { + display: block; +} + +.carousel-item-next:not(.carousel-item-left), +.active.carousel-item-right { + -webkit-transform: translateX(100%); + transform: translateX(100%); +} + +.carousel-item-prev:not(.carousel-item-right), +.active.carousel-item-left { + -webkit-transform: translateX(-100%); + transform: translateX(-100%); +} + +.carousel-fade .carousel-item { + opacity: 0; + transition-property: opacity; + -webkit-transform: none; + transform: none; +} + +.carousel-fade .carousel-item.active, +.carousel-fade .carousel-item-next.carousel-item-left, +.carousel-fade .carousel-item-prev.carousel-item-right { + z-index: 1; + opacity: 1; +} + +.carousel-fade .active.carousel-item-left, +.carousel-fade .active.carousel-item-right { + z-index: 0; + opacity: 0; + transition: 0s 0.6s opacity; +} + +@media (prefers-reduced-motion: reduce) { + .carousel-fade .active.carousel-item-left, + .carousel-fade .active.carousel-item-right { + transition: none; + } +} + +.carousel-control-prev, +.carousel-control-next { + position: absolute; + top: 0; + bottom: 0; + z-index: 1; + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: center; + justify-content: center; + width: 15%; + color: #fff; + text-align: center; + opacity: 0.5; + transition: opacity 0.15s ease; +} + +@media (prefers-reduced-motion: reduce) { + .carousel-control-prev, + .carousel-control-next { + transition: none; + } +} + +.carousel-control-prev:hover, .carousel-control-prev:focus, +.carousel-control-next:hover, +.carousel-control-next:focus { + color: #fff; + text-decoration: none; + outline: 0; + opacity: 0.9; +} + +.carousel-control-prev { + left: 0; +} + +.carousel-control-next { + right: 0; +} + +.carousel-control-prev-icon, +.carousel-control-next-icon { + display: inline-block; + width: 20px; + height: 20px; + background: no-repeat 50% / 100% 100%; +} + +.carousel-control-prev-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e"); +} + +.carousel-control-next-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e"); +} + +.carousel-indicators { + position: absolute; + right: 0; + bottom: 0; + left: 0; + z-index: 15; + display: -ms-flexbox; + display: flex; + -ms-flex-pack: center; + justify-content: center; + padding-left: 0; + margin-right: 15%; + margin-left: 15%; + list-style: none; +} + +.carousel-indicators li { + box-sizing: content-box; + -ms-flex: 0 1 auto; + flex: 0 1 auto; + width: 30px; + height: 3px; + margin-right: 3px; + margin-left: 3px; + text-indent: -999px; + cursor: pointer; + background-color: #fff; + background-clip: padding-box; + border-top: 10px solid transparent; + border-bottom: 10px solid transparent; + opacity: .5; + transition: opacity 0.6s ease; +} + +@media (prefers-reduced-motion: reduce) { + .carousel-indicators li { + transition: none; + } +} + +.carousel-indicators .active { + opacity: 1; +} + +.carousel-caption { + position: absolute; + right: 15%; + bottom: 20px; + left: 15%; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #fff; + text-align: center; +} + +@-webkit-keyframes spinner-border { + to { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +@keyframes spinner-border { + to { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +.spinner-border { + display: inline-block; + width: 2rem; + height: 2rem; + vertical-align: text-bottom; + border: 0.25em solid currentColor; + border-right-color: transparent; + border-radius: 50%; + -webkit-animation: spinner-border .75s linear infinite; + animation: spinner-border .75s linear infinite; +} + +.spinner-border-sm { + width: 1rem; + height: 1rem; + border-width: 0.2em; +} + +@-webkit-keyframes spinner-grow { + 0% { + -webkit-transform: scale(0); + transform: scale(0); + } + 50% { + opacity: 1; + } +} + +@keyframes spinner-grow { + 0% { + -webkit-transform: scale(0); + transform: scale(0); + } + 50% { + opacity: 1; + } +} + +.spinner-grow { + display: inline-block; + width: 2rem; + height: 2rem; + vertical-align: text-bottom; + background-color: currentColor; + border-radius: 50%; + opacity: 0; + -webkit-animation: spinner-grow .75s linear infinite; + animation: spinner-grow .75s linear infinite; +} + +.spinner-grow-sm { + width: 1rem; + height: 1rem; +} + +.align-baseline { + vertical-align: baseline !important; +} + +.align-top { + vertical-align: top !important; +} + +.align-middle { + vertical-align: middle !important; +} + +.align-bottom { + vertical-align: bottom !important; +} + +.align-text-bottom { + vertical-align: text-bottom !important; +} + +.align-text-top { + vertical-align: text-top !important; +} + +.bg-primary { + background-color: #007bff !important; +} + +a.bg-primary:hover, a.bg-primary:focus, +button.bg-primary:hover, +button.bg-primary:focus { + background-color: #0062cc !important; +} + +.bg-secondary { + background-color: #6c757d !important; +} + +a.bg-secondary:hover, a.bg-secondary:focus, +button.bg-secondary:hover, +button.bg-secondary:focus { + background-color: #545b62 !important; +} + +.bg-success { + background-color: #28a745 !important; +} + +a.bg-success:hover, a.bg-success:focus, +button.bg-success:hover, +button.bg-success:focus { + background-color: #1e7e34 !important; +} + +.bg-info { + background-color: #17a2b8 !important; +} + +a.bg-info:hover, a.bg-info:focus, +button.bg-info:hover, +button.bg-info:focus { + background-color: #117a8b !important; +} + +.bg-warning { + background-color: #ffc107 !important; +} + +a.bg-warning:hover, a.bg-warning:focus, +button.bg-warning:hover, +button.bg-warning:focus { + background-color: #d39e00 !important; +} + +.bg-danger { + background-color: #dc3545 !important; +} + +a.bg-danger:hover, a.bg-danger:focus, +button.bg-danger:hover, +button.bg-danger:focus { + background-color: #bd2130 !important; +} + +.bg-light { + background-color: #f8f9fa !important; +} + +a.bg-light:hover, a.bg-light:focus, +button.bg-light:hover, +button.bg-light:focus { + background-color: #dae0e5 !important; +} + +.bg-dark { + background-color: #343a40 !important; +} + +a.bg-dark:hover, a.bg-dark:focus, +button.bg-dark:hover, +button.bg-dark:focus { + background-color: #1d2124 !important; +} + +.bg-white { + background-color: #fff !important; +} + +.bg-transparent { + background-color: transparent !important; +} + +.border { + border: 1px solid #dee2e6 !important; +} + +.border-top { + border-top: 1px solid #dee2e6 !important; +} + +.border-right { + border-right: 1px solid #dee2e6 !important; +} + +.border-bottom { + border-bottom: 1px solid #dee2e6 !important; +} + +.border-left { + border-left: 1px solid #dee2e6 !important; +} + +.border-0 { + border: 0 !important; +} + +.border-top-0 { + border-top: 0 !important; +} + +.border-right-0 { + border-right: 0 !important; +} + +.border-bottom-0 { + border-bottom: 0 !important; +} + +.border-left-0 { + border-left: 0 !important; +} + +.border-primary { + border-color: #007bff !important; +} + +.border-secondary { + border-color: #6c757d !important; +} + +.border-success { + border-color: #28a745 !important; +} + +.border-info { + border-color: #17a2b8 !important; +} + +.border-warning { + border-color: #ffc107 !important; +} + +.border-danger { + border-color: #dc3545 !important; +} + +.border-light { + border-color: #f8f9fa !important; +} + +.border-dark { + border-color: #343a40 !important; +} + +.border-white { + border-color: #fff !important; +} + +.rounded-sm { + border-radius: 0.2rem !important; +} + +.rounded { + border-radius: 0.25rem !important; +} + +.rounded-top { + border-top-left-radius: 0.25rem !important; + border-top-right-radius: 0.25rem !important; +} + +.rounded-right { + border-top-right-radius: 0.25rem !important; + border-bottom-right-radius: 0.25rem !important; +} + +.rounded-bottom { + border-bottom-right-radius: 0.25rem !important; + border-bottom-left-radius: 0.25rem !important; +} + +.rounded-left { + border-top-left-radius: 0.25rem !important; + border-bottom-left-radius: 0.25rem !important; +} + +.rounded-lg { + border-radius: 0.3rem !important; +} + +.rounded-circle { + border-radius: 50% !important; +} + +.rounded-pill { + border-radius: 50rem !important; +} + +.rounded-0 { + border-radius: 0 !important; +} + +.clearfix::after { + display: block; + clear: both; + content: ""; +} + +.d-none { + display: none !important; +} + +.d-inline { + display: inline !important; +} + +.d-inline-block { + display: inline-block !important; +} + +.d-block { + display: block !important; +} + +.d-table { + display: table !important; +} + +.d-table-row { + display: table-row !important; +} + +.d-table-cell { + display: table-cell !important; +} + +.d-flex { + display: -ms-flexbox !important; + display: flex !important; +} + +.d-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; +} + +@media (min-width: 576px) { + .d-sm-none { + display: none !important; + } + .d-sm-inline { + display: inline !important; + } + .d-sm-inline-block { + display: inline-block !important; + } + .d-sm-block { + display: block !important; + } + .d-sm-table { + display: table !important; + } + .d-sm-table-row { + display: table-row !important; + } + .d-sm-table-cell { + display: table-cell !important; + } + .d-sm-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-sm-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +@media (min-width: 768px) { + .d-md-none { + display: none !important; + } + .d-md-inline { + display: inline !important; + } + .d-md-inline-block { + display: inline-block !important; + } + .d-md-block { + display: block !important; + } + .d-md-table { + display: table !important; + } + .d-md-table-row { + display: table-row !important; + } + .d-md-table-cell { + display: table-cell !important; + } + .d-md-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-md-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +@media (min-width: 992px) { + .d-lg-none { + display: none !important; + } + .d-lg-inline { + display: inline !important; + } + .d-lg-inline-block { + display: inline-block !important; + } + .d-lg-block { + display: block !important; + } + .d-lg-table { + display: table !important; + } + .d-lg-table-row { + display: table-row !important; + } + .d-lg-table-cell { + display: table-cell !important; + } + .d-lg-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-lg-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +@media (min-width: 1200px) { + .d-xl-none { + display: none !important; + } + .d-xl-inline { + display: inline !important; + } + .d-xl-inline-block { + display: inline-block !important; + } + .d-xl-block { + display: block !important; + } + .d-xl-table { + display: table !important; + } + .d-xl-table-row { + display: table-row !important; + } + .d-xl-table-cell { + display: table-cell !important; + } + .d-xl-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-xl-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +@media print { + .d-print-none { + display: none !important; + } + .d-print-inline { + display: inline !important; + } + .d-print-inline-block { + display: inline-block !important; + } + .d-print-block { + display: block !important; + } + .d-print-table { + display: table !important; + } + .d-print-table-row { + display: table-row !important; + } + .d-print-table-cell { + display: table-cell !important; + } + .d-print-flex { + display: -ms-flexbox !important; + display: flex !important; + } + .d-print-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } +} + +.embed-responsive { + position: relative; + display: block; + width: 100%; + padding: 0; + overflow: hidden; +} + +.embed-responsive::before { + display: block; + content: ""; +} + +.embed-responsive .embed-responsive-item, +.embed-responsive iframe, +.embed-responsive embed, +.embed-responsive object, +.embed-responsive video { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 100%; + height: 100%; + border: 0; +} + +.embed-responsive-21by9::before { + padding-top: 42.857143%; +} + +.embed-responsive-16by9::before { + padding-top: 56.25%; +} + +.embed-responsive-4by3::before { + padding-top: 75%; +} + +.embed-responsive-1by1::before { + padding-top: 100%; +} + +.flex-row { + -ms-flex-direction: row !important; + flex-direction: row !important; +} + +.flex-column { + -ms-flex-direction: column !important; + flex-direction: column !important; +} + +.flex-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; +} + +.flex-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; +} + +.flex-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; +} + +.flex-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; +} + +.flex-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; +} + +.flex-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; +} + +.flex-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; +} + +.flex-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; +} + +.flex-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; +} + +.flex-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; +} + +.justify-content-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; +} + +.justify-content-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; +} + +.justify-content-center { + -ms-flex-pack: center !important; + justify-content: center !important; +} + +.justify-content-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; +} + +.justify-content-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; +} + +.align-items-start { + -ms-flex-align: start !important; + align-items: flex-start !important; +} + +.align-items-end { + -ms-flex-align: end !important; + align-items: flex-end !important; +} + +.align-items-center { + -ms-flex-align: center !important; + align-items: center !important; +} + +.align-items-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; +} + +.align-items-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; +} + +.align-content-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; +} + +.align-content-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; +} + +.align-content-center { + -ms-flex-line-pack: center !important; + align-content: center !important; +} + +.align-content-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; +} + +.align-content-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; +} + +.align-content-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; +} + +.align-self-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; +} + +.align-self-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; +} + +.align-self-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; +} + +.align-self-center { + -ms-flex-item-align: center !important; + align-self: center !important; +} + +.align-self-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; +} + +.align-self-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; +} + +@media (min-width: 576px) { + .flex-sm-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-sm-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-sm-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-sm-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-sm-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-sm-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-sm-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .flex-sm-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-sm-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-sm-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-sm-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-sm-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .justify-content-sm-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-sm-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-sm-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-sm-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-sm-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .align-items-sm-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-sm-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-sm-center { + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-sm-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-sm-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-sm-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-sm-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-sm-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-sm-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-sm-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-sm-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-sm-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-sm-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-sm-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-sm-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-sm-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-sm-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } +} + +@media (min-width: 768px) { + .flex-md-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-md-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-md-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-md-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-md-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-md-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-md-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .flex-md-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-md-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-md-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-md-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-md-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .justify-content-md-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-md-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-md-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-md-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-md-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .align-items-md-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-md-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-md-center { + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-md-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-md-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-md-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-md-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-md-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-md-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-md-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-md-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-md-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-md-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-md-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-md-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-md-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-md-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } +} + +@media (min-width: 992px) { + .flex-lg-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-lg-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-lg-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-lg-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-lg-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-lg-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-lg-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .flex-lg-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-lg-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-lg-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-lg-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-lg-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .justify-content-lg-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-lg-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-lg-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-lg-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-lg-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .align-items-lg-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-lg-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-lg-center { + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-lg-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-lg-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-lg-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-lg-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-lg-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-lg-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-lg-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-lg-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-lg-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-lg-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-lg-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-lg-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-lg-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-lg-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } +} + +@media (min-width: 1200px) { + .flex-xl-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-xl-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-xl-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-xl-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-xl-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-xl-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-xl-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .flex-xl-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-xl-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-xl-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-xl-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-xl-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .justify-content-xl-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-xl-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-xl-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-xl-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-xl-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .align-items-xl-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-xl-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-xl-center { + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-xl-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-xl-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-xl-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-xl-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-xl-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-xl-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-xl-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-xl-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-xl-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-xl-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-xl-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-xl-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-xl-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-xl-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } +} + +.float-left { + float: left !important; +} + +.float-right { + float: right !important; +} + +.float-none { + float: none !important; +} + +@media (min-width: 576px) { + .float-sm-left { + float: left !important; + } + .float-sm-right { + float: right !important; + } + .float-sm-none { + float: none !important; + } +} + +@media (min-width: 768px) { + .float-md-left { + float: left !important; + } + .float-md-right { + float: right !important; + } + .float-md-none { + float: none !important; + } +} + +@media (min-width: 992px) { + .float-lg-left { + float: left !important; + } + .float-lg-right { + float: right !important; + } + .float-lg-none { + float: none !important; + } +} + +@media (min-width: 1200px) { + .float-xl-left { + float: left !important; + } + .float-xl-right { + float: right !important; + } + .float-xl-none { + float: none !important; + } +} + +.overflow-auto { + overflow: auto !important; +} + +.overflow-hidden { + overflow: hidden !important; +} + +.position-static { + position: static !important; +} + +.position-relative { + position: relative !important; +} + +.position-absolute { + position: absolute !important; +} + +.position-fixed { + position: fixed !important; +} + +.position-sticky { + position: -webkit-sticky !important; + position: sticky !important; +} + +.fixed-top { + position: fixed; + top: 0; + right: 0; + left: 0; + z-index: 1030; +} + +.fixed-bottom { + position: fixed; + right: 0; + bottom: 0; + left: 0; + z-index: 1030; +} + +@supports ((position: -webkit-sticky) or (position: sticky)) { + .sticky-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} + +.sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0, 0, 0, 0); + white-space: nowrap; + border: 0; +} + +.sr-only-focusable:active, .sr-only-focusable:focus { + position: static; + width: auto; + height: auto; + overflow: visible; + clip: auto; + white-space: normal; +} + +.shadow-sm { + box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; +} + +.shadow { + box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; +} + +.shadow-lg { + box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important; +} + +.shadow-none { + box-shadow: none !important; +} + +.w-25 { + width: 25% !important; +} + +.w-50 { + width: 50% !important; +} + +.w-75 { + width: 75% !important; +} + +.w-100 { + width: 100% !important; +} + +.w-auto { + width: auto !important; +} + +.h-25 { + height: 25% !important; +} + +.h-50 { + height: 50% !important; +} + +.h-75 { + height: 75% !important; +} + +.h-100 { + height: 100% !important; +} + +.h-auto { + height: auto !important; +} + +.mw-100 { + max-width: 100% !important; +} + +.mh-100 { + max-height: 100% !important; +} + +.min-vw-100 { + min-width: 100vw !important; +} + +.min-vh-100 { + min-height: 100vh !important; +} + +.vw-100 { + width: 100vw !important; +} + +.vh-100 { + height: 100vh !important; +} + +.stretched-link::after { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1; + pointer-events: auto; + content: ""; + background-color: rgba(0, 0, 0, 0); +} + +.m-0 { + margin: 0 !important; +} + +.mt-0, +.my-0 { + margin-top: 0 !important; +} + +.mr-0, +.mx-0 { + margin-right: 0 !important; +} + +.mb-0, +.my-0 { + margin-bottom: 0 !important; +} + +.ml-0, +.mx-0 { + margin-left: 0 !important; +} + +.m-1 { + margin: 0.25rem !important; +} + +.mt-1, +.my-1 { + margin-top: 0.25rem !important; +} + +.mr-1, +.mx-1 { + margin-right: 0.25rem !important; +} + +.mb-1, +.my-1 { + margin-bottom: 0.25rem !important; +} + +.ml-1, +.mx-1 { + margin-left: 0.25rem !important; +} + +.m-2 { + margin: 0.5rem !important; +} + +.mt-2, +.my-2 { + margin-top: 0.5rem !important; +} + +.mr-2, +.mx-2 { + margin-right: 0.5rem !important; +} + +.mb-2, +.my-2 { + margin-bottom: 0.5rem !important; +} + +.ml-2, +.mx-2 { + margin-left: 0.5rem !important; +} + +.m-3 { + margin: 1rem !important; +} + +.mt-3, +.my-3 { + margin-top: 1rem !important; +} + +.mr-3, +.mx-3 { + margin-right: 1rem !important; +} + +.mb-3, +.my-3 { + margin-bottom: 1rem !important; +} + +.ml-3, +.mx-3 { + margin-left: 1rem !important; +} + +.m-4 { + margin: 1.5rem !important; +} + +.mt-4, +.my-4 { + margin-top: 1.5rem !important; +} + +.mr-4, +.mx-4 { + margin-right: 1.5rem !important; +} + +.mb-4, +.my-4 { + margin-bottom: 1.5rem !important; +} + +.ml-4, +.mx-4 { + margin-left: 1.5rem !important; +} + +.m-5 { + margin: 3rem !important; +} + +.mt-5, +.my-5 { + margin-top: 3rem !important; +} + +.mr-5, +.mx-5 { + margin-right: 3rem !important; +} + +.mb-5, +.my-5 { + margin-bottom: 3rem !important; +} + +.ml-5, +.mx-5 { + margin-left: 3rem !important; +} + +.p-0 { + padding: 0 !important; +} + +.pt-0, +.py-0 { + padding-top: 0 !important; +} + +.pr-0, +.px-0 { + padding-right: 0 !important; +} + +.pb-0, +.py-0 { + padding-bottom: 0 !important; +} + +.pl-0, +.px-0 { + padding-left: 0 !important; +} + +.p-1 { + padding: 0.25rem !important; +} + +.pt-1, +.py-1 { + padding-top: 0.25rem !important; +} + +.pr-1, +.px-1 { + padding-right: 0.25rem !important; +} + +.pb-1, +.py-1 { + padding-bottom: 0.25rem !important; +} + +.pl-1, +.px-1 { + padding-left: 0.25rem !important; +} + +.p-2 { + padding: 0.5rem !important; +} + +.pt-2, +.py-2 { + padding-top: 0.5rem !important; +} + +.pr-2, +.px-2 { + padding-right: 0.5rem !important; +} + +.pb-2, +.py-2 { + padding-bottom: 0.5rem !important; +} + +.pl-2, +.px-2 { + padding-left: 0.5rem !important; +} + +.p-3 { + padding: 1rem !important; +} + +.pt-3, +.py-3 { + padding-top: 1rem !important; +} + +.pr-3, +.px-3 { + padding-right: 1rem !important; +} + +.pb-3, +.py-3 { + padding-bottom: 1rem !important; +} + +.pl-3, +.px-3 { + padding-left: 1rem !important; +} + +.p-4 { + padding: 1.5rem !important; +} + +.pt-4, +.py-4 { + padding-top: 1.5rem !important; +} + +.pr-4, +.px-4 { + padding-right: 1.5rem !important; +} + +.pb-4, +.py-4 { + padding-bottom: 1.5rem !important; +} + +.pl-4, +.px-4 { + padding-left: 1.5rem !important; +} + +.p-5 { + padding: 3rem !important; +} + +.pt-5, +.py-5 { + padding-top: 3rem !important; +} + +.pr-5, +.px-5 { + padding-right: 3rem !important; +} + +.pb-5, +.py-5 { + padding-bottom: 3rem !important; +} + +.pl-5, +.px-5 { + padding-left: 3rem !important; +} + +.m-n1 { + margin: -0.25rem !important; +} + +.mt-n1, +.my-n1 { + margin-top: -0.25rem !important; +} + +.mr-n1, +.mx-n1 { + margin-right: -0.25rem !important; +} + +.mb-n1, +.my-n1 { + margin-bottom: -0.25rem !important; +} + +.ml-n1, +.mx-n1 { + margin-left: -0.25rem !important; +} + +.m-n2 { + margin: -0.5rem !important; +} + +.mt-n2, +.my-n2 { + margin-top: -0.5rem !important; +} + +.mr-n2, +.mx-n2 { + margin-right: -0.5rem !important; +} + +.mb-n2, +.my-n2 { + margin-bottom: -0.5rem !important; +} + +.ml-n2, +.mx-n2 { + margin-left: -0.5rem !important; +} + +.m-n3 { + margin: -1rem !important; +} + +.mt-n3, +.my-n3 { + margin-top: -1rem !important; +} + +.mr-n3, +.mx-n3 { + margin-right: -1rem !important; +} + +.mb-n3, +.my-n3 { + margin-bottom: -1rem !important; +} + +.ml-n3, +.mx-n3 { + margin-left: -1rem !important; +} + +.m-n4 { + margin: -1.5rem !important; +} + +.mt-n4, +.my-n4 { + margin-top: -1.5rem !important; +} + +.mr-n4, +.mx-n4 { + margin-right: -1.5rem !important; +} + +.mb-n4, +.my-n4 { + margin-bottom: -1.5rem !important; +} + +.ml-n4, +.mx-n4 { + margin-left: -1.5rem !important; +} + +.m-n5 { + margin: -3rem !important; +} + +.mt-n5, +.my-n5 { + margin-top: -3rem !important; +} + +.mr-n5, +.mx-n5 { + margin-right: -3rem !important; +} + +.mb-n5, +.my-n5 { + margin-bottom: -3rem !important; +} + +.ml-n5, +.mx-n5 { + margin-left: -3rem !important; +} + +.m-auto { + margin: auto !important; +} + +.mt-auto, +.my-auto { + margin-top: auto !important; +} + +.mr-auto, +.mx-auto { + margin-right: auto !important; +} + +.mb-auto, +.my-auto { + margin-bottom: auto !important; +} + +.ml-auto, +.mx-auto { + margin-left: auto !important; +} + +@media (min-width: 576px) { + .m-sm-0 { + margin: 0 !important; + } + .mt-sm-0, + .my-sm-0 { + margin-top: 0 !important; + } + .mr-sm-0, + .mx-sm-0 { + margin-right: 0 !important; + } + .mb-sm-0, + .my-sm-0 { + margin-bottom: 0 !important; + } + .ml-sm-0, + .mx-sm-0 { + margin-left: 0 !important; + } + .m-sm-1 { + margin: 0.25rem !important; + } + .mt-sm-1, + .my-sm-1 { + margin-top: 0.25rem !important; + } + .mr-sm-1, + .mx-sm-1 { + margin-right: 0.25rem !important; + } + .mb-sm-1, + .my-sm-1 { + margin-bottom: 0.25rem !important; + } + .ml-sm-1, + .mx-sm-1 { + margin-left: 0.25rem !important; + } + .m-sm-2 { + margin: 0.5rem !important; + } + .mt-sm-2, + .my-sm-2 { + margin-top: 0.5rem !important; + } + .mr-sm-2, + .mx-sm-2 { + margin-right: 0.5rem !important; + } + .mb-sm-2, + .my-sm-2 { + margin-bottom: 0.5rem !important; + } + .ml-sm-2, + .mx-sm-2 { + margin-left: 0.5rem !important; + } + .m-sm-3 { + margin: 1rem !important; + } + .mt-sm-3, + .my-sm-3 { + margin-top: 1rem !important; + } + .mr-sm-3, + .mx-sm-3 { + margin-right: 1rem !important; + } + .mb-sm-3, + .my-sm-3 { + margin-bottom: 1rem !important; + } + .ml-sm-3, + .mx-sm-3 { + margin-left: 1rem !important; + } + .m-sm-4 { + margin: 1.5rem !important; + } + .mt-sm-4, + .my-sm-4 { + margin-top: 1.5rem !important; + } + .mr-sm-4, + .mx-sm-4 { + margin-right: 1.5rem !important; + } + .mb-sm-4, + .my-sm-4 { + margin-bottom: 1.5rem !important; + } + .ml-sm-4, + .mx-sm-4 { + margin-left: 1.5rem !important; + } + .m-sm-5 { + margin: 3rem !important; + } + .mt-sm-5, + .my-sm-5 { + margin-top: 3rem !important; + } + .mr-sm-5, + .mx-sm-5 { + margin-right: 3rem !important; + } + .mb-sm-5, + .my-sm-5 { + margin-bottom: 3rem !important; + } + .ml-sm-5, + .mx-sm-5 { + margin-left: 3rem !important; + } + .p-sm-0 { + padding: 0 !important; + } + .pt-sm-0, + .py-sm-0 { + padding-top: 0 !important; + } + .pr-sm-0, + .px-sm-0 { + padding-right: 0 !important; + } + .pb-sm-0, + .py-sm-0 { + padding-bottom: 0 !important; + } + .pl-sm-0, + .px-sm-0 { + padding-left: 0 !important; + } + .p-sm-1 { + padding: 0.25rem !important; + } + .pt-sm-1, + .py-sm-1 { + padding-top: 0.25rem !important; + } + .pr-sm-1, + .px-sm-1 { + padding-right: 0.25rem !important; + } + .pb-sm-1, + .py-sm-1 { + padding-bottom: 0.25rem !important; + } + .pl-sm-1, + .px-sm-1 { + padding-left: 0.25rem !important; + } + .p-sm-2 { + padding: 0.5rem !important; + } + .pt-sm-2, + .py-sm-2 { + padding-top: 0.5rem !important; + } + .pr-sm-2, + .px-sm-2 { + padding-right: 0.5rem !important; + } + .pb-sm-2, + .py-sm-2 { + padding-bottom: 0.5rem !important; + } + .pl-sm-2, + .px-sm-2 { + padding-left: 0.5rem !important; + } + .p-sm-3 { + padding: 1rem !important; + } + .pt-sm-3, + .py-sm-3 { + padding-top: 1rem !important; + } + .pr-sm-3, + .px-sm-3 { + padding-right: 1rem !important; + } + .pb-sm-3, + .py-sm-3 { + padding-bottom: 1rem !important; + } + .pl-sm-3, + .px-sm-3 { + padding-left: 1rem !important; + } + .p-sm-4 { + padding: 1.5rem !important; + } + .pt-sm-4, + .py-sm-4 { + padding-top: 1.5rem !important; + } + .pr-sm-4, + .px-sm-4 { + padding-right: 1.5rem !important; + } + .pb-sm-4, + .py-sm-4 { + padding-bottom: 1.5rem !important; + } + .pl-sm-4, + .px-sm-4 { + padding-left: 1.5rem !important; + } + .p-sm-5 { + padding: 3rem !important; + } + .pt-sm-5, + .py-sm-5 { + padding-top: 3rem !important; + } + .pr-sm-5, + .px-sm-5 { + padding-right: 3rem !important; + } + .pb-sm-5, + .py-sm-5 { + padding-bottom: 3rem !important; + } + .pl-sm-5, + .px-sm-5 { + padding-left: 3rem !important; + } + .m-sm-n1 { + margin: -0.25rem !important; + } + .mt-sm-n1, + .my-sm-n1 { + margin-top: -0.25rem !important; + } + .mr-sm-n1, + .mx-sm-n1 { + margin-right: -0.25rem !important; + } + .mb-sm-n1, + .my-sm-n1 { + margin-bottom: -0.25rem !important; + } + .ml-sm-n1, + .mx-sm-n1 { + margin-left: -0.25rem !important; + } + .m-sm-n2 { + margin: -0.5rem !important; + } + .mt-sm-n2, + .my-sm-n2 { + margin-top: -0.5rem !important; + } + .mr-sm-n2, + .mx-sm-n2 { + margin-right: -0.5rem !important; + } + .mb-sm-n2, + .my-sm-n2 { + margin-bottom: -0.5rem !important; + } + .ml-sm-n2, + .mx-sm-n2 { + margin-left: -0.5rem !important; + } + .m-sm-n3 { + margin: -1rem !important; + } + .mt-sm-n3, + .my-sm-n3 { + margin-top: -1rem !important; + } + .mr-sm-n3, + .mx-sm-n3 { + margin-right: -1rem !important; + } + .mb-sm-n3, + .my-sm-n3 { + margin-bottom: -1rem !important; + } + .ml-sm-n3, + .mx-sm-n3 { + margin-left: -1rem !important; + } + .m-sm-n4 { + margin: -1.5rem !important; + } + .mt-sm-n4, + .my-sm-n4 { + margin-top: -1.5rem !important; + } + .mr-sm-n4, + .mx-sm-n4 { + margin-right: -1.5rem !important; + } + .mb-sm-n4, + .my-sm-n4 { + margin-bottom: -1.5rem !important; + } + .ml-sm-n4, + .mx-sm-n4 { + margin-left: -1.5rem !important; + } + .m-sm-n5 { + margin: -3rem !important; + } + .mt-sm-n5, + .my-sm-n5 { + margin-top: -3rem !important; + } + .mr-sm-n5, + .mx-sm-n5 { + margin-right: -3rem !important; + } + .mb-sm-n5, + .my-sm-n5 { + margin-bottom: -3rem !important; + } + .ml-sm-n5, + .mx-sm-n5 { + margin-left: -3rem !important; + } + .m-sm-auto { + margin: auto !important; + } + .mt-sm-auto, + .my-sm-auto { + margin-top: auto !important; + } + .mr-sm-auto, + .mx-sm-auto { + margin-right: auto !important; + } + .mb-sm-auto, + .my-sm-auto { + margin-bottom: auto !important; + } + .ml-sm-auto, + .mx-sm-auto { + margin-left: auto !important; + } +} + +@media (min-width: 768px) { + .m-md-0 { + margin: 0 !important; + } + .mt-md-0, + .my-md-0 { + margin-top: 0 !important; + } + .mr-md-0, + .mx-md-0 { + margin-right: 0 !important; + } + .mb-md-0, + .my-md-0 { + margin-bottom: 0 !important; + } + .ml-md-0, + .mx-md-0 { + margin-left: 0 !important; + } + .m-md-1 { + margin: 0.25rem !important; + } + .mt-md-1, + .my-md-1 { + margin-top: 0.25rem !important; + } + .mr-md-1, + .mx-md-1 { + margin-right: 0.25rem !important; + } + .mb-md-1, + .my-md-1 { + margin-bottom: 0.25rem !important; + } + .ml-md-1, + .mx-md-1 { + margin-left: 0.25rem !important; + } + .m-md-2 { + margin: 0.5rem !important; + } + .mt-md-2, + .my-md-2 { + margin-top: 0.5rem !important; + } + .mr-md-2, + .mx-md-2 { + margin-right: 0.5rem !important; + } + .mb-md-2, + .my-md-2 { + margin-bottom: 0.5rem !important; + } + .ml-md-2, + .mx-md-2 { + margin-left: 0.5rem !important; + } + .m-md-3 { + margin: 1rem !important; + } + .mt-md-3, + .my-md-3 { + margin-top: 1rem !important; + } + .mr-md-3, + .mx-md-3 { + margin-right: 1rem !important; + } + .mb-md-3, + .my-md-3 { + margin-bottom: 1rem !important; + } + .ml-md-3, + .mx-md-3 { + margin-left: 1rem !important; + } + .m-md-4 { + margin: 1.5rem !important; + } + .mt-md-4, + .my-md-4 { + margin-top: 1.5rem !important; + } + .mr-md-4, + .mx-md-4 { + margin-right: 1.5rem !important; + } + .mb-md-4, + .my-md-4 { + margin-bottom: 1.5rem !important; + } + .ml-md-4, + .mx-md-4 { + margin-left: 1.5rem !important; + } + .m-md-5 { + margin: 3rem !important; + } + .mt-md-5, + .my-md-5 { + margin-top: 3rem !important; + } + .mr-md-5, + .mx-md-5 { + margin-right: 3rem !important; + } + .mb-md-5, + .my-md-5 { + margin-bottom: 3rem !important; + } + .ml-md-5, + .mx-md-5 { + margin-left: 3rem !important; + } + .p-md-0 { + padding: 0 !important; + } + .pt-md-0, + .py-md-0 { + padding-top: 0 !important; + } + .pr-md-0, + .px-md-0 { + padding-right: 0 !important; + } + .pb-md-0, + .py-md-0 { + padding-bottom: 0 !important; + } + .pl-md-0, + .px-md-0 { + padding-left: 0 !important; + } + .p-md-1 { + padding: 0.25rem !important; + } + .pt-md-1, + .py-md-1 { + padding-top: 0.25rem !important; + } + .pr-md-1, + .px-md-1 { + padding-right: 0.25rem !important; + } + .pb-md-1, + .py-md-1 { + padding-bottom: 0.25rem !important; + } + .pl-md-1, + .px-md-1 { + padding-left: 0.25rem !important; + } + .p-md-2 { + padding: 0.5rem !important; + } + .pt-md-2, + .py-md-2 { + padding-top: 0.5rem !important; + } + .pr-md-2, + .px-md-2 { + padding-right: 0.5rem !important; + } + .pb-md-2, + .py-md-2 { + padding-bottom: 0.5rem !important; + } + .pl-md-2, + .px-md-2 { + padding-left: 0.5rem !important; + } + .p-md-3 { + padding: 1rem !important; + } + .pt-md-3, + .py-md-3 { + padding-top: 1rem !important; + } + .pr-md-3, + .px-md-3 { + padding-right: 1rem !important; + } + .pb-md-3, + .py-md-3 { + padding-bottom: 1rem !important; + } + .pl-md-3, + .px-md-3 { + padding-left: 1rem !important; + } + .p-md-4 { + padding: 1.5rem !important; + } + .pt-md-4, + .py-md-4 { + padding-top: 1.5rem !important; + } + .pr-md-4, + .px-md-4 { + padding-right: 1.5rem !important; + } + .pb-md-4, + .py-md-4 { + padding-bottom: 1.5rem !important; + } + .pl-md-4, + .px-md-4 { + padding-left: 1.5rem !important; + } + .p-md-5 { + padding: 3rem !important; + } + .pt-md-5, + .py-md-5 { + padding-top: 3rem !important; + } + .pr-md-5, + .px-md-5 { + padding-right: 3rem !important; + } + .pb-md-5, + .py-md-5 { + padding-bottom: 3rem !important; + } + .pl-md-5, + .px-md-5 { + padding-left: 3rem !important; + } + .m-md-n1 { + margin: -0.25rem !important; + } + .mt-md-n1, + .my-md-n1 { + margin-top: -0.25rem !important; + } + .mr-md-n1, + .mx-md-n1 { + margin-right: -0.25rem !important; + } + .mb-md-n1, + .my-md-n1 { + margin-bottom: -0.25rem !important; + } + .ml-md-n1, + .mx-md-n1 { + margin-left: -0.25rem !important; + } + .m-md-n2 { + margin: -0.5rem !important; + } + .mt-md-n2, + .my-md-n2 { + margin-top: -0.5rem !important; + } + .mr-md-n2, + .mx-md-n2 { + margin-right: -0.5rem !important; + } + .mb-md-n2, + .my-md-n2 { + margin-bottom: -0.5rem !important; + } + .ml-md-n2, + .mx-md-n2 { + margin-left: -0.5rem !important; + } + .m-md-n3 { + margin: -1rem !important; + } + .mt-md-n3, + .my-md-n3 { + margin-top: -1rem !important; + } + .mr-md-n3, + .mx-md-n3 { + margin-right: -1rem !important; + } + .mb-md-n3, + .my-md-n3 { + margin-bottom: -1rem !important; + } + .ml-md-n3, + .mx-md-n3 { + margin-left: -1rem !important; + } + .m-md-n4 { + margin: -1.5rem !important; + } + .mt-md-n4, + .my-md-n4 { + margin-top: -1.5rem !important; + } + .mr-md-n4, + .mx-md-n4 { + margin-right: -1.5rem !important; + } + .mb-md-n4, + .my-md-n4 { + margin-bottom: -1.5rem !important; + } + .ml-md-n4, + .mx-md-n4 { + margin-left: -1.5rem !important; + } + .m-md-n5 { + margin: -3rem !important; + } + .mt-md-n5, + .my-md-n5 { + margin-top: -3rem !important; + } + .mr-md-n5, + .mx-md-n5 { + margin-right: -3rem !important; + } + .mb-md-n5, + .my-md-n5 { + margin-bottom: -3rem !important; + } + .ml-md-n5, + .mx-md-n5 { + margin-left: -3rem !important; + } + .m-md-auto { + margin: auto !important; + } + .mt-md-auto, + .my-md-auto { + margin-top: auto !important; + } + .mr-md-auto, + .mx-md-auto { + margin-right: auto !important; + } + .mb-md-auto, + .my-md-auto { + margin-bottom: auto !important; + } + .ml-md-auto, + .mx-md-auto { + margin-left: auto !important; + } +} + +@media (min-width: 992px) { + .m-lg-0 { + margin: 0 !important; + } + .mt-lg-0, + .my-lg-0 { + margin-top: 0 !important; + } + .mr-lg-0, + .mx-lg-0 { + margin-right: 0 !important; + } + .mb-lg-0, + .my-lg-0 { + margin-bottom: 0 !important; + } + .ml-lg-0, + .mx-lg-0 { + margin-left: 0 !important; + } + .m-lg-1 { + margin: 0.25rem !important; + } + .mt-lg-1, + .my-lg-1 { + margin-top: 0.25rem !important; + } + .mr-lg-1, + .mx-lg-1 { + margin-right: 0.25rem !important; + } + .mb-lg-1, + .my-lg-1 { + margin-bottom: 0.25rem !important; + } + .ml-lg-1, + .mx-lg-1 { + margin-left: 0.25rem !important; + } + .m-lg-2 { + margin: 0.5rem !important; + } + .mt-lg-2, + .my-lg-2 { + margin-top: 0.5rem !important; + } + .mr-lg-2, + .mx-lg-2 { + margin-right: 0.5rem !important; + } + .mb-lg-2, + .my-lg-2 { + margin-bottom: 0.5rem !important; + } + .ml-lg-2, + .mx-lg-2 { + margin-left: 0.5rem !important; + } + .m-lg-3 { + margin: 1rem !important; + } + .mt-lg-3, + .my-lg-3 { + margin-top: 1rem !important; + } + .mr-lg-3, + .mx-lg-3 { + margin-right: 1rem !important; + } + .mb-lg-3, + .my-lg-3 { + margin-bottom: 1rem !important; + } + .ml-lg-3, + .mx-lg-3 { + margin-left: 1rem !important; + } + .m-lg-4 { + margin: 1.5rem !important; + } + .mt-lg-4, + .my-lg-4 { + margin-top: 1.5rem !important; + } + .mr-lg-4, + .mx-lg-4 { + margin-right: 1.5rem !important; + } + .mb-lg-4, + .my-lg-4 { + margin-bottom: 1.5rem !important; + } + .ml-lg-4, + .mx-lg-4 { + margin-left: 1.5rem !important; + } + .m-lg-5 { + margin: 3rem !important; + } + .mt-lg-5, + .my-lg-5 { + margin-top: 3rem !important; + } + .mr-lg-5, + .mx-lg-5 { + margin-right: 3rem !important; + } + .mb-lg-5, + .my-lg-5 { + margin-bottom: 3rem !important; + } + .ml-lg-5, + .mx-lg-5 { + margin-left: 3rem !important; + } + .p-lg-0 { + padding: 0 !important; + } + .pt-lg-0, + .py-lg-0 { + padding-top: 0 !important; + } + .pr-lg-0, + .px-lg-0 { + padding-right: 0 !important; + } + .pb-lg-0, + .py-lg-0 { + padding-bottom: 0 !important; + } + .pl-lg-0, + .px-lg-0 { + padding-left: 0 !important; + } + .p-lg-1 { + padding: 0.25rem !important; + } + .pt-lg-1, + .py-lg-1 { + padding-top: 0.25rem !important; + } + .pr-lg-1, + .px-lg-1 { + padding-right: 0.25rem !important; + } + .pb-lg-1, + .py-lg-1 { + padding-bottom: 0.25rem !important; + } + .pl-lg-1, + .px-lg-1 { + padding-left: 0.25rem !important; + } + .p-lg-2 { + padding: 0.5rem !important; + } + .pt-lg-2, + .py-lg-2 { + padding-top: 0.5rem !important; + } + .pr-lg-2, + .px-lg-2 { + padding-right: 0.5rem !important; + } + .pb-lg-2, + .py-lg-2 { + padding-bottom: 0.5rem !important; + } + .pl-lg-2, + .px-lg-2 { + padding-left: 0.5rem !important; + } + .p-lg-3 { + padding: 1rem !important; + } + .pt-lg-3, + .py-lg-3 { + padding-top: 1rem !important; + } + .pr-lg-3, + .px-lg-3 { + padding-right: 1rem !important; + } + .pb-lg-3, + .py-lg-3 { + padding-bottom: 1rem !important; + } + .pl-lg-3, + .px-lg-3 { + padding-left: 1rem !important; + } + .p-lg-4 { + padding: 1.5rem !important; + } + .pt-lg-4, + .py-lg-4 { + padding-top: 1.5rem !important; + } + .pr-lg-4, + .px-lg-4 { + padding-right: 1.5rem !important; + } + .pb-lg-4, + .py-lg-4 { + padding-bottom: 1.5rem !important; + } + .pl-lg-4, + .px-lg-4 { + padding-left: 1.5rem !important; + } + .p-lg-5 { + padding: 3rem !important; + } + .pt-lg-5, + .py-lg-5 { + padding-top: 3rem !important; + } + .pr-lg-5, + .px-lg-5 { + padding-right: 3rem !important; + } + .pb-lg-5, + .py-lg-5 { + padding-bottom: 3rem !important; + } + .pl-lg-5, + .px-lg-5 { + padding-left: 3rem !important; + } + .m-lg-n1 { + margin: -0.25rem !important; + } + .mt-lg-n1, + .my-lg-n1 { + margin-top: -0.25rem !important; + } + .mr-lg-n1, + .mx-lg-n1 { + margin-right: -0.25rem !important; + } + .mb-lg-n1, + .my-lg-n1 { + margin-bottom: -0.25rem !important; + } + .ml-lg-n1, + .mx-lg-n1 { + margin-left: -0.25rem !important; + } + .m-lg-n2 { + margin: -0.5rem !important; + } + .mt-lg-n2, + .my-lg-n2 { + margin-top: -0.5rem !important; + } + .mr-lg-n2, + .mx-lg-n2 { + margin-right: -0.5rem !important; + } + .mb-lg-n2, + .my-lg-n2 { + margin-bottom: -0.5rem !important; + } + .ml-lg-n2, + .mx-lg-n2 { + margin-left: -0.5rem !important; + } + .m-lg-n3 { + margin: -1rem !important; + } + .mt-lg-n3, + .my-lg-n3 { + margin-top: -1rem !important; + } + .mr-lg-n3, + .mx-lg-n3 { + margin-right: -1rem !important; + } + .mb-lg-n3, + .my-lg-n3 { + margin-bottom: -1rem !important; + } + .ml-lg-n3, + .mx-lg-n3 { + margin-left: -1rem !important; + } + .m-lg-n4 { + margin: -1.5rem !important; + } + .mt-lg-n4, + .my-lg-n4 { + margin-top: -1.5rem !important; + } + .mr-lg-n4, + .mx-lg-n4 { + margin-right: -1.5rem !important; + } + .mb-lg-n4, + .my-lg-n4 { + margin-bottom: -1.5rem !important; + } + .ml-lg-n4, + .mx-lg-n4 { + margin-left: -1.5rem !important; + } + .m-lg-n5 { + margin: -3rem !important; + } + .mt-lg-n5, + .my-lg-n5 { + margin-top: -3rem !important; + } + .mr-lg-n5, + .mx-lg-n5 { + margin-right: -3rem !important; + } + .mb-lg-n5, + .my-lg-n5 { + margin-bottom: -3rem !important; + } + .ml-lg-n5, + .mx-lg-n5 { + margin-left: -3rem !important; + } + .m-lg-auto { + margin: auto !important; + } + .mt-lg-auto, + .my-lg-auto { + margin-top: auto !important; + } + .mr-lg-auto, + .mx-lg-auto { + margin-right: auto !important; + } + .mb-lg-auto, + .my-lg-auto { + margin-bottom: auto !important; + } + .ml-lg-auto, + .mx-lg-auto { + margin-left: auto !important; + } +} + +@media (min-width: 1200px) { + .m-xl-0 { + margin: 0 !important; + } + .mt-xl-0, + .my-xl-0 { + margin-top: 0 !important; + } + .mr-xl-0, + .mx-xl-0 { + margin-right: 0 !important; + } + .mb-xl-0, + .my-xl-0 { + margin-bottom: 0 !important; + } + .ml-xl-0, + .mx-xl-0 { + margin-left: 0 !important; + } + .m-xl-1 { + margin: 0.25rem !important; + } + .mt-xl-1, + .my-xl-1 { + margin-top: 0.25rem !important; + } + .mr-xl-1, + .mx-xl-1 { + margin-right: 0.25rem !important; + } + .mb-xl-1, + .my-xl-1 { + margin-bottom: 0.25rem !important; + } + .ml-xl-1, + .mx-xl-1 { + margin-left: 0.25rem !important; + } + .m-xl-2 { + margin: 0.5rem !important; + } + .mt-xl-2, + .my-xl-2 { + margin-top: 0.5rem !important; + } + .mr-xl-2, + .mx-xl-2 { + margin-right: 0.5rem !important; + } + .mb-xl-2, + .my-xl-2 { + margin-bottom: 0.5rem !important; + } + .ml-xl-2, + .mx-xl-2 { + margin-left: 0.5rem !important; + } + .m-xl-3 { + margin: 1rem !important; + } + .mt-xl-3, + .my-xl-3 { + margin-top: 1rem !important; + } + .mr-xl-3, + .mx-xl-3 { + margin-right: 1rem !important; + } + .mb-xl-3, + .my-xl-3 { + margin-bottom: 1rem !important; + } + .ml-xl-3, + .mx-xl-3 { + margin-left: 1rem !important; + } + .m-xl-4 { + margin: 1.5rem !important; + } + .mt-xl-4, + .my-xl-4 { + margin-top: 1.5rem !important; + } + .mr-xl-4, + .mx-xl-4 { + margin-right: 1.5rem !important; + } + .mb-xl-4, + .my-xl-4 { + margin-bottom: 1.5rem !important; + } + .ml-xl-4, + .mx-xl-4 { + margin-left: 1.5rem !important; + } + .m-xl-5 { + margin: 3rem !important; + } + .mt-xl-5, + .my-xl-5 { + margin-top: 3rem !important; + } + .mr-xl-5, + .mx-xl-5 { + margin-right: 3rem !important; + } + .mb-xl-5, + .my-xl-5 { + margin-bottom: 3rem !important; + } + .ml-xl-5, + .mx-xl-5 { + margin-left: 3rem !important; + } + .p-xl-0 { + padding: 0 !important; + } + .pt-xl-0, + .py-xl-0 { + padding-top: 0 !important; + } + .pr-xl-0, + .px-xl-0 { + padding-right: 0 !important; + } + .pb-xl-0, + .py-xl-0 { + padding-bottom: 0 !important; + } + .pl-xl-0, + .px-xl-0 { + padding-left: 0 !important; + } + .p-xl-1 { + padding: 0.25rem !important; + } + .pt-xl-1, + .py-xl-1 { + padding-top: 0.25rem !important; + } + .pr-xl-1, + .px-xl-1 { + padding-right: 0.25rem !important; + } + .pb-xl-1, + .py-xl-1 { + padding-bottom: 0.25rem !important; + } + .pl-xl-1, + .px-xl-1 { + padding-left: 0.25rem !important; + } + .p-xl-2 { + padding: 0.5rem !important; + } + .pt-xl-2, + .py-xl-2 { + padding-top: 0.5rem !important; + } + .pr-xl-2, + .px-xl-2 { + padding-right: 0.5rem !important; + } + .pb-xl-2, + .py-xl-2 { + padding-bottom: 0.5rem !important; + } + .pl-xl-2, + .px-xl-2 { + padding-left: 0.5rem !important; + } + .p-xl-3 { + padding: 1rem !important; + } + .pt-xl-3, + .py-xl-3 { + padding-top: 1rem !important; + } + .pr-xl-3, + .px-xl-3 { + padding-right: 1rem !important; + } + .pb-xl-3, + .py-xl-3 { + padding-bottom: 1rem !important; + } + .pl-xl-3, + .px-xl-3 { + padding-left: 1rem !important; + } + .p-xl-4 { + padding: 1.5rem !important; + } + .pt-xl-4, + .py-xl-4 { + padding-top: 1.5rem !important; + } + .pr-xl-4, + .px-xl-4 { + padding-right: 1.5rem !important; + } + .pb-xl-4, + .py-xl-4 { + padding-bottom: 1.5rem !important; + } + .pl-xl-4, + .px-xl-4 { + padding-left: 1.5rem !important; + } + .p-xl-5 { + padding: 3rem !important; + } + .pt-xl-5, + .py-xl-5 { + padding-top: 3rem !important; + } + .pr-xl-5, + .px-xl-5 { + padding-right: 3rem !important; + } + .pb-xl-5, + .py-xl-5 { + padding-bottom: 3rem !important; + } + .pl-xl-5, + .px-xl-5 { + padding-left: 3rem !important; + } + .m-xl-n1 { + margin: -0.25rem !important; + } + .mt-xl-n1, + .my-xl-n1 { + margin-top: -0.25rem !important; + } + .mr-xl-n1, + .mx-xl-n1 { + margin-right: -0.25rem !important; + } + .mb-xl-n1, + .my-xl-n1 { + margin-bottom: -0.25rem !important; + } + .ml-xl-n1, + .mx-xl-n1 { + margin-left: -0.25rem !important; + } + .m-xl-n2 { + margin: -0.5rem !important; + } + .mt-xl-n2, + .my-xl-n2 { + margin-top: -0.5rem !important; + } + .mr-xl-n2, + .mx-xl-n2 { + margin-right: -0.5rem !important; + } + .mb-xl-n2, + .my-xl-n2 { + margin-bottom: -0.5rem !important; + } + .ml-xl-n2, + .mx-xl-n2 { + margin-left: -0.5rem !important; + } + .m-xl-n3 { + margin: -1rem !important; + } + .mt-xl-n3, + .my-xl-n3 { + margin-top: -1rem !important; + } + .mr-xl-n3, + .mx-xl-n3 { + margin-right: -1rem !important; + } + .mb-xl-n3, + .my-xl-n3 { + margin-bottom: -1rem !important; + } + .ml-xl-n3, + .mx-xl-n3 { + margin-left: -1rem !important; + } + .m-xl-n4 { + margin: -1.5rem !important; + } + .mt-xl-n4, + .my-xl-n4 { + margin-top: -1.5rem !important; + } + .mr-xl-n4, + .mx-xl-n4 { + margin-right: -1.5rem !important; + } + .mb-xl-n4, + .my-xl-n4 { + margin-bottom: -1.5rem !important; + } + .ml-xl-n4, + .mx-xl-n4 { + margin-left: -1.5rem !important; + } + .m-xl-n5 { + margin: -3rem !important; + } + .mt-xl-n5, + .my-xl-n5 { + margin-top: -3rem !important; + } + .mr-xl-n5, + .mx-xl-n5 { + margin-right: -3rem !important; + } + .mb-xl-n5, + .my-xl-n5 { + margin-bottom: -3rem !important; + } + .ml-xl-n5, + .mx-xl-n5 { + margin-left: -3rem !important; + } + .m-xl-auto { + margin: auto !important; + } + .mt-xl-auto, + .my-xl-auto { + margin-top: auto !important; + } + .mr-xl-auto, + .mx-xl-auto { + margin-right: auto !important; + } + .mb-xl-auto, + .my-xl-auto { + margin-bottom: auto !important; + } + .ml-xl-auto, + .mx-xl-auto { + margin-left: auto !important; + } +} + +.text-monospace { + font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important; +} + +.text-justify { + text-align: justify !important; +} + +.text-wrap { + white-space: normal !important; +} + +.text-nowrap { + white-space: nowrap !important; +} + +.text-truncate { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.text-left { + text-align: left !important; +} + +.text-right { + text-align: right !important; +} + +.text-center { + text-align: center !important; +} + +@media (min-width: 576px) { + .text-sm-left { + text-align: left !important; + } + .text-sm-right { + text-align: right !important; + } + .text-sm-center { + text-align: center !important; + } +} + +@media (min-width: 768px) { + .text-md-left { + text-align: left !important; + } + .text-md-right { + text-align: right !important; + } + .text-md-center { + text-align: center !important; + } +} + +@media (min-width: 992px) { + .text-lg-left { + text-align: left !important; + } + .text-lg-right { + text-align: right !important; + } + .text-lg-center { + text-align: center !important; + } +} + +@media (min-width: 1200px) { + .text-xl-left { + text-align: left !important; + } + .text-xl-right { + text-align: right !important; + } + .text-xl-center { + text-align: center !important; + } +} + +.text-lowercase { + text-transform: lowercase !important; +} + +.text-uppercase { + text-transform: uppercase !important; +} + +.text-capitalize { + text-transform: capitalize !important; +} + +.font-weight-light { + font-weight: 300 !important; +} + +.font-weight-lighter { + font-weight: lighter !important; +} + +.font-weight-normal { + font-weight: 400 !important; +} + +.font-weight-bold { + font-weight: 700 !important; +} + +.font-weight-bolder { + font-weight: bolder !important; +} + +.font-italic { + font-style: italic !important; +} + +.text-white { + color: #fff !important; +} + +.text-primary { + color: #007bff !important; +} + +a.text-primary:hover, a.text-primary:focus { + color: #0056b3 !important; +} + +.text-secondary { + color: #6c757d !important; +} + +a.text-secondary:hover, a.text-secondary:focus { + color: #494f54 !important; +} + +.text-success { + color: #28a745 !important; +} + +a.text-success:hover, a.text-success:focus { + color: #19692c !important; +} + +.text-info { + color: #17a2b8 !important; +} + +a.text-info:hover, a.text-info:focus { + color: #0f6674 !important; +} + +.text-warning { + color: #ffc107 !important; +} + +a.text-warning:hover, a.text-warning:focus { + color: #ba8b00 !important; +} + +.text-danger { + color: #dc3545 !important; +} + +a.text-danger:hover, a.text-danger:focus { + color: #a71d2a !important; +} + +.text-light { + color: #f8f9fa !important; +} + +a.text-light:hover, a.text-light:focus { + color: #cbd3da !important; +} + +.text-dark { + color: #343a40 !important; +} + +a.text-dark:hover, a.text-dark:focus { + color: #121416 !important; +} + +.text-body { + color: #212529 !important; +} + +.text-muted { + color: #6c757d !important; +} + +.text-black-50 { + color: rgba(0, 0, 0, 0.5) !important; +} + +.text-white-50 { + color: rgba(255, 255, 255, 0.5) !important; +} + +.text-hide { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} + +.text-decoration-none { + text-decoration: none !important; +} + +.text-break { + word-break: break-word !important; + overflow-wrap: break-word !important; +} + +.text-reset { + color: inherit !important; +} + +.visible { + visibility: visible !important; +} + +.invisible { + visibility: hidden !important; +} + +@media print { + *, + *::before, + *::after { + text-shadow: none !important; + box-shadow: none !important; + } + a:not(.btn) { + text-decoration: underline; + } + abbr[title]::after { + content: " (" attr(title) ")"; + } + pre { + white-space: pre-wrap !important; + } + pre, + blockquote { + border: 1px solid #adb5bd; + page-break-inside: avoid; + } + thead { + display: table-header-group; + } + tr, + img { + page-break-inside: avoid; + } + p, + h2, + h3 { + orphans: 3; + widows: 3; + } + h2, + h3 { + page-break-after: avoid; + } + @page { + size: a3; + } + body { + min-width: 992px !important; + } + .container { + min-width: 992px !important; + } + .navbar { + display: none; + } + .badge { + border: 1px solid #000; + } + .table { + border-collapse: collapse !important; + } + .table td, + .table th { + background-color: #fff !important; + } + .table-bordered th, + .table-bordered td { + border: 1px solid #dee2e6 !important; + } + .table-dark { + color: inherit; + } + .table-dark th, + .table-dark td, + .table-dark thead th, + .table-dark tbody + tbody { + border-color: #dee2e6; + } + .table .thead-dark th { + color: inherit; + border-color: #dee2e6; + } +} +/*# sourceMappingURL=bootstrap.css.map */ \ No newline at end of file diff --git a/docs/4.3/dist/css/bootstrap.css.map b/docs/4.3/dist/css/bootstrap.css.map new file mode 100644 index 0000000000000000000000000000000000000000..d9e615c2eb816c9399e09d7a2f4c5a973b172038 GIT binary patch literal 492198 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 Q@J%NsP#gaq{q*jC0TBYy*Z=?k literal 0 HcmV?d00001 diff --git a/docs/4.3/dist/css/bootstrap.min.css b/docs/4.3/dist/css/bootstrap.min.css new file mode 100644 index 0000000000..b950adaa09 --- /dev/null +++ b/docs/4.3/dist/css/bootstrap.min.css @@ -0,0 +1,7 @@ +/*! + * Bootstrap v4.3.0 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors + * Copyright 2011-2019 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#007bff;--secondary:#6c757d;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-weight:500;line-height:1.2}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem;font-weight:300;line-height:1.2}.display-2{font-size:5.5rem;font-weight:300;line-height:1.2}.display-3{font-size:4.5rem;font-weight:300;line-height:1.2}.display-4{font-size:3.5rem;font-weight:300;line-height:1.2}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}.small,small{font-size:80%;font-weight:400}.mark,mark{padding:.2em;background-color:#fcf8e3}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:80%;color:#6c757d}.blockquote-footer::before{content:"\2014\00A0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}code{font-size:87.5%;color:#e83e8c;word-break:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-first{-ms-flex-order:-1;order:-1}.order-last{-ms-flex-order:13;order:13}.order-0{-ms-flex-order:0;order:0}.order-1{-ms-flex-order:1;order:1}.order-2{-ms-flex-order:2;order:2}.order-3{-ms-flex-order:3;order:3}.order-4{-ms-flex-order:4;order:4}.order-5{-ms-flex-order:5;order:5}.order-6{-ms-flex-order:6;order:6}.order-7{-ms-flex-order:7;order:7}.order-8{-ms-flex-order:8;order:8}.order-9{-ms-flex-order:9;order:9}.order-10{-ms-flex-order:10;order:10}.order-11{-ms-flex-order:11;order:11}.order-12{-ms-flex-order:12;order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-sm-first{-ms-flex-order:-1;order:-1}.order-sm-last{-ms-flex-order:13;order:13}.order-sm-0{-ms-flex-order:0;order:0}.order-sm-1{-ms-flex-order:1;order:1}.order-sm-2{-ms-flex-order:2;order:2}.order-sm-3{-ms-flex-order:3;order:3}.order-sm-4{-ms-flex-order:4;order:4}.order-sm-5{-ms-flex-order:5;order:5}.order-sm-6{-ms-flex-order:6;order:6}.order-sm-7{-ms-flex-order:7;order:7}.order-sm-8{-ms-flex-order:8;order:8}.order-sm-9{-ms-flex-order:9;order:9}.order-sm-10{-ms-flex-order:10;order:10}.order-sm-11{-ms-flex-order:11;order:11}.order-sm-12{-ms-flex-order:12;order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-md-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-md-first{-ms-flex-order:-1;order:-1}.order-md-last{-ms-flex-order:13;order:13}.order-md-0{-ms-flex-order:0;order:0}.order-md-1{-ms-flex-order:1;order:1}.order-md-2{-ms-flex-order:2;order:2}.order-md-3{-ms-flex-order:3;order:3}.order-md-4{-ms-flex-order:4;order:4}.order-md-5{-ms-flex-order:5;order:5}.order-md-6{-ms-flex-order:6;order:6}.order-md-7{-ms-flex-order:7;order:7}.order-md-8{-ms-flex-order:8;order:8}.order-md-9{-ms-flex-order:9;order:9}.order-md-10{-ms-flex-order:10;order:10}.order-md-11{-ms-flex-order:11;order:11}.order-md-12{-ms-flex-order:12;order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-lg-first{-ms-flex-order:-1;order:-1}.order-lg-last{-ms-flex-order:13;order:13}.order-lg-0{-ms-flex-order:0;order:0}.order-lg-1{-ms-flex-order:1;order:1}.order-lg-2{-ms-flex-order:2;order:2}.order-lg-3{-ms-flex-order:3;order:3}.order-lg-4{-ms-flex-order:4;order:4}.order-lg-5{-ms-flex-order:5;order:5}.order-lg-6{-ms-flex-order:6;order:6}.order-lg-7{-ms-flex-order:7;order:7}.order-lg-8{-ms-flex-order:8;order:8}.order-lg-9{-ms-flex-order:9;order:9}.order-lg-10{-ms-flex-order:10;order:10}.order-lg-11{-ms-flex-order:11;order:11}.order-lg-12{-ms-flex-order:12;order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-xl-first{-ms-flex-order:-1;order:-1}.order-xl-last{-ms-flex-order:13;order:13}.order-xl-0{-ms-flex-order:0;order:0}.order-xl-1{-ms-flex-order:1;order:1}.order-xl-2{-ms-flex-order:2;order:2}.order-xl-3{-ms-flex-order:3;order:3}.order-xl-4{-ms-flex-order:4;order:4}.order-xl-5{-ms-flex-order:5;order:5}.order-xl-6{-ms-flex-order:6;order:6}.order-xl-7{-ms-flex-order:7;order:7}.order-xl-8{-ms-flex-order:8;order:8}.order-xl-9{-ms-flex-order:9;order:9}.order-xl-10{-ms-flex-order:10;order:10}.order-xl-11{-ms-flex-order:11;order:11}.order-xl-12{-ms-flex-order:12;order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered{border:1px solid #dee2e6}.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover{background-color:#9fcdff}.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover{background-color:#c8cbcf}.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover{background-color:#b1dfbb}.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover{background-color:#abdde5}.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover{background-color:#ffe8a1}.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover{background-color:#f1b0b7}.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover{background-color:#ececf6}.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover{background-color:#b9bbbe}.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th{background-color:rgba(0,0,0,.075)}.table-hover .table-active:hover{background-color:rgba(0,0,0,.075)}.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:rgba(255,255,255,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:rgba(255,255,255,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::-webkit-input-placeholder{color:#6c757d;opacity:1}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control:-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding-top:.375rem;padding-bottom:.375rem;margin-bottom:0;line-height:1.5;color:#212529;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size]{height:auto}textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:center right calc(.375em + .1875rem);background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-control.is-valid~.valid-feedback,.form-control.is-valid~.valid-tooltip,.was-validated .form-control:valid~.valid-feedback,.was-validated .form-control:valid~.valid-tooltip{display:block}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc((1em + .75rem) * 3 / 4 + 1.75rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-select.is-valid~.valid-feedback,.custom-select.is-valid~.valid-tooltip,.was-validated .custom-select:valid~.valid-feedback,.was-validated .custom-select:valid~.valid-tooltip{display:block}.form-control-file.is-valid~.valid-feedback,.form-control-file.is-valid~.valid-tooltip,.was-validated .form-control-file:valid~.valid-feedback,.was-validated .form-control-file:valid~.valid-tooltip{display:block}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label::before,.was-validated .custom-control-input:valid~.custom-control-label::before{border-color:#28a745}.custom-control-input.is-valid~.valid-feedback,.custom-control-input.is-valid~.valid-tooltip,.was-validated .custom-control-input:valid~.valid-feedback,.was-validated .custom-control-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid:checked~.custom-control-label::before,.was-validated .custom-control-input:valid:checked~.custom-control-label::before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label::before,.was-validated .custom-control-input:valid:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label::before,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label::before{border-color:#28a745}.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid~.valid-feedback,.custom-file-input.is-valid~.valid-tooltip,.was-validated .custom-file-input:valid~.valid-feedback,.was-validated .custom-file-input:valid~.valid-tooltip{display:block}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E");background-repeat:no-repeat;background-position:center right calc(.375em + .1875rem);background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-control.is-invalid~.invalid-feedback,.form-control.is-invalid~.invalid-tooltip,.was-validated .form-control:invalid~.invalid-feedback,.was-validated .form-control:invalid~.invalid-tooltip{display:block}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc((1em + .75rem) * 3 / 4 + 1.75rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-select.is-invalid~.invalid-feedback,.custom-select.is-invalid~.invalid-tooltip,.was-validated .custom-select:invalid~.invalid-feedback,.was-validated .custom-select:invalid~.invalid-tooltip{display:block}.form-control-file.is-invalid~.invalid-feedback,.form-control-file.is-invalid~.invalid-tooltip,.was-validated .form-control-file:invalid~.invalid-feedback,.was-validated .form-control-file:invalid~.invalid-tooltip{display:block}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label::before,.was-validated .custom-control-input:invalid~.custom-control-label::before{border-color:#dc3545}.custom-control-input.is-invalid~.invalid-feedback,.custom-control-input.is-invalid~.invalid-tooltip,.was-validated .custom-control-input:invalid~.invalid-feedback,.was-validated .custom-control-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid:checked~.custom-control-label::before,.was-validated .custom-control-input:invalid:checked~.custom-control-label::before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label::before{border-color:#dc3545}.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid~.invalid-feedback,.custom-file-input.is-invalid~.invalid-tooltip,.was-validated .custom-file-input:invalid~.invalid-feedback,.was-validated .custom-file-input:invalid~.invalid-tooltip{display:block}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap;-ms-flex-align:center;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin-bottom:0}.form-inline .form-group{display:-ms-flexbox;display:flex;-ms-flex:0 0 auto;flex:0 0 auto;-ms-flex-flow:row wrap;flex-flow:row wrap;-ms-flex-align:center;align-items:center;margin-bottom:0}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;-ms-flex-negative:0;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:transparent;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:transparent}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:transparent}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:transparent}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:transparent}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:transparent}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:transparent}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-toggle::after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropleft .dropdown-toggle::after{display:none}.dropleft .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty::after{margin-left:0}.dropleft .dropdown-toggle::before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;-ms-flex:1 1 auto;flex:1 1 auto}.btn-group-vertical>.btn:hover,.btn-group>.btn:hover{z-index:1}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus{z-index:1}.btn-toolbar{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropright .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-left:0}.dropleft .dropdown-toggle-split::before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:center;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio],.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:stretch;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;width:1%;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label::after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:-ms-flexbox;display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:-ms-inline-flexbox;display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;z-index:-1;opacity:0}.custom-control-input:checked~.custom-control-label::before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label::before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label::before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label::before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label::before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;pointer-events:none;content:"";background-color:#fff;border:#adb5bd solid 1px}.custom-control-label::after{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:"";background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label::before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label::before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label::before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label::after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-transform .15s ease-in-out;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-transform .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label::after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label::after{background-color:#fff;-webkit-transform:translateX(.75rem);transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{position:relative;display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);margin-bottom:0}.custom-file-input{position:relative;z-index:2;width:100%;height:calc(1.5em + .75rem + 2px);margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label::after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]::after{content:attr(data-browse)}.custom-file-label{position:absolute;top:0;right:0;left:0;z-index:1;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label::after{position:absolute;top:0;right:0;bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);padding:.375rem .75rem;line-height:1.5;color:#495057;content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:calc(1rem + .4rem);padding:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:transparent;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px;background-color:#dee2e6;border-radius:1rem}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label::before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label::before,.custom-file-label,.custom-select{transition:none}}.nav{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;padding:.5rem 1rem}.navbar>.container,.navbar>.container-fluid{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{-ms-flex-preferred-size:100%;flex-basis:100%;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat center center;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-md .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand{color:rgba(0,0,0,.9)}.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a{color:rgba(0,0,0,.9)}.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.5);border-color:rgba(255,255,255,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:rgba(255,255,255,.5)}.navbar-dark .navbar-text a{color:#fff}.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{-ms-flex:1 1 auto;flex:1 1 auto;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-right:-.625rem;margin-bottom:-.75rem;margin-left:-.625rem;border-bottom:0}.card-header-pills{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img{width:100%;border-radius:calc(.25rem - 1px)}.card-img-top{width:100%;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img-bottom{width:100%;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{-ms-flex-flow:row wrap;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{display:-ms-flexbox;display:flex;-ms-flex:1 0 0%;flex:1 0 0%;-ms-flex-direction:column;flex-direction:column;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-ms-flex:1 0 0%;flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{-webkit-column-count:3;-moz-column-count:3;column-count:3;-webkit-column-gap:1.25rem;-moz-column-gap:1.25rem;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:first-of-type) .card-header:first-child{border-radius:0}.accordion>.card:not(:first-of-type):not(:last-of-type){border-bottom:0;border-radius:0}.accordion>.card:first-of-type{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:last-of-type{border-top-left-radius:0;border-top-right-radius:0}.accordion>.card .card-header{margin-bottom:-1px}.breadcrumb{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item::before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:underline}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:-ms-flexbox;display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:2;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:1;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@-webkit-keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}.progress{display:-ms-flexbox;display:flex;height:1rem;overflow:hidden;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}.media{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start}.media-body{-ms-flex:1;flex:1}.list-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;margin-bottom:-1px;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-horizontal{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal .list-group-item:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{margin-right:0;border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-bottom-left-radius:0}@media (min-width:576px){.list-group-horizontal-sm{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-sm .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal-sm .list-group-item:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{margin-right:0;border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-bottom-left-radius:0}}@media (min-width:768px){.list-group-horizontal-md{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-md .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal-md .list-group-item:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{margin-right:0;border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-bottom-left-radius:0}}@media (min-width:992px){.list-group-horizontal-lg{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-lg .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal-lg .list-group-item:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{margin-right:0;border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-bottom-left-radius:0}}@media (min-width:1200px){.list-group-horizontal-xl{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xl .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal-xl .list-group-item:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{margin-right:0;border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-bottom-left-radius:0}}.list-group-flush .list-group-item{border-right:0;border-left:0;border-radius:0}.list-group-flush .list-group-item:last-child{margin-bottom:-1px}.list-group-flush:first-child .list-group-item:first-child{border-top:0}.list-group-flush:last-child .list-group-item:last-child{margin-bottom:0;border-bottom:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:transparent;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:rgba(255,255,255,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:rgba(255,255,255,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translate(0,-50px);transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{-webkit-transform:none;transform:none}.modal-dialog-scrollable{display:-ms-flexbox;display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{-ms-flex-negative:0;flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered::before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable::before{content:none}.modal-content{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:justify;justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:.3rem;border-top-right-radius:.3rem}.modal-header .close{padding:1rem 1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem}.modal-footer{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;padding:1rem;border-top:1px solid #dee2e6;border-bottom-right-radius:.3rem;border-bottom-left-radius:.3rem}.modal-footer>:not(:first-child){margin-left:.25rem}.modal-footer>:not(:last-child){margin-right:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered::before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow::before,.bs-tooltip-top .arrow::before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow::before,.bs-tooltip-right .arrow::before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow::before,.bs-tooltip-bottom .arrow::before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow::before,.bs-tooltip-left .arrow::before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{position:absolute;top:0;left:0;z-index:1060;display:block;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .arrow{position:absolute;display:block;width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow::after,.popover .arrow::before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc((.5rem + 1px) * -1)}.bs-popover-auto[x-placement^=top]>.arrow::before,.bs-popover-top>.arrow::before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow::after,.bs-popover-top>.arrow::after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc((.5rem + 1px) * -1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow::before,.bs-popover-right>.arrow::before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow::after,.bs-popover-right>.arrow::after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc((.5rem + 1px) * -1)}.bs-popover-auto[x-placement^=bottom]>.arrow::before,.bs-popover-bottom>.arrow::before{top:0;border-width:0 .5rem .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow::after,.bs-popover-bottom>.arrow::after{top:1px;border-width:0 .5rem .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc((.5rem + 1px) * -1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow::before,.bs-popover-left>.arrow::before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow::after,.bs-popover-left>.arrow::after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{-ms-touch-action:pan-y;touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){-webkit-transform:translateX(100%);transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){-webkit-transform:translateX(-100%);transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;-webkit-transform:none;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:0s .6s opacity}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:content-box;-ms-flex:0 1 auto;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@-webkit-keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid currentColor;border-right-color:transparent;border-radius:50%;-webkit-animation:spinner-border .75s linear infinite;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@-webkit-keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1}}@keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;-webkit-animation:spinner-grow .75s linear infinite;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important;border-top-right-radius:.25rem!important}.rounded-right{border-top-right-radius:.25rem!important;border-bottom-right-radius:.25rem!important}.rounded-bottom{border-bottom-right-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix::after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive::before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9::before{padding-top:42.857143%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.flex-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}@media (min-width:576px){.flex-sm-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-sm-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-sm-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-sm-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:768px){.flex-md-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-md-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-md-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-md-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-md-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-md-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-lg-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-lg-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-lg-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-lg-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-lg-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-xl-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xl-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-xl-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-xl-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-xl-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}@supports ((position:-webkit-sticky) or (position:sticky)){.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:rgba(0,0,0,0)}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:rgba(255,255,255,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,::after,::before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]::after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}body{min-width:992px!important}.container{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} +/*# sourceMappingURL=bootstrap.min.css.map */ \ No newline at end of file diff --git a/docs/4.3/dist/css/bootstrap.min.css.map b/docs/4.3/dist/css/bootstrap.min.css.map new file mode 100644 index 0000000000000000000000000000000000000000..af38b681358979fd4ea378b82df1082711bb1c8d GIT binary patch literal 626103 zcmeFa3wzthkuLmKcqTdLBrC}xb(eR~ejz|gmT6f-%NmU*lV?m(5DD=DUPaOK?0^5> zdaE0a20>YNCfRJ_JQ*44>aKfLS6=}A`rSh`na0WRyO+D0-%XSGq#aGad-><@UcA`G z|EKNgbo(YrX4BcEHF_bxez%#0{W1ZtusxDt7IGU;XWKrm6;uz=@HUxj|1!Co+F_3J zO7B7Z7!Rl0zjPA_VEbp7{$;itMFs74Tpt{zbh6{(L8}uLLF`C&cmnfHGP#W=Ta(sp zJTJoYOFOwO;_R2sB))wD?`Oa_lc?1jCGoIOEX%wg*}9vw2GJs!^a`l`GHc!RpOl{+ zwkFA<X!Kn&859X^>BEhN(|87lD;RA%eGW-SbQ={5`peCHHcN(2@vy$fFOIz;1i#!) zlF@Clc#8LSYZ9eypYbaz+pzVpbsIm#aFGHH81A<^lVn~PZt-w5pREVC=hIm-*jlH+ zUqHQxDw=Ovh5SIABA@(4yzRC<nGbG?@QqrXc-Z=km7nbN%T4RHQxqjukL%#S+=HiN zHYs$lUt0ZW@|1Pf!G9S|lFlTW7J9`Xx{X^!YLFbW)>c-KCp-Pp?kCeCHT*J5T5A&6 zAh~Vzi`bbZNq-g>xs~Mw5=OJFS@c+>qhChJXkD^}n<VpTR7BR|Zug_s<Su?J;%qvK zheOOm1+e)n?jv7BNcF9L+<7YWZd&c01kUhw>!CG?Tf-tLGWcBor|D`!{|s}O;YR(| z@@Y)b;3g^xrwmhf{isMqUXP^p8Og*<cm2W)ok288)@I^NuW5S{MMDYqVgp(GYQHV* z__P|P-4?RwXB0Y(KgGk&XAsShY}?)FcB>x`i)OQ|9HUnIvk2F?zLinHTeHc0*lx{= zqSEUZ4MyG8G%ga;>(|9x@U)l@@ie}XFeq{_q$bSyir_Ds-wiRfO96++L2HD#>fpEU zs`%f(%m1ojwYqs;Jw4mJK+|SZeq0tjIp}!-)Qunl{%|AQ69ElD;MzVYzO(A)Rf^fP zp`UAWBV5}Pbb+rE2*SGj&_}ZV)Z<09ak9DOu$Byia;lp>{?12I<`YrzN%8TKlJV&} z9qon;9G=XW*tMcVSlwK(p`9XdNF7b;k%ThCTj`LiFg)3;hvPsDT7yAr_d$J=JY82$ zPc|FXu)awhUkgP(p{;5}=i?sP_)tARQKukrqM#viKgi^nFwhj-<nO$CWk|7eJtgHB z{X43*-Z?o_Z)%(z*I%p9XDLs7qKpurs=A^cRKbnY4=0<`;MFT5+lT7q$>ynuN|k(& zF-}V3mM!T5l@$N5W2qOK`@DJqv!zHKpb`FbvRMvla~SkPwO%*wd?i%XUFc<GKwZoH zZn>f)q(P)HU57SPXK#pC&~og=?#9+Yq0t!L2au<hfQQp?B0p;j>s1+61=D#r0{mRq zJFlMLM{S9ohCbj_9I>8Bcm7H!hY(N~0KBtq)e1c_lF4eF3|v4V#*Z&Zwmz~pK07%$ zdA)fSR=~$uZ4cdOlgs+{NnO3*>?8&SLko;XVyR0(12;Zbsu$Jpt^P{ahJD_ueVn7H zx-*{g;cUNwD0scms6%)S2%CSds#mW!j}YanpvKwbo9bpl!zAJBoi_zts&8LQkE=6{ zuX?y2yp~uN5z!8Dhxpm3&4HhSQKv-tHA$pCd7bKN`5M|3&!bn=tM#gyvmsAZZKK*e zf!5H)#DOyy00^(Tsu()0ZZZSVl5hZH8v<yB3qb`}uzpUf&^swrwj*#kC6hPmgZSwa zr-Gk=reXzy%uX%g!#Evs969H&b%{biO+Q+mBsq+~n#c(s>KIrnLj~vIBNc&U3rv!6 z_nam`h>SPuv+s>Yn<tC!jrTRh=PtsEVBsi}J<`?-wo)?<NylKuV3AQL5P}*NacUdD za#202Z|Y=o5gwz%0p}GYbaXigYB54!8dMv0$`9{P-fnh6fo`x*C#;PTwMY#>M5!6y zYP4{4a<Vx_E<z8aZ|f4ANKD_elg&5?AJAck_|Of{F(|_p${2;d6hVyhkZ&7-m(_D4 zAwA8p;8Lu4!gNh_u!~7Jz(OZr4&;+Vpa!q^FU?$Vagtn`xqx}!Ig@cUSb=P6dN`fo z_hoo;3hjioCBz{gjnfCTw_k0b!Pp7PR7o4ByBzasfVsmoi6@Ft>R{An2xBmDJ||I2 ze1o1(5t#5v(dmzX#_8iLF#77q&QDSJfCe~gqxi?!==xKzW?}+Ir(#zV9Iy;^k)11H zVFtqKtIn%)&8HWq+ow#H7!5_3*2d|vYdx~9&C^5IdSF{GPWN5wo^5SHe<|J_+uAt& zgx2#{OWV+d3DQX&>|MVaSWx5i-hp5jBMk!M`qj}%%Kknkj1@uIY3VvWtnHMzPW^&T zZ<aE9HoA7kq+e3Qd~%M>Tt(&57o*pMAK?*ayVpn$ug;Czo}I$F%Ixc-Ya~m;k&I2e z5~o%!OnXtd4G;sEp{$v*Hb5x15YPpnDL{x@n+03d+R5f1te%}I7Swjo)~ow4WoUqs zlfHjdh5Att83$^-icFv8>5p$E0xZt+SBH3Hl%Ab#V7LiBh=#lYQR&*P`ta53&Fc`U z$OJTkPou5|o}v^TbF`_}B$u&|Q)ILLqv7bHh9tUzt1W?M^~bn#GUUpVPVlCe3f}0Z zoS#16vGHzRHv*qGC-5I56*!{SQGg3?klX+oGP9;Sk$iCeu3R(Ho;M#MBztCUTKma{ zXV`oVzLCx}$Gz)e22$CYT|BCf{IEO+k*hwkD!ZM(TUyPZH-%}Z`O9}@D_XPJ2h%zB zu|j$+<tN5d9IA#-7vU$7F%$trikyej`Pk;3$Xz2GKw5;y10=l;KN#g*ggapD%bLr1 zB+Xj&wai67eJM{h`2J=id~H_5WK=V)xR!}q2x;61ZIsG6%6aWVv=22Az^EgZdKHls z2R|&OoGu4f!~5V|5xPmXetI8DWd{N#+vADk`Gakr`Ej%C1OHXEJ{JF|K2WQJQ!(0y z^hfuV2yp$`AK~m2Vx0VjsCvHzS3}|Iw-d0n-w)2T9>J9Vq{j@9#^K9#v-+xwr5FUX zA$$kFvyuM6M&l_+2$;o9*~2dUL0j`jw#{S0Ai%!H#R&>F)=jRnfm*r*AQKx8y{cn& zDjG(nb9ArMVb|-1F|Fo?ou$Lh)(!hgYF|0*pM}Y0fw`ZdlHYJxv3FYMYSgiNh%C1V zv;g3C$GL<6%E-q+=Ad~2=yVc@6WdYrSdPLIM*Rzd5W`j*SsjWtz8rKu!>E(@@3aKC zs$VuUzh3*lp83D#pt)bayz_O+22o{x4X<V9508;fxysSaEV=?c{5k2AOZ8kfEOyv6 z>GY}~zMhdzi-tWTEQ^LcBU2R(`$}qGIqaW>$?F1hKSL$I;jm)w^wOzpD;DJf$*0l! ze2P?SN9FVBzaVJMoFw`5%R!P)TWKPzOU87+GQGNAndaQD%$V-i95naqmv?TbToIM~ z^~1OH$|(3}$z1;<=78TYPkv=q{+3=bLzwkvrl9`KCx9={p-*JqZ|Rk(ia&}S_*?Z# z<vb%P6y?c(mO0>CdZicqE%VxMo+!T#;kWdP&4Kc_&4GWG%vF??zcQJB<*;XH@>_cS zmR|owHU~}*alYyfqI1W!oM4-`OF5UnYVU8L`n;+(%`r2N+9O$H@KOlFk-?>-sz30E zxP7MQ0qo5q(`=u+*K!wNfD^a;a3T77v(@ejQJlmZqUTlI)X|gY{L%jH-Z9u51nt9P z3;|kuw<$yL_TU&;mqEKPXmPjc`g{|28AXQMqhs9j!@WG*QW^*C2SG9pZWr?JPS746 z<3yY!>s6e#FT*Mh`1PVeC-`w2r`CJH^$yyM^cba396S$k6(qXb=%N!&1#uwX3!+N5 zc5Zq!?|O0Vtz38DZK`M#<0!lr+>K)lSOn3hZVlT^!esNOH*Yt4;fENf#r9$cTE^ks zo**BG(Xd;)N<sU<J3QZw?*W69Ae;nI_dY{-aSy_{gapC>RqjDJ3GQ}eKskuEV~=pM zLU<nD^`!4Sj6TIV!qMGM51>@wSuaEPsFxME+gE|(J_bPGNzbEODDXm%L*VWE9NiCh z@c^Jm#Eqi;euio?09BkWK-wsp$%TXHZZ4h2LA2ZVXl?{~CHKO+BjK+XMw5PyCeRE8 zWR2S&W~i2jSy}goD(is^fUNgJk8Yu?iS&i6yMr9v_T51O5L^Mm#zFL$WaxHApj)Q2 z0QE<p3uhRNFkl`;4~a)NUa@Tw-jxM;5=Qq)j&AF2Fa`*52)dmhIv!={PRF2&(1Ml$ zdK`mpC%9Y6fN2mNjy$@Z6}p4)t|NU1Ve~M{(fx3@oB(8OJDOyu?oBebJ)Y3E8`2rJ z9Zo!&g|?kaU)c6=oTJ&k+n55B>bNpZsm8%ixKrk-4&4xt(A`)DL3jI;6d&$B9@T%4 zTbH<$#x%inYXcb>LxWr};F32|Q$CmQcB1Ljc&j%{RuJ8G#9g8`oDhC~JCJ{n(Dny4 zb8V|x{r<INo9i^8{fH~YwQ48LD%0S{$=Pd!_4VG_Dy#G0q>GG(`_wURG2#6JWIbL< z;l&rnk15cYKP7veSKqvX8&@wInn+JiD!9J)kA>#ouNJC$`-3Eci{>+R^20m0UA28> zCYSnQ;|JUX!sU=6m2v{o`?Lh}$Hm?FmANm~i2ArEhoz>Ol-*O_mFRkMz{Cqms~6?o z-PntAm*9n_q~md0iofEHSNe(svEUl+JgmKWz1a@W&vnRo?JaZA6f?Z~dFCaFdKZ_I zFfRdrA$O!lm#3KZDlXHLGOJVfgM$+|Wq`aBRyRP);KQv|GgPip;db*{7;et5g~4Ul z!eEQFFvKwQg860#rGt%f#}Wbzm@iUh(~6-Xx9bK$HyD%=x=GLp?&T^VCCP>uUaZkd zh*lOwnim-Kk;PX14wnRZj@^vf_O__pC)O*N90_l=BT;oE>CL~W52YCo@<+&ELu(M+ z9YEoR#4g@NFeC743`Ae!$LvGXvVi21@+*i920Z2c!g&uN{FQFP8n0gc0YvGS_=(EX zp=76e^@Cgl6s8zRm>fYvV@OPOe)nT4Ny`fI?g5uhiRiq!1Dj>WW0JGu$xh>L=u|OI zRq<}yVMy=_1!_zX19AJlU84%Tm=-Kwe2aqD21%E%NboHf=K_oaz9PYkWCR$c0(Z8I z$FJrd19+tx2xaF+^)+USZm?Lw(H3yD?h=y(iL$0=_cJNE$qnyU@K&5-gk5+MUEIjN zVIz7Wi|#JuWffO?4??-pYpe>Pb&N4n>SM$X9|P+~FrcHO&}?L#>j@HfHzqGc9K;k> zC}fp=OvbRnlYL^S*LQIRSR;sJs24S4%KycE09R5Cp2fio&xU(&8~Fm$2Z@B}$d^Ox zjKDTZLhY!Y?t_7SDXAF;_qZNPCTRx8lV*`Y@WU<`q1rC4I<TFlngJFi=Bg<yV!Rgf zGy3Yl9clzhr&FLAnF5c77d%PC+V_;;kZ8fr_pfD%fM+DvR$4=#pHVF!E6KPY>}=Ey zLQDwNa8lcxhP|M&4c{8n`oVI$2Fv4e?Q8>e8MT3zs!)=ILS%z+LD`gb<&nw-d+0%R z;1SoEwE@X{Rc@hdSS-JmVKe~8I(bQvsQH7xLP_Y&d5%L|Z$7b4svEqFWx|=SWVK`{ zv)Pln>1@=FLdjI&tOgbJg8dEXCV_6CHROKiX7@PNO+Sb?YQ5U#9{N{mP!pkNn+x<W zAEW<Vbm{twVi0KH1YwOFqYm2-=Et>IhF8N+wav1{GPhW!z|!}zjBA1=#%p*MOBLnC z0b7^#DrR{VxF00PwLxtYi|X*Ows~Z6?^xVr;66S|C93{}xsN^*pHyWrt7yXE>$i5I zto3jeX23ppooRtSPiPcJiWqnz%pROn_fmw_=3C(j%{$bD<+gm3(<gXSeI6VceNHmm zz5};b6D`YZ>RrzF`9y8QXAfVauwzPeIe;)`2nzFLa?yFlrQH9<?1Fg?Dnw#kjk0WZ z8NU;qd_{Ia$cu@-B)d!pb>EjKL##r?my;ph>lI(VAJntiMI!<)y~3B<l!v+QsqBI& z8hlNQ<o@dH0wn?G^Ro+zR`f^c<Au+bJbpgA?DXq?ws;soH<B%&HIps+sc!ngUcWxA zZDJY;k0peWOZw=)hyLR}`tOJ?U4O|g*_fhFH~T@aUmtrJfLJ605Q}7h!(K{Nu*?}# zh;c8wY_N65%Pt$e`n-m;SPk#7GX_k=y<u@9nuAXn+{i9-#^T_~?2=}n=VTY4g7P== z*(D~o$cT_Z%>#LRIemgR)#svT^x4gDi|mqW;<?%7WR8sl_j)Qz1(#;%-X>pwY0hFU zeMBM%r!rGWp)Ny&<Lx1uvhn)(T((Bf#xN0zu;|<tVRSzHU;<mgg3u>jV%CMF+w-kg z`?5F-a0k2?-E*(*exYcVsd{x6^s!j$goZxf{8fP^YZ-C+*aAkLo2R|HLEM4O_D~x? z#&~T5DPa#lGjJc>A(ZTFQu{eOJX=SO5BgBOI>Tlbvf>hm-3*|awJzo(Ar_csR)h!~ zN|hVvA&{VOi|glBJUh}E#<Nzxj#u-->KFs4=hL(9)mt&QS$yI>o8rZp&Sn`sf*nn) zOmtd&@=+awkK~fRq;R*kqpwmYAHpfN5vg1LxEKXxyTocF!DG6{y6M|`_afb|Fj|Gs z<S!J(Wms{I)Es$oZG19(a%1BZ8yk&R>Bhz_-YL6|gJyQ`!U~5|4GzDqCSaC~XKe*G zXhi-XlhD-!qEPAW>W&?BR*i6QFbZOMxqJ~M!S*N2!1Ss{^%53GX>H2k#z|GScSXcz z9ezrYkd>u~3g9?~&Bn=FtAl2}nQl1h$_rx=?^vIadB>v1C$=Wi;up*q9mC#+xHy3l zmzS9FA|kN%YLj5R1Fi=68c9DrB+1ymDX$HgVInJsEikONgXmjg*kJ{8#}kazupb&d zOCRHB=>vrgILFVY^Z_vRp^Fgw{JcJ}%L=Rs1e@<cA7cnM+Qa0qszy&A*ayO}GKM94 zGJ{~)_U=>qz^nPt$KTyQ;67jLAIk&dAG3qc>%;lS^uYMX{lQcE7*HQq&+?DXv;0G2 z9Y3G)55zUM^2B=3&FB3?3#$!$*ktDj`sl#Wk4K-^hptY>@Q=k2^fAS-;n7q2Nb>&C zd|v)&{!Q`+OWM!mkAn^4AC(QO4{w+kFU~*88^%8-8=u$5hiCam?^*t#lQn)m<sTX^ zX{!0We`vWG!_XTYc{d-1-j`1reI|cseL2Uly$()p78v%>Ie8+VYP?)KeLUeGaYi5O z{X@-*pHJyS^Ql%2_-Xaw8QPm)uxLSObs$(QTV^o?JC3bBykVYyOgU_dVMj6aF~_h^ z@l*QHeEN6KA8?<q%^!n4^db49+qe2yKi|6i(UH$qNdDOEJ*AIcP`gH@9LT%z^gZgj zCB{I}(MMIX1Fw*y-&N0a21MC`k{o036SiJEyCY1{RrlHOv%oDrNC!7dE_)DOX31Hv zP<Y1zij5BIn@)WaU>NrIYnYRt6du8`kJZHd3F!}>C%tZ~;^$M+BPbx8?gQZGI_dZ5 z(|hpgrF_xjK%^ghUiu!T?}_vSNIwwi2Tz$Ep&-)#<Jvy4wog7Uea7~QwSDrG^v3qR zCv3lXp6#<$<66&063hjOi#E-u^n91!mt#mT`F%G2y!5(}dmt_|hV(}mHX1)AJ<5hJ zvb~pqUC`x3S}XmR$Gv>8hH*c&(yw8`kNc^${q!m6jqQ^sY+rt!?R8@jKc9+wl|Gvy z3T=-)eq_+47;z5i%VPVvmEKGF&H#{Jx7jvy7|zBe?&r^te(;3!%dGTk6c5|$b~1iG zCB0@n{r)6=uFHC^(pxSdy{r^x3oHE^79jl*m3Ac3FJSu(@%+V8(wnUJ_lkQ={J9`0 zw0$P-mp1N~R{Hg}&&2)G#{Kds=`r2k<1QhOnz?P`jwPvMv+;2s3?;6DIGB3&Qt*{r zJ4%;L_`;8EhF>xTG^#h;afCa=_j}j{aY9Gp<c;dJ?a&PIZA9*@uumhiFVrmF7drp2 z#APiY2BK#8-i+q{*ZFfs_v8aq=~fs|Zk4or$_HB_wyp)T=_hCvfr~O|54$$qPuRo4 zulQ`1j;POY^nL!u?j=zSZZ+}Cv-7Zl`&j31KG-`njh}cbhT&!_38N7nSO%Gq_&s+% zPqDb?qzB<|aIt|pCV;eX%S7($G~}yjZ}4Flg3s@Ry(4^AhToXGk}G`Ia~v&l4-S_Y z%w8m16O#{i1?dYHVS+C=U^;W#gs`ZB{4GJUds^+{T8S|@Y(Y)7)V%x^Ke!dh-7v~v zb_yL-3QH7%mV<h&f{oZnes{a2Zo`}65|Pmt*mF<Dh-fnh#1={bhf!%9!D6XC3#Qoa zXZOZ57(s*V%TO?a0f~FknVRvaK3}xei93?J&?BY3h~!J2nEWA;<Il(e?Zf&OLI%~K zKjQ1O%iwy5k5=J6fbBrCZm8PH$wtWef8WsZ*D)*~VTF*00cU69+gA0|4At2Tx1kf% z&d>?X$j$#JJoFPbV`)C(SnHgsJMr-q4?O}Y930{&LG>Co(q+Ck{1R`@vNV*V%5lx` z5ZJLN|6I=dmUF|K4JOLqG?Ig6*_ZFe;-W{&dG!#t^adf0_s!Nb?&0y&;|pXV^(KxN zu^0S&S#X&Ly*qX{oY$c8svu?_XK;q#6HR<tJ;o}<#GuO@&}P=0_>~@#)kh4`<!XjC zUG)dC0Ip7$QzCpCR&MxKffVfFCwRh7oGjyo17}m?jaa|;g8H%jNGMG}kPAUg(c(sA z*PVVePkK0;i&EofCmr;roWw=39ch{~H$@XQGZdj5VOJ2qMKtwMFnYyJZ^$#o%r!vH zC)(^R|N0nvDLS-ymS9#)&jUKRI_S92RM&Vt!5%@jd%EzM+wR0}W_a*o*}`iUngS{4 zxqML)AlSwHZdE{%6o|G&dLH362h($N8ccDa!^vQT2PzM>MU~TL^R)5?pChaUdsEzW zPH^^AnZlB8k|8IirVuA!VpmVB1RZ`S7K27JjD|XJ*V7H<lg=kHk{-w(nYKzWm|=F= z2u}Mm(47YJAgux_!FY!2)5vOYO#Qh5THQHl>2)yu3G4Lip(_s6aVn6ikjkJ4%stc| zS<tCXJd$lxpPKVpZt)?Jq1s_<qY_Mo#YI>Sz#~HfED|$dWPcB^2Z71;j4r}iJ%FL0 z`#<$}dvhQ;K*vKxg6|gMItPn2_R|$py%%&)JfIz3K-PGjuO$k+lsfDvs03xP6*3sq zG8L|5t|mYHnz*Jmj;PDE%W^1#HylPfBjLQ&xB{o65q^Q=J?ls619TrXe_HuaO{CAS zBa>_PQ-xlLLYH8BZvwW(f|H584*><1C(uh=D+l)?6|TsjZq}q`U}L~$0_)VV@dl+C zjS79Ew08%OKr%(geMJH*fJ8>S#vr|54vox3hht#uiQUHNNuKLqaSS|S&20fM@m=*; zn8qpux=w)q(-?0yI2WfcwNp(r!cVy0MfY=k=zh;|L~1qL8S<$I?gpI-Y9a^=F7|?* zU{nE9JHc)+kcV-&6Fin7g`@eL(320e5<k96Z^EFy8!Rf&0Pg;Pl6n{>iu4)Q!805N z2~XS0pnWV%EW=$KW#Rz`qUeKTK>Qrkz+@R3(`eZZmhwKtv@Wn7MjpxlOe=D~nv&Ns z7t0o1RX#kcExW;3SUN!Whh22v3x`2e7-0uH=yxP&rQZSi3Eqqo7;hN_#~^}Vjx3R! zb&P*A+u_GWbsHghRND>8dq6y{H+OfT?bR5U8|}ztwRMEw&3D0J0s}tKZd~+dEe>Lh z-C#$Iy+p4==><ORZC`gW8HOs0RyNRUC`v?n#A?cFY(vy6%LfJ&R;+5c1<XN}Z@_gH zG7Pt_0L4!jWC`e`0>RW+k~&a@%Qp>~3y?q`0+~~)Q-14E5_%IKi^4+QPFSB)BiJE_ z{E?Z?kYQmcP05%`phIHf{O+FUtIS<Y4;)V@pUnI#A~W}7YK&p9pI)7Kw|4}!&EX{b zB0q{8S%niJbPBzxPN4@?j=4v_6orXdMBxM;p#|Q|D8b?p=PjU&$iVX)itJWEl5%PY zSArWmVdJ$!E8sBrlwO>F*V|Y_y!`dVsfzOo9Ntlv`9-xl3@Z532h4rvgWw1k_r);~ zZjz?qSRw<VP2-e{6Oj_PRZ&ABC*nD&?*!Xr445PS599%F-92us36FuCoulKCbVQWn zC$6XgP47fdVxtew(|U6z2v!3(0eAM@SeNUJmNC-#g_*rzFr7)+Ctt-Fw?-#a5b)s~ zN~T2)guHn9wdP6!VUweq?`K$d8Q;5vU2#Gqw|&*2s)%P->(CJpKliBG7j;CDy-!!2 zNjj=m<=&5ai{Q^Vw34dIpTWR6R?ptfYF6bk7q+^_VKeQ1^=?HPo!kT`6Wf_cgXG}V zY77?!5~nnVnNzIeiVnqEin#d1e$<xo%tm%J7@&r;s-#A25sBDN(O*v15u=WoH24+K zP_#{ae4S$hf15?h3<`gd1Y-o(9u_wCwc@=u)$ef^?4+7rNPK?}y;xHw=nkipx>B2# zXT0Et%UW`mQrqBAaxHuB1Q(hzZI@_rmvEtO-0#6F)waj<ton|W+qMOGuz2Pw$e0?h zH{v#L<6Mho=6%}0tt0SPO48c(Jqbb(iVtisHO(lyC}xre$9SYw^if5?x8N<BABXtM zEL5t3h=IRTwd5?<Mrf`L^MOob@`G8%nJL%tE2#YD2%UHy+uS$2-a$g#3xBM<wp)kS zWmI<zRBJi9x(?OsLVv`gT*gdrHy5$0a-!{nu`yjZcRQ1YL17CU5uE#Ru^T+1^3^GF zC)mO6tEO-n;GS|m!g!{L&v`$DvRI>7U!g}S+EK9k*6!XV!O>g3VP{Qkmcn9n;}r7h zBm7Ukd_dQ6DFv&NCyv6AAtk6#(1`M!M3ytjd3wHrYpe@Ya4scjtcyx)=L+UJ)M--a z<uNr`)j{P6meN!=UsBU@hB#4qS?yAjrYuAo1v=jiy07iDx)UVujm%)MXa{psgM%|W z!7ylMa4dJ(3g)2oUP4*9-jjG=nY=iwQe>Bn)x9Vh!4$e)g&~oya5>tUi6*RzG2IU$ zgK_ZD3*6yqyZ1eBW#t7soAUFrI)wQ!4=!MNl7LoFOXk_6XE`?c#0-(;4Js^*4F2&U z=lAZ3T+-F73s@AMC+}Z5Pu{@WUof@Qfw_q($K8tNfSLl*tb}U9Wg~ykZ;H4h^zwZL zJ8#Np^KuW*?Aja!hj=y?h7pKbsVBh#Cq!6rX1C1=68#!}$hV^9b`3!5;}qLJu&Vv! zNxh28`Y2;R90i3%47JD~oD`gU@X7kfPsf4m4Y&R(BsV~^5meiM6_Q&ZK`IgBssb^K z^RJ6Z9YS_peDH~`-+aIQqccqW!I%KMhkZQLFpcyQwska{`luMjQf|UCi4pxiT#s>* zkui&ce(VA}K1tAniIechdwd^(fb;7Zcae6&_Ye4>fpwQTI-y3G+SKOcaGR*^6ebfA zd?bG#M!^t&GDPK3&yuu@e3;kF`%ma+DevG}l{pIb)A4_uJ~r@||5oOZA1lCa^wC+- z$9z>E;J$-R`yBUQqL0ItuMebg|28)Tcb>vfqcTZ_@q7M$cH^|Qz_ZoXCp`Za-m`au zJzK`~j}Jg;RJ088F4I|65d=E$&d<r)XH-N#QkRh=W8@v8M#ef~fhya$#wh6CS_##k z06zenBdE2s=PcI~zMSBXY#DfU^a>kAm_*P-4x80Sv|vkWFVksXn>zS}hw0Qklg|fL z6SP=Nm|Bm5{UAP;H7Ao~6bJnyprH!2TP{=$zg|eI!mAR#da!)Gg9V?UUdZ7`ih6j2 zZ&hgAe!vm~Qk$IsP40q#noviOU$v}DHA|l&luw2(mZ|PVc-qU%J%X<iz$_X+9c-}T zZh{Raywd^B@M;}{g0UZ^EEuKX7=oxtGc!-hAH%}jfZcAxD+*$rD>%^g{4l}F9Dc}o zhI5{7j$ORL_o^_rg2gh}lI^&b{Ng6aW)(;OSQg5cSsaIIlZ@9L27_bRdJrB2lMU<? zpp=pFB0qw9%~5DnE6Dh8`wa|GT~2s^Gqb;7w(`co9*$DR!6cX=i%{l^F>ZRu+fj$O zHbBDQKnzUMS&x=)2tYX)$ST6kjC3ti*+6yzIFQWXuNaa$j5Az_f(WAZQ9Ri}bQ9+i z7eWz2U?la~sA5%s0t9Dt>KUP&+r#23#o;p?kv>8zvomc<g%Gtm7x%rDl<?S)N>cV# zH)0&0ErX+A7~8X)-;5$eX7NL^td5DAD`fKQj!PPcf!vLy)|v-_e9*_Rfml(gP{HFF zRs;L8Ejxg&Y~a{WLXc99f1SCh9-}Cm6^mmRH5Rs*P-9Vr?9)=SqV|L@<C_C?8mifN z7U*+Dkdu^=Pon2l)DVai@T{KWav0rf)pL*lSL}*&LP%^=6h*o~v>{fk;_eYXl%ITO zLNlKPX2GuAFuZt!zt#tlq1P$&nxNh474KY1m7Kk&K#3_BQ92Q+4=RA$ON<J#rF=@p zv}nZv`@tiQ@b_>>uU8L|RgQyl=j;`-#!)cqoHg^>KkWx2+ys(4ee(B2p)aIKT8NpA zG)T?-3TlLsU8Q?n{qdE|f$fH5S@6KFRPtH%_Kg&1ad2VR75BmSa%?h2i$P@F<{W!~ z-;?7(yuz_#<O0VdZ{##S4jUTes$;4slI_%0PZ))7WJX-r5$F9tKT74al-wJd-TVI` zS~}>haQrvd(ox^gtn~kfXlXuN;rMT&C3zRXM%*GXG)Ku=Ey*3?f1HSm$15EF##*W# zhCd+lMkWJ&L3ZilPHGu>>|lZ^wSzo1nw(u}^2p92Kl~uG$RM~X$U?*52U*ZhgAX<h z&4Qog74R}zR?^TeU_vmS8G_qmOE9aHJ_N#IYZ_iXHw}Hl2(0E0?1)CS^#fA1R4>e@ z(QeSkG^zKE<ZO8S#zORagXz}-(Q_A7Eo4HzmGkGLH>P%ss<-bX<@SQ6L5dk*eD+TE zw~*lV5OfJG9*R1Fplqwo2t^`KOr=Ove$sM0;&o0WUHNX9PJi=@>IgfFQia;(cT{~u z3o6;N-L(Xt6?{Ag1HtD2d>*__`Mh{1gRSg1^PS;UV*PXVF?ufTH`5v-J22QUCE~56 zU>hG2!a4{@m+0F2-XO(H0O=uVD*Y68oQn7m9O6S>oboOp{wEP1C{ppIMrIkFimw}4 zEun%(xz8%As#F07ssNPssRGbVGys#P8h~8KSX(%o#_tTXjqvc@J181ufZKC>cBREh znf}iw-a1jku<)@{GbUI1EaQzvje~~(f0~?Le=!eG>|e@t6N*WErp~#MZ-P7oC<j)T zH1hy=mzRLb0t7~chFGTPG6z^u&*P8Z8o}xU=a03^0E&&*!?S-)n19nf67{g=VNpx2 zx#J5{1ERn02M>@l4)%gQwApG1wJtj03X>^ZVFg!AQYl;s8kBGjRUd}iA}6b~Dgtu} z)ye0rI7Dk5{izbp1Np2I7VJ2MGK&|xrA_%9%`7GM^eEv7ZUIX7DBKNmR)3b}Jm|>T z992NWIpt6$O6=M)TjZ{{=>wH39_NE(hOR(|;S+i1lUc<<N5*J&QO?edhu{H!nA~V+ z9_-=ZFSAqofUAdf<4_O=NVHfR;Lh6|U7;9Q&|;EOTD?pAs(VS_7=7I}ePdu~iN3E| zBFC&kFZ9pw%A$~bHHLxw!TKdCe0de{TK4@3px~6xmAu4At+6C0sq-q_AFSf=awT5j zN4d2xPiBqQtRY#-uks0fkQ9j;+oR18#rY_<1By3NR&n8;91M#jn#wG<3m|g`y89rX zg?&P1$cMqQA@N*c47WVk$9WQFA978XF;5dr<O5uwdBCBMUFSnOwQ&92cz~<Go!UmQ zeFUe(MO=I}*!J5F28U;uZUG%01B$CvV?fQ&>LmOLo5c^fNn*1V>8iif-wgzFjIp~i z7MHU&FxG5+YzG~|EYNL%;&MS!`(QR~POB{-<|IY=E{1^|5Q`RL`2wnB7vy|vRjAB9 z(u`z6Eki%i%*01VJ!6%>vZskLEQdkT-ehv8U-&!hd_x2?CXE8OmK#|}N#7e=){%km z_6^>ay0QyB=mdFBjib;FwW~Hg1drd_*K@NfLo{NBJwg_m0r~1K(L5M~5Egw)xCl|n zZ1#kIY9CP#LyHbh$tkq+cRo=$e9}bOd<?LrC5nqhAa|{KwSYQ4m#YPs*72GR@ljvw z%6Mfeae6+h;+_CrCzmg_s5P#ta@Pt?GL_k>L%uiz58bncP&1riS}zQ~{QxUYXKiI2 ze+<{Ki@$hkGL_4(<dfW)CuoJ!C*y>2yC)}r>VjY@&CMCj>O1a&Af}0tmUIKHRERaB z&$O;<R_~a}WUs>wbx#z>&EI??Vt6R#c(H@I*jWD*V4pKnDwtYe86Z&N@Kf-E4SI@d ziiTx?Eglq%?JRi`$eKUHu584>gU6|51ja1ikowMfQ$|~~4orxhTrg!5D7#+VhdY>% z=#x!wiK&;WKa;Nz$F&Ly94izJrb3;|1w9lRfa8{grZR$6Du9O=mZx?8H=(r?h)ST- z>}Hblt42SJu@kQISud2oU|<Ba^9r4Xc6L6<Cu;R_H+W}#IX&Gn27=piTqt2}_3brM z^PKuzM?SI593k`qtPn2x0j?zxc76-bVg$E4A<j*#``*g+fb>&K{CqMa(gl{8zp;!U zfH>$!%ExXnf|fKlU?l=~jlz2@2Uh&;K5WaLorpCJ;t-y@(xr;+Z`(uuQp7Vt1}_$m zkqq#cBGwaCUs^mt)b@BLQM}PAME^Sk{qTgGIw@inU8`K%<C${eo%NiYO!_9@tubh} z%hwyU{e+xa9E_ik)Ao3#oW_Y-j%HQ}%4xUqoo=&TL{8h|nKX?L{ax*eSFms7#V(uH zm@pX2CaTl*TJtbSqxuXNa#5WvgMBQ-uG0%09E>-MIMvzC%zI1>^}_%!3KMVrNEXD* zrY@~8wmDr;kuI&|rr{6AfnEAs90f=UQRanql$K0NCi^yd^}+JekW)s?7g(V<vPH|V z94kyq%_=?-ABD$A==%F8kjabb3vWqdN~4s#<%kLuG!4wWe2xYkhX|4~;(3_hLp~<V z;y$L|jHM6H<0#58giQH2VyOK*hM;C&MOqPLl-+tBBFun3BDq-SS?xDaQHUB+Ux-Aw zT$mie$U&rhzll|B!!)uAJguI5FWaBs<C*=>-lGgbclt2HfKRTV<rDq?;vr0sr&zUI z%tQHW7shA1VOoxKLVUg79famEt}ciX9}Hbatriumb7&9JX8Dn;f(+dUlyvq+gVY74 z)ZiuAd4RQ2`ys&ArWP>RpTJh)6ldsd8*Fi79N;34t!01#H!XQv02<MCqs|1}Eg*~3 z1XZvKLH5J@NeFEe+*tD}0vd}0&cg@X5M>%G(l#qQicO_qr_LlNlB9Xn@F6x43RgW+ zb+2mJTM21Ct)_n<!l_vUKu}O!P4J3ubueEY1@jQs63H|ZwCihChha8<$u&%_9b7L9 z!m<L7(5=g-MCz7ZCZR)<CZVS@it|Xf!~!zJ$3f5!58(%yWscTk7rk%~WjHo|BfA#w zhsU@MV%9k#tgao<v(3AfZ~?RwE@V;>8`TH563r=vTv~B4!X){Ybt*LvC7`{}WR5|A z!(G^w<BgH9M8jw4!x3iBjA(}8DlX)yl=WT+ualQn><a_+ez=X#$r>eylvZF|eKZo+ z!2>4cBb<S=2}UX84LkH}c*7f|&*e>bUn$^ocsu>Zo7(hi^j7`{wJ9V*5jVhr&+4&8 zKfK2_sJeYGl=t9{@Yi|l9+tcggTEo*_U}=H;)N`^*KHyNUae2z2<2pU9v0^};rJNJ z%@6bS!9{3Kr@S&8lu)eNGp#kj4DtvX1k6f;BMJLir1d1g{O3vh9i-6Hnqn!CPLLo5 zwe?b9xAz}Hifl!hH@E$`;(96I5TBO<>36NU?PrD8lK>N+C-FD7MJVU>EInxM^W9Lc z3Ti306Ylfy0rqw;wz_$qQNWUfH3;V}Q;i_FIRBk~3LBW~mLWETiJxOkZSX0?DhtyH z(C>uH5GS=9b5_O8ad-4bdK#&yZOon_8+BS@>0_%6pkk5IsN$~(VGxYN*|dQQ%lt`I zt+)h})~@^Effcy97go~RRrGEvKu4HDQj$o(Bu1H8pYR6(I>i#Kyz#_WYl4Y<CW~q5 zVjN;FM_+8HYD4u_)}eCu-_#Fs_x}T5L1cp~i0UjhKDZB)^If2|1vb?{{%A3l&BSOJ zhcFZ?ll4|KKo*?_AegO06;n8Zl0V2QT2(6tc`y=|$y5Ys8uQ>(fKJDb6w0^{_|Rfj z)JwE<8TaJeh@2B@$f2NRKfE(}0)4{x1n^`vH|$)tpVc+w4jMjj5lrBK<W9?T^270L zq}!}*BUyTKcJKkpV;<{C!eqfrECUehL%KPx26xawh;OIMl>=PqWW@>g^9u!<So1$A z<`z+wd#D|iqg6X7gP5x5IGp$4ar5vfJnZ9W4D}&SA(RZ=*n~3<6mi`K#j!CLCQnUu zMP!Ry%d&zs&jyb*Igo~?*_0_Zp32{{+Ti<Hsw8$WNWr-Y4CqiJiEd<UFK_7Lvw<?> z8&2g-F3i;FpR_<GSosQBkr0KXjnlwEjH`ehO+}eJR+t=S;U{~s^n4l~AWldW?-AO| zt2D?nJfA!`#qr7VfWts6Hm|NN@*jSb->=Q@r`5)f8U{rIQz9a#&6%I5YIastBZkr- zg#IaXE(tVe;bD45fXr#?gVb_E0PNtno+ugC?%2o31++%XND0jPB)|ku#&EWiUG82= zxKej@nK<~vV79-SHpe=2{zZAwiKuE|0x>cGD?QDnL1;k!mY}Yrr~zGxK?6(K!^De< zOY`}Oi|YGNe7WmtVLnlTyY!ENDNHF9X%RUyvC$2v=Cd7^w$M9n0^_hwHdYSoyP3{c z49kaF`o`!$*0C3OkJloQA`<(aFwAt1*H94SQ!MIiFZm)OqIYTERY5OolOl(GFa<(C z+<*N8dFa4MSI1#TlFHRlc-+Gj$7FZW5Bn$qaDOtKOP_RbGwfg7!jfK=c1q@x6QwR6 zwWdFCu^5W&HEr>cr1(UI@kwpRM>+_fC>o#K5DoqO7>zNuq620N4rTH&ehH(vCqfw@ zd?M${0UOzoPmDYF<R(QvQ94J&K^xm)C#_SC!VzMN5@hO%>W|{*tu*>?ew2(UpK5cS z<<v?=IR&5N9axqkQ+tcVc|EVckTd2wKAp=4=LS}3FrvZCAe8NKg5Xf_C%SIE3ZK(I zJt8xLdGnufZV+N9nPQtwaiD^kNUd$DFu>1cg9LX60m6(3Dz0o;5e+AnT8&FEn)`f3 zlpT5X37lGDV~{k^V9A?aAdiciAdheddB!Y-)U^c;+aaV89j-zl4d;{;ZF;gpD*Ej@ zNNuS&A+<zCS_KuyA)m7LlZ%^Nn_-(5LOOMjvKdIqmb?Z~1G`#gilj#oC#^~5`71{| z@1|QC3q6GH6^f;lv$>EqdV#c#BVs2y=Z{LehWzm@%r&%|o!Za~a~l)TrKXm`(gW9) z?XfxSfv$24zcvTZ4$joZW9cJuu?8WGXLz6d1;-*JG~u&SL|ZU1ZdbAcLO7Qma*<=) z9SAb%0ixl8kpBG*>_}rHh@-ezbzW~=A6l~t%q0~%TyZ{;V%wx87i(FKks(~JO7qKA zap>jv*Zczh@h)K+wQ_-vK~f}ulVVM7GV@MRT2k$1^OB27>M5I-Xd?)%$w^h5N(U8l zsN-<`&_?wR7u1=Okiul^+_{gV?*w+afU;7{G!4^@b2GXT5wIWbAw&Jl#F{>h<)Mg` z%=v6{rZ#~&o#vfSWu=C$G?S`1(>X4ELDVVBprVSco^2MMA`1h9&HwC5$tiEWi;uaP zjhRNLc7(`OZ+3^=8I^nryZB6&hA!}fL#@ht!IDKOmiG4cS#I0Fk>yhp6`pyE*BB2= z8Q=n!N}j!pUI0=7oSg}#CE0d?Tc7sCqsZK9<k|w#MMA?NB7}$>O7~<KfSfqffnu2k z)PZqlY#)kabf~JSCps1zIq|G*V;4G?H<%}haTp7u_t-<TXNmVgGQffpq!~fI+HMbj zxDo2cYET94*A9BvoWd)AwTi${Ltw*1k*i9{5Z?E$9Z5&LFQG`V^PP6o?(B$1+)hCD z!}d8TFh8p7^bPIHFynwmzgF(yl}2oEf=B$B;@Y<Gfhr3x4>%0w2|EGhuwNVZ(FK3x zxHjqG5^cWMeK-SaR22_Ism-Roavp~rZ0`$>gZ?>|NzmDT0vzm(Pn-8f(AOM7J_;9b zS-XAYRzj4>%?E}$N^(BYl6<0jM5+B<?qCEF0sNEh0m<n-3{B@pWGa(x?!!Y|>u0N> zfYGSeaFQF|2lFxPBdqWD`EVar@K+kGU<YFehHDl$r8@{tAIA_LzhV4Aun{iscf}o9 z<%;YZ;lLlCPOCWcfKm_(rhF3G{GG$={aPZ##hngCf%1NmaW!`rnV2a*pU5G7f!3mT z6FXMtg33jA?@d7q&WN!R^rBOF5r1-KGW<G8>{HHQg~n-#qUy5j;uFopaeSfxjVeCC zfmCF7saOm#VK6!Khmnf7><_BI>7ER`44tFoe2D!ryQ4&-hQpR;y6+4s#7%A}8hLPS zYF0!HZv8mNV#FB7!XM1SjJ62wacE`TDGn2?&*49@-6pTgyYz_dRXb1wXKm7FoAD^v zfnrethD%N*Wb2~7tuMEM0B@6M9$|m_4rH%=FN>ciI-KIt2|JMVT8AW3SIkmb{J{}g z?@-B9C}qiTLjfr-txx8RSg?ixU~bYS9Pv_Mry}}TLw1eziVUh*o01*MO9=(gHqmuj z)vbF<|D5iysoRBmhAMP2;GcJOVpEUIhpGU>xswx5RKN-V3IIkhnpZ$LM5QE-JPvf5 zQ}i_9x0GxP_(lV`unmH#utjWTJIVP0I{B!>lc8*efe)3h7Yu8-5T`aC1g{1=$YzLY zWX%OW6aKJ+HwA3ZDweoZp>5z$<RS<?4qhF|Q1~N;mNE2xH#hVNs`Fis>TZ50*R&p0 zkxG_fui`xn1rMN#4{y{ad(Wr3BSW36+xelqPw7!rqxXVW<9!UpJOHY5Q2n%@qspsW z-cbD|4qk1@P}l}T<wNYlgWS+3WL+M3vL0rKhPc9%p^8`gZ8fNrr$LDQDfn+Mu&XpE zkj@CH!alc10b}xEI?Tf0dw|iYS73;Bz)XzfaAE{tX6DGi@Lg_+lY!v{t^v0M3N(-b zZ4e`)g=DowWI+pwX$z>MffVp(zwYVp@NSNQV2CXd&uai$zX93c=?*N0GbkAancqDG zHqj6sNmc`=W=jC1VHcX1GC&^u&f)MTC<qOhAK;Yw3?ONz4FKv+w~ka%(iT8<^IM^0 zGmAG1%rm8^$W>dI;$Z%&Ofwo(@oye6;R>g=s1}~jg=Hpoo#)Ok2*pl2e}|p0(+->4 z28@>$AWxfwRWu>z+fD*4Y=LrZAE~v`2dvo^Nl9n{UE6|q19urlz>bA!RY=%0I1J@I z7HnxA;LbQJ1lvso$j~(cNb0nGi~#UP+hPP*ZOO`QBoKsloDl)RU|Uv1kYr?m85!o^ zWRT1(4zQ~A)t0}#9q<*a|GB<Yy~5`ZQ3UaV1S$&~Lawl2i?}YD#7Au>u>qP8Hnv4n zUD#r(7GjcEKqvXfj+0nG69U|}_^|+(bg@7$7El4<$WNyL){<P-l2UGGooy`b*zZDK zVMo5SpSg6~@;ordA9|=wA8`{`>j!LXAtmbe)*>j^9u{wlx7%3sk_yXaKDo^4N@CLw zTMH<Op?x^6ta0!TYvy;p)4IW}2g1(;p7|YrTmo;_A?J2NQ{gdx!z6O7A9h1n*1^Pv z=A<2u0+kGt4pp6VEFJ|cN>9O%-HsMz0F2yqWTtA4VqJ{cj1HB8lqz9D6+rO@J5Zd+ zRMdDBsA8pw>H^~r;x`I)ZH|%%Vpd(Ggt;%}q8J8@;2{H}f_2<FSRFWp;UpAawTA@a z_536TuIEr?7M$q=kp(KVyoIV>bg(D}U{SFJD`yJEu>5E-jb#8V)iGMs8i%^X&~X$A zJ;VEuHNJ(CF#?4z03{eLQ28QM*aB1>!$O6KQM4H=oLFc^op`KctU!C#Ih89?7q0r+ zo`MPB4?zv65Kf`W7s0|8z+#FNtfUDRb>&A3ALgoy_}LSqg>is|9DH9iV`7GNE8N?~ zjRI9FLPaWor6nCpmIxK802LLcP?d^ckqThpGzCjvv-M#{3(XX)LUVL4*bYBn_!666 z@~5a<?55+%0z*iXg5ghr$^oH12MS)z3gX1zK*6h70mN)@6KN(Z2we+Pve~pClq^(C z>!$@p`|Pw}NU4J8%$dCKBv6K|%?xXSk{YD=w&5!zY<!AW<bt0T(LT_lK&8aDgH<;Q z7MlPp+wK;uLMhm!hU{o{bp@N$kd0skWK%;n`pH-}HHal_cq?Do)F9@!P<4pxSn(7K z%~%4Dk{Se>hOcr(>Y}cE_!7V$qAoy%a5`A|B3RS~u$UqRD`|p7UHQ?fFM>^KST|Z2 z$7nAE>Enz*O$~xAjZc+|P?0Jh{G>^!NCl|aDIKg*5iC*xEE-F}s_yJ)F;xmyp$+(3 zYN$&%YHcD$@dNx@YFJk_d`k^*n{TOs*+=3A=|%I7CZ}&zgVe&Z)R1)RClyYFp8<ZW z8jL%As~R#>_dizEQ2w@{kO2QyH6X+3{ShojzAY$BS@18qpa?6n9zoW|`2=@2QCdIp zAkQ`+UZf@4rCUpCXj%rH+6+4sC?0HQ9W5bdTg>oGpHA=(GQRw^{D*HU+%Cr-OXWTW zgu@?8l}gIC;A=CXX<C|20>%cnR9&`7o{O7AgSMAEqnC`gO}be_+Gxh7c(K`vBR)28 z`<q9<_4KfhPi`BV8|eIl^gKFr!{`C*T(tXbhMnyN@-lhtSeybI-c|+n)j6T+=<5bP zU%kP1*0L8BNz7fraTjmM0I~9d8TkgIX19`UhP^9$iVB5T+=LT%?(PaP@?H`#63TMr z0{0%}vr5&L{4g8U<eOx$B@^DramrN&YzUw?_89Q_>)dEV0bm{7s#YT%9fjeK5^4C; zyTpMt3I6o%=NrI^9Rhd55HRF7C=RlmMfy~OB4v*(Qqyn-zoOW7=kJG%7NRP?E(-Ov z<<x>3WZ|v;P94H&>$lpSVoDk?!->5Ugm*v4#;<iCp7uDm;h?8Ik(b`Uws)2-hdUA} z$m$^uc3=mrbVv~uJTl$+s6L&4kIz#l_0jx$V^O&Ai9qHCG7$(&CLX7dg@Mcj!eyj| zEDhvAAath>)w`1{VX$K;A3Z4L{Rc}KFeR{IK!*Y%=@isi=%`}>k#-7-4QN|HBo2^I zT@-KRel&7FTIymX72JR(0wVPkv@oEVfJi+BEe+^FK%@?kPd&24kCsOCr6rD!h>`Y& zfgB2iv@N9b$p|hGlD3f8K(+-!%2AFm^kBs<8?nola;m<$0ZjztD}7-=GXeQZUmDPZ zfQpsw#I6{zE0(wwVZ%TU1>%dnW5gDSFSdbf3nVW#6P9!GT_g3b?P?u%ZXgqZ5WR&g z3}hw{29|{^4dg)}WH#gEB<%Ekv}Z)#vy@YPZy3;_fPAHP_Kna2BJFfkY(U!rvQ|pn zjMU+G*4hU~?gL9bb=SE8O$0>hDQICpGXar$3R)V_gMdgKAfLLk_Ms8|&=OCrZ6JpN z@od^TGJ*?)r0tm4K(+;9Jj5sLls-K+Vjo+|sru#yG!c-m^o0S<1mr7yX+RGGDptA^ zd&7vmVToH2HVouYAimh!Mr?ujVjIY|K#bTpTt8<?$xMzd8mUMxMs?!9Nb1DTc}I5k z@%@TXy(4G<I!@7~pxA&&fn24ao&j~YttbFN=^5&xbfrG;G)ZF8X_|>dl@96)1DXlQ zs!thP8qkA)GWNizvH?8`D3e(-)Zu(q_O4Pt>{{yTvm$$}pko1%dJ2jSXj?#}o`QM? z)Qv55fPC4Z3@iJ+k^SCMPj$F3pqYS3Jq0Zd=s`ff=F0~3C?LwdqIs}mW$zi;dzN}C zMW=6M7f?=i1KJi)PId$8_APZF#9Il-F1WL3>LI!LcsZ)~`gphdGO44lxpYo<2V`I% z_W~hp3rP&5FA$Qpkg<Ub1)@3qvG!j6Cc~oE*S}uuS1_P69W~zy2cuE5sZ}Ktbsj<v z3L)g65JC=^+#$LpZ1N27FULyxVQeX@%jZEPT?``aVo=8AGt|ZGs9->1Z=%#I6H8sq zo(E;jo(E;jo(GXS5W?j%)HTbY@5WS#A5JZCYeEm=ncahUX7?a!_8eiS^xj-4cjuOJ zsy+|oE8PS6O7}p;N>9ZeKPd6xgC%ao_8^|v9>f#dgXG1A*0~F>#$GIx@N5CX>}nm> zgAjcogtJN^gv@4~oP?decOI4Ur$<XU)wc)omFj^qlPO%s16eDjZbs_P$&Z#weSc}G zr%vvHNWB<D>ct>Z2gs+MT01T)@$FBRxV5$i@oefr+*A&^JqRhYOxNhjDLttu<$lFd zPL=L~e5HFJU+EsGSm~+Q^BpBV*|Ef}*dD|a+k<#wdk`ZwDj4iPU{fqx!CYa=5Xx6c z{az?%DwsToXmlRUgUD4eh+(7iXok9YIw~08neHm}(XOSgO3#C=`cT2-K^c4GL7B{w zp$_LW)R%io{bA2iSDytQ4@Bz4AW|;|kvc%|^bB<<!%*MbSL&60OFh-02l6%Vfqcz- zpkmE~9YcNNK&c-dSn8=19>|y71NpLhAS*j682FT5!F(9i4-VjtACmg+0q)Gw>FDlx z2x%8WNV*VWD1Wwu+1P;mC}9pato$}pdl0fv2q6oF5VDZT?u<C`d7W2!9sE5PDc?Hp zOvI&$#siUbF^IH_K_m`PnqNs>?5@<uU8O$kTIy<dWJ?c}v3nkrv3nk5?e0@g)7&Cf z;<MNiw`tCUIJ*PC2XS`KLr6K3-E&IcxmU`c?k(k1eICeHx(D)=?tzMxo{D|cQ{wwQ zOWca>K|HZNh$prO$&1ZNO*dhnp?IK#xBDQ>uGV2a2+<cpIIR>y$ZW>R^RwwtDffq# za;onn3-XoffpW8Hc9gYJ>Sm<woP3@r^+{r>r%vvHNWB<D>ct>Z2gs+MTDv?_;*TRs z+*;d%csBJQ-dyfMjEDGyp;!~!2V<qYJGPWlrF$S>=^n^ex(6y&dMb8js>F{cmbew$ zgLq<l5Kn9mV#Hoo!t6~z86`|bDElRh2O=6b$7V;7t6~tt1|TRsGmVSVwS?Iaxk3GK zYN@NzQABtkt3EAZJW$3S`B9n7lA#XgGt_%?rQV%e>guz=<AF%M7)0vDAW{d&mmSJ5 z)W;7>efVIhr#kdNzUDoUuXzttta-3ws4o^ueYUXFQz<-<FS`fwW%oc<_BAEUbb-&- zql6hP-sMUd4?@}u1Qa(Ogro~0hVo}im_-@#qmY=Dt^77qdl0fv2q6oF5VDZT?)llY zqLe>XEaf!O>|{YCT?``aVi1V~l%}~{33Ifg)c1ERb+tPtJP(wydmfardmd!%?o&_G zT)d~mw|6aZo8~--v%5^g*)h)Uc?c=5FJY2>rQF}QlvDM2AYbVo$XB`tDpq<b_WVGJ zPYx_`E4Bym#P%Sb*d8P=wqL@O<*y&Y$sZ3vm|d;IdJv*7gm79Zgpk>cljlm9gCnK9 zdt@o6`u0G+Qaw;^Hq9cmR!ZG0SHg5Ql=|_prJg#u2O{-i5UCe~NF5-bdTQ;#wi3VJ zw#2QqJ&0#h58}<`9>jQvPZ)|dCCs#QNpp`nm&V+w(mjx`bPwb!-2)XXJr#S|RpJj_ zOWca>K|HZNh$prOF=DSPVa7rkMZ{1j`z4GAA{sZxW=D~$Vi3ayASgXkM2OP0gjvK& zeHL5ls&o_)9>}UsOBfH7u}6MXCbMLy!}$#LoqMJJ>E2RTp9LNdMC!#LQZELPIzYbc zP==v?)KlvFJxe{+p$GCc?}2>Hd!S;?gB?RX9w_zgzNMZ@;emYFJ&-TE2ePuSDPcDH z_&yX$n8Q9k{Os+*co5QNAfSZtAS7J~F_c-tl%F_AipP*2*?oIt<+qvIgOG(n2w5nE zkcCWk&y_IAL@D<tmU5bCJP=72gGjp=MB)IYX)ag7%%@6yGPTsz?kEX7P{!_gP{!_g zkhQx{Jxz1vnG%1TS>iU$c@SrJ;P)WT?s*6)uP<Q^=1O^YZYihg^FY4RJ&><-4^*u5 zRP4?|i61{$;#O=A;)(4+Jh44UUTnXF89XZC`$rIFSL?7Igy;()oK^}UWH#gExe{i& zRLY~JrJU;91NlnzK)Km8i_lsrb+cRvv;3sgA3j;?sgrvkQZELPdNGL90rIJ**4`^C z@k-eex7PL`o=rW7H<x=5;~_p_DAtrP8x^H|Sh18-rF$S>=^n^ex(6y&dMb8rSBZCb zEpaQh2l2%AAfDJB#E8AFggM#)Wt1@cJD}{BFdm3#+#H)7MXriL3>$!;^h^;UO4kx5 z-c#z^A~&h4(osZsAgewtVLVXA9{Ew3%#xuF=QGrkeWl*tx75{VfyV=pdNGL9i$SCg zkS{xwVW`g!l=|erQcrd0fqcz-AYbzys95u0$51aHD)q-hOFfms1NpLhAYXP5WMyAd z!YmH8gqa=YOBfGA+6)AgFdl@Y3n7Lw{<1ee_M3j3j3dG-Z~fv2pU&l1J~0LI3I1mr zNuG^(3-%1(Gi&2*cJui%F(W=j2A4$(X^K;$1%q-eQHZ~$3;&ZZCE_wVkjRbq^jdl? zvLB%`wVW6T7;)yy24gbdwJmY*34fXvz3`WPYY&Rj!jMq_KsK-qW;p&yn|l8!<I7*m zfAxG{U&z7{B{LrkB)6<Y%3PD!(>CE1{4?~D*C%iVo>s&A0k{({@9f(au`HV8#b?{3 zodC$SWc!HuF$`wHD4WU7&;l}Ty|N$GAHtttf4p%)&+7%FI=;*(#O3obN&Sua6gDWm zwV$fa_LTSg<qfQS&u63L+a6hrB9nYv`>QeX!**GWq7(VFc^)GUw|uenHR8ca$7k_) zG7sO0mRnYn@~VZ?G{nMN1n>-mBALT`9ul0HmJRrV1n}ttJ_5(rE*R<jQ5O;F5~3Uo z*3CO4eD^~$1RJ?LsK1)y8-(&g9AZv9P~L2+Gl(HFT|vJ6U?Lxn_`q<M)w6r>$`1yz zFL=kd`KSfsM&N0)wOhY9*{p|)8Inm;J}r4!u0PJ+o9{+}p!rG+KMRSX^USbvC10_H zuE7eE97Uz;pY7H+-n`vB+o^Zqcx)O36)a@%*P^b=^~n^J&gAtNO6fidnfd1RxqKNL zFAf>pGCY>yXXX0w1jA2dxcb<6rQQ(`|Bk__f!EWoc2nD`P7(jKf=he2&4`Yb34~Og zJ93obbho~bZ(=rf>Koy?eVwFRf50cQt~>QIzAJ5BG1(7~@kd$l$L9to=SB+;;r0ps zBJe!you+@&0BWYa8~e54DS&&mIe=<WXb?ues??{#)>XNFKY4Gzn;KQ>;|cyu!XRir zJ^(rh_G;yNGq1NE{tEl`yUh=KHT+>@5^7fJy$N)JcL-15G|_DN9{=3U<)3j-uJ4XP zqa_a2+^_ZVX9TCfEPr@QM~hDh^t;XPrpbKLj;3KUoJGUgcQ60^-S)rzub+pde=7w^ zGMmmOtx@S=@5Szma_JA<*=#g@xxL+qW;Yi2qMZ!3|HuJhGFndJPIp$?DOW06_;Fl% z-;FYes`FVlnM~LBUc|FmG}$bj4cjl+>rLE_hSTV_G#}nZlhXOw`wScLtUJFU1GB}= zbUWo~`=+1VY!6yf;M#t37S`Wh*2&`b&%>XGe~JgAWHKxL{N3Gr*q+77aQgFi|DJ7s zXiehQO+U)F58}sorSk-u$c>*w!b+}jwj4#drg+fmtPp7@xA}gZNqn0dIxFJuE}0DS zJm1V`vsDRU*5NcRlKpm)jBb;~Fh@_(Y;`8de3S#l!_j<J2x-r!vt+PU#MZF&kVAu( zo7N=P*ltbolHW|C)@^$-AKc{nj#`~~*b<p?fScBBC$G|bj8A5hmA<WhG|5|TG)X#> zXqwmTAi9lPIa2+2x<(cKWSZw;mcT<-uqL;yeh%v_N&2%mulG?hN*<yDjV1GGlt(cg z#lvBQ(DOZgK8yQsgB2$nP2!=d0V(38xOnMT#A9iDyA;x>B^x7n=+C2RDH-;crRjXc z(7J3*r<d(XJerjdF!60v`uMwF|LdcKbm>n~tKBXAzMb?F1p4ne9KB4-ROysTTU)>T zRXhFH%Mu>h@4pbHrP6;%6hDDz){O?y772Vgx|@;5l!V@vxLj|PKqVP`u2DF>8LeXz zD!ZCO0Z_y!YR^8F5Dq2rlWA$1lxE%5tTdh{Go-k977eDQUKEYc9BJ#6Is=Z&C@Q7- z*CoCwG`-Cq@pKA1Z13zI?f#C>NX!GI^sU|9gWbL3%HfVEZ41$ew!79K?k~5d$O2o_ zXcFIvjtz%@_<eDgKdSb941;8tOh>JDv=%|ygX3X4cogKB&X)bC50!4+##2dVrPgd~ zGVe!Q!({6r8r~+8t<fa9iyt>jw^6&_nlQ8ls`<M$oNboi=+G&;qIo=T_2au`JnU>q zuH7slZbyjb<qAgeAF%LF(=;CW>sw?`VE9BjrR1*k>izkf5(tPEr<<igYX}PPau~1& zbKOmnLCFq^UbLsv(kv-Wq5-0k2q_{OTN6x}V5<~QCP4Q9&Pz9wWC6ubON(wSvX4f6 z;k-1A7OEOCe2%fG6i?wfW<tbN_@c-oh7ml!HQgQ>amblSOrB~<doJ>%$SW^OVYfBx zL@Lk6o8)n88h-*WFH3DL3bxSpF?H6Di}-fd{V2Q)krrBacd!7|akDIa9JOw5G4f*x zE)Gl+OxY6j(DhDAMqK+gx@*n*GiVa3P+yc30PUuV(P6t7mOyLm8AAg8f+&bsV-)t^ zdr|s+62X1I*zG+s6>TTRBq<06UEiTB0EaPpsjb^oz*JZ`t0R+@u4DM$Vp{sXn}A?z zh}ayK;)_dVYQIpH849H?IO~%;c*0Et1rA32Xcoa~IOC356Jaey_Ve)HHu2xfmp2id zD$-}=kLfmR3{|Jt;@>3=SAHHc4|ZpRzUItK)V?ga$YyWGzG!btwfC}Ac~RLXXqRbW z5#99S+14z2oQe6PEma@-mCOH|{r0?mt<hF0tftzRrAg<e^@rcz^jq!TW~ux~j@mbD zg5%3>JYe$s`8#;|&)+e=_TlZ5d3!dWwEAhRNgN?7jQXu5R7mqfgMT=ySIV2Eq%Vb_ zjUSYCK>hxrb^-bfJ<;w1$f9{A$7~HnK6+7_IXGoYu51CippIyPpNFl<EN=IaNLn(5 zZI<rhPP;Xd0)x+U7!2|tbz>guqA20NtdJyG#OQ^ZMsgI3Of`}b>tzWgYP*N&j79{n zL2|py2IV^yMxtea1R^d|6d;JJ>a^5?vrT76crB1>3&)aA&};+k;|+`=tPO9~S|%(J zUzZVLWmt+HM@TKPI424M7=x~WeAt0HWr|M|zyf}a0sWSQ5lRiJx>RC-evF4*OedJ- zbPQr?)<s5;yw$@b_#d<Ge|}8ujBxsScmu&zH!A1LQkk9u2QM*d&1Chm<jqSrt!cz+ z;7{?e-Jhexp#O{SnhA_<EZzRdegrR=J1i>wZ7W6P1<3C+zqu}~DllHSR!tJQQ`XB; zKf0T_$jU3;j=kxy4+7JAz$J<&DKn|aJLG8;Rr4906>7Be5TK|SU;s(JNHMK8R&TOE zdWc)79hNr<N@mSd@4Lv+Kq=`EJ~G4_YJs^&rY;XVCo*_Ugk=w=pcdW4CrBF)nAxT% z8T*K}=_o;7M5MAXf-5K;l4kdCf&zK=vS^N)&f^*8%Wcv8&%-}sF@uB~J^sI+zuT(( z{M}z(Du2I<2N)H=D@y+>o%o@1YE9|rELCFUK>%qa08?A_7Azu!Ocp62dzRoAA|}G= zBu0UeJgT-3NtfMZ!R}I5-}UheI@Pgw;1qCHN5`Ls-HCc@HaBM`O6R*a(`MY+;(ZBg zO=A>2o)4sqzh929;%JS!CL>T9n-G$bNeEM&u_g0Jgr%c{r49Q{1YEcBpC7mI&jI32 z=2y(6QT!0Wa3e~ERS?!_7Uhf5byOP85vrm!^dV`JfTVDZkPBgJ5qOgHOIWWXyh~DV zm8NYhp5SMgN0Ct;lK6INQx~G9-x^K9rt12yOw8R167CNE+r@u-_-`No9b}Wp7Fd@= zA|9mNW8xG+5q?%-TOPo=6jJfKXo{SuP+8cNFm1PJ52xhI7zK1|(qC>`O<7sd|Kop* z{`2FsgsM;CB$~Y_y-F4c56lxto~=IWezwa{D%dlE#1ztM=_BT|kBHeA!Hd#-20Ke3 z^AWAk;^?{Jrp&LEw|axM4AO^g2V|nBHkUa8c^-+T+j@v$fAA)raod`;w*Czz`)m?p zYe14ON~*cQxl}EU`g6=#6i%k7To_8al&U__qF%x*?4q2;%q8K5{h#_~=>o-j3sV`g z%w_8ixk-HoQ<k7h=d1R7GF8TqLzG*s=TMRwu5}=4LmNYoz^GiSs!TE{?H+Gwf0TK) zmSiwU>5$<Wnn3!U_F^PXNw}yNpvOPY;#oiX3o1GOMm?d_l%0wGmcmNEn)(e>rjPTb z?s7@Ww~67YKBZf@bad;wsw$9iqyC7ktnJdmQT<=j5v#cz`7IG<D<1Y<qOvzE*!m5H zJzUl-f4#s#i3mq!r0EPS3p>Fet0^{TCeoMCGz$b9Zb=`in#+${Q^p$P>jT)3;{<>d zWH6M71i$m&xwLx`V#8l@0*Bt3Ee*dexW(ESxot~JgS78$A+8tuR&v9%O#QZgxxx~{ zmZ>%&8`7-(xaiNKl_{=ll}Q$Fpca(J31+Kb(`u-=gke=oo9AOq#6jAzYbHO=TyPoI zrZAdO+@DqptE2M&*0R2kh!k8BN!ewbL2G7Y8&4mn^BYV@h-^HKTtTQanl342j+VG% z0hF%!m{GC>7^@O}Kq=~)o5VOubbnKp1t?W9<-wTPG+Gtva34Ym%=1&7JCL(cP$P6% z2%~C8!NTyg>YCpmoULzdz1Z1DD98pC`H%_pWohe$Z4@?*Cf*>-%xr>Gq2{%<B?$EL zwWUiun8Db=wUGJMIy1B4q+?`~A11RUWU)&End4;TfU-bP+l6qY4CQ)C>q-Hm%$86C zU<c1~Lr8|{g1n_{YsVb(P#7H^lW!GHfmI5p8BBs^4@IUIEC<_BSC@Zeb9>mr9xU9b zEr$xFKS(ixa<SA!Rj2DhY_4Fh5mOh68kWn^5Ysf)3U>CuBFWawh<lXW+=)st*~0XX zPy~28Lm(ydzDz8o0oLoXc5O*ufxQLFZkZir(}B}>>(9c+UnC%;29L2TtBbzP5@t-e zc8i-ZDCIHPV=oY!gYliLz?Rrrk*z!#i9M%fDM1)atR`6gV;ezcT9`og7aoN!Hp-OA zH5-Mw6B4sqSUKJ+V+jHmd<g~pL0SHzK3n1c@<-1-T>>w#G3SjUr%~<ZTqlcaJ+gGe z_y1(q1=*DW1Hk%F8e*Xwq%hu4Epc;2j#iK(dN;R{DOv-QDwyzf7Ygp2`E4uRyIhw$ zD$zg_Vs@7*L3tuo8ds#5<wh=T(c{6GDus2YY#rw33`ruUwv<?0ogUMQ)$EDb$%e%u z82l*ikrtFlIw=yHx6%n5sA|dZ|Dt^F%j(B0Yh*lkyJayZTOoqNEoEBsSpxk~oK*QI zaR>V&X@<kr34To_t(xr#5SU^oT=v9NE=JTW>R`8L(3-Woa<Cv(CD#{HSWG1ptpKYt zW=j8zM{As7j1<-t;(?h>^SONx-`-+HCg@Gc#N?AHhB6t{)Qw1-dWeT$<vE9+Kc$kS zUZxL*C^USH?PIgXmb4~w+~p6asX~z*xHy&FuI)-i_F3(cdpyU2RccKh#C%bp?;IQ* z9{G0bLf&XddDp7KH|l#mbTl!A{D7V7Uo-kL%RE$n_K6dZo%L^%xr|WN!8M57?5HUo zvwy6sx8IY%Ry*qVw+w*H+D_Jc*Y&gWlR=|9cbO?_WzR+=G3;Ou^cG?$2~Z`gvu^6Z z=f*kH{k8v?-Ex7A?K0VNmfdiZ-K37;4vQH2<A2D;(SLr#HYP1^Oxc#xLD|65{b8BN zuz4q|(2tHwJw9{4uhi11^Plh>*qEu`x`|9h2j{CYu-V4r3g!ikJw2I{!yH|wm+T&_ z5Q1MvTXxUV#-CeL6XDtgW+rY@g_#hWVDn-=MT(MLtwF1OacNe9*uTHcoPpG$Su5^i zcLCG8y@lXT!HOrhoxSq$E;bl>0-l=gslA8v#E6^NvNN3VZe>+>73dEpmhFaF%kC#_ zpVb+}3ryQ)BSntejd4FJKOZyoml#fV1aKt6S-(|+KOpnnF*!JuQ4lec><wyVgk)eU z%4cr3VQWko$WEr|CR=6nXjhdYdD^~@cFFT4ER1+iKpwVazc7s`>V%g8FuN)ZnPz!H zhlgY|)4lPZu?6{vL$Sz|z3P2-*_81WGbNx5G8=W7y#V1ZGgD_{p|Hp|!B|k}yCQ@F zq>NJ%^%^(VWw-6t?iQMKkz!I6C@O|8D|6(2>_(*v?Tp-pBh<AKeLyx#(jih68g&>t z@SXL87dV95TF50HjLU4J(B-}^sE&`z)~qU1N+YxCr!GkZyRdcwXkmBprh(l-nc_4$ z{;=~$)GM;cUE(~E>$K9x*8Db3%=+*Fi8%R4OgLjO`;LqftQ02LWGwA526)1lIV!}4 z%Z=P^z{y*pu~KSdGpol*OX>;Yz?ojgsemXo+MlHlHl(!yo6?(R*Tw?4gD35>fvtV9 z1Rcb<Ht`qLi;WfCS{HL-MqvzdTFh+yU*L8Ij+L;}cKcEiAMPgMND?<+N^W-xo??&6 zu>jGWW)B6x_@Cmt((fY(jT3aUBfq7CQF>3dbb#5v(O<xLsbpE#CKboEW@L1YIVnq} z|HJjdOLLBYYnBVJmf`-TJtE-r&2pYUY!Wrz%L^)|I-pU^M6a`_@p)Z5-LgmpcR2dj z3~Mr#9y7T^d27&@FHy^X(nSb%xNs9DW42WGCwp04JlQGL&1x_82_uuvB87#fiE5@F zYaN+-5;cz3jsm&e!$Cyqa@j)(GsB{Z?)KT!5X@SY@|HM7hDmXHY~W@RjI|2#i5+2r z-D3?qpSbTN(cv}E;z3cf^cK(-PDSPV)5<uk#Ae-8Oh4t>3DU)xrcJr#hl5PgXR*UW z2^3c62~q>9Ztg0Jz`*BH63Q;#)@Z?f<^EcBU&tM&Ng`Lzyosd5vn6yNXEsELYZ^Ep z#r}jnBSHB`RuHT!^*g9fU+C2OBAIlyr#OlF1&uG-o%sKYZ~tFq_xNa!^*dOVeY0m5 zL6yqR!GTaL%0^P*h=14u*PEB!tj86eC@JFxR_Ru59RJ`zsE;drGSl#^j8eWgI8m@* za|U}SnD^xp4eyH~rex31;y^R6L`68kVub6e6NPg;!L?89qkn=MwEBPKJb)8+T%e&g z6%S6;%yyj>=q`@>w^By`YIGjhYd6xEIUXOx!!6!xd0CQ2vt<1DkFqmnkxZE|p@liB zVVsafFFG$!(BH-nIPAg6j@xVcm_b(t5-bLcx>DOGauURpqNOh;Dcp0FHF8Q$k1xzl z6DeXzFoW@Br-`MwJ)=#r7T*you8u1^yZgsREm@C}3nedPH|oU#HTj}Le;lARjd8&; z+WsA^v1NJO!oaP5)WLPFEjt$pN>6@6;~h`cWD#Ut$L4H%Oe0ZiF~eQB1!z4%_k@v| za2ShgAs9-bGntBXc~inqu71HT*PSv|0;5>UBTT?tb^E8iFgB83b^sTZ@NgbtutMY7 z?xW>9vzKkdK=q?8xN`lYg!F*xROX(I%J67iF}-`kyAXx4rb{q)7V)RmE$#}TPZq!F zey**DnfZkwIQA^sGMD_!v5o-k4J3O#Rwc9{xUyp|L-NN4wlnsd?7|sZvqu!^lrQed z(?HnV77d<J^azkEB5@)pV8UB_OqJMcHow^-D5U{>c8VS1La<z>{R?Jpv&Lba0Kt(E z(u(Pc?(oTIlI^YvvDW~y+hi8Y6jv_V-n7O$8<Kf(?-V7fgbNbrq*daj49q6&WFl!# z5|fUGw77qrR<rg_DYnf_;C*}{OAY2UWay75gK=k+S9o-}D_K{z)`ZyL1#UFrIG4+D z9PP88Y@JVW_adFz<k|`Lj=0~Q$Ij#b|EqTc?VdJLTQcu-UzD&hf#~N-UhYM4BN1-# z1(VtS(E$VB<c_W6?hdIOhb%iIEpu}5YIBTA2*amqpyC<PY+xHN<FX?&>1m0Ysesf~ zGfN1u3%4=Ar7X;ygQd214yH}nLuJlW*8f~RW7dhO_uGY4HVD3Q!DCXKxdJL@g=P~3 zm%?S~^wH!4T=>i=PepT*+@YS@!fk=1h1=4Z{T5lGyR~_mQi>$hVOpyCf?6rf3}d&Y z(#>Vq7!i<5u(>TO8gx3xEx(DmZI-5DUI3K4*QA|KQKp+npWVNg*s{m%X1QgH4q(Dj z6@rMyOv$7x{U<1#)l<o_Q@3bgO^jVyxqf7)dRCK63m<j=_M=`?b~iEpzzOMlloH|P zr8&5I8$}YX$OFc@R)->%R`HSw6{A_bdW^5!y^>4Z|J3gZWnOyN!p7$uYxm!k%ZE32 zcd)bEqnFzzodm512bJ>Oj%gjuCpeLl*1Nr(cEz^xQpNA0quuDJZQ8IjK)2iW?*87s zX~J>^7qQWLcY7FB_Dt&%8{o-8TJPGG@}X(P8!6EcjXOuJ!xRDT2=%3{+&(_G9ox&6 z^s5}Uc5aT$U{2}8Xr+-8VKf}H5BCpmQxdJ^7OG9$2l?IZ-fnA8&&0QIFCT{<6Y1}1 z1Q%U#B~Sq#qUoHM6w%+~HXh!I{(R0_6D$~U_uQBERuqH7W?x^tYAs!l?vC$ThU+4R zGw*6VPHlMzv!?HLY)!Ejw|{tmNkpxi0S#cM!-JzDP#=sQAIsFUGU^eAsO*%>DJ-*F z>AiQcg*1=kIbGr$Y_M4h<OJ!w)xPBKC&-_h*bTajI!RQzI{W#%&C<IB#}bLOzKZ$} zST?s?rMJ->%j(Ti6)&#!1%z2V!CWVAt6`>1U-J-9Rp_Cp#p!*iK1l9k>EcKfwp}g< zHwo6|DQa)Hkv=P7dUE=*ba`@)mqfPSMV&cr%x#v=qhTNHqp{V-zah>5<%I=7{U$~Y z#(QW2#*T+HhA3s^&f#0RG>)6q_Kg!zWmf;HEA(dU=Wox8VR`sr>o{JVr@2j;$Sqx7 zHumn!dtKIEm&b*6^M9$%DbL^U+Ii8{YhgQMNK{t;B>qXE#7y}MYxY9bURm>7&f1!s z&0*s2b}BpjJI8c*+TGj>;+=0%ox4<{=ORpGl4NPxufOU1xm(9V+j^*q;kIw=p@sGN zzvlLA*{(Aw&vP%KX0Pl$`<A4LL>;@!LfH$F0=9MJ`fl0NtmpNzRUI!;(xiNkDP3rr zNiZAyj=}sD$^scyyJ*z^Yh18AWROu}9CQ3C`avmy>#?bRt%Icid#Td6?{9K>5|bHT z*Rf%lx%8OH61eP`c6ip^!pvCQDa6>^%%PrR_dHfMNQ`_qLQuWf`wiw+VG1@um$_SL zK>jttY;CsU`DU40l&^TwsAtty{MO6N#Xp+~%jNxpn_Wt|f*u$6qKV{DhvB!pUZw%_ z)QvS|7?;PN?38)U#7Jc~zY5~kUxPmzvDtvg>_R^OF52I)ax#;=nGbn?TQj=7rDdY> zv)8cK-2}_t_)=U@LGFI@S6;=kkznssxtZ?SSDK!6cgfIMe?zJK;&2~Zi;MxYDU_zM zEX;;XW>LhD$rlgLxqOrz=)9G-%iQ!y7w@@kkTj{<<l@ig*{vJzf=<SLwa-7`?GcGt zuX1(j@w`3T?A3Y>Ky|91_5f3JvU9auQI&T7>}3z@y}TErSl3>lNU_=tV{Op$QQO8- zB)=&=hF1KxOhP4(4QKBng5gH-=Fag8kH{sDyQBV07t6+aBq>+9F3O~>yK=i}hO>X| z^Lue^@A!uf>K&~AP0!nl9Oz5Vj)i~t2Nz$q{;{QjJvmb^SUEZL#J1_nZsBN-$|R@1 z@~mw|&z4}C)?Ia)srK}EjnlxIgtBtFCX|W})=WG;^Gwb3wwd4`;S8(rU`C`Z@}cZ$ zixuLxJ16<l<B4@#Y6`Oc`kS3L2)Q*$@2MjMYx6JItj9~sg=>Cf?-v4jAurRukhf`H z$m_H(<bB!~xfg0z3I;Q$+TD}=;@uP37iY3kIu(ubOziB~h|*qUWM{RPmRZ_|eD1FF zsif7IcB3SF1>H=|roAZYenGDtuiHUJBN^_q8yheB@`moOV%BUAyc1??L^fN6{r~K} zd2eJ#k|+38Vk8t&no>{<-kA+GW_mD-U0{0t*v0|_lzM?6Bbdo9ULcu=Bw#-Kn%m`O z=H~uhkV#2BJ6+Y4!RKy=|J>Z%{64HB;XMx5mMuId1KKdWT<s~?%CJT9Snv+@N9xRA z*#dv`QkHEc9X^w#Oq1Esi=J)?6Ak*^_9D6^4+lPFJ2XsA!zNR_+oVp`?yYpX7AFr% zOB&501h8qU5e*QO`g@@+|B~_49&hh}2N&6_;>G3JwhX_K%N{ObeuUGau#nG2C?k?O ze^P1}?kB@cemG0?G+1z2!0sM8(pt=V4)wCEq!NqXAjD|Q!;?ZoK_M&zJS{KaP9)hz z%9V!q3PMLOc0oM&u9B-qmT21DTb#Y&8ARPZ4HJkE13z5Q<srl*pHR{sU(LiYho)w| z!(L?pTTIJ^FaZEehq`i}f##PqGN@~BQ7z^vw*(Py-lFyn7D#^n8LnD9`uXSm{r|j= z_q#DTH}991*B`-n(I?%k{l222jm#L^y(xPzDqq6IiZ|!CaN>e!tx2jk%Z!p&N2Nv8 z_Vev#yFJ*RAO>+{sbH39Yo?NRdSPs5loKuu;}clH3#dg!*QZU38MtWxV+&$v%^)9Z zp&U6R3=PTI=^oDy3XxeE#=#&iKf-SDvOu{kUqqYr;vZoPknn6~txzVMZ)~d#`VnY7 zN3J`efV|b_QmRo;2<u{oS^sFOk(jFvi5^)01_|8ZrtLzyMl(sQ=OeX}^S0C=s*0jI zg-wOcC{V}z+7Rt0TN%9dO*}5JT+*J`dJe9bue7PdBU$^ENrNS<m=lH6Cfr>L`&r9A zR;sYL7f@U{d%qPN!$Ab)J2_|l?0qFSY8}E*X4};N6JB8nM=k5_S6l<<9sE%{*F2B4 zcmObBoN&Ws^Eup34+N|MH(Y6-!|m<K3~sbIKZo6F)s(eDV_od;Tzz}6nVIZH8^`kI z5fs{fp-tW91Yh}xrXxA<P|&+Y+51Y35;DYZ-kz4x&d8wTGupr&EcCyJ{a<B=;%}v0 zdls|;!ry9S(UAV*0st<Tf>?h4xcD1xUHp%5DhE=RdKy4lgTx3)6Dfj8N}()6p7L)Q zY?Ob?fTH|cMhxZOGA1bhmY~1<d&>Ww@xO2R-*O!tW>^Ww6|*d=7s}GwIM3sa%7vdI z8h(m&_$dm&PtgH>iW=}!G=ZO@4Ez**;HRooev4M+cNHkQ!B?Z+%|_LOpOPDXihA%< z)PtX*9{d#b;HRhuKSe$GDeA#bRj>RO^~&!mP}GC3M!oCzsvi85-0)M>gP)=v{1o-z zr>F-%MLqZ_>cLM@4}Pk8<+rF;epi8_9(*<GeW^wTKP5N(6!qYzs0TkqJ@_f=!B0^S zeu{eVQ`Cc>s$Tgm>XqMBpr{95i+UUf<aeRG$X#h`A`$9Vpj*6z-OJkzULz?Jb;bRZ zOZ2Yl?ko0Ga9FKe)bgop%czbBPKv^gH~P@Vgeu#VQ4|1)@Sjq4<rY41u{FzxKM%+~ z^RvA}{6AXaEkz><{<~po6RPe!Hut<&CwnL5|4t+GkYKpGl**pR>7M-o$DLJa`C=H- zr^<<k=bqEyVF!hfVEDR}%AO}*Jo}?n2ZxYg*t?X<p6`Y8?2mbLSaFaqh9P~boKC%| zQ>7o<%7yWrT0=;%d@V_3f0nU7>Dfa_Fzj7QW&bu~FZ&d#+VaIPq)(O8YCmIj)-#BZ zU>Lg;!#{0xZ+jLI5)6NrV)*ARuUvGCLlLb)9i14S{EfKL&Y;Vy2e`Z8w?Zpcw!{?J zJV!3f{$(l4Y)4MGqMa2?h<{naPy-^4;wvVqF%N!_$;GIm)3E$u<piWe4()bkId#^N z<OIhfG_F8(;)-a3ixC>y0?l&DA6B>EH-v`v>oHCF!_ow2AT%^D!8GL$OB0&C(9r&B zrYV0|n$VVo<_xmIhKX`7_Pa&-!_tHXDm1j&kZH;vmL@huAzC?0z`q<>Xkkj`jUigY zs$&i-XAk%nOT*JSVtFp^Z+##g<yo=}mpSR;I5!)c%WeBF&c^oTvL)RS=Vr@txs%?7 zbNh=&X;fpo4$j7A<e0iX!a>Fc<Z>sDoq4nAxZKujb2hOSmoIU`lAW!@Wp90IGVTwv z2-mQ^p4^=Aka?g;J*W>AEl~&-IlB!P-7JNAZ~%8fV>KT3M14Y#XnS&v6!oyC`O<a` ze8B;Z|H{ZKmt^g~T$NCJ;Fw}0_#{^*ZZ;JwDv)bAUQUx_1cfvwiJM%MB!Q$YO8sVd z%SXqQ8)#(e+Nf8*Nirfrnv=whJ4$lx+e>PajHHm}B(Y<Nk|ff!K-F)Cw|sO=*^M+z zy=ge!G0BSXX-*QmpeV_CArDlOWF&<&CyCuxlq8|3ElmApc*{q}RGeMp>inJ8zezGO zLYf!VY2(gUdQnZ15f#$Bs9rml=+%Oy-f!d+F|q&$4Tt(QjIEeSWWa%}1~2?K>831d zJlk^Mh*ml9-+==Mwk<gYG)hf>2I8g~M0*Nrl$ibu#0{`QOu>y3)1QI3@rgoAQLhry zpMkjXeL_s(uM*Rrfw*yJLQHY664Rf7xbaXzOaZYH)1QI3@kByQk+BlfpMkh>E<#Kp zvJ%sufw=J(LQJu;64Rf7xb+J{%|Wx0^WTxaZ)MTUQah6%x;1eQqpN&pY7|OCJJlxQ z;xgADG_UIF@@7t-V?N-o4Z+c*5kV!=2H=Q%S6_3h#k<^TuU(1M(j8IS0aqfma7W~O z)|y*Q+UFkQrKaqN(*CYWQWJJWz9Xx-tIfLXX`f`M^4f2^7qD=+K&)L149j=d%Nt%; zHn#gmh4H*RkO$W$KCf}L`532wNBv`2#wjZlxg>8Iw)2fCri1rM<X>2fHa?lAd7UsG z3ZyO8OOhsQi&DRtLdZv_zBX*nG_-8XyGb%4LYkAL-oQ%=?!ZcFl8mH~<|L^L@sh-c zSP}J`;VmB>Q}r}~sW%PBJ0@8XKFvu|_v9r7|70aKNk&pgbCT4jc}e2btcd!}@RpB` zX?1;`Yw&%Rd6Q&hgfuUz)5e3tw4$0MBPyhMQN4El!Z04%^-IHeVDZ8*9yn->B9$gF z)?^qD#7#8_ag48UHkELtAqWsRzzXqX7!SmaPZZ+GFdm2--zUVAVLT8w?o5a$!+0QW zJd_YmhVek$cp@R54C8^gaV|nU8O8%~<1d7GGK>e})-MS4j4-~?_pL0NSsTU|`mUkP z3FCo*HW3%nC1HFKCc%fxn>l@s{(wgHb2Otc9*DF7I3nNGR}pIQE_d2%S0c4^N0fHJ zl}Ihz5&53A=2nyTxyN{^DLbOHzpIkegdLIZ$ZGCtvo3quCmE`|_S^0SJYgEfhkbL` z%WK{W`zHwFc^i$`w{#b;GaFxa^5l}dY1ke<rkD=iC)NHP#AxI51q!Xt%4w2}ppfPy zX^Zueq{&(l^_$@>A01O|*q&)<*_L;cWJH8CCrQ15mlWKAmDD5|Ng>TiQWxSSi4U<N z>Nmq%K02oAX#!Jk8jg2NvLbw%lces+OA7wUN@|jfq>$z$sZaBg#Hm>k^_$@>A05-` z`aIX*`z-S&$;b$4UR0-z2Zw1zHAzNPNb{n4?fivdJa~|ohVj7Sg<(8!&=^H3O=7Ic zFdm4TY7pWWUo~Mo5I4XI@njee#EnlB;>j=`h#TK0#FJq>5I62jh$q8%AZ|RA5Ko5j zK-_pDA)XB5fw*xlLOdD9199Uogm^NH2jbQ*2=$CGzR>rrESgyx#uxgoq0I^7fq^y= z7t$qRd=VzWhs&EeeUAQsM)h+vX+%(ov;jCG-__ULYVj_2+G|%LwRA_6cEFWLE!+|L zp0(yyllHmCc&RBnqO`xOlGKD9k?+WA?rO6xd)g-%s=W5w?ge_7G>nf2R<4&{_;}u* zAdYwY&8t4I6UUb=@6wc{XCg`7Hf$FkQ%n!<lWGSKVzl*nF`@ZcIZcug6w;g|ZL(gH zv{@^nelxt~qhqQq+cOPK+wyLbjEIotB&j>_l7c_5lA0tVDWo|`>O;IFaUxbk{bqQ} zN5@oMO<?Lx!|{$uR)kM;lGHzWNx?x`NllWG6w;g|b!uLccr`1celxt~qhnfqpXVB! zpJm=885tqXi|VxT;4!VJCdr5jX<k&Xoxd=S2M_YnI38HMFpdWf8l*_2Nsu)e#{+Rw z4MH3PtR{{J;s#hDo{ZyxxbcZXJQ>FWapU`hcruO$;>Mi`@njqi#Epj%;>kE3h#OBN z#FKG65I4?6h$rKCAa4AH5KqSOK-~HTp`H=P7y7=HMKf#T_(I<`v^jA+FwiFAV!9-b zFTy1FaCtMQ&*2}?sD6$njR-1{HULNDyZV}2E#Bo$d+kc3mhOns4!9Djg*zhOv)0^d z(mwYXFEwRHl=gR3lA5q1@*P>tU2WE7Px~Z8mDhgTy+98Gr-02(lkvPIOO>0I^r8{i z3Q`_cuXjybPEQ}o5l`a!)ZX(@FQk-v*5sa9xX=b2G+)~g?zgG;b9iCpN+WsqHgY7z zEmJ89+=$Qj=5+Yt&EtPvz~f_^U#KxzwI;~RX#xWS{@EgNXl|n*yx>Zga`Hy*$DzOA zl<8R6N@Zm#E2)ELa3gHBI;|i~;xZ9uzK=$phN3qIOkFWGypUa94T?<Zb9wgMLBY9m zMJTaXQ!w6wnzstTBc50H<xwCcd3tyUFZRLvJj?Pp=6CQWI$yQWUK<ndR@y(-%avGL zx_($0C$|ynbsyQ4#*Ki}Mgl)+Q32u)aNUYU(|ncMY41omKij}_WdR+b%(y+7imCZx zt!PTGO7xPJ)Af0)0D;DUGB10tb6YRpzP-HIGzA&(0jx|(#u@o7?YUC*ZIN0-`YF_r z``)jm&B^9$a~^7`(%O15UrqVU*AKC-Oxk2^ogbc`o<~I-c*<>}zAnx#&M%_j4LJ>J zED9|Rfn9ZL@~LEg_Qli~y#o{LtA6d**2UrW<RXH^0$dB#Z?>jb0z7br-C3&<xt6R$ zlFs<-a<h7?_nAAt#DB;uHw5@^<-l2D-RG;#<wR}sYdOScR6{XizkX7w<^7!sMfoe# zjC|@>%lUSDyp7d@WVZd#2U8)OBi06eo@_8@Cl{BS^4yQ@eVmyWMiXsieGV_!mC@WB zCWA^aqJ}LbmG_xmJF1nyA3{Btul=gHyxeZjBPv2^YeT=83ej&(3(=IxYPr1JT%HbF z2=kh#87Rovx(xEVHRJgVDyPZVZy~8vdUmQ-5B(i#r+yq%&hbU-zL?O~jeIgyBcGa@ zk%Y;L*>2vRj9nM8nyQ!8`TlvCh3M9cV>76hm~T)knM{24t5ypB8R|s84XR`V_8QHV z=xmMf7gHgUCwedbK3N@?=a(0k<rTOtj>u`EHntbri_0>hG>gliGOVzn2TLWE*VbxP zl)pkv$ftfqK+8D0h>i=%Y(3BiQw^LW)&hN=tc176Z{NNhRzhJkQ3vO5&(F`J3Av8Q zFd0;V&(&`Ysl4??xjm`Y0sS3np?>Vv!;C?aD;lvJBlIGk1Hhc@k<m^ou-L<>5Z^h} z2v>r>!9|$nK|~&)3(?W>(dIZr79vG_2L;kf@%DKCnC5qrh;jQCS{}XA7$oVPs@4Z! z1Nf~(pTd4lDH;y*+a3=JXa~N?%s@blIasEW#HpA#rBKQu(e;aF7Y>f$%C-7G`+Myi zgONpcKALXmLy8txCE+g+XJ#Dqpk2M|_W1O8?=8GADYsGL^xhI)Ot^=~5utUP`!n>a z$9fN{UQ1!ld+VK}a5tGb_$HU|YckzOiZ5<H-F>|H03C|lUy&&R7c<glUw?9IHcbj4 z12m|lsHZ2V<D%9xhJRpDL5Y_a^)1W^4{NpV!~O${3QD}ZsH@f6x8t(by()iTSwV>% z%gW|nn<9C;qzrL(Uz?b1fpglQb;U+*M{#P1b~YAXdDhq7XKO3B7GJEdFTR8KOyIWY zzruadxSRmLV7j@?$=X+F_6{l0K6GU+R@T)F{3bU$&w69?XxJTQuJ`)t{+&FK0~6t2 zP*p+3%<o@pH%B;gAP#H!u-;sKESFN6OUUuIc({}D4&F^BCN#4OnO4V-i!EFp53fHj z;USP8ApOho@xyupH}N*9poQ~-bX58g{QBl2XtKPyBN_C!`2M!~;1YXyw5i;ZSv1n8 z`+zr@ilu-zPvBzB?U(!YZ8y^MFZ>A<JrlAoeQEDLuZDa`aJGL=v&nG5!N;faP>ysL z6-4+#|Jgez7nV!-wmN`&RJkiXFmv~z<oqTlzKgVkH`p(>AMl+=A8nae*zWGv7gtYk zEq9%62rO^ze*G$(O09fVy}l~DuYnb~#Bve(2Ch4{82$~eu;1L>UjM?+%8vuwwnFGV zHOG=Hk}Unx8lGnN^*hIXv<(L~>RjU}$|?`;0p1;-=|qVqG!b~O0X(pIjZZG9#x+;; zu>0aY|5}zGoonTVzITgm#;|TodlZc8wHMgC_o%?Hi%-Ja$*P`uBrH?4y!Zfpz?7mf zo6)Ggml0oC=xZcb#$_7e>l-svYVsMK_V>=}VtE%PXARIyu5QZ%j594lyUQikyi~gF zNVT?IVp_wAj&+PTT>tDje0tg@PnCt{(tFlnSq_J5oiJ7jE}%G2!p&!t@K<Vh*8S~H z1F?}#^uiXI1utY7=JAgmEJJ!s8$8&}22MpOWU68bk~+~9>h6Omeyr6*Dyd0u$WkL4 zyAvXDr++Ja|MiDOmUQ#+`swQaddtpR3c({v^mwH`tij2<x}^q^Wv6U#VdKYp$`ov! zi)<Y9u)#4kw=e%H57xu){6>Pj(7}4~6AARyl&NS10X=jUW#Ud1o%_UrNRgJqmyY7= zAV$i?hwX(tDwSUWpNwNX&+54&UkYca4(Sf}5}mHk!Kr+FDwCr6_=7k<Y9soYv6+&f zkBu(=r$iQ|Shjzauv8<vMpx4r2YZXY4SCy#uoNN+;jqb-ONC^Zq3QgVRY}9r>t0)a z=J#R?ea8bP;TL=<3x*!%yT_h7cGg#%qkrU%8=Y0!f4cw3omH)($EWqvRhjzMnxG1@ zUsT%RO4^j>rh2QmK?rsQ*N$wrn-bfFu2DxTad@0JT-eMFFXHgi0r7#XgR}MNQH@|o z?$g~}aZy7%#PaFn*sox@n{sD=VP&33QB}>RaV6rK(Sah2_KJtLn4y%t%w<o78nqkG z2Dh{u5QjoX@ZiYm1m1}_fmb2+_uf+A*f@NtGHM2&*N;oYYW)QBt!y5E^26QrJNzEH z>%A+^Png;faM_e7l~98lHkNGafEBD8My_tw?_u2c@!|TrpTB`OYuE4a%a4zr-v9N> z&Gip|IlO?M3;22a_|uyYPfz#ne*E$C=g)he5BKgK-v4;8zrSBHzgc{`+J640yDvYz zDI><S#o3#`9BzU7ehu4HAeO)W>CImb4oTZLi_K4O{`p|<aB;GCdidY=P8RTF;o-${ z?`XN&+dtYnI)Q(W7OTD0a_{UK{(+xIi$h30+&jD2J6Z0X9Kt8~_uv%%J=i-f+slvk zP6`Wnst~A<6;S^A=10<_C<(uQ{-%N8VGFM?Kb3(z%mkF5XhddQRGTWfh6Ms_#sfS# zv!VdD5kPSQ4<AltDu<?Pz85y}J18;JTxj^!Ga5Tx&^Mj&h(DOQ9q~^ZbLl0#M=Cw+ z4rJ_5dgaUc+mNreA63OUDeW+120z0+jjE)%rioSTZ)T!yxl7}$h6lb(3<c~a*xL+y z%!;&k@$vEL?q*4Grj*5h4Tb0%ko1(cc;Bs9Q5@HOzxa=f!^Mw_qcTpUUNg3oukVMB z7RRX{qSZq7LyP_Yw!b*|aP;fV{^A&Z9>UMoZB+ljc*|@oIfWl#xoEM1cg}wJ|CKXc zd<$KqfyQ}AuI3-VlIu(CRehgJQ>*=bouAWz+EebGg7+KJRrlwzX%TY?Q+aoHfG$qK z$+;a$Xx(v2TT9twoha#?{Ld~e$MF!f*TRy(I^@xgsb+R6$NUt<$q-4yx70%$TAZw| zTFmTHt4@(LB3^Sk?OQofrzHC`@MeQ8?{7jJOk>%qa!AF|Bj6rBBScP}kim>P=iwjd zLmh-v<Svf_KUX`UAIJKsu>^I3vTa4?UZ_(8L|%<16Xu|A<;^7ds>bsUr(9r|1)*P% zzf*P1<&#$1;nBsmznw@^cdS(I+g@6*%R9hj3LYtztgU9tg7XInp(2c-Qkm%Gajv=V zr*xZYY0u#)<t@k4^c2t7Rdb=rs#V8(VN!5iHM?s(mYH!{z3_WvIaNY+r)}HJeL<hL zaRfE1D@ZHJ7Oi#I&dpFQ%o?6a<F0B@X`4oZ8Kx^?KsUCHvKH~oR&sUg(F(=a>9DUb zbGNxTJT^0TBH6j#I{0*R$p6dC-5ngj<lQmsWB6KgcZ{OOgA~e?=D;bb<!Dv>(eroE zGH8yDG%^!<a8@4vd%8HaLuoi&diVD&PU;Cknbd>Hzw5)r;m!W?u#BW-7=3Z|aB;m| zJpA-#?>KzBfGNYnH+j-8{UoBgNOI6j-+%pIYo?D)i2PFD#Mp1)j8o_>jG>KPRA?A; zXZys+At2$Ox&|>d<Cl=u4u-}XZDZ=lnUUSOxmn#yI>Gmj)&60TCN~W~n<5K4`{INc zKgL`Z@_vUIKrN5-ro00EG7t8@X91tRr1HO@Oa9~L3)#BWgK{9+*!b`3LY)@kQOb~q z)gAfJN!sc}T~_OvI+Et(-`$NSbBJ8bnI*Q)o#qh}`daEH`;3y$rFnMg>qMKaZW4=W zGCDDzbf9F4Ym&_nQRcO@w@=50hL%R(hA;md8QvW7SPQk-vnyee<Qa9qhV5s$OzA_q z)J6E5)kny(bDaeGrd~oi@|W4d!5qj$*@VM*Y?2yLP^eLOh9S*mQH?31m|;*mkbPyN znmcniU4?TwrB%5-I@v$j#GMV|Ei`rKiss%Dx{(0!j`lf^j}&b*!!m#P5;S%OO!|Da znMiI6&*3U%c5{(q_s#_~lVPnFn4Sn5(R^*C=KG4gP(t50ikf}Cmzbn^zKf`=rSoqL zAG3shr;?dc3@FFdGc`v!XhGQXcXwl^+c4YxmzURfpWiLYmfOz{>wEM`CDStbzVn_< za$r_Xv;UG{@$;uhpyy)Y7#SxYpPtn7zm}ir*v)1|Q52?Dus|kB0jSq-%N>AbtLb9V z+k|S!;CR&E-3Hag;@@Bs&(-BGuu1{DS#Mz*o8y^mu9f4&woHVP*#vIX->qb{GGtCT zm(n*Mg=bdfbboN3qIB&R-VuH~p}?Ub*^0q|w-d`IvGRO4n~EuIypr+eYO}ef&DUUP z3*PO?4ag6N^iamM<b)M=UQ4V&m~D%KxI>_^uJDiACtT4+%&v6<hg8L%%;008>a2R* zCf#oVSX5fR6O`&Q$iwy;Hfn#O+BA*wcKaT`gOzjBM{oA{;o<5QTC03?8>~4af8$Ma z_RMRtyE|3e$1tL_RL<|@XA;ZtdfCGPS~9tulmG%A@L$*(dj51v#n74Arsd(D^mv3> zVp((Ys?5tK5DXfroCp8-2n)ZwF|wZUg%iTRE_+Fjos>Mk*<Q?w=f}S6b*M3i*#kfG z?DxF$NwQttpL0ev+e6iG<ht%A@8>Z`k5eAHXxgSiTS3c^PI}(4Z8alb3SC9D_GT~5 z>6y`HdvW&w?c5ysR(qvL3`TGu6r4KPK3VYBI#ylSLTixYyzpl|g!5bR_IgZrfA2&O zWUNsgrTh8z@@jj%dE7o#V$4Fi-rtoYfe*{=Cx{~86bu8UWn9X2rzlWR>YtDJc7Ol$ z94{-?<9R})DGl?iB8DPP-frkN^sv~qzkhOYQLmE%#6*8vSMtr)*?4X2@C*)o9M!|` z=IpzX5h_c>RNP+`!`r*3?^M+HID}P&zJEtoHIc2VVndQWCIR34_<_#Jxw1ao-NSVY zw{WKR{d-vBonJPtqQpLqFV5?=sYV!$$Hk;OWy@-KOvoi<!g=MS%v9PJ*^J)nIvY7X zR@We>DYa!O`yJcX@%rT8gq|q~Z3}jeoS&5EA~GT9{n)xx^!)a<IxHuusFlGDQE;fM zEQuz9)S{y-wfxtHbJ%8lGgBaDnPFKiw+&6H_cqULYFcBB!5nRmkB`rDh{wuu30-4T zO~<6e=B7MiY3Db%Nh9Lxhv#}K-T2qQrzyrl-6g=YMXb)w4%61Q+MaF?%M&TB2-ns~ z?EIE?dH@aW3|iY;IKJ4nGiE2QR$3VsPCn0WV+zzR5bn~#Sg|2Vrz7KgqNBadE}Pa+ zQ?}K`>Cs^s-n4Z$R5Wc{JCrc*$U5bm->$|cgO^3mwfEKO`rtgbcS)(3nJb-V^FKU0 zdP~pygx+ffqR+g?L;kigl@Ie<(s79iPfy@~-ez4EGLr_w?Fc2xxA}%9(6ojoDFL)O zR%TTi=I=BgD&I4ECasOONc*Szr#=Wo)P^c%4QHBa*dJxZo8M$6Y(p;dc4loRFyhb} z&U;^8Uaa={Zc;O-wkg#J{C(RyNZIbM&-Q6zCbXZ;;oB{yv{GynV#)Jc(ZNCKkWNeZ z2S1t)N%%>lVXKt_%4gq}UIEED<`;Aul5`rC7I)OH#>LZ$YMR!?30xQFyCuPKsB6}` zW)Th>Sf{A-+t`HV@U`sD_y=<ey0Y59rYY6(-Nos1C0v{x93Ik(d7*8cZw?@K{RbN_ zumsz*=+iDO3%aE<n6pSDJ?172h;5g}%2(g4zA}1qY|g7Sr0BFLDd(s`4GN}J)0oBi z!Rqp$?5t?aVyI@;m>BgT-LNg?h1{hnjZB3u%XVfyc0reCmv1l2P4W$Bno>ct_ulUy zV|%bY*`_i!>+QaIQKU>Gkqq0I@XHQuX$5iK!3u^<2P?etCCpC{J83p-wIo$O`nL4d z0UR0+8=cc@NYH6aT+C5h8W&9Krm>98;pXke$9;s~P|vJ2%^({#rnHbdw517CdEUM7 z4PJWheQimF^NzE9a5K;8!FkqFSI{RN`1uFqZyOO_)s7#?xX1IMXAs|=!I<eSbV*H| zhpeQjsMm+`$T#171|D01nGM+-3$rQ>^LJVfm2cE=21U}kXo|EtU9DHK69UwRDrSua z>vl*rY%^K$<~Nz4W$<E}tXX(F&?Th?8BM9}BXHWWsVKweh_bCFs4>42!ZA{J4Jxvg zhQpQ{k~{6n7BVdF!cnAh`}IBCF?n0A%If1fG$Y>?MXiRUou(CdJbOORmferAHRWYx zrUucek2xi024S6GqWtrl;XM1&iF)4>bqT6z9-7jkr@VG-i^}qO!m`$=s?2YXtNk(q zSb{>hoH6Osq+%-TPMg#WomOd!yK}3o%!ekHx67Ht6D?D@JiBdL1bo}nl#zAKDS6sD zRr7I=I_w)0Gw^Z1{1!Uf;%L#px6qx|VpM5fexRp#-1uw|u)IiA+B!*%`E4`YN)m=^ zp>%OkIV5*lr7h&{t#Zz?PNz-IA)RWGjOTM#mTlR6d(@PqJ<d@)3r=Hw44d=3wwRZH zeoLHZUu6-&H^QA3z@*%`l(Ab2e7>Bl`Qc&+CQxa{1HJM{$m#^wnU4nDBCW8v?QP{P z7u>6eC6?Z@kKoSD4*3qvCvS7pbQ2AZ3hVv8FW11GKEE>O6gBPmW*3;LJ27ci?D>ss zrXlf4LWFaN^)fL#S=C6|+IU`Tr`5SAEo*VIIx@e}m6!EaWo{+g*AYbaIy@<V-tufA zcW!yYdX7bgA<`_;iS{RW4m-S8tm8SwP8;Gbg&()Y4g@<i$5|#uYZ1ON>JnNrUelB| zT;Nraq%96yrSf}*q^uqC%F6s^=x>+m#GSHUlXrex@VpV)0`A-hne!ZD3~g`@<wO&d zLO-(;v<3Ger>1mmXikCC*0)2k$Bi#9{0?nzmR;e}g>QPg;?^_>O=)4HC6uJ)O?b#% z*8QYQB3W76qlK9HP45V%V-AjBdG6pCrm~tP1}CuB1Clm*(^J3z%AK1YF`i?Hq2<jW zoM?E2<4bzJ=hy3;0;er+ezC_5FD?8I?QW(~l?4#r@OD~<65GUOn55kedc5b$$=Vz) z<jihz$1un%Tis4Z<2+g$>UDM9B|clOom(5?ILG!vW1FU%Xlqp1XLfP6$i9oyl-5^I zt2~-gnWp9fk6T$*?D>ssXhtv}z%6Td{8QIx;M`w1{y93g2m3+bgl^Kz_V<rZ&S{HQ z!{j48R`gINC*0Z>a<UDne6Z7$Lq4TXu6LR=NAHli^hIo`$X~vBkE2uJaQJ!ZRNwV` z=7&ee%d?aJh{qU-qd8&vO7Gv5Gm7*=VfjHyz$=0sCGccw>Cxq>C-XYh^rKF^+pa#u zSKhRBwTOrNsptSLoXCf#XzPK0K3mRjP}LSlRDVU>mWG8p@hv(d8J^bv+tV-i+n;{^ z=JDhC&DGP--~20Lf%I?$$Yp_Nr?=xA=O3S*?rt3uDo3XD<$A;C^l&McA2Q}cqyTSu zRT=DSyDqPzp~AbJy{-JG4&RoXxTJz7p7_b-dYV<lmxuYT*Y}TYUacnAXgK@T?R&Q4 z{IxxK50N%H%LC!>79Zf&hV3l~_v%x2z~_)(ofh?WLnkWdg|r8hOThN=zMKjxzwoXA z`J<e>l;7okgF$J@T+`t1^M|Xa?Gje>FW@Dx+dICLB_(+GZhZ--ghLZ)4(PMx^OXzm zKqfp{gmA{A_vOk1Nz)rle*Wg?Z!kAESiEu?P>0uq@P$;HrdKCuYS^Bj!ySL!0J9bi zd(=4y+nalMq}oE^3oLd~mpN~?w;yBW46fC-cU9=~c;I))P@~P48&mGe3uc83!MUmT z*sS)&S4L+}%t&*%recp?7A((wBM;+R^$k5a!EJ_r_KpRWe|_}`j|M*da*YOsU1c^_ zDsKl-WtzZl=G*b|6nPopl|kMLr&zSMjg#ljB2;Cmk!4Yss)g-HuX3q1kkMgoM@X0v z6*ECXaSf(M+|5GTAW@%3c&1uaTF^UF@P_Bdr#plR9&3hFxl#o9!#ytz1EZUAAnk-) z`2mNXlBXx|o)!D!Ame89LM4I0*HQBA+wzn!)k9G7`uz))1O{J6$rU`2*wgaM^$WEG z2G7tEv4Z!0J!XU>I$O06ahm$>ri*FF*Q_7jgS(NO;zuA2ZL5_<_XIfisUGcj=}E}t z(7+1OE8efy1E@!-1=OsT5x2}PpD`Fa^(a*1-O8iJ&IQw&B>krAQOcq3%vQyt+&{b` zyI^ajN%h*AN-DA!GYA;A#wYQ3QC%jOHZhZHT1CZvLw2^Hl~2V|)9AKoL61X&k=#V@ zS8mj`9s&d-Rop0{be$dA^DSI`#$%+(awtqSmTl_nIdN{!Dpj5}OEvjv^PWO(Cj*`V zU;~CTB)mJOL_dG~vV;-$#TI@){l73ShMow<voJm3LY$Zj!I+VcV40Dz6bQ1p=uVr8 zfXg2$l30q()u$_%93oObxU69|PNYz~Oh=q{(6fR!MRCZp_;&ktd$FzOViXe?y4{dK zwbR~=h2Di%`a7CRf%hk5cmVIStRG;y<L>DLdduM~TW0`pb^Braa7AN~d{hZ$YGQqQ zO55)z7el5nHy~U}OA~h1F7T_Ftd?QQ>ST4cI>*v9({DP?ZuR+A7kCosGVg2562;Rc zNmLUeUxqh33D*hCOgPlB+ydq-ptCh`dM0qXK7tyhrPB2@zm@SvV{{?=hb_$T#QB11 zpm9uU?2&sVX>rtI%%IfG_X*;rz`6Ye^-9$(OZ9Y{kkPPhGGxEsYHJ|wI+IzZX7rDx zxIq%txmQy0ELS*kG+eHeg!y5#V@)?{m>}HczC*ovH0Z=rs~y$cylXybCU;B1&4lnD z^^A1StNE16<;I%>L(=Vpe4YG&LUuUXS$Dd^mif4=&TNXb;h`49c9^AJjF!|gDZ!$s z&O4<k*GZqRV<Qoqo0>03W0gyeWtp*i7cNr{-!v~>A^iBXejqp9+#gJrmvVZAT$F@| zN#HqLnyIH!`72i|g+-jU&0k(Uz`W4KhpX$&_s#&>D2Z#Em*lWRDE;%h#S*&4zDeMU z-}PFB(G;_KOo|XERWJ<Pf<*11Y4E+&$tJ88PA12d<aiZ?Y{NDB6|jctH5o{|02NFQ zUth`W@_Ms@iFGPii6o9s&@p1!*<0eQhEE&t<*5Lf$aWJGR8=HD<ip6%bi+y3#BfSK zQgtcC@3OFi05(1ey_HF6_^@6Di$5u3ZgH)yYxS~|z5=2M+oRiEQ-C$8S{1C}_4qq= z>RMkfdq<s9jTuE#YLokWl2VnS6+P*kh@twT&DF#9g057B4*cT{ExDir%9E6m@BglD z%w3-DT$s73xw$^QaejJvdbb4B(46<GJv${P&XI@S6I@%*H$zTK<g6a&^Kx$)^(Icn z>&<YRk%x8RhEwK0yAD!D06eFN&cr#f-wDQ@eJWr*?eFED)Xb2`g}L6)A(zC&5evs+ z;a8E@o2$Dr0(L>ofB>&UhxlVm!{*Lt?J99VZN#%D(umZpon7FPQE?^T@oEq(2+>oD z!~G9UBr_)_FTUj~hh*x^9=1;xH28Mz44zumglswAmIG>mF72lWGfPzulFNikx%T<X zQ<Bj=8qiNKZ<EC8aaZMw)1DeI=z9vQzhGC_HTFS)O3$}L`AhbxVp?`4e<^kXip^co z-BB%1xQl`*Wk*%VcZP;de)l24!lh3`$Jx=IrmHdJcCz}q2y;vQTbak`4=x7QR`<e% zOir7rT&R<nVflj|px|wD|5Gg#lg#TgI+`pS)u<cD)ffxF;w!JC9xrRyO`y;RoZnE0 z12S?LW}t$xuIuDu6wu~K%iQW2N1ZuHR#8jQXxfaJqM}WPRL{l&b!JEW<&0j2dk&3S zdyn8uY0y+?Vs!mFF7`EtgIn@_jk-6Ol0L2?T@y3y$Y|13-R^Y@_tR|ex3`-B*K&Pd zzLGV~uIi@Vggfpv?1(5+j>8UF8+*OP-LwfOBK2KTmLiC~ly@SjLvnmeZvfP>1dJW+ zK!q$;tt3jREMvyPKYr^9iy1r0aSbB8x%weT<Qo-`>@nXQ<wvwy|Fb$Z1rh6zNqFkP zjT^0+EZ&mP96*;MnPh(jN9UHfl1Fipm=bo+L9D!dy!sV3tLaX+boHz3iCxON9xPQr zU%6Pw(!&v4s(MTp^Omy8JiPJE`HBR%m}W(+uJ(xovhM(Wd$HXdZQPxQIs-}TdZ1YA zI<N+?5@qLcp^^cit=%?fGZbSWadx3jsaYm8z0`Eag*RLswZ_@kHouFU$cqW!7whYb z?*MgJ@BAxP6#P^6f2D<OrN`DsIh?#ai&at_6b!TM=TfL?Vs13gqBVjOze#1W8dX{9 z4a`awu0eZSXZu(Cfz5)MwR2}#?d{O+p|={)Z0G#?r~Ixy2K7&807e$j%8xaaNX)a? zVwsAtpEC;}{x(;w75jA_tr479z(`hR0k3(I!j^4DD@&?@!xz8OunN=5MogI`Gk<EA z2A^B32AM67q*fv&Rc9Oe&JsHyex4e2x|Qb)8^!QLT&ReSxKl{aJ!;s9q8c=zbvt~M zu1%(S+Z;_Fmg~mF4Q;odH!43t$PJH*=tdN?>Ul{1OjV2)T=-VInWYM>qCzd-re>cz zXku6I-dmlTfvr17%7%K049u<(zapgxWJz8kZ?B;8xFMO@ThR={O&W%OK49iPwIdD| z&e^l&6WKa2Tdt6Ib`T1l`@Ort*M1-Fu6d>iqqFU1@jrFg&Y;q}oA2J)l}w3OWpfg@ zQTeRfkJ7kQQ~M=s=B)<00J_V^4{O*w2aCn@pS^M@Zy~2UR^{p+*j8CicpR8ZG@6<O zXh|>`EF<#$JV*irXZz<HJeV>lWH?jIyT6`S0d4qyez-Z6qcQ#fu%--j16#&TV!gtX z4N8UUmZ=wT^cFT6&!j@kWK72aq~kVORhFR^3`TS;5DWw*crB|Wx0pmD8XE@lev`UW zQhi1BMzSm;n<>>Z$%oEDR2e?<yWREFTWb%#t-@O`>&^M``G)s~+O05oxy_-y-?!MK z(v`D@%Q9KEep(#w|7Gzb{xAG$D)Gbi;_u)p=6JVed?I^Oyy5jYV)yrM(w`bUjj><d ztlz^N!pDc}?|%Mfvwm8?!!JKRetQ4cFE`ge{N?ZhelFnW?c+~xK0H0$zx(mW&!0c< zeLmc~dwBmN92D9wncplvU2Q-A)7_V!-V~>Jwm5t9m%}Yk->;uOEMT_v`lmO4IXDEP zc(d62^yZ&WU<=L>1jpCQ!@c9Ti^IK>)xi?FzQeQfzsLV=e{r;TaI!eqdwY7cI0e%N zmIr%qN7%1#ek8_4D*XESn>v^lLmDG>1&86`JScR=>!)qc-}rVHoUQgKyYx3-MXBGl z5|0)~wi01U_wMgoUyb{VgAYe9t`Twm(?)EA0%OJ8FJwJ%(gBZaLX~-roiuK6o=P~W z^$b^$IG&u<pUp=sj~4LX>Lo6&9$+v3;^C(^hi|;Mm~8E%0&87PddII}SdX8tU@rtm z%RCQ2Gt39tH#?Wk1hU982s(M9y7H+T4|Im1y*XojeT^}B)4}j&xE+)+jt8R+oY<5T z89Jvar*$!P$=cQlFIAeRMN81UTpZDK=wc!9N1E6+c8({81@zYxL>>^Ims=yY>&LQu zUG8s%hv7}=nx{+jpQSE8Z_odJ^|Zv(A!Qn|&4l{eD=Y?if0uXaJw|`1Ha{%p0f=@h zr_^Dt;&S`&2vOPQBP=p3Z|-P!CjBiZtvNIpw>V?u9u+-!1Cr-7nisiS8RSR+-C)A6 zSzJT-@;|=g4Xm_vOlz-~Wxn#iv+LYm!&bO3t-;e4?TBR`<L&4%c$I|#v0lflBJlbe z&&xvdOcva}`r29?^yxVl8$W*iApB@?Y~wc#!s$XTio*{U`w(kG5cliN{-T84hw!rv z=*+MOr#t~T+&8_TrNSTK;)TTut_&b=+(be3(hPL3J1-2verWcrWd?c;Z@JL5FMLY} zwE16gfxk&fvil~0c4s#P*bV>&tvau=Snxe}bjGht1WQlwym=tryn{z}-n}d9%AeNP zA9-7%_yDs&8+$K&J+&UL6bFX|`rFON>!&L?C|r)B`joO}_OCeM^tbX8&aAFrt1P=o z>4NoyluS+X+IrnBZ!LGpgGhH!*-4!~>X(!*oF4TI5wPu-`*pKFrLRRf^zd6*{+41= zq@jKTR~St!BZY6KS0q8t`Du8kYx(swiOi-LuVRh?Ce~OkH0!HbW@{7Q20OIjIF-3& ztktn|0%E+R>h!}+d8k^Qk#XB*q0^uX$iABEPA1VBm1stp<8Ga$c8cjNb=f|oVW?g% z&@l*damFG@8}R`BsqO+4&vVle-#W>PNoMk}?{8k}V2l#dnVZ>;MvvBM=MB)Xy<XqG z|89G0XRIq*w{y<Ssr}Q#-RDP`wt<T1)nta&-^%3F@*Ii(HRrv4dV2WIWNRjds&dg- zlIc`56!Clb2MxmLP_G&kt$NHgAa0eVrS<}k&)ci_AK<j$5#OAZZfV%1e<)qm0~~1H zxz}y0ho_`XoLn8jEC|(OBA^N)U0bQ%qegrqTq)!oBRUtn+&*0=Cy;Ba5M0^S+j|7K zQR|KqsBYQ3!2d?;hmhty_x&<2pGUdm{`dEe;73FNL2Y|d92Mx>cdr&pVG(R7r2$jc zC7aw3{cv>mcwO$ISU!FDcymrov~_~zeu)xK!t&ZPR^PnX5;x+P-%;e_>&t@R2nvQh zPnp$_y9~q))V*&UQxPbGS`d?zSVo$q#tz&~V-T`rWA9kww|4fN9TWM~&}x)9+Am-D z8Lb;y)>oawL8ZkUlhFh0R&Pfj=qR5xA2Esi%z20bAHG4En^W7%=c}_h!-tQzw`G~O zOmJQB&BkII(OsEXlwD`^Ll++(9`B%A;&sNJy==DSy=+P~vvcuHPj$!Qb=iJgFDAuG z8@`mJYvs}SU<mf_z?gR)9KXntQ)G9v;=to&7HpXPdpBCwbxc~T^~vO5`HKX#xNQa7 z6(?|jTfhIiH27C>&@eq?qLN+hnTcO$$iU_Iv*75gxpVHga!zHNRM(&T-p3^j#NZau zyU!Y#wB1tc^=J8Y=KT>mX}+As8~y6IKS}u<kutI##;|SaXfF)3y#%2y%dGd6K6JCa zT*I8-BuC>7O_2R;1r57unmg;{+E(Ioa<tOr(z1h;quM&!Hy>%%m4YEO@!v15e14SJ zD=A#1oRzhHwxyl&S-0y?1d9&CcR1@5Zf?TMOu{#rkhHTX+&2BJKync`wGz+}U%v=y z*4Y9x7hq3|cxt_hPuSTZYuP~Ge||$K^Z_Q)L}mtbS7N&ouM3F1wozC=!4wK{WOpjK zm@5_4N7X_h*<N8#ZiXWU0a$m!O+_IM%#d&(PeSc1QKt`pQC_&;#LR!Q>Lm}x8TEX$ zX3A7AYPg!IrNShdM*Xc!-m(Nio#tcYvdP7_Lxc*i>Dp^uPzQ;$H|!P9+~DS`pi~=O zPZ(-Mia2K#sKJGB5Ik_oM0<xSUvGdacO*L7p|L#e(^Ted)dNqL8Y<n1yoYZ8aS;m1 z)hWGuojj;G2D$(wr#^nT`&<qdl(JQ$76@fAy{+0hgsTEed_tURlM-(T4P<zSAo$tr zC}m|%7dTzP-gnfsl~9fX!IlQtz`!RwDSAhzdcJ<VdXxnSQE5rDu%F6dP^=Hk3fEY{ z7IpeCPzf3uZq0`qYzutlPgqrp_XxWwyg*{F5!KE^yt0;CZwstb#%_s5DWy~}^@oMg zgi<Q}A~|-tL~!oC1I^uAeBl;KZZ6-#7f6=p+o#W4etl)C6Dl|W&ZSR>du+B3B{%__ zjh~m7*B`HTJ$r9-54~^JBP)!*4>Z;iU?Hbnxos8=C1gNX1S=+bzk6L~l`hh!hL~R_ zbj%X$N_(SlXw**Q=ZBx$a@dXw>X8b!Q&>@`zzE0ztHDbJ&1ebv-E&y$d6HoJqHs*q z4o+8i%R~b<9r;)VIv`8w>oLFD8&z)s7w0`)T_7)hJH|OBYD3w@xKno3ER0v9;v}aj zbSe0*6IGVfQRB3AaTzOt{kDFrWVm2GaNU}7ZYy=l(oJbR6y_=@tB<lACAS~?8wGle zgF2J856#1)8KLB$*Dtok+Q;@KpG{CW8MqsE%PVlcp{X@CBGYSScL>^?u6gK}!M3jA z-JwH$w@6ON*fS)weTsKcp%?=$A8&_=b=X@~kC@2x?9KYilC?ZOJ>Gk39>3wXK>K6L zwwKW1zzA`e#dbc`*Sh9hKi3AmSb*)J`KgZeQ789=P$T`f5=NTt3tBh?FA%}h$Gu8A zwxv#*Hk5c>@M6()+sLQh#0ffQkO)YiEt!i^(0EnQ6045YOHyX=&wO7QM?Ufdg<D>q z!w-};ad53Jsl|FWtfp~Q)})T07nzgR6NM=Hc$?O5^Sz^mRF8Ma=6-jP1pVjYKV041 z-#t97Z|MqYldIT5n=G`AU)Q~HT;1&1_49<X&LJBubcO)v;lDrMY7?r>{Pg5>(9CZ( zlg&J2d5vc79^vxM9HjsGnmH&XcJwOEJn(;UGmrdUt(k+Msb(IscyrPQ)HG*qIL-I0 z<(T6B`J1^>_9e~y?c3F$ne*)=X8722T_KCF7m35AAK<P_KF{pU-7|K+nalQ7(^+<U z?BB6B2c=%MnFszaZsw8St2J{FG}X*Q7H>{pr<t4L{`s4^QT8Rxe6@P}cF@khTu)X^ z$l@zT8uZKBxqk`LH*^sH=j+cwsaI|2f&YsedgS+N4IKncHT00h+tb%+=%%=T{)TRp zo!!vI`0Uvfg)Z#}`@Nvj#S!gzJd4AJphu|sL8`6w)Q8B&8YyG~MFQ9}c?m5{GCoEK zn(tF=v$mHGm?s(eMkfUn&sm4Vk`l(r8UN=2t{^qRF+vo+W^x60-@39X<v8ZmJVjJY zRK?=jl#Y8*K|dHC>E{}hiq2+qugiG|b?Ro}0E$?)kIEGb@~ZaRdhUb!tAs<GQp~cL z>BVP?D#l+b#7x9=IGJlIQl%ZIvGP9abRkYB@N)d}#q(GNhjUoQ1>3q125{LbM+JD1 z5t<eJiFl6lOD<ekpPAJzWOnLl%D9|acX;?$-#eLB6A-c>GnZ{<j%VKL<F4#EgtNc< zZ)V)|WA62lD`8^&AAkR5L1{EY{nMKR{Qzt8+l%%6Pj4RXKHhHh^9`(nKU`nIKR>-$ zfga_OAh`MG!@&XkvpS}K4-Vnq_H;4~VV$e-=2Mmis0->qJ=OM*!FtGI(kzM&>v6j! zF?QLoqi-v0vwrydz(ex!Yll%w617Wmw9aIbweub=hImh2{U6vl+St9*!?7D`>~pr7 zqs>;yd|}_|F7gM?uwiU(0tD5{a#UNeflF*N4?SX=9fYFWj1F;-Gx3L$_1$%V4I+Iv z*ko;;q0{=$=L?$>{J|d4!<9P3MCIsLTQ1%!P8&z+1{1c47j(=o)(^axPy_xK?<O(> z5b(S+p7w()<YWbwwrG8Z^GUoZ=^XBh|NF9hzzJ5<IkQ*i^1$Xfv-=uf1>+rYvg?EX zw2SGnyM=u*#cS$5yxyuhqV|uA59!W$cSIzP?U-^8_vYgJi0|wryyiP@LUoD18O_@L zgJ!D%m%HS_p;ve7Xrhg|>bX(Iq*+~Pmq%BWqRIIRBtwnhPUy`qeyj_XHnCTbN0g9J zfuL@>lyUiV^&}6Kg&n>1CJvMR@#A?*ft#n`OeUQ-M>C1M;G^ME;*fU{voQ&7(fv@K zhNtou7X5A1STx+C2~U#LKd^3C4%uIdiG7`0(Ua?FDuq6erJH%M=(e%t!^eFbyoB1H z(fSO6q++)bNb|(&M`SC`asgXyzh7kE;GDCsA%+0ZtL@SLo@|4(fz)Vxd3UGBgomK+ zj31g`-N4>)U5zS@0mf~@aP~XHD*2XSXZG5&#qnehG!*kRaIktvtox;$rFt@T;7@Sx zb%Qn4-jcR0TcaPTKn=o*F_2x|ykC~acfDr+Q#(bsZ3OFr{JhL<QKPu4ipmv!lud1+ zHY_if+PiF)k~6@evL-8~6abVPGJ|w~>LBN;4Y%a?-AGR0%flD@4>d_Uj-0t_lXW6F ziP2{RcL<XvIzcA$a1tD7LYaQU%9I?-9mAO@7d<mc56ytj&>?~DQmLVk+vtVvy_O?g z6E3rwsCu)%%cO*6s^|FB&vOgW1W>OWgeu)A$~WaP+inCc!P6uuqE+eApMy81w?0YR z@JaY}(B~57Rij1W#;HZo1mBnGXYMWKXd{%|R3=7ie}om0;4%-c!TL)L$&{s53M^R2 zUO{6oI31m&7_&$etXxCA7IxuNC=5BwE_)7js3Jnm5vlqLs?IS#dNQC!X?%g3@@TzZ z5Ry8vU1d`9V($%;tkU2dvaPB_W&^oNy?eO!m=~R>h`Xv~Lm^e`*=U(jQdUK!s_USF zouCUJe4jU`f}F@5YAB)WR#Bq&xP}tubE_yJ9o12;8faHe2AAG|#`bUyt?QR+n1^Ju z`Z(eGTWJO0M)*b}`V2BZmfhfV&sA|Ua6eC;lz$EE-ml@ZzZ#OEK*KUgX0}Pn-NXHd z^(~w!qs{$zIUd~5CV!i1B_0kq(_J<@=-X@dfEU%n`r-m6My_BNzUv-J3`;Ki!_{Vk z=czjRso9fd++8l8e!1U%&z(Kl?Bw99w4@!F8$YA+u&P~Sm4kU9{vFA3WuV?+#B$(> z99io&dWFS4gv;dQHvu;}9~P5$FdZSTYDh@vJ>3cAGIzGQc+gA0G{}|cN}@GQ&{$1! z%sCpUgBzVakb`1DIlYN0Ihqb#gqgpiDTVea%<ALAG*2xm4%*>n&%O8w&5U)$YAxq? z+`*(s(K7MRStx8xn-wuKJQO+g$xw61-5hfH(cI@aLmQkb@;WtBMzA<o76kE%Uoxw& z#MtdI2t4^{F_|d%yRyIFTP-rFald|Fo(?JA3#&%a6x-`tr@(6?yxgYfqAQsxiie^> zg{|3BP>1{Z9Jrjt)q@^lL10L|2@N^;U24EQT6W+ckhRxewaq{eU1MpWM}e#R9`E3e zKRK1IK3EGxOL_#XUJpr^wn}yE?;oF>Q%~9$jh>>I)hLByxH6zBV^$4=GJ3b6IK^jP z292`H5pdUG?WqdRSz5C(ZrDdW>R@8<+R3Iy4L8;nJ?fZZ5!Em<{me?W&nUE)FG!Vk z7bPm{6r4zfsbRG?XDyN%kq~K0lno7--X4q6g;E_rIgoV)C;J|j+fQ)34}v5$IJwwE z_d_KXsA_w~TJvN7Qf`8dI<=iv_0e<AH^b{nw$(L~CT-CeL9i%(RyUeJo=Yns*Wh_p z*wG*wp?m)qnwqEp2PFq^%aK_<E^Od7H+qNj<Q=?K)C=%FkZ^^ogk!^iH|J{b_8L47 z?~Vo$Z>PffdLuX8YR}n=LrOn&P#({Q`)>Idt^xh@m?q-zlU$p8nqHd>Cf~W214bzy zpbnOJkwa<EI)@aG_rl)BEyp8j;%x`*uUSG50@}BClm^e0<}q#}PnS-oO_eq-W7m1F zq?o$#<xn>VW`vfs-ow1I14sTe9cHg@CPO6Z?aloYFIlK9`0(uM76RgGF`Y;U1|#nl zeh5)$aE*m}P>H<IG>ciCusumaX*Kpcw<)RM)jl;gqdlAqg?)AptiSXX>f=KN+q*(7 zg2E*rsh<s^vqYR6T$DQ!QW41OhXq%bh}bhCUJ}-rol{t2%f~H@5MXo1e1x>4b?Pgh zh*3>2MVNuo@zL@5NeL=DVggPo=GjQC_RoG;tX8M+KL_|OY>U;$i;L|eU;j0u2nT2D z(<AN4rA8l#OM?@C-VLSI_H=uA)SzT}Ra;`o&qnA7c5kmv0HBk%<=xx{pR3!;J8H=@ zz*(KH56;h`=7mK>2EXkH3vfR>Pnie1Da@Y@NO?qfb#egzb9R&>@_GGmdv(iCg$O7I zU|$DsK{@E5S_gD_d9m6*jjA)F2#tJB&>2hF9KPLRC+u36V^{5lKR+L)^3F0m3;M$X zY$vgsO}ST}cclnO0~fuyI0WYq5h5lLApV-*GZ1jTIanR)e4w;j%c^2SU!M=n0ko-O zK&I2AXqWVF#a0BFam8MqUB10sM{tl$#D+d5(2ON)*4zDU1HWNb!NHHu$L0te^1%`K znuFtVZlrZMxGB+rGpJR1Q7a--SVUm(TY}4g`3g+tpz*_%QN^Tudp0D;;A@Tnm6Pah z{tf0~@8IoMp6=2CXo>0<IyD-mOzX&?bwlk78WLr}E;SQoN$hI2S-QOiK`}GCRUXG! zs0!eR&=u_|!86XdwIRP$_ul$?`@km*I`OGurZdfEmL?#lh*AV<XU+0!mb!Dxs29xL ztv9issF$1(Fq9Lw<e|wYBPyE_V)dJ=$Hyyp2_TKG3;Z4(*bY%i_AajP9)&W$;06PF znp%^H9T=J#&VXbumKQD!*7x_1_RosHNxMsk$c{TN+MjLKm|{^839`M`Oq7U!eS3Ma z>C%xMnQ2|2+TTAoJ=SoQvuRN3qoTvJ!_86enyzo*A%#QquWHRAV{@`O+h|nN$QYFA z;_Tx5qP{~%rc|}-mg->t;P9Y4>tHeDFw&Q4b$on^4lu2y&CzzVDZNrtri;Vv$wgBp z4zvd)I$v!r&wF&;^6Z}<Y*%Gk+Lot;fW9#M7sp2@JZapz#?5Mbamm$ZM*lE)Jl}4Q zw^1o%KPbui9F|eFKV{XCs9y{iKpw_oaFpgtat1HB@0WfltrqCe4lj7`yD!P*<#v0n zVFW885(b3<y0dk`#sVyK-SQkC9$xOp@=#>ui*tIgy69Wk<=N&mx3bIQi`L3mz^F8< z^Zj#;#aVqO>lWtd?do6^i7*oKWjR~He`wVt8wSAbvX|Se#awRSKPAONO#BB$*<OIr z#+FP}-IAP~mHz}uC4TV*S)H%82VHlDPK!r7-o~IxΜjA^Sl&&flJ&pU2W8QMVY- ze;n^?1N%?1P2=y|UoIckH`~X>{lne+2N>8d%YiRA5_xqGAAc)t=JMf=FY9*gr$!JZ z5Wt<^cH$FV2rWT#!?<_f+)gA#jEek!w0@=Y(5>UE10OThE1?dA{w5w1a!OOnk} zW@7ZCpc7~I)fPqNQe``<Ed}fB|HNI1`R-4pq{|-YW=K#fxxLV&N&hY52b^_nZwl?r zaVJ3OGMS$N#x34u-jp6p7qlcspEtkULhFSz)68l=rv322FQYmicP^9j(8}JI(FCl{ zeRp)c*}ngQ?gwa2x2=x9hq2#Zepr~Gy8Upx4>|IaqJ_akGAvMd{_z8!+NyB?U-?;D zK92*)6I<Yx>su)B6Wkw;enfl@eT7{K@Ss-abXJcG0%!pNz|}3Rd7yDUiwu=|e$|H( z)ZKDM88roXaSh9hCDX5<0U>j<-CXf0#2vhgHa2c5^(s*OfGgp!x{J+K(u}<Ps2AeN z8-=BP*b_QfUC&W6cNha-5*9U3u`tZkIVhtc7JFGv{mNiJ9_$czV_qb%9w!dH>hUDY zTINJLlI_{g&ia284;%dN9&k&JS&=smLe%y%SUvgKvFGu;m3A&<Bca&TPHV@$!zLYi zf!OZ!4AsbsUM?ok(z?N`ok$p-!V22EjVWltW?&oFnssg5<Y`ue-QKk*%`8Ntuuxte zIZ?EiZ-z8eE38FlVSJ>A9_@z*)T4^fglWGBDkx~{+SOo_NM@2|J|GB^O))4&TY}#V zCH;QF*>vQLgQ%)0jk$ifd${_wTrJ60yQ!ZvE=aCBj{b+fk61<|sbO#p^E{6lbW-uV z@P3imjtvGH8`<Az53H$618PLT?zXb#?k2tZ(z>SJYjdi4TEc(ePE~sL-o$HKwsOrl z7NMS@u|cp{O?v`LQlNI>{79F#O(~mZL|Dgs^oR|W6qfd(bUc!>tZL<y0@##hXAYOn zR7cnSjd3>BrWtcv+Fjx3KNSaOQX{dMc5E(vvr>jV!!iR?3faCh*5xjZ&Mg4$)_pbW zD);spsjp*QiICPuDU8J&{$T6M6#jQ<UGA=8Q_rU9!$!+jv#zp<(@1?C>q><DxveWx z_}`^<`5SUgMH};ii$q_|yvik|M(XRBS0d!kZC;tee}40_6$$TuJ$~p^Er%ekOXqLA zkMSQ$up`-EKI|jRW~4*@Tud)6m0-&4wKUd;+?-|DBIOZPji*K`T8$c>v1XI8gQ6it zNYN-7%DzZyvUSWfS}H#G3&I8w%Q5QBQ!U;35MEL4ktN$m#tYhE`FS@j-Dp%$84f=y zV198%m2Ady2v%J?MxQC7#w*)l{W=y+dG@fx6KU;OzwTk}5hj%|)-<e_@2csp)nJwJ z)u1VzYT$)(R|(^#_^{yK6pc9cknC2$m@KJ)v6f+Ze>W|6h2N^;;n$QL{#|ztg#7`r zRE6EHz>jDW)W<s;!d8SG^xGA3tA~eNQ*y{<FM+f8sa+0kFGDO9bKDj939<zHNiFTp ziQTl^6@IIVhhI~2_@A*U!*9Ka<syc=f<LB8u%FmC;`e#%q~os8TTMLlnvz4m`xX+v zQ6!cM`Rxk)kSM`@yvZeOO4&ujU17J1c-S>1hke)mE@4+oEK^~(E9fJd1oQEJoUnmr z2mN-1-0I;W*A#->Y&C_OMb>b{3kOX&JTjX{;FPB9GfDQo#v`3bEph2SA2`Hy(8mw! zO}UI}AJ4k)%d6|Kdj)oNTs{5rZefn!qHYxY$FT-YR*#R+5&7-i(|7M=Me2LJrbO4S zzSoh(oV=#GtG1`Qx#|2PToMRZ=$O5`>rL5NEK}?45|r6mfsoNiPx9-=h5LKhwz0mw zfal9~eIIYgS!XH9N37~KsiuV|NIU1X$vB?w){ne#+dQUvc)Wj4SLsb}IXbJ?C$z=S z_l=y%UA=YJ#|2*dD~tAWeT1M@Z%t^HZROTqIR{z{Pc9Ud9nu{lLBFWId4Snwc=H|( zw!d4PUw?e~ZUqq3%_*aFH5D@1IOU*=2?lX<m(In9tLqJ4j1>p%x}VFC;^pPKn_Xqs zU7=W|n2YLPw_DUZFuGK5>CpJu`(iG*pI%NBDR)^XmAcb}vPg=yFFBU&<}A16#O&=d zrv~Kgc{Mk2KW5qal`N3&Q5)?a*f;0(um;Qq8B+?;o+|X_ZnM5#-raBcU`f*2nv8o$ zL{%&KmvAwk-WOH(2`<6e@?{K$jd%rlR`>Gi%a(R2n<EEy4o%nHSFqC)Yf|f0omJc= zqk9+k`Km}!)hqh(scgt1cW6|ERnztL9WO|9c8#z^y=;Qo4zQ~I*wFJKjC+@BFnEI0 z2}Qrn?+%Nfz;Bm#59KWWA?*QN!f9bd#O8ltz901Fv=O65sdu!E?;5tneFx{cmc@mW z|57%+EQq|Uc+cC$I7V-3OCwR^Qx6IDNzv5KOj-C_Yc|Wri-+<+y`Ifca}^KN_fe%2 z6x+qiY0I<Y3%HpYVxxlQSQ;0GZ-t_UmT~;_!LY3D)wGRSa_FA7^0E&C$_8wU&k6Rj zK*3;nyL}J)#XfQC<4p;VA0Do5|K4km3F~^}yR`7!>xgpX+-2wH4mG2C&+k3T^7@XI zDeC!~xm3;Cg+{)iO3lS!=3X#YO(LpWdB2qf3@x_VegqxgjHelta;M$YQm$h6xxG*7 zJ=F^O4R?yQuNB2OVd$D*rw7qm6{PxZL2`f<KWuSx=(}=act$P6jxqL0+JCj7OaFO{ z-Q(l~iIX4TN;z{}Qm+eg*IrofBhm3o!iFOX8!8r`K4Y(GjP270{F0zRqsvSs>b<d< zXhd5irFpTp33<&(l$xf!?e#h4!M;iMOT)%(n9{jT_fngtO%0S^v_u%1*DdjGp5^)W z>GKvZ1vTeD@sJE}m2Z~#>d5I^y<<x=B|B`?9_o^0xI*3^Q0BJIxTQm5ub+fzOZ;sA zw~bUskAEOcC3sX1Z?Bo6+N^z3#{)>ShQNOIBPBFRVol8Ut}ieea(-AYXEo-#=({9~ z+1^sz-dGFnOO;d|eMB3<aDQkZojq^SNYV{&?i{<1L;i7LFRx7oz%=>@181sJ23uIv zWp6)(=6wMv3kna*X|$W|`tjq#jC0t_xA1>FCBj}zr%1$!=?4jf-YrNHR4JN^MA&B6 zpF7NNqXY7`W#{4-d0**xUnXT_LnD|i%@D{aPxeY$PBv!ytwa>WRJ681?ja7HsHXsp zVJm8nQP#!hd@(MXU@YCf7P=F+&1B=FgvBBjb*NI^!fT*EROkVgUR}C9b_Cq@d%Aj^ z{;FG`4C}Kwto;V70k_raNQ^`@-Fv#byMDUjmqn^0bkCxgA^vF?;@6N@TsLLFN#e`( z&DAx`GAv<A@)~ZC`{faKkNmLsCvePv|L66^zu@2h2kfT*Ve#`f|FV65w_W@{|JTpo z{IK}H@4#u?m9PKj_WINI>FQ#=`0v|~+miO5A7J!flKwknS^Nv!%w4`d!oRQ=;o<7C zB>m?iZ}DHs^|XusdUN-0S0zgok$(G^U*HyxYs!eM9XUE)nh$^a<r*hqA8yvy^|M^B zca&bQhoJ<Fd&{#=90e3FhUE5R4Gnrz+ss7f(d*E+ux`h{<+Ylpavx_25pXX07N#gz zaeR%fT<{A+y7)QG?=J#WKG@MRAB|WEtgBzk2y)L%1NWbROQJNkPBULwGwqdw&Dh-3 zi1*eHuvtFFqRy7J3$B*SE*rFzB@XckaI2#2(50=A81G0rO-Dx|KYxQGJ&mqld{FLA z#u~d{KfrNJGzJc=9?8h?E?_O?`6Ijmgsru_1q6F>%!dN|-@YvGuh$pb8({YT{`B)V zkm=`d{*}?tr3fsN+3IGP0KtOFHk-LcyxlmK@)q27lp$nP9*j=N)i7jQi+HyU)f}H` zFwrW*{;eH07%ed{m{tt4CD?+cJA;XwXQQhEEWUQu)s+@4r`jx=F*S{j3WDYiWzDRf z1F0DmQO!=901}s19`F+JPK}UJO{+=yk~*n^8$gI=cBNDiwpP><$L!|=9>oYH89t@b z6r3U{*1+~x%}{d?*%a8t!lt1vxe}nO)CP${F&k!KZ$Wl;CZ(0OR%1AI;Uf(M&-n$- zEWc>ksRg#Ueq|Kev?|2CU)|oy3YrN94>TCmL0etR)a7|;PqOpWh8JeA*qusIlc{%( zh3g;g?#mcv*vo38@UP{WK$5TcNxEZO;?olzR{igIvYpKM-|=J_h4$mg#Kfgh*raFf zEtr@yB@cAZZN>VsPNbN$1a@>fGgG^GZS6Yh0&iol2Hf+Kjn9h->&yDEX@1vSqS;pt zYgwln*2;&eu$GFi3-G$StNvdYmCzQRQo`{8IetkQh!6tb^WvPycO(j)qk$>1?-&0O zF4wLLfDm&DcPrOag2^#Mz7Tpn@}R3&2G|1qV}}%=iS#*f#|yoVJ;dzYJG7IXp<_C) zIY4GL)Bb#p?(UUy10zNV)9PV14PMxMxG$Hj0SypHw1fGm5N|*vW@JA4BA6O-jcwEm zXp_eV??-ZCc3xw#pB>;4&4rXIa1`{o%1i7IRoc-4V=-phV1vK2LMp^88=NXe&loA% zo`$=I`oEQ~jLngPr>->;(GKQVrAVz(ZK9l!IW`R;h!*46rJ$mM&>B@zho-)a>q21B zFqL%L(Xg6=%(Sc)N@rS#Xvea4EXdfj;29Q*EO@t_pt(y;bXZV@bb=HzO?2MWjNpPV z{40qOV)WviEj-j+90t;Mg9$?0?yLLu^0fR1$Qs)$`b-zU<cjVe-9?$DWQ|hRJG3{E zA*N1<vXoJK`)cmLXrKzuw~eT{P`U!7t&|(5w{fgoo_i~-cWk4f5Hnk7TLvU_Md-B9 zoeJUFr*Dkhg6fPbca5^UQysn7H$iG9%(bt#;}o7J(-sgsplc@E^YR~C0nl>&eHmzo zG-xQ>&15^EnJYz$)!iUzerhVd`0pkkt&#j@1%3dQOlas0V<Z$Fr@i|K4-PTfI&?9Y zhxv@)@66L=L{^r}pYA?he2|mIi~IHM@)ray|L%D%%}h;onMMU|(!678u$@l|L_A%; zl6cpPYd8}Co6+x{XlqP#qES!15U8W3iqI7$J`PeE6yhQNT=wj;KWD$T)B?%|&0@Qk zupF`cbOkq|UtQzr4zmw=Djk<b2Agd8qD_Ena-Z$9v*x>P8+Hh`Ea1=EB3o-)Yi4R+ ztRvwAL1lZV`wkm7zdW^HL8(t<@><cd0G3z^GNGd~o_R5b?+bUj0x*b1Q{aZh&pVqH zN&HzhApZ|IJ+c26+DI@?&r~ZV$y7t(eciA(`K?6RVxPHawBwO(njt7hd&M1G1Vvr3 zB)0-5d1!Mz+@k=S`ya}oC(eTz68*GI8lBy?MirZAky%QT4eLBqXaUXHQbt!QB+wZ{ zs8haJI0d7gNC~>9meo-t&6^3Q9#)0Zp9m&9nEgkHU7%gpig-zzCYVy~xFoQ9W=^?H zS!R2O(i6ZAcd)MQCs%orP&@>gX6*~y8o7z`eTWh&Q(cMdJe#pamUlmxm57<!*$hRq zqs^pAFU3zEO7I{Pzn#^PY8kRqLtCjfPB0L8r4UT{CFUU&!8K%UL6T}6J*(d9xkiqX zAoi|SK^Mq&ZG(wz&mz=CEqncJ3U7MZtlL3sj(hH#Z5-MnL|g%gEVVQnT5bz&SF%>X zu+0qf7PiYPpzK0`sU%sAym^C@P3=JTRLS(beyGuV*<Z7K*upu^r*bFu;>Shl0`Y&u zma0FHBB`3BNaeQV`@BCsTz~iTH=Fg-`W=4x@$u99zka#7{^2i&7w~fdKW`s@dh_Aw z>Hgi1KYsrFdGGV#-rd9dA7LeNzhr*1fJ2SfKfU?O!67t|H;YeK+t2@W_vNQIa7uD< zwm5t9m%}aax?ewiSZscJ^UueyV{);7y*ygbe_&JXvi$!6{r`gh#c%Na*Ec^BgCYxl z{rpXxBX8=uRG@+VPf*$e*gjcG3nhWAl*grXQbPPK-;b8~pIN27y4}ELwx_!Xe&nFz zfsGB9VICYTzLCY|+7cFv>W}G-9<|jS9P&=*KjdhERl<)0R_u7)Y>#}z1Mj@IDUV+a zKG#=l_jho5_v%;NyjGe9>~4YuAAe{Rz-hN=yHDI$4`X9J<h2N2itv?+D<82B0YyO( z*xOjQ{>ls2JkG>;$Cz>Sl{RUx23Z!xU~CV1^V9GcwzONu#7YJ^wU--qay+^bzx3Q; zO*M3>$k{!aF#>n*f$E<Gj~DCvdMo?5Rf#nUV(PD{nkBh5E(#aL_OU*cM!q)8Vs)pH z2SpJQ@z)1Q9`A8t0qne-$f0&npEr^GW;F0{_f(E{9-i#OlMXa|VYthYRJhckO$XT| z{*Mv6mz7Z+Shus4Nn`D7<wJap8u6xDp_YhHf}?;w43<c7Yvlr(Y}tDGU&`E?$;F3S zxC%QBPWH#h6u8uid5s|y5&DzKHzwwhP!Qzv>iyCZ0t+$%Rh?C&8$mc908(G0OJ3*^ zDerY_EkrKAm63EhmVShZLO5fb*q}>+5-czjVot7Yo4b%(<NQPPP;0HyU(;62)fY7F z+ci|ax>Af#VI-e5ut_Y)E*3c=@b*}8&b3COq%oj8AWzm68?>hWhpU_WyN9PWZke|9 z;F)vMlF+5Px!P>xoyI7W)4H_eUvi<G)}=KLDraCbjJfm+UV`dQ>CfN$i#%;SqI+^r z&o3_%=-^#mrIxX#`-XSr!0?JM#c6V9Ddv8iRG0E{d!kEGMX#?UBolJF1|%UzwUyo# zrhaXUQ`6{LMq8koHZBr9v!3XLMY7jRCIzAg&J$uP5K;T$@VBHeF1IU+rRjo8FQF&8 zl!DZY8k17cOXLY9mZFflBH)Ksf0NHDUvu|0$H&SO`9*Vg-(jLWJr|x3qw-Ac^p|gK z5hSIxCP^9F5<M!O=u!$|Zw^e#L63STv{()zcE#XNZ7Ez{TNRd~TN(8BccMorgSmn) zDFQuQl#pT(kk*xezO)6fIj#OCe^-5aoIBBhsz9D@Oth!xu@g$J0QXFGsZRLN>W-gV z`>DCRn$ru~iF|AY<<wV~6y}XObS7->QQIs@4`)X|^xG|R(~<R5It94eE!IWt-58kZ zcV@v8Gq7CFBM3e?KhVO)2+V~(?WRi^oHCA7Iv%a=pvk_aFH<I6%uCF$blGVdVnl+_ z1R|No8b~560-XRfl2^(f$Ow`Vk-R~TqYkbO8L88&PXkr8U$;2Qu9k1R5yl?Nac?&V z+1=h;h)Z9VitYBGLdpF{O5E+igqZwxO55!<gcf~fO4{|-LRx%QO4;?4LWvJ~rlcKD z1-nRKDsQ9X6|NW=-NWb@#?hHkFrkxWsBqIy(!fMs;+*^j9XZ?Mc<82|(m<)j?I05g zoWe8Ns90{TJ4+@yCwe}sC>>k=4#h6{o#;~PX(lfg%U9Gj7F7;v3@mDSarFS(dz{8n z+Ol}$41&hLVpR9AoYSG3km;Shh)Z25Zaso~0l&@`rOmRe1d!4?rGlT5a&BNWQBIqO z?EG;+u*BUiDH$iF#2FQROS3;Ex60ACe)gqKt7++x1iuf+F1AwDfesT=!gBFTfWRyi zdAnLHlr55_40)Ee!`Gz3dQF$T$>#H*Y0L7%4Q%t`2}^e^N^#uAf{fa&4ao&4NW(V6 z(~nwM{_KjI&{=yjGPx{?i8vm{tPJrKm9Z{EmDrb)RgEbYwWjn-OL?lTMZwF~+MM)i z8isOUbS778c8;?(n^>|Uz@#VEXXKcS-u_Tr&j{U%e4FKsbz_G4$OwUkWK)|oRQ$P9 zElT$SBLp7LFhZarbBln}*S@~h)KbdU*VU>PnPh1>`N#-?{*{anI9uC^s{IZ|=q?r7 zEU(}1?g@eBSw^UI9Xn!VhCU5=Ji`cq>KR5TRJFS`?X8+;$Ap#onVt~nU&#o8^B-)4 z{`#rS^2_z^RtPlDvO=Zn7}6Xo1Rl?@LZEtv6$;h!tWc?+X@x-lN>&J*{{Sn5$(&mr z*zIk~VixQSs)GsBzDK<<kv+@$ENRDv<`^Kcd4>%V;WNz85I)ZmErVwoBe8fTdnD$+ zr%CQ@Z_Z&B>0$eLe+T>fKk*Q??nH8jf^@inwf+xfFNEycfPJC(cfI2U|E$+W>Jb_m z`bW9`&|V^l_t3qA3-Qe5(~-@hDG=UMTXxJgS+6c1);HTU3G=2Ycjx~GcO|DupWvMd zp6smn&D){QGr%dLx(`MmrimHaSeb*lJXoFo^43EtJHB8N>D}V!VDIesbaixCufvY; zELSIE9>*uJC22r^bpFfXK!wv0EvUa5(DI=zDtu{+)g8zn&0cC<rYb^&ghb}v>n4lg z4HNBfCpL|CGWMK4AtB3Ugp|D}u)llz@W@RtlVmeZi0fuGGD)Rru_51t<WX)T{PV+_ zx4mdd%cpk>Ovq&Pk`2?_yDnQ!>NCzV7}kYx2db)=X6TD?d|Wmotn6?11_!Hdyj3_e z<zA{`iMyM4x>OM-KZVaFWNep(sI%gREeM&eyryu8OgSi4n63s)Lz>Z)o@<abGS$^Q z?U1t7R~~$7%Q)&=83&!h^ARDH7>7eWOS}p-0s{Nu;NIk?^~00bZLtXC?-mGak~NnG z*I}o!%6Dg5JxNW*Tn?R7N=0$fl(Z~cE{pGjPlYjDlVx)^%lq89&~o0WgC)cwPY+kH zBW&v#C6JO>=H(C}spiaBYAAflEUEtPrTbo|R!nOlETpOVOhl8Z6_A<+%g8D{h{>|F zLUa@5Z+H|I=1H-guoz8skOx6|rdAYG_V(%GLoh$B8A==p5(X}hl_RG?GFO3j64Tk1 zffZ;hJoXl-G#;TVhfi8dFv6OO7WBNRCR<jn)FO<mtjZg4S*A=_?k$Y8j>~Y^fO7`S zxAGK4zfDQirS8HA?fZ;W?v%$6v0_@j6&Sga!P#DeZJNu13-?o8F3SyXp%vge?%WhG zIh9kW>5aBNkSHN*09M4H1(1w6=8uwE+qZHWs}{tJlqOGuS8DcFOlHzvQkJ8UqmIm5 zft93L2KAHYX{3p*^o2=|fvhwOikey{r5e7e<2&=h%xL&lPI(~hI1}gq$CyP357Drw zxg5?BirR|G^Lc4@gf<XqvrWn!WcI?tAZ;K&<eXGtoZo9v2WtlII-2tCL#wo(!E?8R z!G?b}+6xl$EMA5i%|#TeqP=k;Th4SwFSQO2Yq@$uKq*u|-Sf8N#LC?a>cZw4;h&Ec zWkFP$m>n>t+`}L%aBot*?tbKG_}3v`Py5d3G3w6}cnFzFXmlJ8BSk_O36}jKrhhb& z2GL<MBq89lp(jC?h}F)r5!!TurFsGf9>OMBy8>;`*~rZL#8hmau`ARCj*Zk#)R>fZ z5IGL2)&`J`@P72zm7hhBBA!Cd5+A@@Gd-)~s4fk;BuGIP{V9r$yv&?fT4E%btRx#% zYbaUAj#yZ3A3<K8DV3%HRCN0+Pt%(&)2Izsp{*gxEPDe(wp6ABQXP?!99V@ic5+#P zI^gJ;iyLz!^I9U(4<A$O>d4K^#z;+UBA1zD>`3gGj}e+%M<X}S){)xtLq=@Z8Id6= z#xq=zqbS~><A{v(kvDSeWE4H^i=26x=@#P&jRGBeZD8-@v$*46u#{TIwnn5KL1m*` z5lExLEJr3P@5HUFv{iUvQ@uFVgOo07I#yuPBoc8+uB?2WR%7Mm?ZJ!8^JD_mVMZrt zMQWywE2KK?<;uj0b&aG-o}tiACXfmL{rNT-5xY&BXbP~04~BX)J7X+(JlJiAsf9<- zm5MGxcpMwcY~*l`z@-(H=kwC+=yf2{W}B2d$n1rOaqB>S$T_LPIKS7Tj0Br%t;54u zTg~_}X7Jo!eMAg)S(Me`ZbY$`M6=}ZO=t8ad$kcUl;{;l#KOHDPYxDQxzdYT$r7u_ z<&{Uop#SeTA}+#kARDdfbw|V?HtSGHXwpe0V>EQ9Nmi<>Fn}(b@;jX>$;`XTL~Ne1 zE3_AhlGJVx8q}94P`HKm-Id-6L`nE42JOh7jzUYk@L15!tqNnR&a%D4F34iH5pl<y zSXyEvnXDum0ZW0PmaJn(EG)N=ATQ69O4D#EHc*zQ>A@y~#9p>krbJU6k&--?*vVxD z%8;dNE^ff`^+&`VvoTT=n-E}iggACYWIU#%9rH0lbL(j2=Gi*<isy(`YQ%P(kt@P1 zSL7&)H|RJbBYotJ96M29+7}tn#TW<0mn<Et*6Qx$v$*4!v6T9E8WDHfj~%^z-4Su8 z=~#h-wnHPuISogk?6evyFK-XhY)E9DC#ySkn9*dcNX^tS8WP&em5CMW8cCHrL!q5a zAQS$Zj)>g}GOQaoPz3RCGjuW|)soz(fwbdHRCE!-<Jeec!-8{6ipukOX?FBF5NWeb z${l3(!o#?AAV1`sRAHRoYf(mmO|{nHVW&#_89et_9}$CH7F~3>8&Rx^YL*<n>5RT) zuQnov620PxSh&B=h#0uP@`$)fXiHF6p}*1^aS`?hjEF&O=`f=yzut%#1a>;rR~!+8 z&|W0^JB)}ydM6Nl^${_M&aDb#+pj+&26>q|v9v*GR>GUdsr?2NkYm<z(!66wEG&<? zBraolc_#9{L7IkBv8}K?O>ca@VYJH{G1gtaqQ)XS!B!|^Czmax3|YG7Vn$5EfL@0y z7-OYbJ90C#F;WMn<7FlpI}$tQV}$0`A@Hi)JX=R<&kq@~uQnov>g_lpBmEUe!~=^q z3UutXfxVN@;*P_(QtIDnMBHsZcJ!9E3Mm~8-R89(DP7idtiYs6B;t}>8I+w?W98-T z!HdlEWCGQ%M!#!CYNn3!-El-bFjOnGV}ZV;olH<v_-{HQ_SadUEx_#tWy~8PFhkXn z+!P*Z$C(In5yAu6fgH{;DJswBrP<-@K%~t!DR+?B3l9U=f&7qjQiXATuSFROHq~0k zhn*_zXYkx#eMk&;S#;6yZbY#vs#$XQrZf7Iz1ol%O7x0DV&UEnD8I%cF>rt7A#s(^ zmf))oiHop5U`PyNvmW*JhQuJS)2qJXkQjvaLebx0NDR_Dk?5-ri9vL3RXV5|toW7Q zUxuk^97kTtjQGlBRGB%kv?S`1@WIMTvZazbcErN+pexABGo{ir>WXfk<!O53^9?|| z42iMse%~Q+*Ie9)WneNoOq>_gbM~Iu7^#U(NL6~7Nk&_pMq<Z&jL_UV8o7D4j?|tX zGGbqCNDS56aYRP?D-MYV7Ht&hj3FA>JNYc`IA|=T{+))z-S*=LQiBGx^N<)s7L$)o z$qG!Ggn((pCAl&vJFUjb%iDt&ndiv_s$U%yQ8RU%?~X&_fuY)hb}Z1Bw37*n3jc-c zy)Lis)=zjnI#nY6{ceGmsJqhG?B-^9&QD*u1ofUi&fnhAhy0UW-0uEo(iTo4)JxvW zwoWKQrm~!@QYxdjk|mlqbX9#NYYTu>y;6j|=mm4wU-67m0M)Zf0dy}fMc6-pmIH6~ z=!N@=PHR3MQ<(I5Rw;n)<)w&oKBXAY<epIspn6s@fNsZP?8%LQrZbUG{YxVx$C7Rl zq!un8-!1rS(rRghe0N*I_ou51B9xD~lvTct2;~CANUGmQ#B%#zB-ZaEVtA`y%RN%n zm_Clk9-%~k|0PP4Clxu>F<2}r|16z7W>E)U<-;DNlAuceP;OGdy9Mb9M>Hq8qi}&v zSbm%LX%9<Q%iKP<k@0s-DYLLGMlZip5&!A&<9&I5@p19pca^t?<@?3m!@{Hz7~g+S zVD8bM6#|Q!XM||jWFqCy1}6I$_Wl7u2Z#_Tj}Obc+v}z(#dwgL+`q~1LF;9a{P*;A zoQuT;KI8lV*IItJ|HFd+OAn#qvouRQS6JSHFB5JkwY`FpbzS27UgbTBck7FC3EU5h zy*3FmMGK`CY714uP5fI*r5|e3|8(_u1=27Z6+|-y<sWX=*N}~&{jlDc*FNE@eV7F+ zpTLITt=-iDzJnug**v^IUmI-p_D_$$&zuIapn^q~$gsR+yNKLYBWAE>o$*6P_#jKe zZK#`Z*H*zc2q2g~FAt7MJlh%E_?Z>_^YWOl7L>;>@&{i&FX3(a-^{(Sa0_V853cxh z8OxQQdCod0VcGb>IXEiJ2Q7@)Q>Qc^v^0{j^M1_-EskXDl;^`z%Og2^1^Qq*M#<YN z(aq<|_h$V?UK;7KzA<W)?83gAA099HWJT1+On~H5SUVz+Zwif-1AiMipFU)jXoZMF z>j|*TCmHjg0s1W%82{b9{8Re?=TD7q-nq9yCv<-Y_jzw0mT;Hr?GsG<sXNm76~4e2 z-f3#yOAd{>IAMlWuEV@pKfJ%XEnX_I@Edqpu3Sxg^NY_ucm?m~fl0mu5-EKu=e#3F z`{b1Bx+9AF?v!T9YX(|wxOBMlCKQx@#ie&dT>1gw0~3Dn(kLbdtOum$9hr*6fcCm0 zmhl)+E)U2#R#XO{955)3MnLJ(JuHdti<ea~=~A9E<u8G<LeeF@?g$k`x`fL^4+!>; zc?&sYI2;AR(WQD=64e(kN5JUPoip7pfli?45?*%%5)fUo<xzlPuZ!5z@`!<OGz>(a z?t$sPcv%WXpYpsTQNiewUU!5t9DTwiha1vRdT-c)?>J^S90kGArFvkhFJ6v-(WN`@ zNE0Z!gx4K`1VoQaA4RRhfy~+7bN6wt-G{q0KJ9Yux&OG={zGU+9mqX*Agv@pAQ#3x zNGpsTL|Q6w>b3BF&k7J=9|DSTA0ow}z+gbhoe1a_C<TZCE%zd=RE1+e%-u*Um_Zqk ziibAP^c)5tgB=3s$Q?;Qrc1~@3FsFH6__q5cO|XNic6Q4`;u0yz|y4@XRWC8{4HRD z{Q~I6y@|u5OUB&^s20c=kuD+kC#^ieqf5yhN-L7k=+cRouUK@QEuev23TVe&ibtbQ z$bAYZ7YGH9J}Gx9txQFvPs_bZE0!_oQ;NG+RJxv*`xVfS`xS>tmyA0WP%V%#B3(l6 zSz395N0*YjmR2O8(W8TBEM2tyZm}H2%kb2Z1nHiRdfFlFgV25nGNr#AQlAU;FOgcH z8Ir?HH!0o-Cwzv)%Uc(GBSt;<1EI*RgzTP7A?lI>LK3wHQnnk=vP%pAb>td=y3~MA zN3`P8rCr{-U>xA-`J)1k1n{1S!RZnLG!nxHLV>1B3cz$^DllDIfTbgrVd+vXZ(U$s zK<U>Vz#`$iClgruqyP+&f?+#}+NuU}0h*573Qb=$fYT8z;Ph#iw=Pfzc)A`6z>(nI z6EQelLV$({0U9Swq3MzWFddl+OqUj5>4;@mx|C+_P)0o6xx**S%!3}xg%h(xN62(( zA1dvaMy7z%r9Q9JzqHhXPnVqbp`hZ4aDu2qJhdzj*InMoJlJ9(5QedctN?>AD!D-s zxI-MK+*(pXu}A)3$zlDWkt{&=7@S)MseHk*#{srA))J&D5S%^wLe9Ovfh!wuc+g5u zs-Oi14BC(hLMKd6@5qFmdK!wTE(oBoK>#Bg1#qYi!YF)Fbr{AWmjWh-2^P$@*Hrz{ z086i{SO$8*a=-(j6dtI1<e^XwxFC|k1(A$gDv|>>2&Aw{l@TBZObU)1PgES+Zq}n% zI%!2QP!oy+4v3*}K(!+W#&Ey`5fmPXVB{eP4wxW*!X#CM@Efow=y4ce&`bJZk6-D> z6~92w_>FiVg2Dq8k30my5f{WzxFCj+i()upgD47{R2fEb#H8TJF+;_%?YKRPrQ25& z12v&I;D8tk2UI(9U<?O55JBOA2u2=);D8C@CrnaB2){my`+^=X0K+zl^=5N*`@UK9 z66|2&p=2lQVC0+7vLp2KgG!Ic2|X$tWlwa)FrPW8fdJR(OYaf2u@db3I;AKoX#Z6) z8}&Ja9QRy=T;#yW4Y?qG!UgebxM(MmEZ=E8Ad12V>#^aZC=L}uEQL|75Mw!HQxMgD z%pltDd<anP!3faEKmZ*uK|F;Cs^2hCJO^wLPGN&^Hf$=K13rkR@X6H?GzVM?nA)W& znEjrJpybYspp4`M<$whODJ)R)hK2Mi&7!imN@0R9HcSM@fhq{1aLH965C=R8gxaH3 z2nXE|fyjLsffyMuh$AKlqcB0;8zutdhz;7Kut6XjHVWj34?-z?a&;KW5tjm{c5Vvh zpijbHhPyR_GLjRN0~QFRut3cl77XNo3Bo8$5XOdyz&PN7APSdU6#}u(14qj;i(7-7 zd?r+y6OEd2E>$C)$b)d4;DcByA1pz`hryiSgn%k1M6}@~h)%FVRFze(6u~;ds92{= z;W}vh9+r`1M@<tFk%b~VU_-zP8!Cf#96UW#fgLa+T!j(g8W|Z}2b>62;gqYSunzbj zs_MOEekYl24%W(kn=uUx7}LJrhCNoLHiZePADIZE12%-GupvAn8^v?LhtL#0xjKyI zfD4vM9eBlZ;B(nR*>y9TfrX$sVncWe8!A9#qj-)O5u(C~5RHr~q9aa(sc_0w5==*Y z5LNZ(it4}#W4DA8#?_w&28`)|2_eee!40V&nFyi-HiW0JAv_}+#dE-i&=fwoI*jIk zOTiK+f^lNIdeL@r*f;l*ZU^Em4+3<+2k|s~um}ks#&p05AvK&3)P$43I$(vU8dg1} z2-yxJ+>e^fqq~D)H|0>6j-kbhJ0oB43MIE9-jWjBJ@N-j{w0w-F?hc@w+w#C7znsM z6|OCZR0YDcM_<TwsH<>|#-;=s4{^bhwhS1wArpj7n4sQ43x#gT1_2Z{sV)lOkPpHr zd{T87#vzx2MF=y>9^OG%fCebh1?nH@1<L^sgi?5*?vV$#^`Rz+q;N?!sYni#K_G=q zs*C_RU{Y`l;RU=m(j6z0MM_kGx(8}PalipF6b`6%<iHpXcp!qpBh^9>956xrgh{Fh z;WuDW&<mjipf_oS5<#Hmfu8Xj@jwKH2Pz(U2!bOnh@o&vHBk&lY!F3ZlPbd~j+hi2 zLkRJ1G3fNMElcEpx(8}PalipF6b`6%<iHpXcp!qpBh^9>956xrgh{Fh;n!zzU(nNj zSSL9;-4IL`mFzl?p3t%*?94zTazc*^N7>q+bT}Yx!U1t>I0$gPLLh3wB3FW)Uq^=m zf_8%yvr(Tz$Z^jFb3+LSMsCOj@e?kndelSl8}dOEg-@=HqBvxPSPG+DA;xmZrr@Ey zp+U6Y`4FJogAt&SfdD#Sf_MrORKH;|qf>^(oua>O77d#U=Rh4qQ~2cS2$};fMH%fD z70iB5L{M^PMo>m_f^xtDffN>~dBZ~bm2P}MFbWg2%7%%+I8X&a6fU_c1mb{4fl&L! z3gMs|A`rPRBM>74264m$VH75)d&5Lv9I-)r6gCKC!$yG|@j)nsPp%F_IpR{l)DBX? z9P~-HhbAZ^IYBvKfk1N42pg6Y4a89nm>`V81YvCS5Euts5JcgUt3n|5dEjU{&N$;9 z;lW}lh1)vSjQU3&gyY0aGh(THumlYsw#o@k2&i((H4;Q8SRty)Dp!hNonTaKBTj-N zw0#fD$g-oRv2|pj$PU;Lu)>DQpdAMd^2JJ_5CcYpt1u#5BO`<BfD^$goN|>E)&U<x zRlT=NSd8b<OGU8XW=sPE#<cIZVIJKwA@w5@G1UPZ!gH*P;yK_$XbPWP9Y%A&1<Rxk zyka@B2y~&icbevW3oL<!pgCegcybQ_v%VP{#dE}n5EVvbp;4cT=!g?xDx7ka1k({8 zEQ|VcMRnkW2~!zvQ5gaQ#&p1h5EUk*eq<tu4%iT$!Y0>6@f`3WG=)#D4x>5XQm|}i zoU_}S%se{N*je3{2LaldX)dOXc$ReLgGEUAFs1`e2&v(OpeCFI)&VO-)v)R*MaXs- z_2$vt)nsr#-1|Cy7c1_Je4*bexfSu2l;G}>KUnfFiDc=mdJN7jgI_WR0&b53TwYd7 zkg7nK_UH?_4w)6M(b$wg;~_5eODzKiZO8<n6DFv4&_babvOxfaO{$9mIOKyc3ZGOR zhH=QHU=hNM$$9ibVhu3R3zmb>0-+QhsC(qWZG9qSn$n~qIZy_H94aF~4ww`iLzFTx zk6s8Yih-I?9E22zp>RM9BL~KCzyobjc%Ust9)jS23F0SAQbh>A0gHlO2qh-x(F=*i zFVHi7qwoO{6dtH}<RJ)-xFCkY1u=|V6vGi4L{ZqJ$}ox}CI!b3iA>C+7Xpi7pe7Ut zVFO|)98m4ZfiWELKm>&cA{coHf&(UqpD;-kA^iF*?hATxCVI3Vy<{isV1^^1Wk=YV zfkxzn9u<zVwLj@_K-`2wu7Lp8=}Tchx+z4i1UtWu4uxL3L7f;Hp2&h}wnAi)iyRoa zQO^Z;k{B+idc#FKk--!T%vc&eh+@M>Q5-6SSW2;Sg&4~ro1%{Ph6d4o=R<&U4@RaK z83>>QCWxmnLG>FZisyh0!YOPJ&W25ebHE4D6h65+g64or0aLp)1+(815tQ7S5tNaf zpd7G3AcX~L-ms8<Wi*doG`DS}VInXNR6!7hORfrmIN(tr)E=!uIOv85MDEK7#K?d_ z95F!{g$e53FcBC>Y|tKs4ccSFMu8mhK`4b!t`0*v;!?oW&P~A_^hxL|xmzPBBRN4i zV1Ymi3)H+}!9Wg}AdJEUVQiQPi~}wRqHxJoArSjKaI_rfu4l}n1MoW4jQU3&gyY0a zGh(THumlYs26KWF0;-&HjResNR*0&y%9SEmCm0p$jFaHg^XN!qW5~!tk?lKbm;<tG zs0`Y1&>&yJAt=Ov5#h=m2aWX`eGIMxP6VrP%2iTW2Yj$(>b+&cVmyytz+k`4We5xy z)4tzkM1={dADM`$4%iT$!iMZLvQaz-d<ae9ldHpM4!9te>cA_OBa1*6YUa@kwt<D9 zIbuT=$~^$gqi1Xs&k-X+R2UJWQJ;$Fh!bHdoN|=}(-9vmi~4g#b>M^vQ}*O+p@9Ko zI$%PG3KLR4G7&@vYzR+bLwH6uisyh2p(%WFbr{V7mx5(G<2*5s&NSAEwmb;X&P+4S zqkBGBgoF=cI^cwmmh=gY1l9p7MAfkBDMiS381?4S{o@!n<zWmRM2i`BhQ2T-Tykpx zTT;TiNB&^Rza)~SyXrAGw+w#C7znyO4%e1Lsse%9qc7w-)>XJhgHr-cCY@2~z<@y; zGC}Bs3F;l0u!Rn%5nxAu(ce~JWTOBM)j=4APpS^XIOI~42?5LGM0z2y`UiT!au8b} zl)?jbk31C00T)D4xL~bDE)~fE8w66=q{;}8111H>5MNA8q!$8<VxT4z2QdX=C>&7j z$bm5&@IVBG2O=1G2!aD9h@UV?6(RfvEDCxdmYAGKFC-SfK+pJ%;s-=fc%b5uhafoO zf*1-H#4vJE3`cAbMPZXF!zhlJ6dXegF)@)|2rP<$nou0X4Tzy|K(!+W#&Ey`5fmPX zVB{eP4wxW*!X#CM@awa<FX(AMtg{@QZU|<JN_N5yrZ^H>c7&ZNXhcrvQQ;_iqAP|e z;7JVxxLzR;wXqWH{5qv5Dro;zF&p(cgdF!=gk0pn$PKw5e!>OuYq)49GM-2;MX>eQ z@KF?p3L%!lC|8KF9I`2hYCmQW?RP!|DED9lXk;LO4wxXG!UWZCm?)kDHfWT>2Af60 zrouVkgJ=q$TpdAkz@>nxU7CW~?}-RX?#u|vNKQ}=SRjzX0yS?~NWU_gNH3aOt8ADE zj005=MB$RFLLd%!6bQ9Ps}K&lAp(*6G6FF&U=T-45Jq8wx;IP&#t|FaJ$H0bAV+)< z%CR~O<%mlGQ#&^WbI>PYFT>p$sUOJ+$^i=mQdl664GRWxz{K{^9X$lb0T%>utO|kH z=YgZ;IC(u|A{~I&xn^`rkq6;8G1ZJ%Djx*1;lp4~a6&+pQ?8L9I>8E2RaUuD1nUH& zVx4i;d3qupiEIoRStzo7M-9`ymJO9bI}RG;OE?6D7%(DSx#NH-zNAP?gX@43!77|` zl@!(iA5=lTw@g@!C(?`7?6<iLfdOOM_uGu9Fd_9L6EW2R8^TlA5T22Z;yK_$XbPWP z9Y%A&1+mnApkg_)2y~%lBE4W6SO}UUHe{i0gx0W8JV%TOQDH=gMtv%xBTj^=a3V}2 zC&6^Y2T|2dK~WtzVZu~~TU3U?fH55~Aw-1<sUMjLq60RBr?AO&Q9K8H2u<Ph|FQQj zN^<4Kq2R9^lOB_lSk10}cYDX7$J%=xA$d16*Sj}D)D6|+G`l?2UG1uBk~0k5Z{K_) z6Tmrjs+uFozP2o}`T&_o<O>NP0o2J6ZuVe7Uea>#J{P+PjCZ0X4rXY_QZp~4M?BPp z3LfEU4<=$MmhYfQ+1i7Oxav@K5yhPCK*SFXZrjgr5MuSPqDNo(HL=^(!*+B#xnC@Q zxM{xor{6;9=y&ahr{!e*w)t)Quw21EtB1)9{{8jpVY6CJHgB8vFMhL_wrhBHdG&zB ztM@PP<F8jw>qWb6{-yndA5v45*V>4fe|v(*b8qDpT>3IuE<V5$h+5DEh_BUh2P!YY z#;LaJJHK*Ug(HMrt!>v&53|X(WythEEx%0-4>`i~$jIAN(k|iQ-OXY{Wf_U`(ypTm zWyiQZ59n(bNu+}%41ewdn!&S`ARe+T-;#VU!76tFg{STb3Eae#Iv|`7F_vA>QzQ!M z`Vm1ZJ;`BxcOr1DLj>KmqZDp9BHG}L%YnTD$b)+YuwSuP;k*g;3U&$)>=i&B+$(_n zioJ@vf7C7T+Xr?FAP?>qz#iJIBbLVMQ@fr`HsV<5+jc#9*xatx_czVbic8C61n}&6 zAA(feg<v*$Tx`Kuf9xQ^l~+*E;PI(le7J+e0Q_HeE$%a{p2K6$LqOFp1z<u7B|8v2 z0J|p3O5<m{8=tP0^9tnUFvu#^h_Z)hV))Fpx!L{zZ>l%)z0y}w3>rlkYPMRg);G<| z+uPe3YpD9;dI5o`46O=qe0({r!c1771nA}tN3yp~_SHS@o)Dg2Oiw$B*tGC6^1LA9 zVs?3cIj=xTg9ernlD=0+IlDf)JwK};<*sd>X0vv)i3~isnp~cpS74M72Fl5huN5N3 z*B93(vkF2cV)1ahiWH15CnwXZ3V=|65Lxr|snYiG?Zw4qHv>LR)(>#ger*2sb~Zk~ z>~3CwG79u-g^20oYFalP(#rYd;e*<Y>d<_4dfq1lhRH~fj};0gm*e@#q|zl8f%8*J z!0pxT^=%D8WI!NU`~0oa{A@Zuo!5|Y^I#0$M-iN!oleebK2lmoh^%q?RB3yBGCmt$ zbas8ZnrHstWPEada@`4V|FmtzIV!I@O_#ejUBbKPqjTAb6QJzn^P}@Ooh@>xT!TM3 zKY!b#|A95EZY&U&%Xo&P3FKqEJ8mWviVH<F$UaWi5D%y5eRDUNuRh&0537fkzLsye z=Wx^28azET0QFrwKL@wRlcNzLV|lawTM4(*$%yH?ort1*f<{L4_f13pjPOf@Y#N<= zjBt9<UC~jwZa1xr*us{@!(F>xY$Ixh__)|Crc3Dx{jpdswlHVZg37S9c+kQxI7RYM zJaeivBr^^eh#rKtpV1upXE!&~7Q&)d|C-#|R7PTdFTaSnf&ZJX;7U{{;k*WPvuP$b z53B9#qv`hH4GT?BCxPBHPY)pS<wA6X!KTyo@3)KXvi-x&O&|=0zbz=)4NQ)k*YMxT zcDsH}HQ&IeH}7ANq7jnEwQ#p-!h{jNlT51wLm@F_x?Ih^|M#br&QY<yteWG;&kfAl z7xU)jWIjEg&Z$Lwc;!ROS~XfcY`|b3SMlR&!No+-_O6|X^*7CYv3XohK;GL4sKE$} z+V$wediC^}y0BdnF^hW{Wrno!NFaB-Onhf6qpS7f9R$J<KMK8{7GRwAHxXC>xjvB; ziZ1;EYp7&55cNV0Zh#Ob2MHGnFCIqF=JxKUp=nf={YNO@3Fv}Ms)vF-Og>I024lQ6 z&qLH4O(*k2ZAG5P$LM!#R*ZttzH#jl*!6PqxPfl!uX;B~sLggxvN)2z?hG0Dbd>Z1 zOisHZ&p-ui5TNqG*s;BHDBWk%t4g=#ZF|yYqgX_r2GIsPhOw}?uACnusv4=_Prk2O z3-!HLm-OQ2&DQHj;xL8cOmyCSb3{g@_?4j*n$=*9!x14U#Jiup1VesW&)VNk9v>l+ z``6$7=G*CNwcWs|^msJeY>w_>QS4{$Uc7zr?p;HZ3UE`~5vUib#^ZVgv&HQXBO0Wa zi_P|JvjMPobJUXc=;LI)Amg65x09#k_Wc7i`mXuz*WZ2D{O+H=1B>{)pilJqm$15d z4{KuchGuLqm@Iw-qOgp?+P1mdZXY){@7{e_Z10|?U@Z6Vwx6b(ckA1YAcrNz+r@_` z9xUbCuW&+)NE@`!_YZ#y)kjnKIHH!=Y{!}dBE$mcsh(9CJv}VI?^1?9szapx3dh#R z6^<~IEjU}yRPF?#2F6X++f4&5AF6FIVqV+=pVn>r(2zrD7Mo@R^UY<uR^kjHWZj({ zAA`&No75)LZ&ie_ScmBP9rDnVf}Nf>u*53O-_caNnLNyy5@~+>X$3;QZ^4bjO6~Hd zxt%P5g^mP5|4)<IcC~I+x7s)5?JX4m=@5k`vfn@a0y@6^;jta9ZeKHVsUpN(-@@Sa z@N^GLz%Zr(PFLFeAKx~T0Q8G?y@tZ~FaG%Qi>vXcKOzTVplv42M_7B9Hy-{i%!8YI zSQl=lZSw)RhQs_8#sautmxfC)1?tZK)q>l_McMX&)Ein-O`pLc^`_k%HUH0Q17QnB zDvK7z4&n<gR5J+E{{Dr4y?-J6B=9aSj!C7yWs*U=z-*RJZS(k9fbA3T6P%dmCmPe_ z7OV_3YCXAc0TT&)`ULNv_1Mb0#b)!=Zr+X0q>T+>88Ma-V;KRK(e2`M7v2A-cmcHJ z=?@Krep}S-zhzb+l1EtHUwm{{wrRF2<{7lxR}Z3sHSi$s?5`)YyOtRh%@<;*1-KVB zj9}Pe99YgO7XjaZnTx61L%<7MCxGU5y}GY91QBC1n=EIrpMiT7;C4`{yBco3Ma2eD zzF<#XsdrNYZr(LDYMY-m$IZ{1F;Wd$`->K>a%c0PKwr6iAdh-tswo5!C%ur&N0ER~ z`Ve1!g!mN<a=BeRLVN+tTml!FGghCZFq)yfF+euqS%qA1SjS7vDuN^KmYCIY?bT&w zHC0~rA;~Iz>XnmKD;i}<0lnSaVCr&-8p?gB>y;u59b&$2B$EOA7xZrfqv-3uy@k!Y zzg^rvuGZTLPD{um%3KHBlPJUOMl2LOGmO0`EQqjfU)x}CyLrPs(?Q^^NF55^3Q{uF zrU9(Kocq~ovw6A&KZS<y(6;k-jv*{@kPE1#L?gOu7qs$5BTStV`hNz428tJ(hgUeH zFiFkp<>Gs=HlESGp+O2N-Ay)7g|zQAjzBO9gZw~{ZyTx)m$<k0TpI_e<F~XE31)!7 z0>pASU_HUO*)-@!5Q8#ES|Dce010&CNNp8p)FkIpeom?cM1mKxRA!53V7d1Tp!$;x zrOc~80T(1RX7BO^|0bsYzY@)D$f7nd@}s+l;AXp+5nZ>-Cm4Fc?}JHG;D&%K2dV@M z6i>?~HJ}4DLfB_(>340#7ehBnOU4$EZ^n|$-x3A4Fi=AUvQzlS*(Mg#%m}cUFBSb{ zb!0XQ6G(Y$xT=;U$gNl3!P<xn-pQo6l)8XHsR@Ur4!r>aG|11GNzyA?{u2OHBwFcb zy*<$1)LX2=0#;>t{Ja~v!I$A0#NZ>0P^f!l*v3v={a<9pQS+}b*!}VG^B>VL{s`Ut zBZqG}pa1WN<qr)!0^8iT^Tnk3_oo&%EkH*M9ope^@d1~O!FbUIVQRj(f4WaqOlar| zh*2Esf<VS^!Ag^sL)^Sv!Wss+23XFRktLf>Hvb@=JcJ}{#C_q96M<VbaMlB=V3R9$ zrc%g+lfC|0qLfPa$dW!lX!ekInN)lPjp{%WDgQZyC166MTDRV)E^_n_c3vfBzPP=G z`O(9yg?N1X2`51rCB&aXB)e!vylk659q26}h$Q?9x{|t!=wP;qA*&<vUsg1PV4wn# z$LxF58&nWdOi&w|UAzUtXOkzu_Nj##0?zPZ*2jy9itBHk++dtz9SYiy{solyEqh@k zSNR8Dc@BWK?8^W2_*n-j)Oi>OK|8al8Vs927f&W(#sgEcFww+ug6DijXr@O>Y=QS9 zQ24g__$ebHX&Db@JmZ&ntqK?x%W>R7L!$L&nkttR$m$q5Hkg0HzT(ed3VE!2NuW4p z1-fzAQhYcm0#}RVz(7QSx~?gp>p9YTEE67qu;Ob#YEt_XgxS6kBJEFa@EbWria2<% zB-hGFq3PeXxSDHPl{`BQjv#Y1)MVcPLH-I10>E@Mb*>6yf`&&{_Z4D}kCVj`r>WW< zD;3LSzYTm5|A_yDAstNp{@+>AvLTpsi>7rJS60l$x|ZZ(qZSNW>cuOipw@{4fec}9 zf>GHgn<%RASRx&@aZWo62At`g5$T7zek#E7y6}Hd{$qpL>O|_spz$uNo(8<P%^zX3 zs|<Ti^<>OJ<)qaH4qt2`!t)z+4gzQl-e3&`vdq?#hCvn&v_jRwYSd#pTih;YupvXs zt*AVt6|j*oyVFUW44!V71;2^gMr+(ILjy#mltnj2(KLVO5FQDA)y0BP^Y8krIw>^C z$JZ<Y$&irG{m2YsCk|RN;vSh9WFFIV+_K&#pLGiW)L5<WPcXxIeGf(KnJLstWgbsm z$hP(rxB&U5Jt0P5E_USadTVExOa73D`uk)Hh|<_x{86wQYvc~BMCrJW0LJ;g)vL%p z(&1tud-Q<0mbe4gEZc_<+q=<^?Ro_}tz@>bQ#L}t9_`0Zp~tSj_S1e8UEZY=k#Os) zGw%PAd(Wz6WZz#(?j(NrANYS-8~g9#6KN9E{2fjsibYc17Qr}fL%Ss4Q+ZD9+$k<Q z@*<2`P5)BNFTl4ipTH}_0Fl?kh>i%<b)5=PIZRyW8HAmN;l*Yol)${dva4Wv?kch< ze}OqduyphPO|~!st)5`72}2YJ$`v7`hr_-Lt?aL0dhs`DaldRDmzSa2xU==MzX1#X zS@SF1_-a0$9i1K>H?M60y@h=`+ZBT?r#A%f>(%2AoauRTJRXnWf36#pZ$bn+T6e28 z$O_O`Ykyj7VKd@w^Un`63`>93{AL09pSVRsIRVXY|M|Z=GO|4{qv;*&)lc8uPd0$- z-EaQ+*Z=r0-~A(z2>WI?YoMGNID&1uCs<8=$vJ!Ex<(+4`QpP0zFu66k8e-p>*LcJ z)@JeR?b*p}tX~%o-@~`|>a@L@$v4=Og-@JuC7&Qu1#+_B>+Srq9iPe9A0UGrlVKpo z5HrN&E9}R#FxPy^d2{k{+v1+n%ah~T^|e-<{V>6LoZTk%D64@m-Wod0D0s;^MeZBz zmqG!jMoEF@CT1K-Ie{4>N%#Xafm+I*%PHg3IHJw<R&vZTesSg(Fov?mggDB`$_RD= z;%8XX;=Otht3~PXhVe~9`SgOt72SiJC@H-xTEcD-r6iO^pFt430V!qVZ}@n}Xao5a zqYcb<VB$T3Eo4aJ*!%!m2$R-d!D#yZZzr?w=<k1mFc6nrziU6N+U8&X8P{BYw}P`O za0cZ4i~rUxKen)lIDumxuoMbqzl2%j5{v!?s=yW(Y_q`E)EpN5659i_g3bEoAMaQH zw%~<aZKC?^yC3c$m6j_K>HuEpp&dB+>5j5MtK@t!E6L|1!EcxNL&-+89}byVlnVj5 z4>&0y*t_k$Pgd5`H;G}?H4Jbp#vC7w&$+{&+UfU;?TE6;Xl-sX$HOwXdwcv%tTK5V z-9c71DXiudWVv`Yn82R*Vzz7{=NEH<U=4rq0dl`_&y0RQL7owWe2`xR{*RM?;9pAr zfpb2P0RziylaC<uc1CA{zJPyBIYX441hi4_Qxb(9lw-?qs`{TtKW)4R`M{)@<U`*$ zYyPHz40ZaLNt=Z&c_J@4O_S=8++o2U4@u#X2l`khDq?Cl6cNLJ5BWSWZnU4jeg9%K ze*fYRH!gJ)MrLdp+>_g6QOG+<QS$068EvA^jjT_pd($jL%L_DAun-IRTFu=l{Pzt0 z3)!4^7d+Il9`Nxz=7xOH<8gdoSy9QsuboiBaN@xvW$1z7(qHq*b~1upkq-;VnHX{Q z9@A4~YQ~hm?&4;?f(U_A=w?sr4Q2-2waZ7K-12*@PxLXvHQIc?c!WV7#%;+3W9sK~ zh$$s^J>yMOD>+KQ2O_A2pjatOitw(Mz>FvSpSd`sy_mXMHiDrcB=9%=`-I<vXnm)t z<$3L>2%Nc48N+_S7i3!2SvrJE-I4+{0oFZ2o2Nl?EmZDfwLh*0U52!&6)dVyGr=VJ z_=ZwKi?gm4`rMo5ihM2M+B{7W+moo}<7xxhCMz({b&E*{A32xUIfBb`_R~Q!toN`O zgCi@PfMpBE><6r7#5_%z6lLfL(xAw#2q{9ub_FTGBizeW$O*%#M{z-Arh=w<ps_{X zU(A1|HYc2$o}<TOA<*`Y{8_;O`>3yff46RL|L}$qaLr@=LAIua?4-UGyun}?O&z5r z)Av?#KJx3f?hq&Et777O-q{L<;P(&TPccbxGr1S3k`8IK@Kc@DC80TO9VZ<E;#kZ> zy+q1N=ZjFamz44saFr%%NyNEL+%M+yB^#B5R_64ap?nm}P6LuVtlNo_^pVqFzc`-_ z3XrAIYEL9aVz$VAG%}DKUE-Y<#7-?xt37sQYLRXdL>8Hk@zN43MPRBnV^S)%lB(+g zldVvvVDq6BpA4(GoXWj;AQz<3S>bKtuseO)ZXp%X^JP7mFP>y-L#=R~YJ7ot=x%s4 z)jx;tbZUJhkuBK=9LjuvL!&rd&`vHM9$^*X{R6jwhS4q|+Jqmg$1O*q?;+X#Go){} z;_b}+lN5saB=&@*O#eCf=TzW23T+cr%#@^Ra_m7V&nV{FBrEc#xV33sm#}lsxE`JU z;4>XIsz(xjk7+p&+i^1x-vL?r4Z?<Y8$ZE#br0EhFaE&zmF+MgY$vc3FhlJkQAhI0 zS>DJF!2FGC!`khxqGWW}FsiaDOr!==v=iByN^r|JH*l%JkC2Qpd&1=^$O^3z*H_Ev z>#LMVENU^8b{`cF=H1?jl*U8^Mg;dKpwz;5+R=u{+a%?q@Gz;wV-~bS<RYPf3PN3& zs2444A!oSq8Ea$F2+ovDVESFa!8Ch&XJpkB2$Rd*gg07cvJ<p>GELw=g;na9RrPKc z?Q#wp%>2DiM>3ehq1)=dm<bwhJC-cl53p^^sLTf@=O^3QHjTzDp8Q+2L6{1GX9N>Y z(WxIl)7K7%Qa!^EjsQi&hdh2*htuhRvaBm)R5jB~JvgDH5+hp~ZQv{cBoCu=cXm^$ z4lWyx{J84OO5Fw%VUlmsMmOM6W=U1V=|evGEeI7N)DzjMRf@b5^6^}OFLi>O7^M?h zOw}%o3Bm0G7Q&t$m#Yb!vU6h`$}pZQso`V@)mP{s3{shjWy36c_@{dqoa8j7DI=QA zXaOs7WE34v4~k*<)`MOK8`#CMj(GS`r8dj2PR&6Vj_#o32xsj_IBh?|dHWGg+>f%E zyBdH63^JzbBFA}skpq{ni5uLGoEmVpbE3AxwTO@t=B}^BVHVdRI^`6Zt24HUi>pyj z&I(kJ{^^lXSLH^ffQ;@#HR>-MM|?Gh>S$?a>3j`7#6r@h&&n{kG(oZBPCABbdP}SW zztH%y0^2}7Ygj)tW*fqiljqv~Onywx0F));&z_626w>K|D0MZ<&t7cxL_Vq}+jkyl z<Cww$emYp0t*IVq!aszlcuWW_sc#h_V>Yh{l9~ch-y<~s%etBdpraFU6Xh)Z<?ZbD zs>SIyVL2kV@&pSWaLt5_e}ac@P0`L#waQ$I;n|A?D)xpZ-^M7+Db>8AZ;@a)D1=iz z+tKW9v7F1YfC!DY^`IB37u;(|65YbS#9|}aOU`hvWu-ii!R@{jV_khg$wqur6Ng+* zrd3cth>8p783R%T;*jwAl0^n-i;Vl0$P%1-I+}62Q^)V$!%pYf`}fDkzdTMmtVb}r z9&wu57hYy7W1ZT#PH=FR?|%9K`D{TMkpJoyYfDG6BAw#0WIr$6Sw{(MZD#3k)&jCB zk$!ohU(dMa$krM%FJKy#yFL@HAPCC<PK>H(#U!7^h|4_8LkDtoc_izD3gk9$>sJ9N zH4{i+PB;ZTo4CT7QYkhVM?iXKVK|X>&Vm}=Sg1<aZBvwDWaQLuq@h9wbR*2gEfOd0 z=+NjEiETZ~gj~0!q7OzWk%MRw+ngv8>&y`SCohZ`p&tRt5oGe>vXLFi_9<hhXK+T8 z`m2+n5p0Argi13%Ti!7j;p?kldkGd&2xD~Z_Br}Wn|aA+UPt#Kyd^xPNmsb~tvvaj z=1b?+Jzy~LxPmQQxz>m6@<f@{gDqTj)`#u-VgR;y#aJJ@@wn(~5}bFje`fI=tyiDe z(9Jk*mn~}u{*Y@z<Ss&;JF7B{a<yUo(9a~&BS^UW0Q04G9XF<QG$v&X>Xl+z2l@{U z@QY%k@bUMQIrlSI)`HTJEjFlfheq^cwi$$Y;b8*84-f9}zc@d@?>GU#e=)?ze=&x~ ze=p_VEBW_Y{vE?nFsd+CjAKEG0UAQ0@kkxG5m9TwPi-20YU}V*34otU1N>An;HOdo zKb08xsr0~4BME=I_LMM4FHzc{h9eIy8Pw|VQ^|v$N*?@F^5CbE2S1fO_^IT<PbCk2 zDtYkJ$iv^RJtOZPcQ=T2P{WZ2w*_i-_^IT<PbCk2DtYiz$%CIt9{g1D;HQ!YKb1WA zY2@K=*PfBL{GjAP4M!f_`lr?5r;-Ohl|1;V<iSrR4}L0n@KecypGqG5RPx}bk%zxs zdq&=8vKdr7sDb3kuwLJOe3tiNbBCrRSV8vzJCh4bY9faMOYo2{#>r=8sAf1Etq2BT zBm4*HCx0Py+TVSMbiKf^TpgX#|MB*!1N8-o5S{-T{P^PN0{`!_KoCk22A%F2h7$?h zT-*F9!RUO}U`|iF$POh5gDyxIhO==O-Jv95ki3h;|8toTIlB2%g1Jn>XPKRQuHpb< zQ;1NKFkIyrE;{)gN)m?a9D{D9yT<ubf`LmdzEEIk?7He?cqnlw3QfE2<aj7?C`x71 zbS+1_M7#{fX=AsGH5?419>|4GBQ!Bz1*gTK#yCy=8Hun!5Ts$4OQm;GnqwEjr8KP~ zF|1gCl;-V<u1hJVmU_BHkEIkdo_wk3sFYr0rJ{{eidm-~Ry0jYud-6nA}PJjN>yK^ zcwBHRV^_|vab(!oag0{IbsaB6M&6X9BV1XKg~}CY#0%>BQctMu{f|@=v4m<BUn8|e zOrdtguSo5f(!~*(cO_Cy<QI@u+=kQ^d4}2*7a_GpzM;1F3Q|o49qLs)fL0f|hw7!Z zS0*~yv}p-(8JjE2cEKsdp;W&4!8G_*n-qhZz?mT&|0THdII~d|Zj|Gj%xqj8fK&R* z1TjLdrg)^sxvp3gh!Y+5h=K}dn6k2fO5BY{r9*C@Mn48%QF{*@v_7LFD+{Q^COoQO z5*ezjET9sD@u+k(4qeiZ0a(l^07pqg9I-5*5*zcVf{A5a%E|&NF+h(>2kJnMehk2B zmL57-WkyI=7I9T{IGAjPD=Uk*YHF-wc<5GUqBM}8k-DKA5~KKbMjFiJ?A?*oOe4Bg zq%pmyC<D9I!ojMjWK7T@tyal;CzWv6DlnP(NhQwkV>TJ_W@b`}Pn2Yp%z&g4=R0SW z%rvAD1_1?4W&%=)PoQL&Ou3~Jh6DvBQ(LKokwH-@si)MU0HLf_Fr6nx8C@DIm;fnU zFl-zHfa;i>!{`&FZFQ~XP`76JGO_`FlYW4ydg26R+7N)E>rJ&yEkf<8lTARTCIP7G zP7{!+O#q7iGu1ZziM9LrW%?9=sy;EbWcn3=q7zKDlcI&{Rd?s0>e4SA8z>?kN~FW! zuU%qIwko?E-OGLf`{QQ^E3(w{Rf82=U@8$t2?h@xi`XVHk^)3#32AbinL)sml?7C0 z9|@HjN5G*U1F)G(0?uqD;K<4XDl?*lDzl(~Dk}@9%(N0JwX1+bKL%j4GzT0d5pl$_ zfXeJIp~{RepvuYuDznOjN=-80(2oH)8EJyfEHog=$|A0c4rg{7aAjo?S51wF2P<F) z1A`T)IV@O#iZ+PJ$Qgz&42RJEj0rlt7K1QUvffFhGFX91W`0ts3|63$nVD27gB7S` z1|*frU<E3fX-K6qSb<7r0#d0AR-lq8w^S;F6{uutE0xM%1u7-=lv<Tw1*;WIFM}1V zmb1MUtUx`Ja~QaSv^iKooa(nj-J0dg7zZ#$Mu4e$;sj*c5P+iVO|?xeLhY)PO+cn5 z0jTOu6OgG*0E+%I)i(W!wfp&H`V@ewJ~6dq`W1kp6HK*}qJ`>Jcjut$(k~qw__k`W zl5P6JBT#nnJo@8j2P?AiqdJ;=yjw@vcVz{)n@WUHg2B(nqU7cQky%2bEHi_EDJu)8 z%svt-HI9HoKL%hkmjs;IO2Cno1yp842~}o60aaEOP?>2ZRBBfNhkgveW@!#MN+RNj zWdW7hUqY1`UqF?W1yp9036+{;z@Z-la5B;aompr=l9feV6&=p(HsH$2BCeVm4-Zzr z4h9A*P;*$Y0u^l#laVtFUlgoBC1ZjPuSKu|m8^GCsSH-2l9``WDuWfMWM(Fn%3uX5 znE^?qGFX91W*Snd3|63$nSfL(gB7S`$}N@3U<E3f+DfG|Sb<7OJ*8G9Six!q)5~B5 ztL1F31uIa`<QxXBAZ-p-5U2X>P`76JGR6Unkr803o;U%SHUyyPdQ)vvi%`4jWD}67 zNdT(4(*$H{6M&-sOtnpaV(or@nLY)es!vQUnSKSJ=mb;kq-ddf)!jL$y7WuO2EMHt ztmHXmn7E+|g%0`I(Mrez@yqAWh*mKB#1nb&J`f->Q%J*4W(Q%&$jZ`?0jSJC5-PQh zfI~k9V6&G5oEb~Nk(C8hW<?2AW<mi~Ru)j1Z6#D{SOJHA48Ue;4mjFb#1YE^Dl@=@ zDzm<TDk}@9%q$ZswaI`(KL+4rr3pGS(SRf?i?}K}oEdJwm6b(YH8ma{t$^|lj8>rL zuxJG;+9)PNXBfXIT7gQ&1RY<CXay=+@1#;0tw1F+KdDqkD^SVIOe&Sp3RE%!l1gQ? z0+q}(q*58JKqWH)sZ>TQP|1{ADwWX+R5G=dN@cVHm6Cc&txB|l)e5GU(F#_}*<OoQ zpq|M&j9fw59IYTu_1mFt&GKcC0~jMCz*IeP0y1p~K+*N4+NKtvcGbxyAXAe7RCT8b z$kZkPMgN&<oBqVw{rob03P4q#m|8OZ3P8~brrJr-LiMV<b5M2ZmyQj58zkYnD=+d) zQE9a}7zg_$^zd0cOJQ%vVeYKFBUc_cNjGEUr<dX48uChVeuVC^sT~yZWW&wH^llsL zdybI__eixXaQIkXMzjM+0dM*2n<r}rIA;0KTXM_>`m^N3sXG=U6}b&PsK<XnUTr_I za3T%eJV5z2(?@Cf0BrUqUQV8{Jz$oDae8i^k9Rws3Ykkhy<QT^pD8PxR43N16T&cE zl7es*B<~4;Tb~w>$R+~Wu5aKf12~U9!aFoxujYEPusl?mAM!jtx4ZL%GxTV7Ld<`D z!5o6ZR%*wmiUux=7UT*{v#pVQfOB7-o9?Shr?|=K<@9PkNq59a7ZkFFjb4W=>g7@~ z3|%78iwIv{PNpRR%(U2wzhJ7A%ggKA*}UjT4<6u^Q?dSva<9(NR_!j*Bq95h$tZm9 zmeTxUel?%wI&811dpRYHzJKnkxXBuAYz^UsOLi3|t?B9Xa+(tom}f2Rkk{;LHl5k! zgu!;?j~r8v#41(0Wmauju8DPAk%!`=P3iOTNDB`%6{VP+wimOUNeUTcC2a&r>9<l& zTC&rou5Rb!Yr8G3%3H>@Lq^l_{C0=51D-w!<rTZ-Q*9OR>rKMJzcNeGPu*gfw(WVF zi-o|vO!$Ly4N@cbaQu0<C@yBVb9{8%k3PX*5YY}fOs4aBi*uqONP2|ennJbiRN!iR zc#}8W#+8I1A2K<(uic`6$AsEx&J~69(y(t%Aoi`W5G&a!mfPF;?Pafp2(BHHfsR~F za4y#=nTV%HI7P*7`BYowYpRoY`0q?Q>0^&@&S$0j5<o8-{p3WWp9;xn!A`-n^XrR# z*TtxI$z?n}p5olUQ!W8bk67}0JyNN)Nw+R1q0pb1Ozc~aNamogxw<l(mxz3E0?|6T z_mb~B#c?}@OGNP2_)b0&rXA8~XYK43mum)L=@Eu+tk;88Tg2PhlPKu@Z$wgl>J|i8 z#?>r$T>O%Fj>iw`QX`iFf8HsC>+|dD>s}!sq8&1rUQegfT!q3w<dF1;AlB-(hH888 z9v|F<n;6c2XZDajcFJMEBq?-_QTB7_SvY$b7TWGp+T8?H-;vi@WzUTq?g51?o<BQ3 zo1bTqg|?!;gTn-E=Ir|X_?%Z&E1_?D4VK66I%F-?)>i0&hlqYiFT59F6B=xL67tY0 ziA`#1Od!%Ea^{}oOELM90#c$gmuIamoSeg9@$^5(N97uWYm4>V)-m|cFMhe9o28_2 zsU`Xa&AAl^OAU9&dN0q9uCL%#L*}J)8EzufH*wOrHoJ2oUC3f*(Cl~&9D0Dox?6Z= zWCX{+-6o~pvuDM8F$%<>@X+|`X?6z#ik^|+g`!9VTq)t#k5qo?>LFV&CxxnX_44Af zzpE)L{x8^7AmaI5y@oa6Ua6*>y1!sofr#gKbv(Yl?(b{bk^c+!6^PiguZ1bHg;x5I zukM?Pc?%q3f8G@*>+2$%9jRZ9y@gAU!4E&cCH(od)X8V$)aq?t^!_J3)eY}{%4OQ{ z3znO4P1awBdvr>B4O)px-3?Fi{x-d0YS5b;{lj6+^)451DZk!T!?)umm*m#>XYKrq zRt~guRJ#q0u8x+M2K<N%T^*lqnigITfXk3aa3d)^fV=uU+T2a%a3xSt3M>g;5U#F* z2Y)y4#^d}6D1ob$^)&<hTYY~iKDdz|ZjaWt59Bsd^3tp-9s+M{-i+GMkND2)7nE2T zQN*VPloeen<gXkb7O<FvVn}dxJmuA77@h2C6jGbSL{5T%drOW^@a8lP-^M3!1B?u% zCvNRN_MD!bzFRHv{aEU{lIt#jUp-FnEl<8prNTZiY`j-&4%ZEN<iCfD&*v+6Pg^d2 zEt&e#g=u9YeC>EZ$$Vvb!E4G-a$lX&Jj4h}`XK`XUK)Z8LQgy>IXpu)&~Y(NpaQNx z1V7>~w^#e3okQ{y$La%qj+<z~LCAL14ZS@4x>hmU{p7&GIS_vzTz27V3a%ramZV-I z6|bKKPqvHDyqcpZT|b#$T6ok+kp^xxis(+q0VEam98JeZS82<)lTASzz)Ti&oBu$K zFsHAtFR<e$%hhh_#;*#R3ab*X&^T}xugh(1R!e+(99`riJW%kk6`w-MIXce49&egl z)Y%bj25$I@E?{JQixoA9Q&tSRKP^z8I?^!)i$>OlVAc$Gm*yUtp?=>Ffqu(8kf@!k zl88fnM~pzU$54Q8zuaL<72^DUe#M>s9`XJGpGm`~D}soAfB&@HF5r<oao*YqnHQ1A z(|hy-AR9=nI#;8oF}PBu>(XWCps|5YgA-`-tm&>-2mQP&2lf6+X+~}w<gZyH5FUe1 zwGjl{{fB1Qje**V8iL$VLw9GoR_O5s=0wMXPL<#~;!Mhu<Au1)Zi!FWCsXhdaK*m& zO2TW=D$G$_!*gYF@A7C@3-($^^S{(f+_kgs{cx!Rxdk5ut!`}1)F*dUgxg;eZ7h;I zo-vV=dPi^D(8bPhg&aJg3U^4-_sBpVY^70kSn(crF$CXo{8ZudW(%)!@q4I(o4M@y zZmpe;)1AhF`Kj{|7A@esY}?K;-pZ`U;$U_0nkgEZc9$GG-<aP4ZO@ppjJVzHYK3ki zSJj|Q)IVEx`4Q9)9s`7zN2$jqBqP<`>SI768HjwDR`?garso;8a#VApyN3TXv|3PJ z<f~ASeFm3sjxXTu#0$77@%ZSPgE^V~l#?Xp)2GR1M7)AG6Xt3MJn_7t@7WM~1aBGB zcjl>|TgA6zRa-?_YLikSF!g3}Kf$+lpVrIQ?_b~xgg5l%-R9$mpMSnzzWwHO20t74 z`LOx+6+UTv^X}cJPoIuHox=4nAKslDA0K1oSIx&o`{`G!&)>en`xCF4t5@HgwgCM& zf$d$0ub1Dx`sU=6RpwPQ|Mt~yPmWHTi=)fa-yB^ua4Y}mY;<%6F68*^=<EXiJ!{~N z(b3V>68?doXU!=TpB`P!jxI(=7pL$E{yn*be@~7sF}wHd=mJr|ZTtX5r~vZESMQh( zBocnTe^Ibt-NHjd@UjM6_sTy>iQHTzxkPpi4Kdio=roYSM3#ffq5&SeCHB9BH}GKC z*O2dxqRGDl5d+nQr$k*!<0qoss?$H0%+%b^C3h+_x_b5u>XC4m+yhJ;N>~5t_<b0b z?8it6PRbmPuJhFRUX66rT&snt*)MJhNG~)VWSmLyz?Z3_z&s+;w*mTC>(UWCPX*5e z!3)e7`)Oa|*Q^uW3RLqwui>daQgxbZy@B`1Pn&nm8P45!)XXjA>-(Xz=Dg~Mcppmq zP;>m7<L2b<?8p1#<{W;W!q3ueB>y1%)^$F13h!Ve0-ij6{QUNRD`$%DvEMq@1P>`< ze)pAJUqxTd_k}Xk+CQ)J3pB7j)xA^Z{d(b&`wP{qi}e<E)!p9#hAAE`nC;O+?~bdm zsh3679X%aV|KQ$A91lTz>MS>y<}EfbrOJWiygo;9I?u^s=u9&lEKSi86$6LVL{ko$ zb3D}y)R*n#G*zk}z;97l*?{2*X(Bl*r70lrJ^M^73gl!J+|+Rx|1<bZ23aX#*LQCY zrB31dWBtD2yn}_MATwRddXx2)!IRR|Y6sSr?F|I^s>*Xi>n1SGg3vE(e=l(j#ZwjA z>DjF9PE@hdJ%uV`+jBd{uRrg=qTSM6yV{1+@JT`@2&ZY>Cw^Q@B=_doqN5(}hg17Y zi{X2@3VOWJ^~h0AMVaeL)r0W}hZ4lsC8)H`x-Ur7C0E?x2vXJ1k+LP<HR4mH{^2el zk--!fMv_>XJahswT6*C6MS)B32U^MEA##fwve~IEhkb>WyZP+&{4DLhY0H7{Y4Z7> zbM5Zr1QzekVTb%{t=$P1Egs}0Jya<vscMdiB5fG{W!CS&3V4l<DRK*Xa0(m#|FXIC zQ)xK2xca`OMLh+;MLk&jTb?$j_s64CoJs36dbU{4mTj~C_SMmO_H71BhNrLUML%>G zG1RP5gID_g@jur}pQsS~rEV1yzeOuf*<y`Tw0;+r8OG4nK2>rECFG~=LF`)btAM6R zljj?yF?F;vpn7m~=3n<;{S&g^Hl6E#+Ohu_D}dG?4V7hA_<0`ezg7Vc-ctEb=#u|( z>xH7-=0PP8Ep+_P>p}w+H|j4sd|N$Am-YJ!Y;vNZ86T2#v^1pt{%*9ghFGC`;64$r zBUa#3ul-m+)d%!^D9pjVPYZ2c+}tdc=@ij@vWb%Gt}7-8jxKewYNLI1Rl&jXT-D)~ zpSuU|dPfvImqMyNSO_~o4v>K;c3dQLz0b;37TM>TJhCc#%Ory@<dT&WeqAk0bJ@_b zjMIG>`sXH9CCbnh1gj?W*z-^nNttR8SvPC#?g93dm1^k9;cgKQ#Z(n#dv<YrF^8lA zSfEJRAL=cvbZ<e+XbHne#^OEoa~K}&THgxG@aaoNaZq5UXTMd$0V4cbYmxo#T{@Q5 zwfsoq3p4kY05X#*U{nxcf%F+f)oivN?Iap~rxd<$6sdaFC57<b$#=8n;uYp_7m>(O z>I=oEDnkU*1KBU0U2Bv*7DRzVHKo#WDe(uqGmdZXVjiqL=v~jTWQXI?x_n9QMqKYC z06QVs@fN(tN33K_O=GitBe!YlgyBnU{{{&%i`yUQSQsRQhSX5YeYGTha;`ugyn^W4 z=RaK1bDat#h__YT!P72Y_7N?KoWsbHaG_w2B*^NT2r@&&;Hb-Qw!2@<=Sxl(?qY+6 zCw3}ecgq!2WSb*mDJ(7J{1z+bX_4a3sjpxqp}9Qkx||NxmYjgJ+?!sB*E7VW`Vd(@ zO&h@L4{OV_Sev``;^BKxDAGz(R+m|9-z>K{Wfoi64%&p(nHC+!qKZT!dY>k41Qu!z zXdu6Ex_w~Do52?vO^MC<2}=!#>=H>hMF>X_M%1NX|2@k8w1KCCWL6HTQ4eeqW!P0e zeB-ZH%xk!;=Yi))s|SZ<Ww=aGj%Ox`8IY-39^cF&$Z8#TjImy>L0nl1I!j_yH$UtM zsL4F`!UO;)O*#Ap99=S>!>x8}NX=h8U~Vu;F~L(H2LT^63Jx9=mDTNQ9nnOzpt^df z68=nQC%&M|v%`|dM;Eq{Hz9Hi?)}5<qFv56?KS~Z6{huZg$LT!qxK_=ZE)@(@1tGj zNDV5Nx-;Tm9v@#$>Ec5>honGOVhmK|H9_<?adAE8`;W8jjpO5slUcf&1~_I-I9cg8 zFSGvLkkczj@jpukY27(m*G48RZ6@*kC*|S8YWv!ndP9>IBk0WyU;DzkYJ~NI90>?G z(#;*6WkSVL*rWM+^$16|AK+x;hYzr;H@t5mqKbZ;&!*`LM%Nh6z*MC>`o@v)0X-DJ zVf~bNn|k{!ov}M22XoF&LlvB}l4MzieoxyvpIn?=@CD?VZ9%TU^a3wluQlSW%bFf; zU*l6eL&H`Ex6QyY9?S}_G-Mhra<;Zi^M7h~_S#G|vqW4kP=}!z^ueZP5-SwutUW(J zpVnEtzp)vm{h-p%y15ySytl&*Zl@B-g{5S>Iw<uFGnSQGu+K`IhK3782RAXkx;m{| z+qk`KPw{brvWZ}8-0W~myF39yy8>&wh68J*oe4U1wQ6P3IsH7?#*9(>u&~!yG7A&J zdO^DEOZ$4@KxPsu`Zk_jo}H$nm^hHhb-VorB7GABp|EloV83P6`#IdM`c;N5o*k<1 z<IBm(w65=3lJwnO4?7tD>DAdaKg5xZUSnwbDtbJ^?~MsR47a3nj0rC<;D4@bLlz-Z zgAqHT7WLa;Bif&7z2*=th)C+K-(f!7ze8<DrBT|>@#XPl3<7tPSTmg6P`y@D>)vpa z*`XVHF>p|8x7tvy62Jkg+4xxQIdqe1IQwfQ$#UY|y?eCM9#5{0d9^6BpZV!^OC@D1 z-h`y(;Z}5Vf&<behJWy*7?2d78jTo|c2GY@Tlxt&*=r%uqLj8?kPf4=?)KSLfA>sK zg=x($;I7O#EDfTyW?h2-dkw6ktHW(<hvvu?&q4Wnf<4=|D%fTvN%O-c%tKq4U7ehs z@|#qdZB6GV5WD`pkM*PlZ(96mAIpMa=?c~?s*#>xQv(val4kX5G^?-7y<Yo>CM9I` zLUdS^_Os8RdOBvJDb!+mGQK^*z4SsYddaLA(;nTE*f3kGsCRN7Q|eO{zIZpNdA|#~ zy}G@=#apQhrddg1n!iJPk2czq_M)w}F`u-@?sWo;zPSx=O!Q?BTN*>0cQS@4)5(}F z`N-BM7@eAp7!$XuAEPaObp{Smx<FSiK!-6&H~Va<zhfqwLNn&4^Xqwx`<Q>dbk?kC z09fz9RPE#*wzNZ4=!WQ^=soVI`=)FwNtT3|_gw9RyI3wyrZr0)!<cju*B=PKHzK<B znLe;`_pgUuL40=wbEaz;l8QKwP^qcdU<CcqZ_#|dD$9mwm?x>Xeuw37|N0E4r%NV_ z!fM8s<H<N5gn(<kB-V_EWZMhXYcsX(4L6xy&5+GB-FJw3U|UKBXRIXIM}}!nQ!#{x zH07-(BV+g=M02FhJ*XV58jfggR@`A%zLVMZE?jaRu8HjCYp)u`z%Hk%7qr8)G93B( zaa5QdEAxGiGi)n)UY{j)<8{4^>VAvuwY>~e-v8ldI8486p*}L!wxA00u#%E{hHFn- zG?a%mR<lMUWw<?#k8uSMgF?8DuQH~oU=r#Mo3siYR_VLDw^b(Oy~b6y%Ync<EYq;$ zx*1id$2L6&qHS79pLPxDdDS|N@~>c@hAZd7a0?x*alGUo*}K<XjOngyu<Z4Y$IE9m zRkcpp!x$WFX7^BJ)3vO3`KEGK++mfzllxnx@O6l0W+V8Zt)yKRDf~P%iNp6j+M|_J z>~W7i*R62~f<a@Y@bGX;9Hw8mi4cu&ue}`AL)yyN&jJr`r)GY%88X=R@WFxc1?@AR z^$d%=!xGZl@LdSXRiqy4XxYudz0HpB9$<63;dU4tclOZvpYDwo;f{&9w6@(O*XDsi z0KJSFWM{Q*4<GIZDw6CZL^ZKpv4Uq-Qu0i9H7d5&zpiCC4{5Dtak@J)-01L?t}(8y z)bcu1tcq4mD;rw0|61J5(!DKDQTOUpJqR5Hy2Jjg<9#Oh6Uul<x2t2`KAjf?+2%kY z`^bVl%yE#4@m@sK9NR)G%)?4bW0YNyiY@j`6b#=1E!FH$c2<U)VZ2YMBkt7wn)=`; z9j_aq@8I4>D42&RW9Au#K<+R>?Q~SXs3<>?WQTOPYJGcjyWjZgo!`Uu2I&=TU1S{H zXD?1&1#h8LEN_R0JiM)%?eRv;aML@3<(QK**q%E%ho!7yiy?HbYs$wxubZB2UV?Ag z+w>Um5Jk)^Zvfy9!(%@7PW65=xen=Y)$)dSyWjAto!`Um1}YV9fJDQy4Z30^vXa`E zxAzvFVcWZ%n$6Kh&R~-}he;l$x?S|m^LTHlYpCno;`9C5+uE?r{w2G5sJR<%hplmE z4;<orm*c96m2{}g!DcqN!~IrP>-KOX>s2FI4-m`hJ*#PZG;&t6@7x~bgTSfS%J6o4 ze10+I6fHXN>5)9a^E7K*oPgc(Bn86c4GBN^Ereb?XtH_$vU2o}kn30^!vf*gZ_(q} zQaBz9-f^mL`9bi}`DuLo?;mJiiZQwqra#duWOS5_-igEf93}$Za_b=Cr+ljo+ou!m z+;w0r97~5sF4L*^%GCozK12PS_wyWz_=u7`NJJ__N7jG8{o%3w_Wg^^)AW9^egEPQ z2^pMY4^`j^+qS>P^l7_YJp?4&j~daplewJJqpe(drd1A+LcoMad_lk33BG$p1n+nD zHsRlO_!euDf2N~_@_cJL&8p4gduq$c<EE@@VhZO~r8+#xEqYu(9j~v_aiX(6Hhk0E z!PN!r17*W_261)Z&#Am%tK{v+ot(H`Ji>tO=@D<u#9wqiU;n^!m--tI=lArMT~#&s z`*gS1wj+4>aRzTcJ*?!8jw-;-&EytN31=o!oTiU&k-?i>@JJ1@Ge0Mf?{#Sz-Wx#o zYP^5({sq;R^jN;8;OG?IkD+%eeVJWXV5M1lf<;5|ZU8|oHyR||8FZZq?foM>f9qKh zJFI$<wiWK%ho@XPJr^naix%ubG<fZd6*bp+yyRhpZ&o1~G3P$rgfc$XhtP6o&d8W@ zd^wHZl7r{ExWGO2X0N8{VL3NV@E0Oj`^&{<JKAi2Sdv0@UU`78#jr44U^nm`YJJui zXLvZt8`BbtNxQtwAQL4@gkCCSv4|eoeI`i)H8`pr0GVeDB}fQRU4xUz`Q-&X^vlpu zLq;2TEZEGr;g^MO8Y2px%!N|D#sl!fWhZ9Q)FD9NXfq5<oq`)az|ckH<psQ8R44L& z{!AhP!Pg=3`Whc}t#Wet;h97Ng0Dm57#_vzqVn_dnN$LT1E?gWd3wy0hxtg()-*(& zroFTnVjA`}{OG6FR6i1YU}%f)2?*}fJldaSBw?4s6D#5#dcWc0N2=-(iDjn3&XJ_X zjJ-w_mUy&$Cp<QG>6l59>Dw(w?T5WAN*;n5%iH~n3$l~hX&6|1xHE?-V}8=qoibNu zSjC{#9sGEfEGs-MVx~X@lGts?K^IK;+$~d$PMa1Ts+x4xZiVij*r=0U?m<eJCE(E6 z0XuEs)-9PM?d*rKDaEpd%npfjGY?WIby9!th<2;@F3#<xzylaqFe4~1-5rC$%kMwq z^YF74esBLL%!^?pg83{gPlOOBuSLusP><O%pdxk%s<A^A(VD3!bLB(gB=usx__%<@ zAqI_;%M@nQLJHeub;ju@J!5!9lBPV(%l5jRwdq`p@dT!B_uQcAY1fK{T{4H`9WSMf z(>uxVBFAJ6%N?uj9jR0ADqF_{VDWI*t`|H9sn04wiCwI}TCSkUm`|>1&S7rGVeBn0 z*m=F6uWqqgrzzu$@zr=ry(yO8#1qu$d1)IwmDY9L*Qq5n&zB^zB(!~<-t5)5EnwCf z2N~-vU_k>qQWJNt1lIZ=<&lwrmdf`)eZl!hp>$dGyB1b>^7VqGp!uBC>7$HFYH@5a zZc-Ya?N*Mv4%hWBBM(J4Lh*E(kfX3P8P?yIW(|zpRx)vE#{L+o8|0=sE^IV@N+fJI zlPa`cK4{l#W^KySX-CsxUA4X_##fKRBilOftT!N5SnnY><5$+xDuy|K<BX6jI}5yw z$~UA6o^WTGFHvLcrGi)Gd#j`y&WxxeE+#^nV&Qf425$nMPI7HG5z_swxVm<e?!hfC zm8D9X?PQH!G_hV$!)rS5{wOb$GcEBd(FEc7#9Lsui#06E%<dM;`J130A^^r(*5!7@ z9&vcQX+|(I1^UX?mJ@4?S9r}~ajdwL1cxB(2c!X#=e{Fb>j8>%^cb<<sMPpLIOOfh z(TB|HC9kN!)Mc!Kwb|uD7k4M~Ijn1Q$8aD&zaYOveHUj%iwd!<2d~V;bsf1fJ>~YZ zdK4PDQIMq?s#X*S-FTt}yWfez$KaxT8fhC6G*{Rzg1wh2%fjAP+E(hS&h#o1wXq|< zT(!zzD@s}gTWDSQ1377{t*d$mIrM&dl^QKc#E@AgSM~)BggnfAv4&^f={8dsJD=`( zw<Fxu8$40p_1B%vu~h_DlW5_>iYJq4>JF@>n;Otg2^3V6*1qblEvK6?ITtm+$K^P@ zzjc^u&aTs&<^Hb2p>z&wB}Wcp<K7Msc)i;>>z$%CMPh#whOWT5O8l6sR6x<h9oNZx zvBKG6h#PtU=uU3f#qWm^br){!+hPy2YhK)jMR#GJX-3;CX#1~a=L9xS@Q%$LxdKJl zu`7N>??GtEjbu?z@H6msWV@a5q_ehL?VAS1@x|=?0w7AKrx@20F#qB6wo)-%4BuUj z4>05$UAIfP3Hl@7<c<A<Te?%cY?tGYzaa*6Dq;`iIE3ucQLMhJKOUW{kNvCk-q%iS z+>@*bxDSC<$PQ8i-T@RA^}~k>FGBfl)=70zoZVu~YKOMEX;I`Jng;joD7{D9QchP^ zDNwVk7SW_?h=1@41(N>tzf41^$i2g1lPOHNVi#Q}qrU;_zTrwYmSniRVi$vWH^b!u zf6A}(V>PwvB7O=Qdqe)RMzzl+o%!@F>sXW(5$Yk>hdD}%NMT?oQE!%HL(H%h3>yK0 zx1Yi4Zfki(x%YPZTnMM4K;7~}dWK*K+mMbsrId2^lr^eyEP51#63oTfgrnpu$O-OD zX&>8%dB(2M<PpEJX5?ZkI-^KveWn8wu6FefmS&&n{&1&Hp^2)yQIfGCaV*j9t3D*) zMF$Shc@Km|REAYNS(OMPq0B2j8@NK82#VNSCqJu^6P5Q?tLOEG5Z?!D@*gw~852o{ z0z!6`tuT2qrFjp6Cei~@S>N5^o5D^><!zNpNC)$3h)GAA#gCBlWC>H%O%zP69O?ED zta$%DM&G)EeFk@Pp7Z^#NVhKcn%jivvYM_3?y1;VNt;IMy!>-AFK6xiY#y%8vz0X7 z9s<HjH$dDZfoK9NLg`$|ORB6{%u<ArH1SSLLmmk)lN6&N;-0MA39TZQ^}}Gu9!VKK zn=EIqf$Oks_Hz;x{DWyk)y|f!=a$4ZLVNWpo=9~zFrD$Au~WN&#Q+Y1bq!bC4EM!T zl-e@Ob{ir;RZh64fLHB?%b)89dGyF1mQNu)vQGob_HzkUTC7*`-ExBPpKBVx_<gM; z75{Y@tZTTU0ex-NG~lO9$oG94U}Y6CNGK9l%*RJ@nbb9d>qqWS8=l~E$*Z2q9!Etg zIV6j-j8+FV+XH+U8EJMS%V`B+^dVnx&mD0`CnNTp!lEgbpo@mfs9T4&T{}LmtvYSe z-OP5o>pFzAg}eh$43E1QCIN%w+zWmnDUJ&1d`aEFUS+6qf=axFWDlL^h^r5;4(?i< zObG~>m#vY3OFqy&AdW1pfTN+<BCK*?K*#;DSyaA#AA?(o4?EDo2CsOo`WmiHqDEs1 z9c$-h;H}ctJv~*rUM*!IhN7=_-uy3{N$UfgH1pKw!?|sZM>U5<Y*0U2mP$45w9@V# z7Ry3CwD`kua6AG3b992^wjKf);|(#8eTN4DPTXA!g`|MB+%PMoaOBM}mSilrI-bty z{6bGBv-6meBy^Yn%J6=AI=|Et6!Dy>mGsaCx=Oi3U7e45V3{?~z!){GZ@yA(#I28X z7<hGFmS@huWW!?pOhGDkkXj1+C_H1aX_6kT7@4c6q(-HU0X>pqo<~1)oY%zZVR1OB z)Q4!R@Fd7&K0Tk#C56zZY}EVh&UXEIyWQ72Jd!rT^{dIYIY0iUc}M>XzX~DVwX^TR zRSfZNV#;0fU1d)fMjGC3cKTDtPp9mQ`^g7bBY0XbU%!7bpKK>L^yS^=<A<MrzF)rm z=5z)>8~FLK`S#V_cKdkq?%k(PpN>AA9<A0N-obg2W32qD`M795{c833+gIokubQh@ z-<-Ap{W#g)HLw7>{Pxv1C#RqkubTO{uYP+0sUl|({4PhQN9Whg>Cwgb1oidw3jg=~ zH^<G{(aA+~a&&!p)?9*W1Im*lxJv5BSML}xwhF)AzetniVVqjPnQ2({g~4{RZM*zU z<{hF#vk_&V@upvV1Bv>x3h}Ht^FoBJ(be~D6ytGoa(DJ@iKz46t;9YJ$7!(y0<{si zG645W!iX6tlCMD$Em|GmDk_erj_R+?M~u!I`2XZ3W{WkXd^hWFU!A^+-eRY<_jTB0 zxzjs-4JmFuEg*G3qGg%qbIg8XV{?cl1VHy)dV)?_R8Dx(@NFvyWzxiCxulr97-0PI ze{H>=80UB>+MtC?P29INON~6JbR^WK1uY|*mpw6P9yMpY+}Si5e^d)gW0!cMw}bIC zJEfB2;vEF$|3MxOml18SY+{G)SOI9=5XF0zm(a<W#(l<ZIa2{yD((Mxeaz}wjM*JM zWQzXGX520zBZ<uzTIP#4inE|GIVjg&S<#o?dJAwX*0Pr)Yk;7XmCc>6zK@enKrD6N z$1-0(AUtc%eJo)CA>SdyG2uyb3~?U>6hGb{Hy8q*!p}0ea3MG?zyafE5w+oMsdsQz zycxqOXZ8%cCnoM((~wQ5romOt2|PQ&H&nR0chp)*f&7ke*JQnE<o-84UxcfN>E@k7 z78fKlgiaaU+>GuwqmPs2ldK1+g}Pn6id$v-jqZXv^!xj#<#qvw6!92b=<4rrqwx>4 zia|f&yxbU459Kht`gJ?Ert4X<xhmqz#U(S7a7Z$=y8D<>rFYrMwTO@y)_#7R6nO~U zRA9#U7u++|Zu0PD4j^vn*j_Fqlfuah89=G)$`w0fWHCbm;xK^si3rHK2X_RiB0RiI zshdn(0<1VGB~rqLL`R~rD3V1=T|;mLj;%w1zLcz!ruiYK@$38G%F0YZ5-(FqFlS4j zfiPS8#QYJ9ZR}ukheEKgav>8_qaL7p{S+A`i>G|NFs<BCkz0}K_BYRUFpdZvmE9D& zpriD@bpv#0my?GNuiFQ|44Tk}3@Nuz^Q-mh(+1W8KoDJ$ta0o2xZ*LI67V1DxF_4~ z`n9W8L@tTATv;k>bfhTi_vjBXY5Hvn#Y^c!6{rj;yi0vn)<?yIYJA5!c3=*N_}#?2 z!2IM02C>k*QDh=tnP=W3ZL{?86~$|Q4jptQCL5YEQ`b))XThEb9Xc*^W8~D7Kf|2Q z;&k*#{{rnn`yod8AY*@jxXSMT_~;CN<QyP|lzI@)<?arOh!!6cS>#h2TU~7kV?MRh z?-!8Hw8R7LqwU?({giF3^kx{$;Z07k`EtPCOl<ak^&=$D0t^3)O>Tbrwjj!Zj?oZ; zPh04LXtn2*`6NclOzDw=>XwfAYG0OkCgUxIJR=|Tlxp?TudULms}78r`WtdmM7cFE z#|NfSPW0VcZoOPX@UoO_p)35?+qGbG{I*?hV4Gn61QQD2HXm){zx9Twq0AjPqwf)t zTq-LTQ;x{>?YTO__0z)x?$eEc>od6lRmFcyyC5kLc44Zxx!h;Wp4J<@b3rzmIy}wG zd5iDra;Xzu*If;k@Lt>4)^1g8TYJ)}$hm&OuGasi`da1Rp1PXhc%Gg*WdG4sGmHT{ zb<#Um^xaJ(Uo_05>;zw+vq;QZ=(4&0UDZ19eqVhS;Abi_VEOZDaPE?2l<jcXQYt!W z4!#UJdF=_pd$?0@^~pkva_}jAyKaN`dhgAMa6iFHoZN5`m41BQz5aJdlRDS!4Mxk} zamoYOScOBKC~IS^j+FEEb^@z#J25(M=%VF=33TX^YVJ)_u&v5aTIW`ER}2#Yi#eqG z$m^gS@{o%E`2s`|^+B;<S5M($)mmTEXW!dhKI>ufk=bGsV>^C=KStT%XkC@`%M@a2 zaoSzEWtWv68l<c3vsTk|+$~?wVrejZg|>UP>;tcXeZc__)0#*ATKq7jR0w-rg(=ag zx8;(-w7-5qJtRCypqiT>qTa$91!ENNsC;qz3g&VWO9<=;5#Y5?j38rdxctGIA{bbL zkm#Em^~*3FE*)lHw5VX=ahQm4T#a=oY^YSKk&a{p$)sLUk&{szSY*LNZ<1?LjNjGF zZt0aCrGpdI!L761bRAO^0g8?99?K-6iZx`L1$TVbxTv8(tSQP5TFNkIpW3(kW$*&D zpgTOr=IlB{UWy)YhSE&vp~*)W#WzjXNg-PY>!eGGj~Sf19t%4nrJK9eCrtOoPf4kj z8@AS1j$9U?rUo%2U`)xR(5HcM_zMxpThKA!8`&}p-Q`QL7Lb}uL`77i>14Cm=#m6E zOt{tN6SP1a?LiHeK^f3+;u!mjf5JXfo~a!iR|X>ax?fOq=DgL78W-%!ue697HZ2UY z*X`F&NmuUOp^N%Q({}r*l}8G8xpO2C7=VKv+=tPwanuIs=buNn%cn)habUSNC>yE{ zrrGljHUrAtzhd)WM@6zWSR=OkiEZgv4uH@KvMbG^RGolTcgY}`#-GjfOTqP1mt{Y^ zZw3Z)=lmk<&XE(LKsxMWI&`OgeUtL&S&@S_pZN#Hty5ewKK+;)3=F|uq;o>aaV9%~ zi|)3I8R3#Q41zhblGZM0+@&AICaH!9*$hfr0Pjcdi!js4$%xyry~V=w)RjLlfbR>E z>5?!D^;3_{=}EMBc-S^=Gj(K#H+0M$5TEo6C8z~LeXh~^*+m+IbXwp>3-Cjkau?Fn zB^cb(C+)BWZu`=cRfCQ$dr8DbGoMb**(+&83j0KIk{gy-A+;rCo9i^=egc8}V!pk* zY0fXtkFMQw38GV+)qu$gneT;JL~j-Ehm&^;hL=7k(`y>gJyJiTF+Bqk9-Sy!rvXk} zJlG)&t}w!;r(hcRzy6CVsqI?7w5QM{%UoJ<4h)(i5d-PFFw~q0&LK83*9?1?L+}Av zE(S_mRc5E_kyDv)JQZ~`^em~9x8c#&UgX)y<mkm*$b#6KzggTruGZVh1K-aqf)F=n znL-_%Q8@;W=2{T9UD3g0CzltOJ$7<G-)SdVm7l^+!n-HYPN4Ol$W8#W^7lYH$uK<I zPI7!dnVmpGyX+*Z5~V)ePF$CMDm!saJjYJ1ug5)hB1hp}EMIudtV-mV#%${1$oCfB zO+7NWgZB@W@gzLG6YWIP-oE~L0+^p^CmDuk+ewb^C$kf1XqTO2Rie~~+llMaPh}^r ziRakKczk``V<?}OJ6V=hi7fj%h7zBDik1S+|3o7SV1A~hWEh@pDLKBM%u=ACU6ztn ziDDmaDXvRDm8G~Q23v{>-e*-)r>c>Ce_T)QKSP*tx2M!IwrWlKF->A>4QdOZGHfr@ zn_>pB3$&)f)v3cyL{WFO6FQ)#iGh}6Glm-e!<bsr)f#r?U{uqvwv<l~2z8ts^kEL# zX^3l!IrI>_c_+8_2gG4!lAb8lhaIm|`mcD;3Wj`*qE^MNR~*<BDj>4bO&L2dxg)Su zq64OW;$zj_ow(e=uYj+<#gmKRbO_3PTOlnn1H0fAHWN7!AS>&j_V6e1v%kL9qV1o7 zRsHIHhn#jPS5WH?9P#1Nj!NSlER=@a;+R|K8+c<txDMbH&T<{U8gPq%yE8zKo9FUB zfAgy0GG6lf_SK1fzy<T!<nh~A>lM6=ZlB>rYkVag{`vOR80f$Y2;f$MyOR_6XME28 zo}9wJ<!LjRdjwY#)d$xac^K$m^)A~Z1e0DAJJkYdnDpB%H{)0SJLoMNn@`r?o4J%8 zQl8BXJSstQ>MAu#XR;G@@E#=(=?<RsKd{(d=zX9gpzEbL)+{L}olPyvWk8qvwBO?l z3&j4GAs`Kx%gc`SxWuw@uSYDaL!;z2bBEYdv*HhT%DdA6798nzgGJTS83wBV`g~#0 zgTJsxjO?m9#0tr|UoEjjuee(|s&24?w&Dc?^4Vl9i>oOhAF_q+<^bSa^%WbqW=6MW zI6L<fBz#Dg)fDcG{eFZWXobrSvf`bEuCNuvk7h{z1ss53P|70lyKMQe37gR9{VeOF zYrBnl{}0VwHLWt_7w7XNfjpv2Fna6f#$UwezEjFmDE#6mE3;MH9;Eae>(CUZGf}BR zjl1r#AjXw>T6m+jvnk`I)I*l^QUqxM^B>Z@G0RMmDH?pW9`m@0of&NxTYdc_OB74T z{ap3U)3k)3gatT)!>8IvA97sq(P6>B;U;HJKL}-h-Qjbh+)+f)ot;Nrqs$+;OFaES zLXdV?(W*T0FFG3c^ge(DVL9=(@lIVY4KBBuW14MbVjf^-j)P2Mr?#sd(y?*fj2|_S z!S$x8eS>3dQ9{B3;9fF3|9hvgaW<2q_;$6jQ(?VK-J5@;ekm_9=eGE$f|No5^XxM? z>R01c<y(z+E`?JxPF7FAP~3ZVnbt#L%9se68o|s{Z{ZTmg4ZlP$%gYv-$w!)gm1>N zY;pf#gvPg=h@(lPSlE#!S+GOb#UeI}RU%aH^Wkcy3(2rzyKL{8E}`eaGGXl$3U&a9 z>qQ3TF`2cF)eINw$MK>L5c?xZT)mW3M~FIdqoy`m)Il6Qkl!pRzqX=<%VH$6d=1j# zj~t#nEcYi<XE`xJ0F^Dakg`E;I?+??tzoJF(Pe&Dwb{;PSc&Me6#xOSg_v4!6uTXM z>p8cL<0v>re&R~VsfT0Mu25v{T0tBl?6V9)daeY>biAc#huM0Va2NruyIS!1T=_Vf zx&`F8T_K^$+>9=E4V`#oP-os`%w$lr3g&P>KE5e8#UpZ>)^L<|o;6Z6*L~Y$^%Oq^ z>wl`SfrTZh4CX_Yopg8cwF^1Y#9iE%EI;TQSqF2=1^zV=p{P@wEUqF9l+n8n5m0Dy z4+&M^Iz?2WyI(>T<U>VN0qv7foiv~hPfFqRfyV?$<nMGbDWD;+L8E|T{eo6N568g7 z7utGyfJbon1`hlB0Uw)Au>;m$tsn0u50FsL>7;at4&3CTe>>)CLymkm9uzs7<#jxO zi@7nG&0w|+ug%idtod7vnRrw3ZZV%zGJ8jTHa?cm>UOmK;jw)qLl$e!&R`$)c@N~y z+O0iecrY1`EzNdyV$s)D=mY!cK9oJ~Ab^#|+tpd}<kF|mei7iY3y@~&ZoZ?DAR2BY z8^gjuD_oSB&(?OwNXLMl9X_zw*e0Kv+n=>%_f}L6%z^AIHP}uB*@a1^WV2O*L^;j* z;6ksX{1a)7&`MIm1aL`DXZGa~C6ahGvazQyL2X877upW_1KeDF>5ksHEa`Xd8m9r& z&`Lw3saSD<%^=(Wa#!_zCB$J*Im0Ojo>=3+eZ?*_w;v}T@EU4#MkE^JrUkglMIRm2 zRfm=U)2Ny$2ej0>t>QE(tS@cqxgyKOQ$+!N>6-THsWW7>d&lA=zA0u0x2oE1C%%dW z&HRX<b%=Lrn16PI7GKGxTt7ZOznJo9ROp5!3lFkA#h9JwOvJd&po|#1@JL;m-ZKNN z-RG_%Y7390g<<B%NC+;@tBrG>F<LNHF&87AzN4DyF5E|lbfkE^$;ohS#`$+TF_<^n zRWEB*%`0!wxXvMk3d|I%^srtd*@zU#O7gbBPWictymf_iu5IV3VoP_gXrPfD2`kl4 z+z8(DnA22_P01AxIe7*b@>{$DT2{2QQx}~QWEyp<qoh=+>z&jxA=D{2Oba_G$d#~* z1UOLB!)`rVWe30<yWM@A`O&I6zpbff@H<`k!unL_x6~^59Vs}B-yIa>{0<~cCv&~W z&IZV?a0ADw6MRn*ZnKl)T8`<L=e$NlpFXvi3Ut$49<xV|;})pA+$@lv6^6M*$E%n5 zF)&D3YbES3FK2PN^Sb_u3i2R8eR*+N=DDhMoSUeZ>!4GXs*UTsZ`eI%PBuHPo|qg_ zT}`aeKiz=YH8!&%GIV?YxRr%%(}fs?!K=UA5)XtOkq%5DvR7IOKdr<IV0@|%_5wto zvXIQaiw{!)kB`~8IqKmNKS-Zi3;jA)n2*l{>~9w%B*HSql5x^LJB|)&;^Jh6r(UZ~ z5U#gP*7A{S;yGcBONe3aZ(5iLz@GhZ4%t8($TvJWk5Yl_!T>IvpPf%H?44+3M}{r& z$qEkU)cE-7Z8IKU!vCDmQ(`5ro@TRlBX^Gs=)%d><nqi$a_a(PDflFx_v6yIy=+hI zwfnq@OqVv?#K9aogQVQ?1u*F18lPG#__KJpU9lw(V9xk*ax%TjtpHKvoS|=fvIVeT zO{>T=o*?pr8G`T5jW15%f3D7|9Qia^KP(>PB5-BO3Fz0!H4xV^ADfMj@dfB$UV<oR zjef3hr@xi?>2*tkaJ7|;N7BmSY{IAc;3cWI4d_lqZ{~RAtK=>ylX_hAe0B=XA?FYy z$r&VHEBxtcU^+h;pV}&(8kI+t{0@IToHZw4Q|G{$4wK^K*Dt6m%9(z_-d^2a-{Py@ zL9m1-=M8_Xu%^F-`J_E=3-&u?i8=J~aNeAOLq0hJUvqMf#{o)*L%C*wIXzP4hc9x@ zAc~wZ^sT~|9^_+CnUlf~Cq#)S`0ZepoP)192d-S??&jZM^>hW#g~_UxO+YcKPw&xZ zE2C*<P{u)hi=cjLrm?Hbx(hqk8DVa93$MOzj08|u(%2&dIN<nD8S<;Rk0#4@UA(Ir zR^p6jwxI0h3mNBZO_?K5*gb(;us18XF1zWt0!w4mv<k!BCAwhkZZgluiFEypuL+YI zNlK{9sC-3;)$bRZ%>wQYu143${>Yt?2RWK8R~v<_->^UdJx}ClG6@qwK<Fe~W2AVo zdgrRa`tkAE@fG@;>Tn4W*?Gq!s8{oed!UsWtu1J_rCTUb|9X8p^AEd5IMyS#tgBGR z$0wKP7OqM)3rb^Dbb56<KkK^A<t1Fbd`kY+v{~DjU(B!O7S$AO^z><VHJi?EGjS*C zI(v0;d~$k%7eRZ?k}xv%X?%WuNe-|orTJMqpW~=h^l5h5Ud)O<Nub@+qv?2lJMDt& z?9cJ^q#fh3wC@jwfUz^jv-7hHR_4kI;e6cAZbf`<_79WCY1^K+IZ=eZrzevsY<}8! zDx?!ocQ;@Hd75{l8f#v`qo2n(E>*<>1KR0KQlVo{Zg1OmYGH&BqAm1v2H>tH$Q#dK zh3o9k`RVEHao!(}tfF8pPsX!uExWy%U)Htk_Iy@qnKaPXoALB`YO%PGFJPUWIlCU8 zjB_B0gkoQ=#_%8BHK{1sEnI1T+tw`Rb`Jl+63=4B-_w<L21=V-GDCIt<l+kdleL8L zOYF#aI&M!o-5EJ8ne9X!1Cd<KavdY|J^h$oPp8wo_XO104H!SpkIle-@qPQl?Rs+G zZkosS>cbi)^l-=EdITrj7LV}p3);%<dL=i62D?csTNnVya0g<5bvW@L9o0F9I9-o( zq)l^kwytKIkapn}kJ6C0Q6@_OnQ#rrh;OR$n}ij0>I>&+&D^A{lp#~PsO!vrtXveu zw`>9WG=tGNnpPi&uk}{CW!pt@C6p3kVZv~+X<Aqi*1l=1I&7V_WJGMlwlP5g*c3g4 z=#!jlaiq&>PF$o0t^0s+AzW7W`s{q(et65rpNqpg<MTH#2m0o%4=&3O@HTB9f*r-M zP#^K<ALKAgnkvW@X=n-I2I0Vl$pdtF3wL{xUGZPA`3_G|)QoSup(_|c^I!m6Jixxo z^JO=RB*4QtL=q8E%J9COFXS9lX_ev5KQaQi!ElWiYOw+kaCzdy%H4SZVn^9Rk7Z?x z;DFS!J9$%y<8P)UwL}}nBRu@4lfyh+T*FIueXh66JXEiv);Y906X9F-N5DGvi}U6y z*GmWQs$|C%kFNG>ryu**Im~5NIm-H+281w`G`UujI`}<0pO%-+E+spv-rF$Q@e|M9 zvmKexLLvjHqMHb1JH|RZ069E<S8~B@rd;KfPgkJEvi?e>&DdpwwAh}s9bKWKV<R=B zR%N}m6Ta}AW>&QOY0J)}0_WRJCEdI;Ye<tQh!187F?mME#|maQ;0YhJO)DuxaJO17 ze#8sI<i4TY$M6k|ePB7aSouYYGWR#7tq6A?+|N?Yex>NsU~s2<QR(*Ly-J6LkOB5$ zBt1**m3R$sx)$S{E+(b0_f+N3f;+|$@8;};uB(TQPPu|u0ry##jez}-)<3wBQcsMR z=%6~CnAO^)D^{`M?||WY9p`X@bCoeZ1f}U~*4!*+az{T%I4Ze_WzEPL?FlJ=MSsGL znDxHGy@zB1hv^UAn&|Lis*R%Sa4^QV;rdf)<gZ(QY6Sm>)Sqxuq?5DrKafE84E@3M zJBRnD(Vt2qf8F|1Blth0{=^FuouHip!8Li$P$0Zy&*A-P6sXe3U$+9)2>$C=ATLOG z&SG=dAzB$b!@w)waCp>^M61CX&6B)AQUr<hW_C?^!T}hkeS|G&hVK&UW+)`J7b<N# zu1=z-sKA*^wi3f<0Y~3rgKn}Bb!mRmw~aTAn{|#O*k?_&%juS7jn1_PA*2hevc=!O z*_dq&?nh;q`6*X=r+SHDapByEEF?|LO8a_20R6j;+1_H_HN)A(OF9%(&Z|c|0V_i2 zr!?Ek+?UdQ#o&pFVz819F~}xn5JLYpX|@?!bWQU2^6$L3*J%Zs_SXSc5kNnc+16{0 zw!gW3+3!h-?6;CS`}f_|&Gv5dULm@Db-xd$!u9@L=WLsJ5Bm0Hxu+wt+)C;!*L~ig z@w;}Q!#;D~E5W!g<9C2nc)ycMzpK3;mHV>alM>l)C3W^6uwfpz#q)kK!hM<F4^`p) zj!pfz2fr7M`?B6s5?OC0b=L2{y&pI6^Ij3YeHq^iRN;Gn0z#HBun&d%vfUFB*={9u zw(pyZkYya?eL{5mGQAI`!t?%Ii7dHc5Bm0Hxu+wt+)9|`E)7tgXroEf-{S(POFw`U zi<+rW$xF<S+Yz*ez{heJjP@Kicau3jKy^$RmB;!VC*(goPG*bk4>yfFsz<bO*ux6| zRg{%|MAtRG=>azE=yd5D`qTD_-dIe<O+Bo(uWhHOsO!X?sJ*nrlj##&^95IfxV%a} z?_{&hw6!iBsppbv{RzCqJ%Ps)XDz;JmX6v_xDD$C^QL3}idnH;O*WDp>s~fHJwKL5 zy?1AyT%|MW<+c@VO%_=VS9(9D>-Ta2hs1QJdyl&|^`=cdY=;`8cl&7?YOz6@G8*uC zSA5_cZsEIWrpu@G>oIhl%T1PHo3bmPmpJLJ51HL9mUFq0C!bZ@xqc@Ey3p5BfvxS7 zQb!H&Gq@CIRrZ=Yq2QjC{`XH&4Ja8|k7F2i+%zP!4LJ}lxyPkX>ml5v5^9)sb_`Y% zoYdXb|IgJDxs0iAWBk}1Tq16|j1AWdrJjXzznV{$qt#<88TJ*6C@LNi5SyRYAHn0e zcHK=%>l%S)lT+yqjasfgaCf`-+;Y06E%w9<18qZj3@L9UE)$@oy5#8}mTGn^*SRUF zk<h0trYy1VaU??0_++_~75t8L2x-wy-LoA4sx)ZydM9Gz(d`73msuJb^+$Q>_w8zp zhmlV?`D+BnC5aPOcEf2@OGrz44d+Tm=;hGVsaLuMHY`W1pR!%~Vhl~!gm?7|`x3o- zs5#oq*7$a*CHb4U&0f);tBC2!LwwG%f%{HjytZC<B9#KUEQa;5hVkQ_Lz&dtsZgmi zo_J}8Z*#&29*8$0=SoF?F&E`CZ0^?hG`hR1bq9uYFR<!+-3FBgc6FM_R`R*aFXCSO zp8VIQ;vGBIWJ)T^@n%wRSNymeega>#sZM@>p+FCuKk#AQQWhCJ;+<~WE*=naLxPg$ zA5e`A?QCAEcj}*yd-g*enQN@7APkLnxHuDz*&S(RooBfR&Yhn*%5seCzMp*mpy@>7 zACCW1Kw}qlgoEbZevvK=nVvH~o$>gTc=3_nfptpr@s1pKg$q1qsFB3O1Zk~>LD*8Y zF1g;UuA5)5rTDuEOECwtXHO(4p_N?dp10d6p<L2vi>;P)x-8wvWR)t}E+)aWHI!Y( z3&SJN*F0aOr`0J+q)$ii5q<XmTLv+G*Qk?xF|IHd>94+F{wGJ>VSC7Ri1*+>W;hnc z2}gY|{m`*Pp3avQevV|_K5#gex95f9L(z)(IugHf5!SPnDngX*{X@f(kZ`Fbsk+QU zc%RcUiYgpZ6lrrX&SPZvw2Fe`5<FLN4;lDR>j5VTN7wLwGT#)hVDnFP3id(A?3;#L zQVZActt$i04}R>uFq<g7<$bI(UQIFr>G3ozDHpH`64g8=AD|GA8L3k3!>&_`dD-*! zBdQI3b-Xm}??9|0t#!I1EE$L<j-E}EceR%!xYfvUNo0L$tOvG`HdbUAvWZv%%MX0< zF8`HML7Y^thM<m#COz23<1<wfrSxdKS}nJWVmu7jzq`5FWi~fU5uG|#u0Ts^x0CzD z5~hbESnpZ3qs<Q+*b#r*{0dJ3|8_F_j{g29$nSmIynpds`(f2K|N77GU%YL8w*sfJ z!mt0WU4Cr0i`k_4m-eZ}vR|%Y+J;5{0#%yt;6_;dx`BUT$9BEA#iCzgd(E$La^C#o z{p#NqSS2-4{r24ta1MRR6$y0!2P@T8!|e}CTDDr>PnPMkUJ!Lwy&#H)W|&mr^A<Gj z-ZbdN2;6_vLm5)FvH&P0y4q-SW5VJlidL{}x3D%e!T}r>XK+SlgwyjfcoQYeKJw4i z`td3&!$ZTM;IV<sEwP5{%evpRsYE@Zoo>-6RXW0>d1P*;#7C1gB>v{HUC?D4H<RXy z83UEN5Uf4{?gjI)hS~}@6CFt!;X`v4oxguU6B!#`WnGCR_BdI?K`K%P341oIWOOdy zdO6*|TL)yV_~rp*EVvKI_TPUVJuWA+_8yS^&u`zqfJ*OQ{6V;33%1lHH`#PZ0HEQ% z4My%c?vq+sE>+yhw>{fXFzyeK$}?tTs7aA-XJE<6IY$>u3fo`$Fx*i|fx&LVs9J@$ zuyzv^CdWLOyVii`ug~uay(P^_IxA{ih=7m^3Chhq`dZU^LODnfN$pHx1Z;N~cSwYl zYB!l&uOgGwaKR9U87!34gqMnGVn6!f49}ZUNLG9<?O?g+Us6NkHG}P9Hfq>zR%5LS zqf@H|ClF#Vn-#rha?rCwbl*{+{2boVn&u<I4k?JnbqfPwtD;c%zIb@hZ44I-o>(ww zleV-`WSf}k;WR(bhZk;E*ts-eDwCE~^c)?_^>OuxbC}*y){LTakzX#Us0_!x$Cno} zt@^KcvRrETuXqxJ^6q%DqT*^4zUaV>+Z}6=(N?@K>xdL9mLQJK*4EMxZ`N+JF7P&C zNky$R`Y!N!dBNm1J>XWqEvZ7;R}O21rWDrdhh1T<tO(hlsM~Tj0x2R4ZQ;oznjf&^ z*OHzl6d;bgv?lVJcL3qt1X$sG)BLO%xwl~<>{IN%-8k@QjREZ|V5Ea5+7jE^n24GI zy1@VVDFslXV@{q<;NJx9q@DC+Z`R%1IQ>#F>E-{2&>o&&b;MGHu$w%pX2DBXP_#YW zLU{;i5B0G|q5^Tq(5F835{=Q4)~C!1n8}mD$C;ceRis$;XAkx$<qFEG*BA5z#jEHa zk+i1<=G_>mg9ZPC7IG&B>ENzzbSWb%`fhe}y<8nRc<OXz477(jrdCv{EKO>sPaO+G z$eLE=*r%gPg2Fmdst(P3naD!fVqq%Nw5MVf9T})uB`bq!5l1^TYtN4KtCkJplJcb7 z+(!}`31lc(ARR#pt0oOAY({W35B*h%5%TCII9qs-)MA*<V1l_FcA;)B@juXHp_@q0 z?(So)+}_Atz+6r#s-oV*-n0!>b>^tF(r0g9&HW<<M(}Xm$O%`-(1EIzig89A_t6KU z-qS|2P7JirvJWl*5gBw?=w6)&_Nl|J-*9(xbQu~oEl)S-EaA^>nWUSkn0rO4;Y+iC z%mW59X{Y!fF95LIc(Vj4B2OAH0ZMa5-C8Me%PwZ9)@M_R-M`uS?1I*J`{QYOx?q+r zXxN=c+$cOvxO##oGjf0Bt}}`i!QU+&a4V$!2n*y4wp~5V?({4sWbZzVelXvn4UF7s zOmd5^88chS7V1eNi#WsBQSqR&C1goMR_|)d=_I+MjQ!(>+`izPxPwe<!ZwE_F&>SE zltq2ECRB>g7P}c)2XX#<3tJ7Nj|;e`cd?}Wc9$GV+ZqeJxJyzNC9_ekwF8z)awBy? zw@Zg*E+!tj3pad&);mC6VUZj-z*N0}YV-iRbLCec>LV+Qu}`;-D#!^5r{YKC$l^DM zov-uCnkEK|N<v=zhLb0$Q<&`eKOm|5_?wjT7*QjIwI&H^cbnv2NnNO&qDhi=rA^Le z4J0t-X={#jDTxFQK|}iS8qYvTom8QcCTgfFE!BiqsYYVRc#QoG;;q3UFEcnNo3s&5 z9k33k9QTa&s<1l<sn)GE&clT@&VMFuLnO0-ff!6JG5a}Y#%!umCq3aejmaC2dTP7A zz|tkExp;^kgGHAIdBUJU?Z+TIEkL7X^-E4K?7+H^RpUwKSSC!fZcL9N@rDFBw{%`4 zRJk&Bpz?N<j$OL$*s&O&WT}Y)jyqBaBGqS}fV$@hR9PoH_0rR##MOf&l@1@tAPu2k zk|W=!*eOi`_U>7skt}~7W0k$tq=}Fa>ds^xyDS2;U2P5-#JYuw&bvLC&)2GnVWj1~ zbrJ1o0g#<6pi*wx)UtTQOjPYeQ+jlD*gm91ZcOhOty?&BwQXR=*1T(QJfZ(lT}n<* zyJTcCAqm?^E`ohpFJHfZF`sNFH}vJ*=HrK-f4*P7{pNHAKO6Y@u=)1Y-FEwU^X}cJ zPoIuHogS^$AKt-6)-hIo)xg1}<+rcCIXMLbdDVPew4Z*p`uy!HeB<(}xq9`@X$!a> zC)>Mb{_U&Zo<qW3bG#g#HT)mQxE$esPx!x${7c{9`;V{QF#>E0e!YKD8O^k}C_u;d zzk=SLK=vN?7J34ieCOCZ?IHcv?`I?W&!FBe9_ElswOy^{w&)I@>2w%p8F2a!j&iWq zOqS3z$%FDE2d1m$Li=2$Opx?xVRE@K-W-b;4J!xwk&c*3o{S72nQgkxE*GN2D>!Di z_>mH!Q1UPlfLR#3drroM<C`g8QcUbLH?dRMm5k(OUzt<-kvu<81T8{BT*?=nJ*_wR z+OJGbhzm~nau4T=dN!_bCj};iKzIM!9xB_Onl?7|4o%Oxui6}MMPh@;9|s$b6dV1O zAZ<2zOqUDy+k&c{a?HFei&=}4NwB%7l9N0PM!y!wa&cGV1s?m;W$>FvnxTRsui@!x zR`hhMy9@5ut1X@!JH0rD8@nx$m#wCT#O%3q?8y`6PV__mx+QglyUQw0w1QIsmkt|N z`~VHu0w%)!8uK<?Eja)nyrKS-8FQMgpbL`js_d+5;8r{D>OP8f?SfGa>$H11*4m~_ zzLj;7o~Uux_AB-emZb=z@E4r1i<<LnXaj34aKO(b)X<<U^@2XTd-+S;Kc)DJb*WC- z$qi&G7bBnTqar3^&LAOS&7mS<E$5J4pIT+s=c;O@f3vuMT&=egO3n1}V9a$;Ea-%~ zU(DzFqEX(aly$<g<<uLMvQAiMdUXW8LO+)7j$`!H(fjEKy#$S$_d}Sxbk8?HS6Bxx z*cr4=D#ACqxd7s5xuT$`T`O_79aL$-H%=?GASreySZ7!GoOlJC$Ts-Une?^nPAcPj z%6x}XS$~)KLDC9M)Fpq}SA`$^6levQJH*hjJMyj4nNT})#lv(mm){Jn(1IOF*Jf3E z!Ebg}AgLD!8oEFqO8Q+rPkgG~O*uX5S!o|B54TTMh`+tXhczp}M7%%;`t@7c1uZGH zNlW^5iJ#xB(1IQD_c&Gh!Ove-V5uJr9J(Q&%3g%JUKAdpQyBb8W`z#ygS!x^(gl99 zp#n->AlT3Y{!(_p*Yxze`kmzSGnN$^SOogWQH6SbNU{Pc0tgREqB!A0NjrTm^(WQt zq@3THth7&7fTv43L1BTQ1I`76UC_QtWrXvAGye{oY4a8yw!5gd&IgcfSd=Ib{@xFP zTNxD;G6RQgIf;$s{ACXnK1L8M{AoX0a6Th^<le~yXAeq_Jv_wtJwyYmMxi>-T>C(X zH5rgDSoE~SyvX2`L4ECE|1&UVNgq(SNLHkwle^An=SV8rxbFF=yXP-EBMbxQv9t=@ zIhrdlj%8KI&Jk20W&EfDcaC5R%znEH+c|0|EcwhTXs5SUQ1n?<$WBkGke{5lVmnds zc6ch-t%lW~xy@J9(DjDqBb+<e^j81_nL69m{Qrtm)AlOPDJB9`aaeKz8Yo-b9&Hjp zAb21eYgVjv@0J-ZG(8+u-a1+S9^J<Jp=s>(ZY0lcR_-t=Gzt^Kdo*e^TdX0)AW*Em z#a)6PrFw*Q`wqArZANFW%~f3~r9Z&MQC}xbVm`uEVkX*FM(9(epL3W^;HlQEx_s;b z7*TFO6-<h%z%?lTR;|9RT${w-x~q?D&B=OCAoRTlY}Tr%GdL=!0^&+~#sd0Ott@Mc z6&PPqf@;#pJ>-(e@?3bn8$GQPdD9sArO@?79D?zZcThFiSKzz?6woyl2soS`IN*vV z1SqEt4yvLMB~;Ri9J17l3UpGA0=!g@0H5UTAWJO?FkT^KHPnRa%Yw2H23|7f7ZP7P zjR|iA%}4j%NjSRtGzMS}(inq#hQ<Jn12hJp4$v5dI!t2>`aq2V_`Nj-V7yj*9gPY1 zc+5x35BvKVfH_EG46Z}y(%D{b0XPoO7=SuJV-)HzjWOs0H3s1K));{K`Wh3jXPJ*a zFZWj&fH_EI46Z}!LsSNE9H24)b%4q!)L|-P&<Cmv!0)Xx0P}TJ238C-EBR=SJ0_5t zkRsNBgAs!rq$(b?L*PTSh0z?KFbsHr&N#rs)W#z?P;(f?-pa#Z&(xoz_I?WM3h*5K z;|fwLKgy&fr89(7bqknCM1M~ws2B6?9cGKjS)O!qfr`_GWtQO0o1uBT@wiB(A<4M8 zfvcF@t)4lWrsxo5wqvqfQFU><p4_+9BC1<0Sxx^9t^=(WeS~YKW%(=dZ&*61tO-^* zYUu*XVxFq|EWx~Mqm%LUhwI2vO&ft_g`4K=<ml@Ba(s4*2e9e_8I3RcahzX3`b7`? z+4P6g9unZ4^`5q;Ka6`|McbHgG@N9+^q0GT6eq4Bq<28D==O9k7hC6WQq~2E$pesy z*{(NYF*&@i(1nEC=*N@Q=|c5sJ(08mA_V`uY3O4Y#KWozBcHpV5T-(KYR?M0Fksdu z&+m~^@Enpe*C{1R)R2`Q>KuOP*ch<#(Kxj+Vt{dH3w(*PF4GeZyH|M^kZ(tUsx4*N zj3c_Ojfu>PZW<;5FI25HpH&~hZJd30u(%?O91G{6cOa6&0cfV}_EW33#b<56t(9<* zTszV_1JGd#cxU$*n^dVFb2<2)-R|=)R=cW+&F-VXcd*!19C`M-?{KL!B&|W>-460C zujmU7x&eU|?Le{FuG{VGjwKv0Xh|mm&31J<%Lr^x?$_8*IcH?V(aTDuqhzKb*~Lyp zp*raJX*hOjY3z^J(NLoLzDq-uCY3{#CXrsJjNmlm?FjD!@dCz={K7)Ff)QXLS%w@U zR)RMl#0+rIy#giJQko3DOOym`+V7ag;8xPlvI^4~UJFX_U8~2;wfhv5RG$cs64A9v zh4ryX30{j%atuBKA?B25e3j7699I^FbfC*>^<qrHhme&*h<?WSxFvwrBA2`$W%v?M zgyLTEQxwApy5g9e03Xaq)75aM3Ma8ffXiZy94>}70;zFIwsF=08(US_j&`#VAGcAQ zYpL7~-{oPHm<mGkHC^Zmm(zpHJD&=^nh)y17Dkl{x}K4x2df`oI+4}}8O6y?8DGhT zdyX@SxU%kOr~{FcM2V(T3a%<r6D8mZ>#<P>Ddz3PHw8RaShZ<amAT{Mq%78|jtP+> z8_cVGwisiV-ZN1SS;6awY6rI+q8h&qSD(HYBxTwj$~E@UIz60sv_(y?BHXR#4xh>^ zD1~)aOM7Ue7z30v1y-sN93;^90r0^Ia=#eCFg;K*3MFtzc4&a2sEMDk?3TUaFnbDo zWh_=Uh$|ISV>I2ep#_{u2o|<uiLJ1Q2N4d(!!q>stqiFhE9^5vFmBz}LpoxnVIdgc z%7Uv7bXl#c477iTg<wF+;UO3RhZxKE0t<M}%6QgG{y`xa5O7ckrf@MBsxB<$YIJZ2 z25ky#Y<15N4AIb1k}x}qsCEzf82~0aI6st?cCCmgSF-AeEPAA@LVpmDRYq(&;B@u& zfDjC@#(^noR>!*CLlcK!fG<dd#{(+cEe%&WlY}eTB?VWtlz=Pj=f0~*oS%T}w!AkT zC#73Mh6Tr+%D5nix(5chi-IZA0HDri8~%q4y$+ev`q0oYZaYL#<1<{lhhc{))AkJ2 z09_9dD8;Dhp?J8SI|@}^Vvjk(+On4V3a(2*2NGs$TdG<dDGUn1>Z-s9hUtNlQ7C~! zG9&~8N^0U~EW2f|WSBh#zA_dotB#+Mt5xwZ8Z9cZbcJ9czlqoiNihe9U;z8f5R6;5 za6(u`gvCJ6s+4^NucAH4f~yX6S*>1-hlOC!t;0hw0RB257$7<*1OvE(LNJAk!O-py z4B!q9!4hn2b<YqC(R|eq3=ld$RD>g>u$|5*tBz@i(IaIQ`h$S1GGfaHrL2aIB3i3z zAQ=o|jRR9wL6Hs(!2n;72s_0CLNGw&BvGR2l!B{TO28HNbKg}Y&VQW{jJWevLa;iY zB|I1!>}oVo<8?%}gWC>K)Ocp2;o3b6J4~v_VIVeCdxv1q$*AcWZH#cYo;wP4An%}X zU<ihUJtqXKs{)4_<gnNvtL}h#K(S9v2^^9g8lWg@;%6+oWv@6a%nE#EELJw4J5}*8 z8Z9cZbcJ9sVVL*|S*8caU;z8f7>rxD0IMTt8nz5()a*hxI0gfZhs9t3cz6sZtyX)n z*D@F&Iw%GMxPxLag^SV9?idW<4vxVRY;1MU7!1*T)ffyAx{<$#NA`=s09kZN1-?GN zlvT!40@<jP)zENBYnA>5rac)9VvQqHRzZ>O9-DZf2k-@nxL9UrWMGJ#BuX?p#sotW zB@poRao<%W&VQX4jJWevVz4@&EkYSK_G&l*$O>LZR6Drs5Y_l?xOQ{gVNyK~Be9{{ zI|hSJMoniCX9#!exuZ}=@(v0I#$ZU;b7HW%DsZeZOb;mdsVRX&vO@zDMNRySWw-1V zhs9ZeuZ+dYs@{!7s(7m6VKiD)V$oFc)nrR2^?9e!U5g(xnS6D3$$`}8FQE|+kWTYR z{qk68S4bF6HWM_aIi&jraBCF0z^_V2l6584pd8%>R-wFrOXM3^*#Uy;>P5D_i#&&= z)B}0}PzUt_;GW-$Y=x9G2d<5>yB~}@^eJdV<S9&p4(bKKJ--+EBm=tvKH-3F0MtR< z0JuH7aim9)oCnoU-6^tKW5mao*uwSWO(S1}oY-ph1Q3Qe@B}>r>PLu__-h}ap1jII z?Ry`v9y`i`?Ry_ET$|C#k%B}qf9wO>KtI3#A#YK>RsabjUHnMSJ8SCiG0~k4EAeHY zq$Ygmsq<afQ>-dp6Z;^K<m4n#!-PK|wfmf?2$flza~JcbCVsJbdc-R}H_hurI`{Ss zw|K;Vr7rr%Rk)0r3jOpqV;`Sz-=Ry~tIc|}dRP`bR;dy;y>3>nnYQC&^7rlodQCH< z+o9KR(Czi{+eZGMZ<M90i$)Yt;l=PcTcuXZLuo?mi0**HJ4bH#83=f1t1O~Qxt!QY ze5Ww@p})0P_959My(+V8sTz00DrLm4?<Y&BCak@i%-xN!aIrT`S@9DdHG=08=pAFa zau_eE$zQ=dzC3>uhfa@`JC>uQ$BOV0-~!vY4;ifU*6<M`y0j;!ZQM(n^P`@?a&+bn zeHy_v`d{41PdEcu>-eY9xt!V3`&H_f0(~06MfDyZoC~bugF}CzBE3RTaVwvkgO|1` zX0BAdv(BhK{r~K}3ws>LktO<9YGqmmWj07qq#hVqE9+%z$FlW_@_N5(%^fs=2GB#G zyQjNB66UA<?R(<HBOjGj4L)Rh?;VduLRVErMxKm}h>VQP9B9o&w8lRiIOFIdn&Tf1 zwC6%@$kF!rmqQK09aG`+`?o_ax_X}IW_Mu^k-o~<kk6g`;P*H$=UHAwIzI<Ro;9~x zUP+m}9{kSgd3Mq2?z|FLXhRj`#CH-lZyvS*sVYy4)1i_UFZAh<4Z4lFpb{#s4%?`& z!51-~v@Ojz%d2-Zb~TvOB@|b_U-4?XKA+>NtSXydhwBwiAC%3?S2yM7BPS(Zt*yw5 zs)!rQR)1X`57ZMVHA`I%RAt7uS;n_^M!T^MdEneIwEn<aZ?QuyWUU`5xVC~X%G%Uf z1=b@)j|b`uBu2{O!VdCVS8I5Tl$<<NWs*=C0p+2AQj~E}2FtA{TJA+zSHfhl<gt~! zsY)hD28&(}RO*Nf7M#3a0z&)PumO;f_YIDsgu*dcYHg)nl=V0mgXN9~YI7(C3tkRX zs6Y%B!+kfjt}Yk2_+@yoJTf4PG6uwOx%EWLy(sGnD27WOTgjWMWPmYT6c_o}NGX{$ zIED*O%-wK6hR!*JTs$^7iV_OPV5zm0dQsNnU<{T!9;nTs7%X@>P@w`bR4fk8P1Avv zvR#?^ScUm0j*)1ZoR!&+RoD+NGiE?mW<dHiIRfp<%!2eQGX>FXl`Hks_+iZo2&j|6 znAs3-jyeV-CC!L{x2mKAF;dp7NWa#AW2CT|k$%Mn%1BYy&>1vC3IoW{Ab>|RBo#7) z1<jIxzp7vWGg#D2Nx#m7%V1fvCH-n0mcf#)<O7u<eG5!zO~9X7lLC{$VrEXjT2;&t z87ye_q+g%oF<8<JO20})W3Zg->V(ChvIQE{(%{atbcx1rL9;1ft}5tw3>P({(yucR z87^y9rC+UKGF;NteV{U^dCjhXKeH<ZCWFPyuz<Cym?1J)&@4;8KF4FQq?wj}m5Rnt zIh>qYc-y$LY|LNANoDS&m*v#bj+R|}*%wuvZf{3RAA9MWy0k+xS{xy0_tq=M6`#?< zlSSct6Qd#Z16O3>E_+!lAQ~(RgxqVdikjSj%fZ3`XrSH<puy6>XQ1l9XRz#KQ8?p( zXGk9jIPSogg$$g*f`CQ~LU@YWLU;y?0+@k11DL_GfMuXsgJrPfWKsCK0?KgT0Ty@X z%VG}8a8Ur`&UIDPWoD#aKr>Kpf@ZjCfHP3FgEL%qvM3yNz%!_!0FFENWg!D+uppq( zf{>Y_wvd^@q5x)~&H!exEMOU^)?gVdnZ*u$#xoc@-11|a^rV=hmQ!Q~%dS(|7ri<i zoWat^sq{_1wBs{aT(cr<KG<ViAsQ&$*hpNgmtz-yMB2K}A*|*izBCJ6BwvFOq)#E_ z)-S3k4i#VL#j*a-tJ#4ZB5<4&Xx8so4pBf(R%$_$1%-2{yc9R<pTX6daFn2lB@NIj z0tVVB5klug$ahV|bXU_A30?@GlOcdLnE-H<9m42zn(P>iqf`V;a}#nf`&KjfrvQr8 z4J@njj^zjqLg_Tfdrc#t9HBxaoeGhxsU##v$Ph>;(`3eh93dh&nuSj|_RVaGq8RBw zu_~=7j!+<mPJwLK6b!==8br`(5W$*;BRE2Y_&Jd#BZ}V$2|>>sj|{zr9WL<`J0AE| z<qf|v8br`(knx&^BREEd7&;YVSW^iM$H)*xC(~rcP#hy7IGWFpaO@lI5=Allfnrr! zQ5>N_44nemt|=IXBQ%Jh(;$L14M%W<2=Q|wO-2;IVG=7r&lXIPMln4-<vrX3W(a`? z`CPHX%(qe26k!=3bnFqs%*vDDy6zpO81c-ELYo5zZm1DN%^T5X!j#`YD};rxUkS4@ zo1@5?<x=Eo3WnS$72@Yq$a;@T7?H;EUGxJ{bUH+_M<-AmWr$chp*BN?<tQ0JH0)T0 z=&<ooK+S?Fpfv#pbc6`;bRuNGM<nnZAwxKw4B_mNNpOzPA(~F7&5olvLPfv~lNMkO zTOx(hjG01N7gs1pNDxRTLC$+5+^+Q2$x5koB80I=#9<s^g&;bWHY*C^2n~TSELwta z#0)8jX3G@Bnt*{gMuadr5%S(6;xLYpp*%Vn0@))IK#tKNluoD3jzKv_MZgT>7GRFp zBw86WYYJsuT%jBxK_Hz3Iq#7$AV-K0MkhiTdqf<@5h?`HskB*95Qk}Sw(P;s<m9v? zp+1~+*34LHcsex=#c>B6Vi|PUf*u_Ma|a~?8kC4=kCG$0gA`E>Qf;Ob)*XaIIz5D2 zKs&5q4Ovsv8jz?-1hOM!6j&#tZ3x3*;h_ZV2qDGQ2`R2Mp$yj%N(!q}YO@ruj?f{h zp}jr6(}*@#(rS9!Fs%p}ro(z0Iabn}PDI(Si8!JoWE4*)qj=V20?!dTil)<PvtwwE zP+^-wfhR0SbgoILscu8FBH?I`kx@LIj5eSq6L^jhQbe7QB3ctlh>lTGOr27jCC7A( z4p9w#9;l8eVVWfdjFUdC2pFa#L=;go2Up5|O~er$A)|OY8O5_E6L^l$Q8b-Sn;k=Q zgo<F9;=@Uc_JhOaaF_S_M7&Q!0Ue=3JTp3MLW7QBIzow%W|RnOgObBKLW-znq=uMM zWCsW_)3gysFLrEQ$!@KfL%S3Y%zU90<m*7ZUsT~9D!$H(zi8CFWAct{)?M{GxI-*l z<`kMND5gW@rFcwr1Fo^Tse)!xTxilh0RwH62%&Q#<h$Y`pc^Ga0G&*emjG~-4q<dU zO?C{%Q7VE(<z`3@?}%GK0d((z{8!~2%Mluc(rJ+Qnud+_QBH`YQ)zONkQ`x#KsuQw zGY;ek5y7!?FL3bv;5=C+(!C1uUX@l9M<@_Or$DxA3Wnhb4I=0?np`-7BSeUw6KOJ{ z_>GVd^eR^Z=<Sq3_aMl5Ro?I$qd^3n1{tquID%tTh@n$yauOJhks*psrpb(<I7UQp ztXzo0Zp7$wEW77G-mB7z;s^y|=oH9yO~Ei6p+N+lMw1IiaD)i)b0SSf6u)5-D?u;p za0EF9%n*V_@_EG38)Z!q4n&}doR=rVb=_f41}G3Wr$F3#6dbsrMi4b8(PqMw-vAE+ zLYTpX*_h2y<jis*Hq@YC$c<7Veolp~*L(ziqjZR((`j=PD2@^$mQJY6kYPDWM(_x0 zm?1iBd=yZ#U<znWzyTd0LOh)a+3yj#g;B=hj_{ukiyoN-=LkDQ)9JL?aWqG$2s2?8 z1I%Gdq)?hMQz+}=3grk10_h~kd5?tKl|lbNVRRyt${rDiafB6u=v3OQD2O981j4Y3 z3BnOGq#&9tQxIzc2I3eI!stZEdyk02I7Wu@=wt|Fk4ykLMu$*3oi;lL<rozKGYn*a zIbxG?3$0Mr#TCjC5(LsLBNCPy9Jrz!Awn3P2x08;;V_O+A&5?;&5D9JOoOxKI^xV6 z;gQ8sb+;qbO#W*cisOz*GqDUhY(bBXN#zbo1T-kMIdVjIkRqx<s?C(bx`U9&MjZqv zw8I+KkTpfEbL*N!AUi@vfps$4hA<pD$#*G5BSr`*u1-jCtqEngj!;rqol={nfOUip zQ4Q_w0gLfCx^#r;ZNs!8V3-c;ZN$-YBFcVE#6@+4jN&=YOW-*|N6~aTZFUUJ5h`p` zDDZ^km_$&8GIv^Iz5+`{!qFTfqj;JHK-9NICh#01q=-5pmC%}>gy<M0#ndUaS#nIr z=&&uJ&jZyFC9IhGbW7V%5im?gh$x~?MA@&2IHDtD6i+A9<|XhPp`&Ozoi;m$<_HzR zvLA779ix=R(XC7#)$P+zKnEhtBHF}L-Wwe@p+Uzm9ic=>GfD)tLCIkqAw^U(QbSBB zvIB&M;^@VhVK}($Jk8%-iU(%Cuv_wVAl@&ka1Rw<=fz(%YIbWiMBq3laML2-;0{s1 zsbZ-GO%@c>q4H8Zrpy7?*xXb>vnej@QlEf<HcEuhIT7+*aS_msk|BUjrpZeHI7){w zI-Mpv2ID9d!J=|AcE-`ANG^a?dB<|ZwIGyEgS^)?Y^?8anRaoKkQ`x#K#nrwK#mX* z94jwnM;u)W<S1696~z&kf*3jlVpvl!3`b~C7M%uVv8Le&ju0V!PNd0*;x|G<(5qaD zopE$2lH*sEH~hxj2O{V+$aqb|5gemJ44n!wtf>TsV`PY;lW8(zD2@>k94k*`M;u)W z<S1696~z&^ffzakvRzX!3`b}XL8n0kYZ{K=2od7vM4F5!e#0bIf?geo?j6G9-VcIB z^0{J%2uGu=DZ+sWG?DZ2WVo(7?8yKH;^q|E95`?Twsb|*oJ5-mQ+@+HNV~%fMqp@k zN0uUImP?VVDHw8NmJ9j(Qnlev)_YXKh>V0-5V6eY5XByyKyj2IVmZ!`VL3`h*a>Tx zAv$b)6i~BZ3TREh0UaSiJe>&f>=6k(N5~LPCqp=UWD=Ysbcm+YX|v;Kj!+RW!=we6 z!<I;)G-IYv*2NXd5fTK_Ns#j%3AZa_adhE4*DgIG4&w+b1ktIqSy2#2Xb6O1(Gr9s zW=KIaTc#k^1PsJ6B81V2koO)DhjEMy<<ZGd9(!a0$T2#E(&@C>F(}8V2$*5q0?ZMc zL@Q%vO`)udE0iN72&9uB=RFbz<OmVM=tKx(kBGxKLWLkYl{PC1;xG-)mh0H{E#l|^ zK0?jpzowx$?uaxK%b>#+^ynCvJ17y*pw#Bb5#2$Gs0OJvQwr-2LL!}Y5PWwWorQ8A zvL+G84l8QJfO0b0hA<pD$#-`MjTj-MxSHY6xqgqI4A&7#3ae9UvlOt7&|%9$dwalQ zJdQ44nBKNFR0IsuVZCjLIuT{RCgP$xLPqg)GAgGvnZR>|j-u&w+UyvbBUFfGDDZ^k zm_$&8W^r`Ewj$wZj*(FbH4A_^dW%fpIYvkkbwY}0%}+vfjFMvNl-evgrek#2meA*c z>WC6nOih!UgjNI$(-9(ys1s54Ya)*52pPrG$ta#RnZR>|j-u&w+UyvbBUA*-e#Ci4 z9No&~O0-Wy0Ud}mYaG3#!zMK77^WkX2&uf^!I8r{LW-znq=uMMWCsWh#nH=KE3V|m zikL*Z7!OQ+5fhfLqk;XRiuX|Qbzb~Mqh>c(Lj;a<0yixJj_weJ%bY@!1qF4eycCbQ zZooA*IaSa+=uD<70tVVB5klug$ahV|By=>4fQ)|OKkvYrOaM5_4q<dUO?C{%Q7Xbr z<*@7wq)U;U|Ej!WIpSLoN~b~IYZ?LN2o)mfRM@LEm4xI783O5Kn#?$mBSZwp%D>nV zNS6XRidAVvam1$}hE9QO*AxuH5gJ6$X%NAhh9fvag!nm;CL@a92nj*2@+Ec#(xpg_ zUsc}l8}lECpwl4ZH4R5_j0!PyD#Wm+5*Ut=A&O3>$&8^mMnrI|e25)^bSaRdSd~^3 zNBjn2=oH9yO~Ei6p+N+l1`(`jID#WYh@TT_GNSkmlUNCQVTU8iF<^!eEt1a_JA^nI zWla$dgrJF>mnXw@-8)P%LclvYaNvd-LDa^XFy%MU3SlAaSHf(}<|uMzxfHpYf+06b zh4?uY;@6`RMr1sYE=|b$u}3FR9A$`DI-xd0hUF+3K{V`GhUl>IQ9#XtDWEk02Xur8 z@pK|&zegnS93exYbTS+kJu(T-5jsTE>9pB#G)Jfim|@Za%wbEUP?|AQDC^=1<p>D^ z=_JT`kA&Nmu|T?To=atqh{HI-3PE%#ZB`V-5gGzvShNJ;h#684&6X*MH30*0j0j<L zBILbC#9<sGlbh!OUINH5I)rkZ9fNX=ihvo$Ex;VHNwhL%)|CCaxI#HXf<QV60@)*B zK#mZ}ZS(*i4&w+Ff;i5Kf;dcrv*kK?eTzUkfR9)+)lyAEaoiDVCYC{mVD{)3m^&yD z(4f@j$PwK^il_#uHd6}g4niWGb<}xxAf1JBAF?J9$PO!Ngne@|+J-P3I>~o;2#pva zq_~>lK!~r=B)g1pSIZPur_^RCU>)IzEQI#<fW>$qUAQ*AZEdIs7^cH|+Yogk%6?76 zMRkOX;^|}*&zelg=?EP~)9JL?F*HZ05X-Ow3Cl5wpbE_b>4I%V!qFTfqY_%o(0XJ7 z&oM%Zs1s5|Ykm@<W0VwAr=*zHlpNDBIz%;$LZCXLgcVbtZfP4T0*2`b5k=IADEl=L zM|6aY;^}1Cyab*jbQDde(`Lue9HAmuG91jyu5Nj-i<QZhXrG1xIuL5sKzd1sO=!?D zOh+gYQhC3FBZqZ_6j9Ac4Kbz24iM5S1h=yn*a)#)EP3gx-X?aoTx=(2)2sRA&0+WC z>u>RP^8M`m`f|Fy*L^!%TrTmS<zjk*|9-JtY?hbP&Asl&cm6Oxo~>~o@^T@smp{HE z55HJmujjLM_s7|Dd624V+}1{B{^J^#=bqUuxO~FP+z&f{F;q})tJMZHZh|eR+F9H6 zmfL1I5*(^+yS`qWOt&*FnJ%c+OQU%MB$-cdW|z2lcQfDcUB#l^w43oIeW$c@4ES`2 zCCXsGj6NPJbTV6P(LEelc}@1bU#xK!P;sU{iQpur)BxOoEK+9O*l&X8QF_U&9c9r* zOX{+DbIQW42C?+eic)dH5qZNNm)C3+O1^fhQ1&ghs@QMBR$-;^HCu&}uiYw?eT%Is zSO3^7=<U~R7D~Q$vrzVRo3*dKv3x#TpG-HVSomzao-Q_L%k|Y^cNwqyBU1_B-tsX5 z>GcqSlj&-{#bEv001Mgs1_>IE=d=0w1rh_~->O=&$B3Tea^%|-b-h#+CQ-cEL0|#6 zrk9P%AMLLEczJo+DEZ;-N;bI`k|RtL@RO|0&GrU&s(1Fh(N+out%#O7Sza#JhutsE z&dyrU@blGr4oB2Xs~33i;KSo)nW@T?6*{~SOLniTo@Q6OCxVYZIDUVSiOmc*BcJxz z_~7Kj#~+?HN?C<btYRcRZ?N*{<40$YA2o<-(>B*9C$r6_1n}WU(+?j#Zj^CGv{224 zJ#8>?@bL#9KRjs=R3_$&vt`M_!H3g_#~(Ec7za|Ks-BM;bw4=!;DZl`0eC)LFL2U+ zS^e4B$-#pUhpV?j6$k#b!Nl?OqvQ6_p;Vqu7w0}^T!v0h-hVvS30kIN!5%g^n0|P0 z`f%E4l6FC+r<{SakIp_mYn8A*V3DeReb%V{<oNXc(-twU9)sa&*#+-EdVl(;r6a9& zDN$9<M~%7<9v(b8_+YT<$IH`7A3QvG`1s++g9Waxw=+|Yj@97M)#e>v;@<PgV_S){ zLe<UZ`;YGq)~K#>tNg>qkMDKqUx;B1Q-NP@_Drk^@-gl|=%#eVjUyV_)pQMiIC<}z zi|Og|`C+$ME@ph%zr(#Qcf4Ff)1v}>pZW8rP<uK#ng}uNZ<YUeqxB2|alD>QO;Dbr zk_mqwcKpvoo|GlK&gUKznO+Qkm~pwDZDwY%4VL-hVz!=dOVV26*?coUzO<(B$NX}> z#hlS!G|bj~;V)mx)hBr=ojElsvKa>q(ZYCpk8|kv4iArKaEoUCYkC$_8T0+~{wpbW z_}}poN1|puTz`RPcHQ)FvE1(MA8!|TwbP7r>d?dPdVwy#oSTejvE$?QU$^t^<?P=M z4-3X%{<aXZLrjjlJ^cT4yIt?`%e#1V_s4fAXe6>)8@gRrOc?Q;ecEIgFA2!;<?`g| ze_k(rjw<a{(L7ka=rC)apLV~Po*q9wK4pz^@yhv3rD`%?Y%pMutN3g=*Vklddoi2Z z=<mAI`DS%FMSpLn5QB-lnyn}2>*e(-HDS9ZGxIC6GPkK^#Ud9PCccQs=yJWffFlh5 z(fEBn$KZ_LWUyB#YZH5+*QC$n3-8$tyk2~v6_8+3kcd0Y7ZcREy*TVRjcUTbFa0}( zEZC&_w#63HXUEeh6WE64AvgQS)6>Llqdy-!5WN$#V(A!fn|?jPxW1gOHfW~*)ounm zwcDPuFZS)%MG%8dm!4i=aysOB7F=L~K!gvrV|$U2%pQkaHJWugn?0OWR;(nSjA$nf z6JOX=SB=MnpO#$cqr9#DmB@SRTgt_+yKOEX31Pb8%5+_Qx6eW3^c~O!&pu!S;gTQ( z;>X4P_kMw)e7!!IeLG#P;LH8_`#=2Vc)8qeV3$_=C!5Xw6~bcg-GAraJNNH*zZa7L zIesx;bkoIYcXVgA(7`J&CRel5`E>H1*R%D_Q3q4loz9?5B+PZXkGk&5|95}F<aoZA zUS8gGxTpyodWr}ioJerdO)oJ-Hza+9F~D&U9~{rN5-8kW%s0lu^XY~pPiLF?`9fr4 z*`dN`P><b_Iygri!ht7GF`nS4BeFRE)04>*|JiJ=XHbfesE#uee1;j5l6$_q#sm)2 zU_{%tohsk?V!oYYLbzRCpIoHIe7#(EV$<Qio<eS}R)}97(~RBgp3i>uY}P%Ut+wD9 zhEbW;)?Keo1r>R51)6Nd^z!-iX49=_+w1j0-ptqd!MJIM0e5}6oSYz3x|wYtnwzai z*7B^IcAJa&6_D?Uen<2ZgWpI)54(%)cC|UYfB$^Gy|_Mxj=8$OeSW;TA6<Q)h-~gZ ze0=cnW08!{w3ii}m!cEiRYbd&-DhTl{-uKuQI7JjCz%^*WjJErJ<MKoiHPZ&oDS>) zbS3L9s2Lr;cvYGiwaN5kJ4fH-&C1Ey-}zTfesxe#a$vo;6KGv(OxSh=yBW%cw>Fty zt(NQUbg{kHZDyCVlkF1w6(Cv|m{(WR$zt|gZ2yFU#zCnA<@e}e3=GPoJia)%*TFt@ z7w_Z$AL0Muy<U6(UianAzP#F(cl+{kU*7Ite4uUA^`ls1y(6|(NKc9vR5c8ic=SGf zm_1IPX`JS;t3K1m{EQ8QBqNZMf0jMwXQsUp9X`M-3WYWgDPY}a^To;KH9T>$Bi45B z&cy*l1mMfByOc;p0!!8H?;rNQCur~!+TXw5`=0nd8v6cG?|XIymeJbuANRihz`Cye z{Rj2;kbq0k1}|kKwIGtWc_I0Zm_-MsFQW4ZJ@oYtH!CP|_0>94K&a84c&1^iTKnX{ zx~5-id=Qm(T_zfk7_TLJs!|d4qnn4CZG|81s{i5S4eB@da-{w5@2da(H>n?DxTF1# zcGdsrHR{jx)N(!ln>ekP-TK;WDD{<jqo!lFOUxnfT)<11uHgVoZqSjw7Mp3N>b*O2 z>Xw>^6r}7ooobtsNDa9orQ(vY`_+~B81qo88^n1pMT_!}VKn)Ad=zD43VL4x$X+|z z{8Z|Y|7sPHX?91RP3$Kz=?4k)o8xmQ7tYilU`C=P`!p)o@D1R~)asyk=X5Z<zgfuG z>cr>RVDQ1=nQv!T;$py=n)Bs^Q$f)(Vzl⋙Rri{`Ev?Y7rZh;$Cx5lQ#GfVR)Bw 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 Jd+#ql{XdPljL!f7 literal 0 HcmV?d00001 diff --git a/docs/4.3/dist/js/bootstrap.bundle.js b/docs/4.3/dist/js/bootstrap.bundle.js new file mode 100644 index 0000000000..f58c7c812c --- /dev/null +++ b/docs/4.3/dist/js/bootstrap.bundle.js @@ -0,0 +1,6866 @@ +/*! + * Bootstrap v4.3.0 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('jquery')) : + typeof define === 'function' && define.amd ? define(['exports', 'jquery'], factory) : + (global = global || self, factory(global.bootstrap = {}, global.jQuery)); +}(this, function (exports, $) { 'use strict'; + + $ = $ && $.hasOwnProperty('default') ? $['default'] : $; + + function _defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) descriptor.writable = true; + Object.defineProperty(target, descriptor.key, descriptor); + } + } + + function _createClass(Constructor, protoProps, staticProps) { + if (protoProps) _defineProperties(Constructor.prototype, protoProps); + if (staticProps) _defineProperties(Constructor, staticProps); + return Constructor; + } + + function _defineProperty(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; + } + + function _objectSpread(target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i] != null ? arguments[i] : {}; + var ownKeys = Object.keys(source); + + if (typeof Object.getOwnPropertySymbols === 'function') { + ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { + return Object.getOwnPropertyDescriptor(source, sym).enumerable; + })); + } + + ownKeys.forEach(function (key) { + _defineProperty(target, key, source[key]); + }); + } + + return target; + } + + function _inheritsLoose(subClass, superClass) { + subClass.prototype = Object.create(superClass.prototype); + subClass.prototype.constructor = subClass; + subClass.__proto__ = superClass; + } + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v4.3.0): util.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Private TransitionEnd Helpers + * ------------------------------------------------------------------------ + */ + + var TRANSITION_END = 'transitionend'; + var MAX_UID = 1000000; + var MILLISECONDS_MULTIPLIER = 1000; // Shoutout AngusCroll (https://goo.gl/pxwQGp) + + function toType(obj) { + return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase(); + } + + function getSpecialTransitionEndEvent() { + return { + bindType: TRANSITION_END, + delegateType: TRANSITION_END, + handle: function handle(event) { + if ($(event.target).is(this)) { + return event.handleObj.handler.apply(this, arguments); // eslint-disable-line prefer-rest-params + } + + return undefined; // eslint-disable-line no-undefined + } + }; + } + + function transitionEndEmulator(duration) { + var _this = this; + + var called = false; + $(this).one(Util.TRANSITION_END, function () { + called = true; + }); + setTimeout(function () { + if (!called) { + Util.triggerTransitionEnd(_this); + } + }, duration); + return this; + } + + function setTransitionEndSupport() { + $.fn.emulateTransitionEnd = transitionEndEmulator; + $.event.special[Util.TRANSITION_END] = getSpecialTransitionEndEvent(); + } + /** + * -------------------------------------------------------------------------- + * Public Util Api + * -------------------------------------------------------------------------- + */ + + + var Util = { + TRANSITION_END: 'bsTransitionEnd', + getUID: function getUID(prefix) { + do { + // eslint-disable-next-line no-bitwise + prefix += ~~(Math.random() * MAX_UID); // "~~" acts like a faster Math.floor() here + } while (document.getElementById(prefix)); + + return prefix; + }, + getSelectorFromElement: function getSelectorFromElement(element) { + var selector = element.getAttribute('data-target'); + + if (!selector || selector === '#') { + var hrefAttr = element.getAttribute('href'); + selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : ''; + } + + try { + return document.querySelector(selector) ? selector : null; + } catch (err) { + return null; + } + }, + getTransitionDurationFromElement: function getTransitionDurationFromElement(element) { + if (!element) { + return 0; + } // Get transition-duration of the element + + + var transitionDuration = $(element).css('transition-duration'); + var transitionDelay = $(element).css('transition-delay'); + var floatTransitionDuration = parseFloat(transitionDuration); + var floatTransitionDelay = parseFloat(transitionDelay); // Return 0 if element or transition duration is not found + + if (!floatTransitionDuration && !floatTransitionDelay) { + return 0; + } // If multiple durations are defined, take the first + + + transitionDuration = transitionDuration.split(',')[0]; + transitionDelay = transitionDelay.split(',')[0]; + return (parseFloat(transitionDuration) + parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; + }, + reflow: function reflow(element) { + return element.offsetHeight; + }, + triggerTransitionEnd: function triggerTransitionEnd(element) { + $(element).trigger(TRANSITION_END); + }, + // TODO: Remove in v5 + supportsTransitionEnd: function supportsTransitionEnd() { + return Boolean(TRANSITION_END); + }, + isElement: function isElement(obj) { + return (obj[0] || obj).nodeType; + }, + typeCheckConfig: function typeCheckConfig(componentName, config, configTypes) { + for (var property in configTypes) { + if (Object.prototype.hasOwnProperty.call(configTypes, property)) { + var expectedTypes = configTypes[property]; + var value = config[property]; + var valueType = value && Util.isElement(value) ? 'element' : toType(value); + + if (!new RegExp(expectedTypes).test(valueType)) { + throw new Error(componentName.toUpperCase() + ": " + ("Option \"" + property + "\" provided type \"" + valueType + "\" ") + ("but expected type \"" + expectedTypes + "\".")); + } + } + } + }, + findShadowRoot: function findShadowRoot(element) { + if (!document.documentElement.attachShadow) { + return null; + } // Can find the shadow root otherwise it'll return the document + + + if (typeof element.getRootNode === 'function') { + var root = element.getRootNode(); + return root instanceof ShadowRoot ? root : null; + } + + if (element instanceof ShadowRoot) { + return element; + } // when we don't find a shadow root + + + if (!element.parentNode) { + return null; + } + + return Util.findShadowRoot(element.parentNode); + } + }; + setTransitionEndSupport(); + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME = 'alert'; + var VERSION = '4.3.0'; + var DATA_KEY = 'bs.alert'; + var EVENT_KEY = "." + DATA_KEY; + var DATA_API_KEY = '.data-api'; + var JQUERY_NO_CONFLICT = $.fn[NAME]; + var Selector = { + DISMISS: '[data-dismiss="alert"]' + }; + var Event = { + CLOSE: "close" + EVENT_KEY, + CLOSED: "closed" + EVENT_KEY, + CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY + }; + var ClassName = { + ALERT: 'alert', + FADE: 'fade', + SHOW: 'show' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Alert = + /*#__PURE__*/ + function () { + function Alert(element) { + this._element = element; + } // Getters + + + var _proto = Alert.prototype; + + // Public + _proto.close = function close(element) { + var rootElement = this._element; + + if (element) { + rootElement = this._getRootElement(element); + } + + var customEvent = this._triggerCloseEvent(rootElement); + + if (customEvent.isDefaultPrevented()) { + return; + } + + this._removeElement(rootElement); + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY); + this._element = null; + } // Private + ; + + _proto._getRootElement = function _getRootElement(element) { + var selector = Util.getSelectorFromElement(element); + var parent = false; + + if (selector) { + parent = document.querySelector(selector); + } + + if (!parent) { + parent = $(element).closest("." + ClassName.ALERT)[0]; + } + + return parent; + }; + + _proto._triggerCloseEvent = function _triggerCloseEvent(element) { + var closeEvent = $.Event(Event.CLOSE); + $(element).trigger(closeEvent); + return closeEvent; + }; + + _proto._removeElement = function _removeElement(element) { + var _this = this; + + $(element).removeClass(ClassName.SHOW); + + if (!$(element).hasClass(ClassName.FADE)) { + this._destroyElement(element); + + return; + } + + var transitionDuration = Util.getTransitionDurationFromElement(element); + $(element).one(Util.TRANSITION_END, function (event) { + return _this._destroyElement(element, event); + }).emulateTransitionEnd(transitionDuration); + }; + + _proto._destroyElement = function _destroyElement(element) { + $(element).detach().trigger(Event.CLOSED).remove(); + } // Static + ; + + Alert._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var $element = $(this); + var data = $element.data(DATA_KEY); + + if (!data) { + data = new Alert(this); + $element.data(DATA_KEY, data); + } + + if (config === 'close') { + data[config](this); + } + }); + }; + + Alert._handleDismiss = function _handleDismiss(alertInstance) { + return function (event) { + if (event) { + event.preventDefault(); + } + + alertInstance.close(this); + }; + }; + + _createClass(Alert, null, [{ + key: "VERSION", + get: function get() { + return VERSION; + } + }]); + + return Alert; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(Event.CLICK_DATA_API, Selector.DISMISS, Alert._handleDismiss(new Alert())); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME] = Alert._jQueryInterface; + $.fn[NAME].Constructor = Alert; + + $.fn[NAME].noConflict = function () { + $.fn[NAME] = JQUERY_NO_CONFLICT; + return Alert._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$1 = 'button'; + var VERSION$1 = '4.3.0'; + var DATA_KEY$1 = 'bs.button'; + var EVENT_KEY$1 = "." + DATA_KEY$1; + var DATA_API_KEY$1 = '.data-api'; + var JQUERY_NO_CONFLICT$1 = $.fn[NAME$1]; + var ClassName$1 = { + ACTIVE: 'active', + BUTTON: 'btn', + FOCUS: 'focus' + }; + var Selector$1 = { + DATA_TOGGLE_CARROT: '[data-toggle^="button"]', + DATA_TOGGLE: '[data-toggle="buttons"]', + INPUT: 'input:not([type="hidden"])', + ACTIVE: '.active', + BUTTON: '.btn' + }; + var Event$1 = { + CLICK_DATA_API: "click" + EVENT_KEY$1 + DATA_API_KEY$1, + FOCUS_BLUR_DATA_API: "focus" + EVENT_KEY$1 + DATA_API_KEY$1 + " " + ("blur" + EVENT_KEY$1 + DATA_API_KEY$1) + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Button = + /*#__PURE__*/ + function () { + function Button(element) { + this._element = element; + } // Getters + + + var _proto = Button.prototype; + + // Public + _proto.toggle = function toggle() { + var triggerChangeEvent = true; + var addAriaPressed = true; + var rootElement = $(this._element).closest(Selector$1.DATA_TOGGLE)[0]; + + if (rootElement) { + var input = this._element.querySelector(Selector$1.INPUT); + + if (input) { + if (input.type === 'radio') { + if (input.checked && this._element.classList.contains(ClassName$1.ACTIVE)) { + triggerChangeEvent = false; + } else { + var activeElement = rootElement.querySelector(Selector$1.ACTIVE); + + if (activeElement) { + $(activeElement).removeClass(ClassName$1.ACTIVE); + } + } + } + + if (triggerChangeEvent) { + if (input.hasAttribute('disabled') || rootElement.hasAttribute('disabled') || input.classList.contains('disabled') || rootElement.classList.contains('disabled')) { + return; + } + + input.checked = !this._element.classList.contains(ClassName$1.ACTIVE); + $(input).trigger('change'); + } + + input.focus(); + addAriaPressed = false; + } + } + + if (addAriaPressed) { + this._element.setAttribute('aria-pressed', !this._element.classList.contains(ClassName$1.ACTIVE)); + } + + if (triggerChangeEvent) { + $(this._element).toggleClass(ClassName$1.ACTIVE); + } + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY$1); + this._element = null; + } // Static + ; + + Button._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$1); + + if (!data) { + data = new Button(this); + $(this).data(DATA_KEY$1, data); + } + + if (config === 'toggle') { + data[config](); + } + }); + }; + + _createClass(Button, null, [{ + key: "VERSION", + get: function get() { + return VERSION$1; + } + }]); + + return Button; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(Event$1.CLICK_DATA_API, Selector$1.DATA_TOGGLE_CARROT, function (event) { + event.preventDefault(); + var button = event.target; + + if (!$(button).hasClass(ClassName$1.BUTTON)) { + button = $(button).closest(Selector$1.BUTTON); + } + + Button._jQueryInterface.call($(button), 'toggle'); + }).on(Event$1.FOCUS_BLUR_DATA_API, Selector$1.DATA_TOGGLE_CARROT, function (event) { + var button = $(event.target).closest(Selector$1.BUTTON)[0]; + $(button).toggleClass(ClassName$1.FOCUS, /^focus(in)?$/.test(event.type)); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$1] = Button._jQueryInterface; + $.fn[NAME$1].Constructor = Button; + + $.fn[NAME$1].noConflict = function () { + $.fn[NAME$1] = JQUERY_NO_CONFLICT$1; + return Button._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$2 = 'carousel'; + var VERSION$2 = '4.3.0'; + var DATA_KEY$2 = 'bs.carousel'; + var EVENT_KEY$2 = "." + DATA_KEY$2; + var DATA_API_KEY$2 = '.data-api'; + var JQUERY_NO_CONFLICT$2 = $.fn[NAME$2]; + var ARROW_LEFT_KEYCODE = 37; // KeyboardEvent.which value for left arrow key + + var ARROW_RIGHT_KEYCODE = 39; // KeyboardEvent.which value for right arrow key + + var TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch + + var SWIPE_THRESHOLD = 40; + var Default = { + interval: 5000, + keyboard: true, + slide: false, + pause: 'hover', + wrap: true, + touch: true + }; + var DefaultType = { + interval: '(number|boolean)', + keyboard: 'boolean', + slide: '(boolean|string)', + pause: '(string|boolean)', + wrap: 'boolean', + touch: 'boolean' + }; + var Direction = { + NEXT: 'next', + PREV: 'prev', + LEFT: 'left', + RIGHT: 'right' + }; + var Event$2 = { + SLIDE: "slide" + EVENT_KEY$2, + SLID: "slid" + EVENT_KEY$2, + KEYDOWN: "keydown" + EVENT_KEY$2, + MOUSEENTER: "mouseenter" + EVENT_KEY$2, + MOUSELEAVE: "mouseleave" + EVENT_KEY$2, + TOUCHSTART: "touchstart" + EVENT_KEY$2, + TOUCHMOVE: "touchmove" + EVENT_KEY$2, + TOUCHEND: "touchend" + EVENT_KEY$2, + POINTERDOWN: "pointerdown" + EVENT_KEY$2, + POINTERUP: "pointerup" + EVENT_KEY$2, + DRAG_START: "dragstart" + EVENT_KEY$2, + LOAD_DATA_API: "load" + EVENT_KEY$2 + DATA_API_KEY$2, + CLICK_DATA_API: "click" + EVENT_KEY$2 + DATA_API_KEY$2 + }; + var ClassName$2 = { + CAROUSEL: 'carousel', + ACTIVE: 'active', + SLIDE: 'slide', + RIGHT: 'carousel-item-right', + LEFT: 'carousel-item-left', + NEXT: 'carousel-item-next', + PREV: 'carousel-item-prev', + ITEM: 'carousel-item', + POINTER_EVENT: 'pointer-event' + }; + var Selector$2 = { + ACTIVE: '.active', + ACTIVE_ITEM: '.active.carousel-item', + ITEM: '.carousel-item', + ITEM_IMG: '.carousel-item img', + NEXT_PREV: '.carousel-item-next, .carousel-item-prev', + INDICATORS: '.carousel-indicators', + DATA_SLIDE: '[data-slide], [data-slide-to]', + DATA_RIDE: '[data-ride="carousel"]' + }; + var PointerType = { + TOUCH: 'touch', + PEN: 'pen' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Carousel = + /*#__PURE__*/ + function () { + function Carousel(element, config) { + this._items = null; + this._interval = null; + this._activeElement = null; + this._isPaused = false; + this._isSliding = false; + this.touchTimeout = null; + this.touchStartX = 0; + this.touchDeltaX = 0; + this._config = this._getConfig(config); + this._element = element; + this._indicatorsElement = this._element.querySelector(Selector$2.INDICATORS); + this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0; + this._pointerEvent = Boolean(window.PointerEvent || window.MSPointerEvent); + + this._addEventListeners(); + } // Getters + + + var _proto = Carousel.prototype; + + // Public + _proto.next = function next() { + if (!this._isSliding) { + this._slide(Direction.NEXT); + } + }; + + _proto.nextWhenVisible = function nextWhenVisible() { + // Don't call next when the page isn't visible + // or the carousel or its parent isn't visible + if (!document.hidden && $(this._element).is(':visible') && $(this._element).css('visibility') !== 'hidden') { + this.next(); + } + }; + + _proto.prev = function prev() { + if (!this._isSliding) { + this._slide(Direction.PREV); + } + }; + + _proto.pause = function pause(event) { + if (!event) { + this._isPaused = true; + } + + if (this._element.querySelector(Selector$2.NEXT_PREV)) { + Util.triggerTransitionEnd(this._element); + this.cycle(true); + } + + clearInterval(this._interval); + this._interval = null; + }; + + _proto.cycle = function cycle(event) { + if (!event) { + this._isPaused = false; + } + + if (this._interval) { + clearInterval(this._interval); + this._interval = null; + } + + if (this._config.interval && !this._isPaused) { + this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval); + } + }; + + _proto.to = function to(index) { + var _this = this; + + this._activeElement = this._element.querySelector(Selector$2.ACTIVE_ITEM); + + var activeIndex = this._getItemIndex(this._activeElement); + + if (index > this._items.length - 1 || index < 0) { + return; + } + + if (this._isSliding) { + $(this._element).one(Event$2.SLID, function () { + return _this.to(index); + }); + return; + } + + if (activeIndex === index) { + this.pause(); + this.cycle(); + return; + } + + var direction = index > activeIndex ? Direction.NEXT : Direction.PREV; + + this._slide(direction, this._items[index]); + }; + + _proto.dispose = function dispose() { + $(this._element).off(EVENT_KEY$2); + $.removeData(this._element, DATA_KEY$2); + this._items = null; + this._config = null; + this._element = null; + this._interval = null; + this._isPaused = null; + this._isSliding = null; + this._activeElement = null; + this._indicatorsElement = null; + } // Private + ; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, Default, config); + Util.typeCheckConfig(NAME$2, config, DefaultType); + return config; + }; + + _proto._handleSwipe = function _handleSwipe() { + var absDeltax = Math.abs(this.touchDeltaX); + + if (absDeltax <= SWIPE_THRESHOLD) { + return; + } + + var direction = absDeltax / this.touchDeltaX; // swipe left + + if (direction > 0) { + this.prev(); + } // swipe right + + + if (direction < 0) { + this.next(); + } + }; + + _proto._addEventListeners = function _addEventListeners() { + var _this2 = this; + + if (this._config.keyboard) { + $(this._element).on(Event$2.KEYDOWN, function (event) { + return _this2._keydown(event); + }); + } + + if (this._config.pause === 'hover') { + $(this._element).on(Event$2.MOUSEENTER, function (event) { + return _this2.pause(event); + }).on(Event$2.MOUSELEAVE, function (event) { + return _this2.cycle(event); + }); + } + + if (this._config.touch) { + this._addTouchEventListeners(); + } + }; + + _proto._addTouchEventListeners = function _addTouchEventListeners() { + var _this3 = this; + + if (!this._touchSupported) { + return; + } + + var start = function start(event) { + if (_this3._pointerEvent && PointerType[event.originalEvent.pointerType.toUpperCase()]) { + _this3.touchStartX = event.originalEvent.clientX; + } else if (!_this3._pointerEvent) { + _this3.touchStartX = event.originalEvent.touches[0].clientX; + } + }; + + var move = function move(event) { + // ensure swiping with one touch and not pinching + if (event.originalEvent.touches && event.originalEvent.touches.length > 1) { + _this3.touchDeltaX = 0; + } else { + _this3.touchDeltaX = event.originalEvent.touches[0].clientX - _this3.touchStartX; + } + }; + + var end = function end(event) { + if (_this3._pointerEvent && PointerType[event.originalEvent.pointerType.toUpperCase()]) { + _this3.touchDeltaX = event.originalEvent.clientX - _this3.touchStartX; + } + + _this3._handleSwipe(); + + if (_this3._config.pause === 'hover') { + // If it's a touch-enabled device, mouseenter/leave are fired as + // part of the mouse compatibility events on first tap - the carousel + // would stop cycling until user tapped out of it; + // here, we listen for touchend, explicitly pause the carousel + // (as if it's the second time we tap on it, mouseenter compat event + // is NOT fired) and after a timeout (to allow for mouse compatibility + // events to fire) we explicitly restart cycling + _this3.pause(); + + if (_this3.touchTimeout) { + clearTimeout(_this3.touchTimeout); + } + + _this3.touchTimeout = setTimeout(function (event) { + return _this3.cycle(event); + }, TOUCHEVENT_COMPAT_WAIT + _this3._config.interval); + } + }; + + $(this._element.querySelectorAll(Selector$2.ITEM_IMG)).on(Event$2.DRAG_START, function (e) { + return e.preventDefault(); + }); + + if (this._pointerEvent) { + $(this._element).on(Event$2.POINTERDOWN, function (event) { + return start(event); + }); + $(this._element).on(Event$2.POINTERUP, function (event) { + return end(event); + }); + + this._element.classList.add(ClassName$2.POINTER_EVENT); + } else { + $(this._element).on(Event$2.TOUCHSTART, function (event) { + return start(event); + }); + $(this._element).on(Event$2.TOUCHMOVE, function (event) { + return move(event); + }); + $(this._element).on(Event$2.TOUCHEND, function (event) { + return end(event); + }); + } + }; + + _proto._keydown = function _keydown(event) { + if (/input|textarea/i.test(event.target.tagName)) { + return; + } + + switch (event.which) { + case ARROW_LEFT_KEYCODE: + event.preventDefault(); + this.prev(); + break; + + case ARROW_RIGHT_KEYCODE: + event.preventDefault(); + this.next(); + break; + + default: + } + }; + + _proto._getItemIndex = function _getItemIndex(element) { + this._items = element && element.parentNode ? [].slice.call(element.parentNode.querySelectorAll(Selector$2.ITEM)) : []; + return this._items.indexOf(element); + }; + + _proto._getItemByDirection = function _getItemByDirection(direction, activeElement) { + var isNextDirection = direction === Direction.NEXT; + var isPrevDirection = direction === Direction.PREV; + + var activeIndex = this._getItemIndex(activeElement); + + var lastItemIndex = this._items.length - 1; + var isGoingToWrap = isPrevDirection && activeIndex === 0 || isNextDirection && activeIndex === lastItemIndex; + + if (isGoingToWrap && !this._config.wrap) { + return activeElement; + } + + var delta = direction === Direction.PREV ? -1 : 1; + var itemIndex = (activeIndex + delta) % this._items.length; + return itemIndex === -1 ? this._items[this._items.length - 1] : this._items[itemIndex]; + }; + + _proto._triggerSlideEvent = function _triggerSlideEvent(relatedTarget, eventDirectionName) { + var targetIndex = this._getItemIndex(relatedTarget); + + var fromIndex = this._getItemIndex(this._element.querySelector(Selector$2.ACTIVE_ITEM)); + + var slideEvent = $.Event(Event$2.SLIDE, { + relatedTarget: relatedTarget, + direction: eventDirectionName, + from: fromIndex, + to: targetIndex + }); + $(this._element).trigger(slideEvent); + return slideEvent; + }; + + _proto._setActiveIndicatorElement = function _setActiveIndicatorElement(element) { + if (this._indicatorsElement) { + var indicators = [].slice.call(this._indicatorsElement.querySelectorAll(Selector$2.ACTIVE)); + $(indicators).removeClass(ClassName$2.ACTIVE); + + var nextIndicator = this._indicatorsElement.children[this._getItemIndex(element)]; + + if (nextIndicator) { + $(nextIndicator).addClass(ClassName$2.ACTIVE); + } + } + }; + + _proto._slide = function _slide(direction, element) { + var _this4 = this; + + var activeElement = this._element.querySelector(Selector$2.ACTIVE_ITEM); + + var activeElementIndex = this._getItemIndex(activeElement); + + var nextElement = element || activeElement && this._getItemByDirection(direction, activeElement); + + var nextElementIndex = this._getItemIndex(nextElement); + + var isCycling = Boolean(this._interval); + var directionalClassName; + var orderClassName; + var eventDirectionName; + + if (direction === Direction.NEXT) { + directionalClassName = ClassName$2.LEFT; + orderClassName = ClassName$2.NEXT; + eventDirectionName = Direction.LEFT; + } else { + directionalClassName = ClassName$2.RIGHT; + orderClassName = ClassName$2.PREV; + eventDirectionName = Direction.RIGHT; + } + + if (nextElement && $(nextElement).hasClass(ClassName$2.ACTIVE)) { + this._isSliding = false; + return; + } + + var slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName); + + if (slideEvent.isDefaultPrevented()) { + return; + } + + if (!activeElement || !nextElement) { + // Some weirdness is happening, so we bail + return; + } + + this._isSliding = true; + + if (isCycling) { + this.pause(); + } + + this._setActiveIndicatorElement(nextElement); + + var slidEvent = $.Event(Event$2.SLID, { + relatedTarget: nextElement, + direction: eventDirectionName, + from: activeElementIndex, + to: nextElementIndex + }); + + if ($(this._element).hasClass(ClassName$2.SLIDE)) { + $(nextElement).addClass(orderClassName); + Util.reflow(nextElement); + $(activeElement).addClass(directionalClassName); + $(nextElement).addClass(directionalClassName); + var nextElementInterval = parseInt(nextElement.getAttribute('data-interval'), 10); + + if (nextElementInterval) { + this._config.defaultInterval = this._config.defaultInterval || this._config.interval; + this._config.interval = nextElementInterval; + } else { + this._config.interval = this._config.defaultInterval || this._config.interval; + } + + var transitionDuration = Util.getTransitionDurationFromElement(activeElement); + $(activeElement).one(Util.TRANSITION_END, function () { + $(nextElement).removeClass(directionalClassName + " " + orderClassName).addClass(ClassName$2.ACTIVE); + $(activeElement).removeClass(ClassName$2.ACTIVE + " " + orderClassName + " " + directionalClassName); + _this4._isSliding = false; + setTimeout(function () { + return $(_this4._element).trigger(slidEvent); + }, 0); + }).emulateTransitionEnd(transitionDuration); + } else { + $(activeElement).removeClass(ClassName$2.ACTIVE); + $(nextElement).addClass(ClassName$2.ACTIVE); + this._isSliding = false; + $(this._element).trigger(slidEvent); + } + + if (isCycling) { + this.cycle(); + } + } // Static + ; + + Carousel._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$2); + + var _config = _objectSpread({}, Default, $(this).data()); + + if (typeof config === 'object') { + _config = _objectSpread({}, _config, config); + } + + var action = typeof config === 'string' ? config : _config.slide; + + if (!data) { + data = new Carousel(this, _config); + $(this).data(DATA_KEY$2, data); + } + + if (typeof config === 'number') { + data.to(config); + } else if (typeof action === 'string') { + if (typeof data[action] === 'undefined') { + throw new TypeError("No method named \"" + action + "\""); + } + + data[action](); + } else if (_config.interval && _config.ride) { + data.pause(); + data.cycle(); + } + }); + }; + + Carousel._dataApiClickHandler = function _dataApiClickHandler(event) { + var selector = Util.getSelectorFromElement(this); + + if (!selector) { + return; + } + + var target = $(selector)[0]; + + if (!target || !$(target).hasClass(ClassName$2.CAROUSEL)) { + return; + } + + var config = _objectSpread({}, $(target).data(), $(this).data()); + + var slideIndex = this.getAttribute('data-slide-to'); + + if (slideIndex) { + config.interval = false; + } + + Carousel._jQueryInterface.call($(target), config); + + if (slideIndex) { + $(target).data(DATA_KEY$2).to(slideIndex); + } + + event.preventDefault(); + }; + + _createClass(Carousel, null, [{ + key: "VERSION", + get: function get() { + return VERSION$2; + } + }, { + key: "Default", + get: function get() { + return Default; + } + }]); + + return Carousel; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(Event$2.CLICK_DATA_API, Selector$2.DATA_SLIDE, Carousel._dataApiClickHandler); + $(window).on(Event$2.LOAD_DATA_API, function () { + var carousels = [].slice.call(document.querySelectorAll(Selector$2.DATA_RIDE)); + + for (var i = 0, len = carousels.length; i < len; i++) { + var $carousel = $(carousels[i]); + + Carousel._jQueryInterface.call($carousel, $carousel.data()); + } + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$2] = Carousel._jQueryInterface; + $.fn[NAME$2].Constructor = Carousel; + + $.fn[NAME$2].noConflict = function () { + $.fn[NAME$2] = JQUERY_NO_CONFLICT$2; + return Carousel._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$3 = 'collapse'; + var VERSION$3 = '4.3.0'; + var DATA_KEY$3 = 'bs.collapse'; + var EVENT_KEY$3 = "." + DATA_KEY$3; + var DATA_API_KEY$3 = '.data-api'; + var JQUERY_NO_CONFLICT$3 = $.fn[NAME$3]; + var Default$1 = { + toggle: true, + parent: '' + }; + var DefaultType$1 = { + toggle: 'boolean', + parent: '(string|element)' + }; + var Event$3 = { + SHOW: "show" + EVENT_KEY$3, + SHOWN: "shown" + EVENT_KEY$3, + HIDE: "hide" + EVENT_KEY$3, + HIDDEN: "hidden" + EVENT_KEY$3, + CLICK_DATA_API: "click" + EVENT_KEY$3 + DATA_API_KEY$3 + }; + var ClassName$3 = { + SHOW: 'show', + COLLAPSE: 'collapse', + COLLAPSING: 'collapsing', + COLLAPSED: 'collapsed' + }; + var Dimension = { + WIDTH: 'width', + HEIGHT: 'height' + }; + var Selector$3 = { + ACTIVES: '.show, .collapsing', + DATA_TOGGLE: '[data-toggle="collapse"]' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Collapse = + /*#__PURE__*/ + function () { + function Collapse(element, config) { + this._isTransitioning = false; + this._element = element; + this._config = this._getConfig(config); + this._triggerArray = [].slice.call(document.querySelectorAll("[data-toggle=\"collapse\"][href=\"#" + element.id + "\"]," + ("[data-toggle=\"collapse\"][data-target=\"#" + element.id + "\"]"))); + var toggleList = [].slice.call(document.querySelectorAll(Selector$3.DATA_TOGGLE)); + + for (var i = 0, len = toggleList.length; i < len; i++) { + var elem = toggleList[i]; + var selector = Util.getSelectorFromElement(elem); + var filterElement = [].slice.call(document.querySelectorAll(selector)).filter(function (foundElem) { + return foundElem === element; + }); + + if (selector !== null && filterElement.length > 0) { + this._selector = selector; + + this._triggerArray.push(elem); + } + } + + this._parent = this._config.parent ? this._getParent() : null; + + if (!this._config.parent) { + this._addAriaAndCollapsedClass(this._element, this._triggerArray); + } + + if (this._config.toggle) { + this.toggle(); + } + } // Getters + + + var _proto = Collapse.prototype; + + // Public + _proto.toggle = function toggle() { + if ($(this._element).hasClass(ClassName$3.SHOW)) { + this.hide(); + } else { + this.show(); + } + }; + + _proto.show = function show() { + var _this = this; + + if (this._isTransitioning || $(this._element).hasClass(ClassName$3.SHOW)) { + return; + } + + var actives; + var activesData; + + if (this._parent) { + actives = [].slice.call(this._parent.querySelectorAll(Selector$3.ACTIVES)).filter(function (elem) { + if (typeof _this._config.parent === 'string') { + return elem.getAttribute('data-parent') === _this._config.parent; + } + + return elem.classList.contains(ClassName$3.COLLAPSE); + }); + + if (actives.length === 0) { + actives = null; + } + } + + if (actives) { + activesData = $(actives).not(this._selector).data(DATA_KEY$3); + + if (activesData && activesData._isTransitioning) { + return; + } + } + + var startEvent = $.Event(Event$3.SHOW); + $(this._element).trigger(startEvent); + + if (startEvent.isDefaultPrevented()) { + return; + } + + if (actives) { + Collapse._jQueryInterface.call($(actives).not(this._selector), 'hide'); + + if (!activesData) { + $(actives).data(DATA_KEY$3, null); + } + } + + var dimension = this._getDimension(); + + $(this._element).removeClass(ClassName$3.COLLAPSE).addClass(ClassName$3.COLLAPSING); + this._element.style[dimension] = 0; + + if (this._triggerArray.length) { + $(this._triggerArray).removeClass(ClassName$3.COLLAPSED).attr('aria-expanded', true); + } + + this.setTransitioning(true); + + var complete = function complete() { + $(_this._element).removeClass(ClassName$3.COLLAPSING).addClass(ClassName$3.COLLAPSE).addClass(ClassName$3.SHOW); + _this._element.style[dimension] = ''; + + _this.setTransitioning(false); + + $(_this._element).trigger(Event$3.SHOWN); + }; + + var capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1); + var scrollSize = "scroll" + capitalizedDimension; + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + this._element.style[dimension] = this._element[scrollSize] + "px"; + }; + + _proto.hide = function hide() { + var _this2 = this; + + if (this._isTransitioning || !$(this._element).hasClass(ClassName$3.SHOW)) { + return; + } + + var startEvent = $.Event(Event$3.HIDE); + $(this._element).trigger(startEvent); + + if (startEvent.isDefaultPrevented()) { + return; + } + + var dimension = this._getDimension(); + + this._element.style[dimension] = this._element.getBoundingClientRect()[dimension] + "px"; + Util.reflow(this._element); + $(this._element).addClass(ClassName$3.COLLAPSING).removeClass(ClassName$3.COLLAPSE).removeClass(ClassName$3.SHOW); + var triggerArrayLength = this._triggerArray.length; + + if (triggerArrayLength > 0) { + for (var i = 0; i < triggerArrayLength; i++) { + var trigger = this._triggerArray[i]; + var selector = Util.getSelectorFromElement(trigger); + + if (selector !== null) { + var $elem = $([].slice.call(document.querySelectorAll(selector))); + + if (!$elem.hasClass(ClassName$3.SHOW)) { + $(trigger).addClass(ClassName$3.COLLAPSED).attr('aria-expanded', false); + } + } + } + } + + this.setTransitioning(true); + + var complete = function complete() { + _this2.setTransitioning(false); + + $(_this2._element).removeClass(ClassName$3.COLLAPSING).addClass(ClassName$3.COLLAPSE).trigger(Event$3.HIDDEN); + }; + + this._element.style[dimension] = ''; + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + }; + + _proto.setTransitioning = function setTransitioning(isTransitioning) { + this._isTransitioning = isTransitioning; + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY$3); + this._config = null; + this._parent = null; + this._element = null; + this._triggerArray = null; + this._isTransitioning = null; + } // Private + ; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, Default$1, config); + config.toggle = Boolean(config.toggle); // Coerce string values + + Util.typeCheckConfig(NAME$3, config, DefaultType$1); + return config; + }; + + _proto._getDimension = function _getDimension() { + var hasWidth = $(this._element).hasClass(Dimension.WIDTH); + return hasWidth ? Dimension.WIDTH : Dimension.HEIGHT; + }; + + _proto._getParent = function _getParent() { + var _this3 = this; + + var parent; + + if (Util.isElement(this._config.parent)) { + parent = this._config.parent; // It's a jQuery object + + if (typeof this._config.parent.jquery !== 'undefined') { + parent = this._config.parent[0]; + } + } else { + parent = document.querySelector(this._config.parent); + } + + var selector = "[data-toggle=\"collapse\"][data-parent=\"" + this._config.parent + "\"]"; + var children = [].slice.call(parent.querySelectorAll(selector)); + $(children).each(function (i, element) { + _this3._addAriaAndCollapsedClass(Collapse._getTargetFromElement(element), [element]); + }); + return parent; + }; + + _proto._addAriaAndCollapsedClass = function _addAriaAndCollapsedClass(element, triggerArray) { + var isOpen = $(element).hasClass(ClassName$3.SHOW); + + if (triggerArray.length) { + $(triggerArray).toggleClass(ClassName$3.COLLAPSED, !isOpen).attr('aria-expanded', isOpen); + } + } // Static + ; + + Collapse._getTargetFromElement = function _getTargetFromElement(element) { + var selector = Util.getSelectorFromElement(element); + return selector ? document.querySelector(selector) : null; + }; + + Collapse._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var $this = $(this); + var data = $this.data(DATA_KEY$3); + + var _config = _objectSpread({}, Default$1, $this.data(), typeof config === 'object' && config ? config : {}); + + if (!data && _config.toggle && /show|hide/.test(config)) { + _config.toggle = false; + } + + if (!data) { + data = new Collapse(this, _config); + $this.data(DATA_KEY$3, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + _createClass(Collapse, null, [{ + key: "VERSION", + get: function get() { + return VERSION$3; + } + }, { + key: "Default", + get: function get() { + return Default$1; + } + }]); + + return Collapse; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(Event$3.CLICK_DATA_API, Selector$3.DATA_TOGGLE, function (event) { + // preventDefault only for <a> elements (which change the URL) not inside the collapsible element + if (event.currentTarget.tagName === 'A') { + event.preventDefault(); + } + + var $trigger = $(this); + var selector = Util.getSelectorFromElement(this); + var selectors = [].slice.call(document.querySelectorAll(selector)); + $(selectors).each(function () { + var $target = $(this); + var data = $target.data(DATA_KEY$3); + var config = data ? 'toggle' : $trigger.data(); + + Collapse._jQueryInterface.call($target, config); + }); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$3] = Collapse._jQueryInterface; + $.fn[NAME$3].Constructor = Collapse; + + $.fn[NAME$3].noConflict = function () { + $.fn[NAME$3] = JQUERY_NO_CONFLICT$3; + return Collapse._jQueryInterface; + }; + + /**! + * @fileOverview Kickass library to create and place poppers near their reference elements. + * @version 1.14.7 + * @license + * Copyright (c) 2016 Federico Zivolo and contributors + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + var isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined'; + + var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox']; + var timeoutDuration = 0; + for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) { + if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) { + timeoutDuration = 1; + break; + } + } + + function microtaskDebounce(fn) { + var called = false; + return function () { + if (called) { + return; + } + called = true; + window.Promise.resolve().then(function () { + called = false; + fn(); + }); + }; + } + + function taskDebounce(fn) { + var scheduled = false; + return function () { + if (!scheduled) { + scheduled = true; + setTimeout(function () { + scheduled = false; + fn(); + }, timeoutDuration); + } + }; + } + + var supportsMicroTasks = isBrowser && window.Promise; + + /** + * Create a debounced version of a method, that's asynchronously deferred + * but called in the minimum time possible. + * + * @method + * @memberof Popper.Utils + * @argument {Function} fn + * @returns {Function} + */ + var debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce; + + /** + * Check if the given variable is a function + * @method + * @memberof Popper.Utils + * @argument {Any} functionToCheck - variable to check + * @returns {Boolean} answer to: is a function? + */ + function isFunction(functionToCheck) { + var getType = {}; + return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]'; + } + + /** + * Get CSS computed property of the given element + * @method + * @memberof Popper.Utils + * @argument {Eement} element + * @argument {String} property + */ + function getStyleComputedProperty(element, property) { + if (element.nodeType !== 1) { + return []; + } + // NOTE: 1 DOM access here + var window = element.ownerDocument.defaultView; + var css = window.getComputedStyle(element, null); + return property ? css[property] : css; + } + + /** + * Returns the parentNode or the host of the element + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} parent + */ + function getParentNode(element) { + if (element.nodeName === 'HTML') { + return element; + } + return element.parentNode || element.host; + } + + /** + * Returns the scrolling parent of the given element + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} scroll parent + */ + function getScrollParent(element) { + // Return body, `getScroll` will take care to get the correct `scrollTop` from it + if (!element) { + return document.body; + } + + switch (element.nodeName) { + case 'HTML': + case 'BODY': + return element.ownerDocument.body; + case '#document': + return element.body; + } + + // Firefox want us to check `-x` and `-y` variations as well + + var _getStyleComputedProp = getStyleComputedProperty(element), + overflow = _getStyleComputedProp.overflow, + overflowX = _getStyleComputedProp.overflowX, + overflowY = _getStyleComputedProp.overflowY; + + if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) { + return element; + } + + return getScrollParent(getParentNode(element)); + } + + var isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode); + var isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent); + + /** + * Determines if the browser is Internet Explorer + * @method + * @memberof Popper.Utils + * @param {Number} version to check + * @returns {Boolean} isIE + */ + function isIE(version) { + if (version === 11) { + return isIE11; + } + if (version === 10) { + return isIE10; + } + return isIE11 || isIE10; + } + + /** + * Returns the offset parent of the given element + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} offset parent + */ + function getOffsetParent(element) { + if (!element) { + return document.documentElement; + } + + var noOffsetParent = isIE(10) ? document.body : null; + + // NOTE: 1 DOM access here + var offsetParent = element.offsetParent || null; + // Skip hidden elements which don't have an offsetParent + while (offsetParent === noOffsetParent && element.nextElementSibling) { + offsetParent = (element = element.nextElementSibling).offsetParent; + } + + var nodeName = offsetParent && offsetParent.nodeName; + + if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') { + return element ? element.ownerDocument.documentElement : document.documentElement; + } + + // .offsetParent will return the closest TH, TD or TABLE in case + // no offsetParent is present, I hate this job... + if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') { + return getOffsetParent(offsetParent); + } + + return offsetParent; + } + + function isOffsetContainer(element) { + var nodeName = element.nodeName; + + if (nodeName === 'BODY') { + return false; + } + return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element; + } + + /** + * Finds the root node (document, shadowDOM root) of the given element + * @method + * @memberof Popper.Utils + * @argument {Element} node + * @returns {Element} root node + */ + function getRoot(node) { + if (node.parentNode !== null) { + return getRoot(node.parentNode); + } + + return node; + } + + /** + * Finds the offset parent common to the two provided nodes + * @method + * @memberof Popper.Utils + * @argument {Element} element1 + * @argument {Element} element2 + * @returns {Element} common offset parent + */ + function findCommonOffsetParent(element1, element2) { + // This check is needed to avoid errors in case one of the elements isn't defined for any reason + if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) { + return document.documentElement; + } + + // Here we make sure to give as "start" the element that comes first in the DOM + var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING; + var start = order ? element1 : element2; + var end = order ? element2 : element1; + + // Get common ancestor container + var range = document.createRange(); + range.setStart(start, 0); + range.setEnd(end, 0); + var commonAncestorContainer = range.commonAncestorContainer; + + // Both nodes are inside #document + + if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) { + if (isOffsetContainer(commonAncestorContainer)) { + return commonAncestorContainer; + } + + return getOffsetParent(commonAncestorContainer); + } + + // one of the nodes is inside shadowDOM, find which one + var element1root = getRoot(element1); + if (element1root.host) { + return findCommonOffsetParent(element1root.host, element2); + } else { + return findCommonOffsetParent(element1, getRoot(element2).host); + } + } + + /** + * Gets the scroll value of the given element in the given side (top and left) + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @argument {String} side `top` or `left` + * @returns {number} amount of scrolled pixels + */ + function getScroll(element) { + var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top'; + + var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft'; + var nodeName = element.nodeName; + + if (nodeName === 'BODY' || nodeName === 'HTML') { + var html = element.ownerDocument.documentElement; + var scrollingElement = element.ownerDocument.scrollingElement || html; + return scrollingElement[upperSide]; + } + + return element[upperSide]; + } + + /* + * Sum or subtract the element scroll values (left and top) from a given rect object + * @method + * @memberof Popper.Utils + * @param {Object} rect - Rect object you want to change + * @param {HTMLElement} element - The element from the function reads the scroll values + * @param {Boolean} subtract - set to true if you want to subtract the scroll values + * @return {Object} rect - The modifier rect object + */ + function includeScroll(rect, element) { + var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + + var scrollTop = getScroll(element, 'top'); + var scrollLeft = getScroll(element, 'left'); + var modifier = subtract ? -1 : 1; + rect.top += scrollTop * modifier; + rect.bottom += scrollTop * modifier; + rect.left += scrollLeft * modifier; + rect.right += scrollLeft * modifier; + return rect; + } + + /* + * Helper to detect borders of a given element + * @method + * @memberof Popper.Utils + * @param {CSSStyleDeclaration} styles + * Result of `getStyleComputedProperty` on the given element + * @param {String} axis - `x` or `y` + * @return {number} borders - The borders size of the given axis + */ + + function getBordersSize(styles, axis) { + var sideA = axis === 'x' ? 'Left' : 'Top'; + var sideB = sideA === 'Left' ? 'Right' : 'Bottom'; + + return parseFloat(styles['border' + sideA + 'Width'], 10) + parseFloat(styles['border' + sideB + 'Width'], 10); + } + + function getSize(axis, body, html, computedStyle) { + return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0); + } + + function getWindowSizes(document) { + var body = document.body; + var html = document.documentElement; + var computedStyle = isIE(10) && getComputedStyle(html); + + return { + height: getSize('Height', body, html, computedStyle), + width: getSize('Width', body, html, computedStyle) + }; + } + + var classCallCheck = function (instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + }; + + var createClass = function () { + function defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) descriptor.writable = true; + Object.defineProperty(target, descriptor.key, descriptor); + } + } + + return function (Constructor, protoProps, staticProps) { + if (protoProps) defineProperties(Constructor.prototype, protoProps); + if (staticProps) defineProperties(Constructor, staticProps); + return Constructor; + }; + }(); + + + + + + var defineProperty = function (obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; + }; + + var _extends = Object.assign || function (target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i]; + + for (var key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key]; + } + } + } + + return target; + }; + + /** + * Given element offsets, generate an output similar to getBoundingClientRect + * @method + * @memberof Popper.Utils + * @argument {Object} offsets + * @returns {Object} ClientRect like output + */ + function getClientRect(offsets) { + return _extends({}, offsets, { + right: offsets.left + offsets.width, + bottom: offsets.top + offsets.height + }); + } + + /** + * Get bounding client rect of given element + * @method + * @memberof Popper.Utils + * @param {HTMLElement} element + * @return {Object} client rect + */ + function getBoundingClientRect(element) { + var rect = {}; + + // IE10 10 FIX: Please, don't ask, the element isn't + // considered in DOM in some circumstances... + // This isn't reproducible in IE10 compatibility mode of IE11 + try { + if (isIE(10)) { + rect = element.getBoundingClientRect(); + var scrollTop = getScroll(element, 'top'); + var scrollLeft = getScroll(element, 'left'); + rect.top += scrollTop; + rect.left += scrollLeft; + rect.bottom += scrollTop; + rect.right += scrollLeft; + } else { + rect = element.getBoundingClientRect(); + } + } catch (e) {} + + var result = { + left: rect.left, + top: rect.top, + width: rect.right - rect.left, + height: rect.bottom - rect.top + }; + + // subtract scrollbar size from sizes + var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {}; + var width = sizes.width || element.clientWidth || result.right - result.left; + var height = sizes.height || element.clientHeight || result.bottom - result.top; + + var horizScrollbar = element.offsetWidth - width; + var vertScrollbar = element.offsetHeight - height; + + // if an hypothetical scrollbar is detected, we must be sure it's not a `border` + // we make this check conditional for performance reasons + if (horizScrollbar || vertScrollbar) { + var styles = getStyleComputedProperty(element); + horizScrollbar -= getBordersSize(styles, 'x'); + vertScrollbar -= getBordersSize(styles, 'y'); + + result.width -= horizScrollbar; + result.height -= vertScrollbar; + } + + return getClientRect(result); + } + + function getOffsetRectRelativeToArbitraryNode(children, parent) { + var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + + var isIE10 = isIE(10); + var isHTML = parent.nodeName === 'HTML'; + var childrenRect = getBoundingClientRect(children); + var parentRect = getBoundingClientRect(parent); + var scrollParent = getScrollParent(children); + + var styles = getStyleComputedProperty(parent); + var borderTopWidth = parseFloat(styles.borderTopWidth, 10); + var borderLeftWidth = parseFloat(styles.borderLeftWidth, 10); + + // In cases where the parent is fixed, we must ignore negative scroll in offset calc + if (fixedPosition && isHTML) { + parentRect.top = Math.max(parentRect.top, 0); + parentRect.left = Math.max(parentRect.left, 0); + } + var offsets = getClientRect({ + top: childrenRect.top - parentRect.top - borderTopWidth, + left: childrenRect.left - parentRect.left - borderLeftWidth, + width: childrenRect.width, + height: childrenRect.height + }); + offsets.marginTop = 0; + offsets.marginLeft = 0; + + // Subtract margins of documentElement in case it's being used as parent + // we do this only on HTML because it's the only element that behaves + // differently when margins are applied to it. The margins are included in + // the box of the documentElement, in the other cases not. + if (!isIE10 && isHTML) { + var marginTop = parseFloat(styles.marginTop, 10); + var marginLeft = parseFloat(styles.marginLeft, 10); + + offsets.top -= borderTopWidth - marginTop; + offsets.bottom -= borderTopWidth - marginTop; + offsets.left -= borderLeftWidth - marginLeft; + offsets.right -= borderLeftWidth - marginLeft; + + // Attach marginTop and marginLeft because in some circumstances we may need them + offsets.marginTop = marginTop; + offsets.marginLeft = marginLeft; + } + + if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') { + offsets = includeScroll(offsets, parent); + } + + return offsets; + } + + function getViewportOffsetRectRelativeToArtbitraryNode(element) { + var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + + var html = element.ownerDocument.documentElement; + var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html); + var width = Math.max(html.clientWidth, window.innerWidth || 0); + var height = Math.max(html.clientHeight, window.innerHeight || 0); + + var scrollTop = !excludeScroll ? getScroll(html) : 0; + var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0; + + var offset = { + top: scrollTop - relativeOffset.top + relativeOffset.marginTop, + left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft, + width: width, + height: height + }; + + return getClientRect(offset); + } + + /** + * Check if the given element is fixed or is inside a fixed parent + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @argument {Element} customContainer + * @returns {Boolean} answer to "isFixed?" + */ + function isFixed(element) { + var nodeName = element.nodeName; + if (nodeName === 'BODY' || nodeName === 'HTML') { + return false; + } + if (getStyleComputedProperty(element, 'position') === 'fixed') { + return true; + } + var parentNode = getParentNode(element); + if (!parentNode) { + return false; + } + return isFixed(parentNode); + } + + /** + * Finds the first parent of an element that has a transformed property defined + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} first transformed parent or documentElement + */ + + function getFixedPositionOffsetParent(element) { + // This check is needed to avoid errors in case one of the elements isn't defined for any reason + if (!element || !element.parentElement || isIE()) { + return document.documentElement; + } + var el = element.parentElement; + while (el && getStyleComputedProperty(el, 'transform') === 'none') { + el = el.parentElement; + } + return el || document.documentElement; + } + + /** + * Computed the boundaries limits and return them + * @method + * @memberof Popper.Utils + * @param {HTMLElement} popper + * @param {HTMLElement} reference + * @param {number} padding + * @param {HTMLElement} boundariesElement - Element used to define the boundaries + * @param {Boolean} fixedPosition - Is in fixed position mode + * @returns {Object} Coordinates of the boundaries + */ + function getBoundaries(popper, reference, padding, boundariesElement) { + var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false; + + // NOTE: 1 DOM access here + + var boundaries = { top: 0, left: 0 }; + var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, reference); + + // Handle viewport case + if (boundariesElement === 'viewport') { + boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition); + } else { + // Handle other cases based on DOM element used as boundaries + var boundariesNode = void 0; + if (boundariesElement === 'scrollParent') { + boundariesNode = getScrollParent(getParentNode(reference)); + if (boundariesNode.nodeName === 'BODY') { + boundariesNode = popper.ownerDocument.documentElement; + } + } else if (boundariesElement === 'window') { + boundariesNode = popper.ownerDocument.documentElement; + } else { + boundariesNode = boundariesElement; + } + + var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition); + + // In case of HTML, we need a different computation + if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) { + var _getWindowSizes = getWindowSizes(popper.ownerDocument), + height = _getWindowSizes.height, + width = _getWindowSizes.width; + + boundaries.top += offsets.top - offsets.marginTop; + boundaries.bottom = height + offsets.top; + boundaries.left += offsets.left - offsets.marginLeft; + boundaries.right = width + offsets.left; + } else { + // for all the other DOM elements, this one is good + boundaries = offsets; + } + } + + // Add paddings + padding = padding || 0; + var isPaddingNumber = typeof padding === 'number'; + boundaries.left += isPaddingNumber ? padding : padding.left || 0; + boundaries.top += isPaddingNumber ? padding : padding.top || 0; + boundaries.right -= isPaddingNumber ? padding : padding.right || 0; + boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0; + + return boundaries; + } + + function getArea(_ref) { + var width = _ref.width, + height = _ref.height; + + return width * height; + } + + /** + * Utility used to transform the `auto` placement to the placement with more + * available space. + * @method + * @memberof Popper.Utils + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) { + var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0; + + if (placement.indexOf('auto') === -1) { + return placement; + } + + var boundaries = getBoundaries(popper, reference, padding, boundariesElement); + + var rects = { + top: { + width: boundaries.width, + height: refRect.top - boundaries.top + }, + right: { + width: boundaries.right - refRect.right, + height: boundaries.height + }, + bottom: { + width: boundaries.width, + height: boundaries.bottom - refRect.bottom + }, + left: { + width: refRect.left - boundaries.left, + height: boundaries.height + } + }; + + var sortedAreas = Object.keys(rects).map(function (key) { + return _extends({ + key: key + }, rects[key], { + area: getArea(rects[key]) + }); + }).sort(function (a, b) { + return b.area - a.area; + }); + + var filteredAreas = sortedAreas.filter(function (_ref2) { + var width = _ref2.width, + height = _ref2.height; + return width >= popper.clientWidth && height >= popper.clientHeight; + }); + + var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key; + + var variation = placement.split('-')[1]; + + return computedPlacement + (variation ? '-' + variation : ''); + } + + /** + * Get offsets to the reference element + * @method + * @memberof Popper.Utils + * @param {Object} state + * @param {Element} popper - the popper element + * @param {Element} reference - the reference element (the popper will be relative to this) + * @param {Element} fixedPosition - is in fixed position mode + * @returns {Object} An object containing the offsets which will be applied to the popper + */ + function getReferenceOffsets(state, popper, reference) { + var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null; + + var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, reference); + return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition); + } + + /** + * Get the outer sizes of the given element (offset size + margins) + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Object} object containing width and height properties + */ + function getOuterSizes(element) { + var window = element.ownerDocument.defaultView; + var styles = window.getComputedStyle(element); + var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0); + var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0); + var result = { + width: element.offsetWidth + y, + height: element.offsetHeight + x + }; + return result; + } + + /** + * Get the opposite placement of the given one + * @method + * @memberof Popper.Utils + * @argument {String} placement + * @returns {String} flipped placement + */ + function getOppositePlacement(placement) { + var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' }; + return placement.replace(/left|right|bottom|top/g, function (matched) { + return hash[matched]; + }); + } + + /** + * Get offsets to the popper + * @method + * @memberof Popper.Utils + * @param {Object} position - CSS position the Popper will get applied + * @param {HTMLElement} popper - the popper element + * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this) + * @param {String} placement - one of the valid placement options + * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper + */ + function getPopperOffsets(popper, referenceOffsets, placement) { + placement = placement.split('-')[0]; + + // Get popper node sizes + var popperRect = getOuterSizes(popper); + + // Add position, width and height to our offsets object + var popperOffsets = { + width: popperRect.width, + height: popperRect.height + }; + + // depending by the popper placement we have to compute its offsets slightly differently + var isHoriz = ['right', 'left'].indexOf(placement) !== -1; + var mainSide = isHoriz ? 'top' : 'left'; + var secondarySide = isHoriz ? 'left' : 'top'; + var measurement = isHoriz ? 'height' : 'width'; + var secondaryMeasurement = !isHoriz ? 'height' : 'width'; + + popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2; + if (placement === secondarySide) { + popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement]; + } else { + popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)]; + } + + return popperOffsets; + } + + /** + * Mimics the `find` method of Array + * @method + * @memberof Popper.Utils + * @argument {Array} arr + * @argument prop + * @argument value + * @returns index or -1 + */ + function find(arr, check) { + // use native find if supported + if (Array.prototype.find) { + return arr.find(check); + } + + // use `filter` to obtain the same behavior of `find` + return arr.filter(check)[0]; + } + + /** + * Return the index of the matching object + * @method + * @memberof Popper.Utils + * @argument {Array} arr + * @argument prop + * @argument value + * @returns index or -1 + */ + function findIndex(arr, prop, value) { + // use native findIndex if supported + if (Array.prototype.findIndex) { + return arr.findIndex(function (cur) { + return cur[prop] === value; + }); + } + + // use `find` + `indexOf` if `findIndex` isn't supported + var match = find(arr, function (obj) { + return obj[prop] === value; + }); + return arr.indexOf(match); + } + + /** + * Loop trough the list of modifiers and run them in order, + * each of them will then edit the data object. + * @method + * @memberof Popper.Utils + * @param {dataObject} data + * @param {Array} modifiers + * @param {String} ends - Optional modifier name used as stopper + * @returns {dataObject} + */ + function runModifiers(modifiers, data, ends) { + var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends)); + + modifiersToRun.forEach(function (modifier) { + if (modifier['function']) { + // eslint-disable-line dot-notation + console.warn('`modifier.function` is deprecated, use `modifier.fn`!'); + } + var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation + if (modifier.enabled && isFunction(fn)) { + // Add properties to offsets to make them a complete clientRect object + // we do this before each modifier to make sure the previous one doesn't + // mess with these values + data.offsets.popper = getClientRect(data.offsets.popper); + data.offsets.reference = getClientRect(data.offsets.reference); + + data = fn(data, modifier); + } + }); + + return data; + } + + /** + * Updates the position of the popper, computing the new offsets and applying + * the new style.<br /> + * Prefer `scheduleUpdate` over `update` because of performance reasons. + * @method + * @memberof Popper + */ + function update() { + // if popper is destroyed, don't perform any further update + if (this.state.isDestroyed) { + return; + } + + var data = { + instance: this, + styles: {}, + arrowStyles: {}, + attributes: {}, + flipped: false, + offsets: {} + }; + + // compute reference element offsets + data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed); + + // compute auto placement, store placement inside the data object, + // modifiers will be able to edit `placement` if needed + // and refer to originalPlacement to know the original value + data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding); + + // store the computed placement inside `originalPlacement` + data.originalPlacement = data.placement; + + data.positionFixed = this.options.positionFixed; + + // compute the popper offsets + data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement); + + data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute'; + + // run the modifiers + data = runModifiers(this.modifiers, data); + + // the first `update` will call `onCreate` callback + // the other ones will call `onUpdate` callback + if (!this.state.isCreated) { + this.state.isCreated = true; + this.options.onCreate(data); + } else { + this.options.onUpdate(data); + } + } + + /** + * Helper used to know if the given modifier is enabled. + * @method + * @memberof Popper.Utils + * @returns {Boolean} + */ + function isModifierEnabled(modifiers, modifierName) { + return modifiers.some(function (_ref) { + var name = _ref.name, + enabled = _ref.enabled; + return enabled && name === modifierName; + }); + } + + /** + * Get the prefixed supported property name + * @method + * @memberof Popper.Utils + * @argument {String} property (camelCase) + * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix) + */ + function getSupportedPropertyName(property) { + var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O']; + var upperProp = property.charAt(0).toUpperCase() + property.slice(1); + + for (var i = 0; i < prefixes.length; i++) { + var prefix = prefixes[i]; + var toCheck = prefix ? '' + prefix + upperProp : property; + if (typeof document.body.style[toCheck] !== 'undefined') { + return toCheck; + } + } + return null; + } + + /** + * Destroys the popper. + * @method + * @memberof Popper + */ + function destroy() { + this.state.isDestroyed = true; + + // touch DOM only if `applyStyle` modifier is enabled + if (isModifierEnabled(this.modifiers, 'applyStyle')) { + this.popper.removeAttribute('x-placement'); + this.popper.style.position = ''; + this.popper.style.top = ''; + this.popper.style.left = ''; + this.popper.style.right = ''; + this.popper.style.bottom = ''; + this.popper.style.willChange = ''; + this.popper.style[getSupportedPropertyName('transform')] = ''; + } + + this.disableEventListeners(); + + // remove the popper if user explicity asked for the deletion on destroy + // do not use `remove` because IE11 doesn't support it + if (this.options.removeOnDestroy) { + this.popper.parentNode.removeChild(this.popper); + } + return this; + } + + /** + * Get the window associated with the element + * @argument {Element} element + * @returns {Window} + */ + function getWindow(element) { + var ownerDocument = element.ownerDocument; + return ownerDocument ? ownerDocument.defaultView : window; + } + + function attachToScrollParents(scrollParent, event, callback, scrollParents) { + var isBody = scrollParent.nodeName === 'BODY'; + var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent; + target.addEventListener(event, callback, { passive: true }); + + if (!isBody) { + attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents); + } + scrollParents.push(target); + } + + /** + * Setup needed event listeners used to update the popper position + * @method + * @memberof Popper.Utils + * @private + */ + function setupEventListeners(reference, options, state, updateBound) { + // Resize event listener on window + state.updateBound = updateBound; + getWindow(reference).addEventListener('resize', state.updateBound, { passive: true }); + + // Scroll event listener on scroll parents + var scrollElement = getScrollParent(reference); + attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents); + state.scrollElement = scrollElement; + state.eventsEnabled = true; + + return state; + } + + /** + * It will add resize/scroll events and start recalculating + * position of the popper element when they are triggered. + * @method + * @memberof Popper + */ + function enableEventListeners() { + if (!this.state.eventsEnabled) { + this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate); + } + } + + /** + * Remove event listeners used to update the popper position + * @method + * @memberof Popper.Utils + * @private + */ + function removeEventListeners(reference, state) { + // Remove resize event listener on window + getWindow(reference).removeEventListener('resize', state.updateBound); + + // Remove scroll event listener on scroll parents + state.scrollParents.forEach(function (target) { + target.removeEventListener('scroll', state.updateBound); + }); + + // Reset state + state.updateBound = null; + state.scrollParents = []; + state.scrollElement = null; + state.eventsEnabled = false; + return state; + } + + /** + * It will remove resize/scroll events and won't recalculate popper position + * when they are triggered. It also won't trigger `onUpdate` callback anymore, + * unless you call `update` method manually. + * @method + * @memberof Popper + */ + function disableEventListeners() { + if (this.state.eventsEnabled) { + cancelAnimationFrame(this.scheduleUpdate); + this.state = removeEventListeners(this.reference, this.state); + } + } + + /** + * Tells if a given input is a number + * @method + * @memberof Popper.Utils + * @param {*} input to check + * @return {Boolean} + */ + function isNumeric(n) { + return n !== '' && !isNaN(parseFloat(n)) && isFinite(n); + } + + /** + * Set the style to the given popper + * @method + * @memberof Popper.Utils + * @argument {Element} element - Element to apply the style to + * @argument {Object} styles + * Object with a list of properties and values which will be applied to the element + */ + function setStyles(element, styles) { + Object.keys(styles).forEach(function (prop) { + var unit = ''; + // add unit if the value is numeric and is one of the following + if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) { + unit = 'px'; + } + element.style[prop] = styles[prop] + unit; + }); + } + + /** + * Set the attributes to the given popper + * @method + * @memberof Popper.Utils + * @argument {Element} element - Element to apply the attributes to + * @argument {Object} styles + * Object with a list of properties and values which will be applied to the element + */ + function setAttributes(element, attributes) { + Object.keys(attributes).forEach(function (prop) { + var value = attributes[prop]; + if (value !== false) { + element.setAttribute(prop, attributes[prop]); + } else { + element.removeAttribute(prop); + } + }); + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} data.styles - List of style properties - values to apply to popper element + * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The same data object + */ + function applyStyle(data) { + // any property present in `data.styles` will be applied to the popper, + // in this way we can make the 3rd party modifiers add custom styles to it + // Be aware, modifiers could override the properties defined in the previous + // lines of this modifier! + setStyles(data.instance.popper, data.styles); + + // any property present in `data.attributes` will be applied to the popper, + // they will be set as HTML attributes of the element + setAttributes(data.instance.popper, data.attributes); + + // if arrowElement is defined and arrowStyles has some properties + if (data.arrowElement && Object.keys(data.arrowStyles).length) { + setStyles(data.arrowElement, data.arrowStyles); + } + + return data; + } + + /** + * Set the x-placement attribute before everything else because it could be used + * to add margins to the popper margins needs to be calculated to get the + * correct popper offsets. + * @method + * @memberof Popper.modifiers + * @param {HTMLElement} reference - The reference element used to position the popper + * @param {HTMLElement} popper - The HTML element used as popper + * @param {Object} options - Popper.js options + */ + function applyStyleOnLoad(reference, popper, options, modifierOptions, state) { + // compute reference element offsets + var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed); + + // compute auto placement, store placement inside the data object, + // modifiers will be able to edit `placement` if needed + // and refer to originalPlacement to know the original value + var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding); + + popper.setAttribute('x-placement', placement); + + // Apply `position` to popper before anything else because + // without the position applied we can't guarantee correct computations + setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' }); + + return options; + } + + /** + * @function + * @memberof Popper.Utils + * @argument {Object} data - The data object generated by `update` method + * @argument {Boolean} shouldRound - If the offsets should be rounded at all + * @returns {Object} The popper's position offsets rounded + * + * The tale of pixel-perfect positioning. It's still not 100% perfect, but as + * good as it can be within reason. + * Discussion here: https://github.com/FezVrasta/popper.js/pull/715 + * + * Low DPI screens cause a popper to be blurry if not using full pixels (Safari + * as well on High DPI screens). + * + * Firefox prefers no rounding for positioning and does not have blurriness on + * high DPI screens. + * + * Only horizontal placement and left/right values need to be considered. + */ + function getRoundedOffsets(data, shouldRound) { + var _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + var round = Math.round, + floor = Math.floor; + + var noRound = function noRound(v) { + return v; + }; + + var referenceWidth = round(reference.width); + var popperWidth = round(popper.width); + + var isVertical = ['left', 'right'].indexOf(data.placement) !== -1; + var isVariation = data.placement.indexOf('-') !== -1; + var sameWidthParity = referenceWidth % 2 === popperWidth % 2; + var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1; + + var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor; + var verticalToInteger = !shouldRound ? noRound : round; + + return { + left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left), + top: verticalToInteger(popper.top), + bottom: verticalToInteger(popper.bottom), + right: horizontalToInteger(popper.right) + }; + } + + var isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent); + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function computeStyle(data, options) { + var x = options.x, + y = options.y; + var popper = data.offsets.popper; + + // Remove this legacy support in Popper.js v2 + + var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) { + return modifier.name === 'applyStyle'; + }).gpuAcceleration; + if (legacyGpuAccelerationOption !== undefined) { + console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!'); + } + var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration; + + var offsetParent = getOffsetParent(data.instance.popper); + var offsetParentRect = getBoundingClientRect(offsetParent); + + // Styles + var styles = { + position: popper.position + }; + + var offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox); + + var sideA = x === 'bottom' ? 'top' : 'bottom'; + var sideB = y === 'right' ? 'left' : 'right'; + + // if gpuAcceleration is set to `true` and transform is supported, + // we use `translate3d` to apply the position to the popper we + // automatically use the supported prefixed version if needed + var prefixedProperty = getSupportedPropertyName('transform'); + + // now, let's make a step back and look at this code closely (wtf?) + // If the content of the popper grows once it's been positioned, it + // may happen that the popper gets misplaced because of the new content + // overflowing its reference element + // To avoid this problem, we provide two options (x and y), which allow + // the consumer to define the offset origin. + // If we position a popper on top of a reference element, we can set + // `x` to `top` to make the popper grow towards its top instead of + // its bottom. + var left = void 0, + top = void 0; + if (sideA === 'bottom') { + // when offsetParent is <html> the positioning is relative to the bottom of the screen (excluding the scrollbar) + // and not the bottom of the html element + if (offsetParent.nodeName === 'HTML') { + top = -offsetParent.clientHeight + offsets.bottom; + } else { + top = -offsetParentRect.height + offsets.bottom; + } + } else { + top = offsets.top; + } + if (sideB === 'right') { + if (offsetParent.nodeName === 'HTML') { + left = -offsetParent.clientWidth + offsets.right; + } else { + left = -offsetParentRect.width + offsets.right; + } + } else { + left = offsets.left; + } + if (gpuAcceleration && prefixedProperty) { + styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)'; + styles[sideA] = 0; + styles[sideB] = 0; + styles.willChange = 'transform'; + } else { + // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties + var invertTop = sideA === 'bottom' ? -1 : 1; + var invertLeft = sideB === 'right' ? -1 : 1; + styles[sideA] = top * invertTop; + styles[sideB] = left * invertLeft; + styles.willChange = sideA + ', ' + sideB; + } + + // Attributes + var attributes = { + 'x-placement': data.placement + }; + + // Update `data` attributes, styles and arrowStyles + data.attributes = _extends({}, attributes, data.attributes); + data.styles = _extends({}, styles, data.styles); + data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles); + + return data; + } + + /** + * Helper used to know if the given modifier depends from another one.<br /> + * It checks if the needed modifier is listed and enabled. + * @method + * @memberof Popper.Utils + * @param {Array} modifiers - list of modifiers + * @param {String} requestingName - name of requesting modifier + * @param {String} requestedName - name of requested modifier + * @returns {Boolean} + */ + function isModifierRequired(modifiers, requestingName, requestedName) { + var requesting = find(modifiers, function (_ref) { + var name = _ref.name; + return name === requestingName; + }); + + var isRequired = !!requesting && modifiers.some(function (modifier) { + return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order; + }); + + if (!isRequired) { + var _requesting = '`' + requestingName + '`'; + var requested = '`' + requestedName + '`'; + console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!'); + } + return isRequired; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function arrow(data, options) { + var _data$offsets$arrow; + + // arrow depends on keepTogether in order to work + if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) { + return data; + } + + var arrowElement = options.element; + + // if arrowElement is a string, suppose it's a CSS selector + if (typeof arrowElement === 'string') { + arrowElement = data.instance.popper.querySelector(arrowElement); + + // if arrowElement is not found, don't run the modifier + if (!arrowElement) { + return data; + } + } else { + // if the arrowElement isn't a query selector we must check that the + // provided DOM node is child of its popper node + if (!data.instance.popper.contains(arrowElement)) { + console.warn('WARNING: `arrow.element` must be child of its popper element!'); + return data; + } + } + + var placement = data.placement.split('-')[0]; + var _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + + var isVertical = ['left', 'right'].indexOf(placement) !== -1; + + var len = isVertical ? 'height' : 'width'; + var sideCapitalized = isVertical ? 'Top' : 'Left'; + var side = sideCapitalized.toLowerCase(); + var altSide = isVertical ? 'left' : 'top'; + var opSide = isVertical ? 'bottom' : 'right'; + var arrowElementSize = getOuterSizes(arrowElement)[len]; + + // + // extends keepTogether behavior making sure the popper and its + // reference have enough pixels in conjunction + // + + // top/left side + if (reference[opSide] - arrowElementSize < popper[side]) { + data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize); + } + // bottom/right side + if (reference[side] + arrowElementSize > popper[opSide]) { + data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide]; + } + data.offsets.popper = getClientRect(data.offsets.popper); + + // compute center of the popper + var center = reference[side] + reference[len] / 2 - arrowElementSize / 2; + + // Compute the sideValue using the updated popper offsets + // take popper margin in account because we don't have this info available + var css = getStyleComputedProperty(data.instance.popper); + var popperMarginSide = parseFloat(css['margin' + sideCapitalized], 10); + var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width'], 10); + var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide; + + // prevent arrowElement from being placed not contiguously to its popper + sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0); + + data.arrowElement = arrowElement; + data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow); + + return data; + } + + /** + * Get the opposite placement variation of the given one + * @method + * @memberof Popper.Utils + * @argument {String} placement variation + * @returns {String} flipped placement variation + */ + function getOppositeVariation(variation) { + if (variation === 'end') { + return 'start'; + } else if (variation === 'start') { + return 'end'; + } + return variation; + } + + /** + * List of accepted placements to use as values of the `placement` option.<br /> + * Valid placements are: + * - `auto` + * - `top` + * - `right` + * - `bottom` + * - `left` + * + * Each placement can have a variation from this list: + * - `-start` + * - `-end` + * + * Variations are interpreted easily if you think of them as the left to right + * written languages. Horizontally (`top` and `bottom`), `start` is left and `end` + * is right.<br /> + * Vertically (`left` and `right`), `start` is top and `end` is bottom. + * + * Some valid examples are: + * - `top-end` (on top of reference, right aligned) + * - `right-start` (on right of reference, top aligned) + * - `bottom` (on bottom, centered) + * - `auto-end` (on the side with more space available, alignment depends by placement) + * + * @static + * @type {Array} + * @enum {String} + * @readonly + * @method placements + * @memberof Popper + */ + var placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start']; + + // Get rid of `auto` `auto-start` and `auto-end` + var validPlacements = placements.slice(3); + + /** + * Given an initial placement, returns all the subsequent placements + * clockwise (or counter-clockwise). + * + * @method + * @memberof Popper.Utils + * @argument {String} placement - A valid placement (it accepts variations) + * @argument {Boolean} counter - Set to true to walk the placements counterclockwise + * @returns {Array} placements including their variations + */ + function clockwise(placement) { + var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + + var index = validPlacements.indexOf(placement); + var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index)); + return counter ? arr.reverse() : arr; + } + + var BEHAVIORS = { + FLIP: 'flip', + CLOCKWISE: 'clockwise', + COUNTERCLOCKWISE: 'counterclockwise' + }; + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function flip(data, options) { + // if `inner` modifier is enabled, we can't use the `flip` modifier + if (isModifierEnabled(data.instance.modifiers, 'inner')) { + return data; + } + + if (data.flipped && data.placement === data.originalPlacement) { + // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides + return data; + } + + var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed); + + var placement = data.placement.split('-')[0]; + var placementOpposite = getOppositePlacement(placement); + var variation = data.placement.split('-')[1] || ''; + + var flipOrder = []; + + switch (options.behavior) { + case BEHAVIORS.FLIP: + flipOrder = [placement, placementOpposite]; + break; + case BEHAVIORS.CLOCKWISE: + flipOrder = clockwise(placement); + break; + case BEHAVIORS.COUNTERCLOCKWISE: + flipOrder = clockwise(placement, true); + break; + default: + flipOrder = options.behavior; + } + + flipOrder.forEach(function (step, index) { + if (placement !== step || flipOrder.length === index + 1) { + return data; + } + + placement = data.placement.split('-')[0]; + placementOpposite = getOppositePlacement(placement); + + var popperOffsets = data.offsets.popper; + var refOffsets = data.offsets.reference; + + // using floor because the reference offsets may contain decimals we are not going to consider here + var floor = Math.floor; + var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom); + + var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left); + var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right); + var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top); + var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom); + + var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom; + + // flip the variation if required + var isVertical = ['top', 'bottom'].indexOf(placement) !== -1; + var flippedVariation = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom); + + if (overlapsRef || overflowsBoundaries || flippedVariation) { + // this boolean to detect any flip loop + data.flipped = true; + + if (overlapsRef || overflowsBoundaries) { + placement = flipOrder[index + 1]; + } + + if (flippedVariation) { + variation = getOppositeVariation(variation); + } + + data.placement = placement + (variation ? '-' + variation : ''); + + // this object contains `position`, we want to preserve it along with + // any additional property we may add in the future + data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement)); + + data = runModifiers(data.instance.modifiers, data, 'flip'); + } + }); + return data; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function keepTogether(data) { + var _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + + var placement = data.placement.split('-')[0]; + var floor = Math.floor; + var isVertical = ['top', 'bottom'].indexOf(placement) !== -1; + var side = isVertical ? 'right' : 'bottom'; + var opSide = isVertical ? 'left' : 'top'; + var measurement = isVertical ? 'width' : 'height'; + + if (popper[side] < floor(reference[opSide])) { + data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement]; + } + if (popper[opSide] > floor(reference[side])) { + data.offsets.popper[opSide] = floor(reference[side]); + } + + return data; + } + + /** + * Converts a string containing value + unit into a px value number + * @function + * @memberof {modifiers~offset} + * @private + * @argument {String} str - Value + unit string + * @argument {String} measurement - `height` or `width` + * @argument {Object} popperOffsets + * @argument {Object} referenceOffsets + * @returns {Number|String} + * Value in pixels, or original string if no values were extracted + */ + function toValue(str, measurement, popperOffsets, referenceOffsets) { + // separate value from unit + var split = str.match(/((?:\-|\+)?\d*\.?\d*)(.*)/); + var value = +split[1]; + var unit = split[2]; + + // If it's not a number it's an operator, I guess + if (!value) { + return str; + } + + if (unit.indexOf('%') === 0) { + var element = void 0; + switch (unit) { + case '%p': + element = popperOffsets; + break; + case '%': + case '%r': + default: + element = referenceOffsets; + } + + var rect = getClientRect(element); + return rect[measurement] / 100 * value; + } else if (unit === 'vh' || unit === 'vw') { + // if is a vh or vw, we calculate the size based on the viewport + var size = void 0; + if (unit === 'vh') { + size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0); + } else { + size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0); + } + return size / 100 * value; + } else { + // if is an explicit pixel unit, we get rid of the unit and keep the value + // if is an implicit unit, it's px, and we return just the value + return value; + } + } + + /** + * Parse an `offset` string to extrapolate `x` and `y` numeric offsets. + * @function + * @memberof {modifiers~offset} + * @private + * @argument {String} offset + * @argument {Object} popperOffsets + * @argument {Object} referenceOffsets + * @argument {String} basePlacement + * @returns {Array} a two cells array with x and y offsets in numbers + */ + function parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) { + var offsets = [0, 0]; + + // Use height if placement is left or right and index is 0 otherwise use width + // in this way the first offset will use an axis and the second one + // will use the other one + var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1; + + // Split the offset string to obtain a list of values and operands + // The regex addresses values with the plus or minus sign in front (+10, -20, etc) + var fragments = offset.split(/(\+|\-)/).map(function (frag) { + return frag.trim(); + }); + + // Detect if the offset string contains a pair of values or a single one + // they could be separated by comma or space + var divider = fragments.indexOf(find(fragments, function (frag) { + return frag.search(/,|\s/) !== -1; + })); + + if (fragments[divider] && fragments[divider].indexOf(',') === -1) { + console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.'); + } + + // If divider is found, we divide the list of values and operands to divide + // them by ofset X and Y. + var splitRegex = /\s*,\s*|\s+/; + var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments]; + + // Convert the values with units to absolute pixels to allow our computations + ops = ops.map(function (op, index) { + // Most of the units rely on the orientation of the popper + var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width'; + var mergeWithPrevious = false; + return op + // This aggregates any `+` or `-` sign that aren't considered operators + // e.g.: 10 + +5 => [10, +, +5] + .reduce(function (a, b) { + if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) { + a[a.length - 1] = b; + mergeWithPrevious = true; + return a; + } else if (mergeWithPrevious) { + a[a.length - 1] += b; + mergeWithPrevious = false; + return a; + } else { + return a.concat(b); + } + }, []) + // Here we convert the string values into number values (in px) + .map(function (str) { + return toValue(str, measurement, popperOffsets, referenceOffsets); + }); + }); + + // Loop trough the offsets arrays and execute the operations + ops.forEach(function (op, index) { + op.forEach(function (frag, index2) { + if (isNumeric(frag)) { + offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1); + } + }); + }); + return offsets; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @argument {Number|String} options.offset=0 + * The offset value as described in the modifier description + * @returns {Object} The data object, properly modified + */ + function offset(data, _ref) { + var offset = _ref.offset; + var placement = data.placement, + _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + + var basePlacement = placement.split('-')[0]; + + var offsets = void 0; + if (isNumeric(+offset)) { + offsets = [+offset, 0]; + } else { + offsets = parseOffset(offset, popper, reference, basePlacement); + } + + if (basePlacement === 'left') { + popper.top += offsets[0]; + popper.left -= offsets[1]; + } else if (basePlacement === 'right') { + popper.top += offsets[0]; + popper.left += offsets[1]; + } else if (basePlacement === 'top') { + popper.left += offsets[0]; + popper.top -= offsets[1]; + } else if (basePlacement === 'bottom') { + popper.left += offsets[0]; + popper.top += offsets[1]; + } + + data.popper = popper; + return data; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function preventOverflow(data, options) { + var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper); + + // If offsetParent is the reference element, we really want to + // go one step up and use the next offsetParent as reference to + // avoid to make this modifier completely useless and look like broken + if (data.instance.reference === boundariesElement) { + boundariesElement = getOffsetParent(boundariesElement); + } + + // NOTE: DOM access here + // resets the popper's position so that the document size can be calculated excluding + // the size of the popper element itself + var transformProp = getSupportedPropertyName('transform'); + var popperStyles = data.instance.popper.style; // assignment to help minification + var top = popperStyles.top, + left = popperStyles.left, + transform = popperStyles[transformProp]; + + popperStyles.top = ''; + popperStyles.left = ''; + popperStyles[transformProp] = ''; + + var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed); + + // NOTE: DOM access here + // restores the original style properties after the offsets have been computed + popperStyles.top = top; + popperStyles.left = left; + popperStyles[transformProp] = transform; + + options.boundaries = boundaries; + + var order = options.priority; + var popper = data.offsets.popper; + + var check = { + primary: function primary(placement) { + var value = popper[placement]; + if (popper[placement] < boundaries[placement] && !options.escapeWithReference) { + value = Math.max(popper[placement], boundaries[placement]); + } + return defineProperty({}, placement, value); + }, + secondary: function secondary(placement) { + var mainSide = placement === 'right' ? 'left' : 'top'; + var value = popper[mainSide]; + if (popper[placement] > boundaries[placement] && !options.escapeWithReference) { + value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height)); + } + return defineProperty({}, mainSide, value); + } + }; + + order.forEach(function (placement) { + var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary'; + popper = _extends({}, popper, check[side](placement)); + }); + + data.offsets.popper = popper; + + return data; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function shift(data) { + var placement = data.placement; + var basePlacement = placement.split('-')[0]; + var shiftvariation = placement.split('-')[1]; + + // if shift shiftvariation is specified, run the modifier + if (shiftvariation) { + var _data$offsets = data.offsets, + reference = _data$offsets.reference, + popper = _data$offsets.popper; + + var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1; + var side = isVertical ? 'left' : 'top'; + var measurement = isVertical ? 'width' : 'height'; + + var shiftOffsets = { + start: defineProperty({}, side, reference[side]), + end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement]) + }; + + data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]); + } + + return data; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function hide(data) { + if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) { + return data; + } + + var refRect = data.offsets.reference; + var bound = find(data.instance.modifiers, function (modifier) { + return modifier.name === 'preventOverflow'; + }).boundaries; + + if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) { + // Avoid unnecessary DOM access if visibility hasn't changed + if (data.hide === true) { + return data; + } + + data.hide = true; + data.attributes['x-out-of-boundaries'] = ''; + } else { + // Avoid unnecessary DOM access if visibility hasn't changed + if (data.hide === false) { + return data; + } + + data.hide = false; + data.attributes['x-out-of-boundaries'] = false; + } + + return data; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function inner(data) { + var placement = data.placement; + var basePlacement = placement.split('-')[0]; + var _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + + var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1; + + var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1; + + popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0); + + data.placement = getOppositePlacement(placement); + data.offsets.popper = getClientRect(popper); + + return data; + } + + /** + * Modifier function, each modifier can have a function of this type assigned + * to its `fn` property.<br /> + * These functions will be called on each update, this means that you must + * make sure they are performant enough to avoid performance bottlenecks. + * + * @function ModifierFn + * @argument {dataObject} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {dataObject} The data object, properly modified + */ + + /** + * Modifiers are plugins used to alter the behavior of your poppers.<br /> + * Popper.js uses a set of 9 modifiers to provide all the basic functionalities + * needed by the library. + * + * Usually you don't want to override the `order`, `fn` and `onLoad` props. + * All the other properties are configurations that could be tweaked. + * @namespace modifiers + */ + var modifiers = { + /** + * Modifier used to shift the popper on the start or end of its reference + * element.<br /> + * It will read the variation of the `placement` property.<br /> + * It can be one either `-end` or `-start`. + * @memberof modifiers + * @inner + */ + shift: { + /** @prop {number} order=100 - Index used to define the order of execution */ + order: 100, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: shift + }, + + /** + * The `offset` modifier can shift your popper on both its axis. + * + * It accepts the following units: + * - `px` or unit-less, interpreted as pixels + * - `%` or `%r`, percentage relative to the length of the reference element + * - `%p`, percentage relative to the length of the popper element + * - `vw`, CSS viewport width unit + * - `vh`, CSS viewport height unit + * + * For length is intended the main axis relative to the placement of the popper.<br /> + * This means that if the placement is `top` or `bottom`, the length will be the + * `width`. In case of `left` or `right`, it will be the `height`. + * + * You can provide a single value (as `Number` or `String`), or a pair of values + * as `String` divided by a comma or one (or more) white spaces.<br /> + * The latter is a deprecated method because it leads to confusion and will be + * removed in v2.<br /> + * Additionally, it accepts additions and subtractions between different units. + * Note that multiplications and divisions aren't supported. + * + * Valid examples are: + * ``` + * 10 + * '10%' + * '10, 10' + * '10%, 10' + * '10 + 10%' + * '10 - 5vh + 3%' + * '-10px + 5vh, 5px - 6%' + * ``` + * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap + * > with their reference element, unfortunately, you will have to disable the `flip` modifier. + * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373). + * + * @memberof modifiers + * @inner + */ + offset: { + /** @prop {number} order=200 - Index used to define the order of execution */ + order: 200, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: offset, + /** @prop {Number|String} offset=0 + * The offset value as described in the modifier description + */ + offset: 0 + }, + + /** + * Modifier used to prevent the popper from being positioned outside the boundary. + * + * A scenario exists where the reference itself is not within the boundaries.<br /> + * We can say it has "escaped the boundaries" — or just "escaped".<br /> + * In this case we need to decide whether the popper should either: + * + * - detach from the reference and remain "trapped" in the boundaries, or + * - if it should ignore the boundary and "escape with its reference" + * + * When `escapeWithReference` is set to`true` and reference is completely + * outside its boundaries, the popper will overflow (or completely leave) + * the boundaries in order to remain attached to the edge of the reference. + * + * @memberof modifiers + * @inner + */ + preventOverflow: { + /** @prop {number} order=300 - Index used to define the order of execution */ + order: 300, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: preventOverflow, + /** + * @prop {Array} [priority=['left','right','top','bottom']] + * Popper will try to prevent overflow following these priorities by default, + * then, it could overflow on the left and on top of the `boundariesElement` + */ + priority: ['left', 'right', 'top', 'bottom'], + /** + * @prop {number} padding=5 + * Amount of pixel used to define a minimum distance between the boundaries + * and the popper. This makes sure the popper always has a little padding + * between the edges of its container + */ + padding: 5, + /** + * @prop {String|HTMLElement} boundariesElement='scrollParent' + * Boundaries used by the modifier. Can be `scrollParent`, `window`, + * `viewport` or any DOM element. + */ + boundariesElement: 'scrollParent' + }, + + /** + * Modifier used to make sure the reference and its popper stay near each other + * without leaving any gap between the two. Especially useful when the arrow is + * enabled and you want to ensure that it points to its reference element. + * It cares only about the first axis. You can still have poppers with margin + * between the popper and its reference element. + * @memberof modifiers + * @inner + */ + keepTogether: { + /** @prop {number} order=400 - Index used to define the order of execution */ + order: 400, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: keepTogether + }, + + /** + * This modifier is used to move the `arrowElement` of the popper to make + * sure it is positioned between the reference element and its popper element. + * It will read the outer size of the `arrowElement` node to detect how many + * pixels of conjunction are needed. + * + * It has no effect if no `arrowElement` is provided. + * @memberof modifiers + * @inner + */ + arrow: { + /** @prop {number} order=500 - Index used to define the order of execution */ + order: 500, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: arrow, + /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */ + element: '[x-arrow]' + }, + + /** + * Modifier used to flip the popper's placement when it starts to overlap its + * reference element. + * + * Requires the `preventOverflow` modifier before it in order to work. + * + * **NOTE:** this modifier will interrupt the current update cycle and will + * restart it if it detects the need to flip the placement. + * @memberof modifiers + * @inner + */ + flip: { + /** @prop {number} order=600 - Index used to define the order of execution */ + order: 600, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: flip, + /** + * @prop {String|Array} behavior='flip' + * The behavior used to change the popper's placement. It can be one of + * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid + * placements (with optional variations) + */ + behavior: 'flip', + /** + * @prop {number} padding=5 + * The popper will flip if it hits the edges of the `boundariesElement` + */ + padding: 5, + /** + * @prop {String|HTMLElement} boundariesElement='viewport' + * The element which will define the boundaries of the popper position. + * The popper will never be placed outside of the defined boundaries + * (except if `keepTogether` is enabled) + */ + boundariesElement: 'viewport' + }, + + /** + * Modifier used to make the popper flow toward the inner of the reference element. + * By default, when this modifier is disabled, the popper will be placed outside + * the reference element. + * @memberof modifiers + * @inner + */ + inner: { + /** @prop {number} order=700 - Index used to define the order of execution */ + order: 700, + /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */ + enabled: false, + /** @prop {ModifierFn} */ + fn: inner + }, + + /** + * Modifier used to hide the popper when its reference element is outside of the + * popper boundaries. It will set a `x-out-of-boundaries` attribute which can + * be used to hide with a CSS selector the popper when its reference is + * out of boundaries. + * + * Requires the `preventOverflow` modifier before it in order to work. + * @memberof modifiers + * @inner + */ + hide: { + /** @prop {number} order=800 - Index used to define the order of execution */ + order: 800, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: hide + }, + + /** + * Computes the style that will be applied to the popper element to gets + * properly positioned. + * + * Note that this modifier will not touch the DOM, it just prepares the styles + * so that `applyStyle` modifier can apply it. This separation is useful + * in case you need to replace `applyStyle` with a custom implementation. + * + * This modifier has `850` as `order` value to maintain backward compatibility + * with previous versions of Popper.js. Expect the modifiers ordering method + * to change in future major versions of the library. + * + * @memberof modifiers + * @inner + */ + computeStyle: { + /** @prop {number} order=850 - Index used to define the order of execution */ + order: 850, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: computeStyle, + /** + * @prop {Boolean} gpuAcceleration=true + * If true, it uses the CSS 3D transformation to position the popper. + * Otherwise, it will use the `top` and `left` properties + */ + gpuAcceleration: true, + /** + * @prop {string} [x='bottom'] + * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin. + * Change this if your popper should grow in a direction different from `bottom` + */ + x: 'bottom', + /** + * @prop {string} [x='left'] + * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin. + * Change this if your popper should grow in a direction different from `right` + */ + y: 'right' + }, + + /** + * Applies the computed styles to the popper element. + * + * All the DOM manipulations are limited to this modifier. This is useful in case + * you want to integrate Popper.js inside a framework or view library and you + * want to delegate all the DOM manipulations to it. + * + * Note that if you disable this modifier, you must make sure the popper element + * has its position set to `absolute` before Popper.js can do its work! + * + * Just disable this modifier and define your own to achieve the desired effect. + * + * @memberof modifiers + * @inner + */ + applyStyle: { + /** @prop {number} order=900 - Index used to define the order of execution */ + order: 900, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: applyStyle, + /** @prop {Function} */ + onLoad: applyStyleOnLoad, + /** + * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier + * @prop {Boolean} gpuAcceleration=true + * If true, it uses the CSS 3D transformation to position the popper. + * Otherwise, it will use the `top` and `left` properties + */ + gpuAcceleration: undefined + } + }; + + /** + * The `dataObject` is an object containing all the information used by Popper.js. + * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks. + * @name dataObject + * @property {Object} data.instance The Popper.js instance + * @property {String} data.placement Placement applied to popper + * @property {String} data.originalPlacement Placement originally defined on init + * @property {Boolean} data.flipped True if popper has been flipped by flip modifier + * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper + * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier + * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`) + * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`) + * @property {Object} data.boundaries Offsets of the popper boundaries + * @property {Object} data.offsets The measurements of popper, reference and arrow elements + * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values + * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values + * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0 + */ + + /** + * Default options provided to Popper.js constructor.<br /> + * These can be overridden using the `options` argument of Popper.js.<br /> + * To override an option, simply pass an object with the same + * structure of the `options` object, as the 3rd argument. For example: + * ``` + * new Popper(ref, pop, { + * modifiers: { + * preventOverflow: { enabled: false } + * } + * }) + * ``` + * @type {Object} + * @static + * @memberof Popper + */ + var Defaults = { + /** + * Popper's placement. + * @prop {Popper.placements} placement='bottom' + */ + placement: 'bottom', + + /** + * Set this to true if you want popper to position it self in 'fixed' mode + * @prop {Boolean} positionFixed=false + */ + positionFixed: false, + + /** + * Whether events (resize, scroll) are initially enabled. + * @prop {Boolean} eventsEnabled=true + */ + eventsEnabled: true, + + /** + * Set to true if you want to automatically remove the popper when + * you call the `destroy` method. + * @prop {Boolean} removeOnDestroy=false + */ + removeOnDestroy: false, + + /** + * Callback called when the popper is created.<br /> + * By default, it is set to no-op.<br /> + * Access Popper.js instance with `data.instance`. + * @prop {onCreate} + */ + onCreate: function onCreate() {}, + + /** + * Callback called when the popper is updated. This callback is not called + * on the initialization/creation of the popper, but only on subsequent + * updates.<br /> + * By default, it is set to no-op.<br /> + * Access Popper.js instance with `data.instance`. + * @prop {onUpdate} + */ + onUpdate: function onUpdate() {}, + + /** + * List of modifiers used to modify the offsets before they are applied to the popper. + * They provide most of the functionalities of Popper.js. + * @prop {modifiers} + */ + modifiers: modifiers + }; + + /** + * @callback onCreate + * @param {dataObject} data + */ + + /** + * @callback onUpdate + * @param {dataObject} data + */ + + // Utils + // Methods + var Popper = function () { + /** + * Creates a new Popper.js instance. + * @class Popper + * @param {HTMLElement|referenceObject} reference - The reference element used to position the popper + * @param {HTMLElement} popper - The HTML element used as the popper + * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults) + * @return {Object} instance - The generated Popper.js instance + */ + function Popper(reference, popper) { + var _this = this; + + var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; + classCallCheck(this, Popper); + + this.scheduleUpdate = function () { + return requestAnimationFrame(_this.update); + }; + + // make update() debounced, so that it only runs at most once-per-tick + this.update = debounce(this.update.bind(this)); + + // with {} we create a new object with the options inside it + this.options = _extends({}, Popper.Defaults, options); + + // init state + this.state = { + isDestroyed: false, + isCreated: false, + scrollParents: [] + }; + + // get reference and popper elements (allow jQuery wrappers) + this.reference = reference && reference.jquery ? reference[0] : reference; + this.popper = popper && popper.jquery ? popper[0] : popper; + + // Deep merge modifiers options + this.options.modifiers = {}; + Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) { + _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {}); + }); + + // Refactoring modifiers' list (Object => Array) + this.modifiers = Object.keys(this.options.modifiers).map(function (name) { + return _extends({ + name: name + }, _this.options.modifiers[name]); + }) + // sort the modifiers by order + .sort(function (a, b) { + return a.order - b.order; + }); + + // modifiers have the ability to execute arbitrary code when Popper.js get inited + // such code is executed in the same order of its modifier + // they could add new properties to their options configuration + // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`! + this.modifiers.forEach(function (modifierOptions) { + if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) { + modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state); + } + }); + + // fire the first update to position the popper in the right place + this.update(); + + var eventsEnabled = this.options.eventsEnabled; + if (eventsEnabled) { + // setup event listeners, they will take care of update the position in specific situations + this.enableEventListeners(); + } + + this.state.eventsEnabled = eventsEnabled; + } + + // We can't use class properties because they don't get listed in the + // class prototype and break stuff like Sinon stubs + + + createClass(Popper, [{ + key: 'update', + value: function update$$1() { + return update.call(this); + } + }, { + key: 'destroy', + value: function destroy$$1() { + return destroy.call(this); + } + }, { + key: 'enableEventListeners', + value: function enableEventListeners$$1() { + return enableEventListeners.call(this); + } + }, { + key: 'disableEventListeners', + value: function disableEventListeners$$1() { + return disableEventListeners.call(this); + } + + /** + * Schedules an update. It will run on the next UI update available. + * @method scheduleUpdate + * @memberof Popper + */ + + + /** + * Collection of utilities useful when writing custom modifiers. + * Starting from version 1.7, this method is available only if you + * include `popper-utils.js` before `popper.js`. + * + * **DEPRECATION**: This way to access PopperUtils is deprecated + * and will be removed in v2! Use the PopperUtils module directly instead. + * Due to the high instability of the methods contained in Utils, we can't + * guarantee them to follow semver. Use them at your own risk! + * @static + * @private + * @type {Object} + * @deprecated since version 1.8 + * @member Utils + * @memberof Popper + */ + + }]); + return Popper; + }(); + + /** + * The `referenceObject` is an object that provides an interface compatible with Popper.js + * and lets you use it as replacement of a real DOM node.<br /> + * You can use this method to position a popper relatively to a set of coordinates + * in case you don't have a DOM node to use as reference. + * + * ``` + * new Popper(referenceObject, popperNode); + * ``` + * + * NB: This feature isn't supported in Internet Explorer 10. + * @name referenceObject + * @property {Function} data.getBoundingClientRect + * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method. + * @property {number} data.clientWidth + * An ES6 getter that will return the width of the virtual reference element. + * @property {number} data.clientHeight + * An ES6 getter that will return the height of the virtual reference element. + */ + + + Popper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils; + Popper.placements = placements; + Popper.Defaults = Defaults; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$4 = 'dropdown'; + var VERSION$4 = '4.3.0'; + var DATA_KEY$4 = 'bs.dropdown'; + var EVENT_KEY$4 = "." + DATA_KEY$4; + var DATA_API_KEY$4 = '.data-api'; + var JQUERY_NO_CONFLICT$4 = $.fn[NAME$4]; + var ESCAPE_KEYCODE = 27; // KeyboardEvent.which value for Escape (Esc) key + + var SPACE_KEYCODE = 32; // KeyboardEvent.which value for space key + + var TAB_KEYCODE = 9; // KeyboardEvent.which value for tab key + + var ARROW_UP_KEYCODE = 38; // KeyboardEvent.which value for up arrow key + + var ARROW_DOWN_KEYCODE = 40; // KeyboardEvent.which value for down arrow key + + var RIGHT_MOUSE_BUTTON_WHICH = 3; // MouseEvent.which value for the right button (assuming a right-handed mouse) + + var REGEXP_KEYDOWN = new RegExp(ARROW_UP_KEYCODE + "|" + ARROW_DOWN_KEYCODE + "|" + ESCAPE_KEYCODE); + var Event$4 = { + HIDE: "hide" + EVENT_KEY$4, + HIDDEN: "hidden" + EVENT_KEY$4, + SHOW: "show" + EVENT_KEY$4, + SHOWN: "shown" + EVENT_KEY$4, + CLICK: "click" + EVENT_KEY$4, + CLICK_DATA_API: "click" + EVENT_KEY$4 + DATA_API_KEY$4, + KEYDOWN_DATA_API: "keydown" + EVENT_KEY$4 + DATA_API_KEY$4, + KEYUP_DATA_API: "keyup" + EVENT_KEY$4 + DATA_API_KEY$4 + }; + var ClassName$4 = { + DISABLED: 'disabled', + SHOW: 'show', + DROPUP: 'dropup', + DROPRIGHT: 'dropright', + DROPLEFT: 'dropleft', + MENURIGHT: 'dropdown-menu-right', + MENULEFT: 'dropdown-menu-left', + POSITION_STATIC: 'position-static' + }; + var Selector$4 = { + DATA_TOGGLE: '[data-toggle="dropdown"]', + FORM_CHILD: '.dropdown form', + MENU: '.dropdown-menu', + NAVBAR_NAV: '.navbar-nav', + VISIBLE_ITEMS: '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)' + }; + var AttachmentMap = { + TOP: 'top-start', + TOPEND: 'top-end', + BOTTOM: 'bottom-start', + BOTTOMEND: 'bottom-end', + RIGHT: 'right-start', + RIGHTEND: 'right-end', + LEFT: 'left-start', + LEFTEND: 'left-end' + }; + var Default$2 = { + offset: 0, + flip: true, + boundary: 'scrollParent', + reference: 'toggle', + display: 'dynamic' + }; + var DefaultType$2 = { + offset: '(number|string|function)', + flip: 'boolean', + boundary: '(string|element)', + reference: '(string|element)', + display: 'string' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Dropdown = + /*#__PURE__*/ + function () { + function Dropdown(element, config) { + this._element = element; + this._popper = null; + this._config = this._getConfig(config); + this._menu = this._getMenuElement(); + this._inNavbar = this._detectNavbar(); + + this._addEventListeners(); + } // Getters + + + var _proto = Dropdown.prototype; + + // Public + _proto.toggle = function toggle() { + if (this._element.disabled || $(this._element).hasClass(ClassName$4.DISABLED)) { + return; + } + + var parent = Dropdown._getParentFromElement(this._element); + + var isActive = $(this._menu).hasClass(ClassName$4.SHOW); + + Dropdown._clearMenus(); + + if (isActive) { + return; + } + + var relatedTarget = { + relatedTarget: this._element + }; + var showEvent = $.Event(Event$4.SHOW, relatedTarget); + $(parent).trigger(showEvent); + + if (showEvent.isDefaultPrevented()) { + return; + } // Disable totally Popper.js for Dropdown in Navbar + + + if (!this._inNavbar) { + /** + * Check for Popper dependency + * Popper - https://popper.js.org + */ + if (typeof Popper === 'undefined') { + throw new TypeError('Bootstrap\'s dropdowns require Popper.js (https://popper.js.org/)'); + } + + var referenceElement = this._element; + + if (this._config.reference === 'parent') { + referenceElement = parent; + } else if (Util.isElement(this._config.reference)) { + referenceElement = this._config.reference; // Check if it's jQuery element + + if (typeof this._config.reference.jquery !== 'undefined') { + referenceElement = this._config.reference[0]; + } + } // If boundary is not `scrollParent`, then set position to `static` + // to allow the menu to "escape" the scroll parent's boundaries + // https://github.com/twbs/bootstrap/issues/24251 + + + if (this._config.boundary !== 'scrollParent') { + $(parent).addClass(ClassName$4.POSITION_STATIC); + } + + this._popper = new Popper(referenceElement, this._menu, this._getPopperConfig()); + } // If this is a touch-enabled device we add extra + // empty mouseover listeners to the body's immediate children; + // only needed because of broken event delegation on iOS + // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html + + + if ('ontouchstart' in document.documentElement && $(parent).closest(Selector$4.NAVBAR_NAV).length === 0) { + $(document.body).children().on('mouseover', null, $.noop); + } + + this._element.focus(); + + this._element.setAttribute('aria-expanded', true); + + $(this._menu).toggleClass(ClassName$4.SHOW); + $(parent).toggleClass(ClassName$4.SHOW).trigger($.Event(Event$4.SHOWN, relatedTarget)); + }; + + _proto.show = function show() { + if (this._element.disabled || $(this._element).hasClass(ClassName$4.DISABLED) || $(this._menu).hasClass(ClassName$4.SHOW)) { + return; + } + + var relatedTarget = { + relatedTarget: this._element + }; + var showEvent = $.Event(Event$4.SHOW, relatedTarget); + + var parent = Dropdown._getParentFromElement(this._element); + + $(parent).trigger(showEvent); + + if (showEvent.isDefaultPrevented()) { + return; + } + + $(this._menu).toggleClass(ClassName$4.SHOW); + $(parent).toggleClass(ClassName$4.SHOW).trigger($.Event(Event$4.SHOWN, relatedTarget)); + }; + + _proto.hide = function hide() { + if (this._element.disabled || $(this._element).hasClass(ClassName$4.DISABLED) || !$(this._menu).hasClass(ClassName$4.SHOW)) { + return; + } + + var relatedTarget = { + relatedTarget: this._element + }; + var hideEvent = $.Event(Event$4.HIDE, relatedTarget); + + var parent = Dropdown._getParentFromElement(this._element); + + $(parent).trigger(hideEvent); + + if (hideEvent.isDefaultPrevented()) { + return; + } + + $(this._menu).toggleClass(ClassName$4.SHOW); + $(parent).toggleClass(ClassName$4.SHOW).trigger($.Event(Event$4.HIDDEN, relatedTarget)); + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY$4); + $(this._element).off(EVENT_KEY$4); + this._element = null; + this._menu = null; + + if (this._popper !== null) { + this._popper.destroy(); + + this._popper = null; + } + }; + + _proto.update = function update() { + this._inNavbar = this._detectNavbar(); + + if (this._popper !== null) { + this._popper.scheduleUpdate(); + } + } // Private + ; + + _proto._addEventListeners = function _addEventListeners() { + var _this = this; + + $(this._element).on(Event$4.CLICK, function (event) { + event.preventDefault(); + event.stopPropagation(); + + _this.toggle(); + }); + }; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, this.constructor.Default, $(this._element).data(), config); + Util.typeCheckConfig(NAME$4, config, this.constructor.DefaultType); + return config; + }; + + _proto._getMenuElement = function _getMenuElement() { + if (!this._menu) { + var parent = Dropdown._getParentFromElement(this._element); + + if (parent) { + this._menu = parent.querySelector(Selector$4.MENU); + } + } + + return this._menu; + }; + + _proto._getPlacement = function _getPlacement() { + var $parentDropdown = $(this._element.parentNode); + var placement = AttachmentMap.BOTTOM; // Handle dropup + + if ($parentDropdown.hasClass(ClassName$4.DROPUP)) { + placement = AttachmentMap.TOP; + + if ($(this._menu).hasClass(ClassName$4.MENURIGHT)) { + placement = AttachmentMap.TOPEND; + } + } else if ($parentDropdown.hasClass(ClassName$4.DROPRIGHT)) { + placement = AttachmentMap.RIGHT; + } else if ($parentDropdown.hasClass(ClassName$4.DROPLEFT)) { + placement = AttachmentMap.LEFT; + } else if ($(this._menu).hasClass(ClassName$4.MENURIGHT)) { + placement = AttachmentMap.BOTTOMEND; + } + + return placement; + }; + + _proto._detectNavbar = function _detectNavbar() { + return $(this._element).closest('.navbar').length > 0; + }; + + _proto._getOffset = function _getOffset() { + var _this2 = this; + + var offset = {}; + + if (typeof this._config.offset === 'function') { + offset.fn = function (data) { + data.offsets = _objectSpread({}, data.offsets, _this2._config.offset(data.offsets, _this2._element) || {}); + return data; + }; + } else { + offset.offset = this._config.offset; + } + + return offset; + }; + + _proto._getPopperConfig = function _getPopperConfig() { + var popperConfig = { + placement: this._getPlacement(), + modifiers: { + offset: this._getOffset(), + flip: { + enabled: this._config.flip + }, + preventOverflow: { + boundariesElement: this._config.boundary + } + } // Disable Popper.js if we have a static display + + }; + + if (this._config.display === 'static') { + popperConfig.modifiers.applyStyle = { + enabled: false + }; + } + + return popperConfig; + } // Static + ; + + Dropdown._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$4); + + var _config = typeof config === 'object' ? config : null; + + if (!data) { + data = new Dropdown(this, _config); + $(this).data(DATA_KEY$4, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + Dropdown._clearMenus = function _clearMenus(event) { + if (event && (event.which === RIGHT_MOUSE_BUTTON_WHICH || event.type === 'keyup' && event.which !== TAB_KEYCODE)) { + return; + } + + var toggles = [].slice.call(document.querySelectorAll(Selector$4.DATA_TOGGLE)); + + for (var i = 0, len = toggles.length; i < len; i++) { + var parent = Dropdown._getParentFromElement(toggles[i]); + + var context = $(toggles[i]).data(DATA_KEY$4); + var relatedTarget = { + relatedTarget: toggles[i] + }; + + if (event && event.type === 'click') { + relatedTarget.clickEvent = event; + } + + if (!context) { + continue; + } + + var dropdownMenu = context._menu; + + if (!$(parent).hasClass(ClassName$4.SHOW)) { + continue; + } + + if (event && (event.type === 'click' && /input|textarea/i.test(event.target.tagName) || event.type === 'keyup' && event.which === TAB_KEYCODE) && $.contains(parent, event.target)) { + continue; + } + + var hideEvent = $.Event(Event$4.HIDE, relatedTarget); + $(parent).trigger(hideEvent); + + if (hideEvent.isDefaultPrevented()) { + continue; + } // If this is a touch-enabled device we remove the extra + // empty mouseover listeners we added for iOS support + + + if ('ontouchstart' in document.documentElement) { + $(document.body).children().off('mouseover', null, $.noop); + } + + toggles[i].setAttribute('aria-expanded', 'false'); + $(dropdownMenu).removeClass(ClassName$4.SHOW); + $(parent).removeClass(ClassName$4.SHOW).trigger($.Event(Event$4.HIDDEN, relatedTarget)); + } + }; + + Dropdown._getParentFromElement = function _getParentFromElement(element) { + var parent; + var selector = Util.getSelectorFromElement(element); + + if (selector) { + parent = document.querySelector(selector); + } + + return parent || element.parentNode; + } // eslint-disable-next-line complexity + ; + + Dropdown._dataApiKeydownHandler = function _dataApiKeydownHandler(event) { + // If not input/textarea: + // - And not a key in REGEXP_KEYDOWN => not a dropdown command + // If input/textarea: + // - If space key => not a dropdown command + // - If key is other than escape + // - If key is not up or down => not a dropdown command + // - If trigger inside the menu => not a dropdown command + if (/input|textarea/i.test(event.target.tagName) ? event.which === SPACE_KEYCODE || event.which !== ESCAPE_KEYCODE && (event.which !== ARROW_DOWN_KEYCODE && event.which !== ARROW_UP_KEYCODE || $(event.target).closest(Selector$4.MENU).length) : !REGEXP_KEYDOWN.test(event.which)) { + return; + } + + event.preventDefault(); + event.stopPropagation(); + + if (this.disabled || $(this).hasClass(ClassName$4.DISABLED)) { + return; + } + + var parent = Dropdown._getParentFromElement(this); + + var isActive = $(parent).hasClass(ClassName$4.SHOW); + + if (!isActive || isActive && (event.which === ESCAPE_KEYCODE || event.which === SPACE_KEYCODE)) { + if (event.which === ESCAPE_KEYCODE) { + var toggle = parent.querySelector(Selector$4.DATA_TOGGLE); + $(toggle).trigger('focus'); + } + + $(this).trigger('click'); + return; + } + + var items = [].slice.call(parent.querySelectorAll(Selector$4.VISIBLE_ITEMS)); + + if (items.length === 0) { + return; + } + + var index = items.indexOf(event.target); + + if (event.which === ARROW_UP_KEYCODE && index > 0) { + // Up + index--; + } + + if (event.which === ARROW_DOWN_KEYCODE && index < items.length - 1) { + // Down + index++; + } + + if (index < 0) { + index = 0; + } + + items[index].focus(); + }; + + _createClass(Dropdown, null, [{ + key: "VERSION", + get: function get() { + return VERSION$4; + } + }, { + key: "Default", + get: function get() { + return Default$2; + } + }, { + key: "DefaultType", + get: function get() { + return DefaultType$2; + } + }]); + + return Dropdown; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(Event$4.KEYDOWN_DATA_API, Selector$4.DATA_TOGGLE, Dropdown._dataApiKeydownHandler).on(Event$4.KEYDOWN_DATA_API, Selector$4.MENU, Dropdown._dataApiKeydownHandler).on(Event$4.CLICK_DATA_API + " " + Event$4.KEYUP_DATA_API, Dropdown._clearMenus).on(Event$4.CLICK_DATA_API, Selector$4.DATA_TOGGLE, function (event) { + event.preventDefault(); + event.stopPropagation(); + + Dropdown._jQueryInterface.call($(this), 'toggle'); + }).on(Event$4.CLICK_DATA_API, Selector$4.FORM_CHILD, function (e) { + e.stopPropagation(); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$4] = Dropdown._jQueryInterface; + $.fn[NAME$4].Constructor = Dropdown; + + $.fn[NAME$4].noConflict = function () { + $.fn[NAME$4] = JQUERY_NO_CONFLICT$4; + return Dropdown._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$5 = 'modal'; + var VERSION$5 = '4.3.0'; + var DATA_KEY$5 = 'bs.modal'; + var EVENT_KEY$5 = "." + DATA_KEY$5; + var DATA_API_KEY$5 = '.data-api'; + var JQUERY_NO_CONFLICT$5 = $.fn[NAME$5]; + var ESCAPE_KEYCODE$1 = 27; // KeyboardEvent.which value for Escape (Esc) key + + var Default$3 = { + backdrop: true, + keyboard: true, + focus: true, + show: true + }; + var DefaultType$3 = { + backdrop: '(boolean|string)', + keyboard: 'boolean', + focus: 'boolean', + show: 'boolean' + }; + var Event$5 = { + HIDE: "hide" + EVENT_KEY$5, + HIDDEN: "hidden" + EVENT_KEY$5, + SHOW: "show" + EVENT_KEY$5, + SHOWN: "shown" + EVENT_KEY$5, + FOCUSIN: "focusin" + EVENT_KEY$5, + RESIZE: "resize" + EVENT_KEY$5, + CLICK_DISMISS: "click.dismiss" + EVENT_KEY$5, + KEYDOWN_DISMISS: "keydown.dismiss" + EVENT_KEY$5, + MOUSEUP_DISMISS: "mouseup.dismiss" + EVENT_KEY$5, + MOUSEDOWN_DISMISS: "mousedown.dismiss" + EVENT_KEY$5, + CLICK_DATA_API: "click" + EVENT_KEY$5 + DATA_API_KEY$5 + }; + var ClassName$5 = { + SCROLLABLE: 'modal-dialog-scrollable', + SCROLLBAR_MEASURER: 'modal-scrollbar-measure', + BACKDROP: 'modal-backdrop', + OPEN: 'modal-open', + FADE: 'fade', + SHOW: 'show' + }; + var Selector$5 = { + DIALOG: '.modal-dialog', + MODAL_BODY: '.modal-body', + DATA_TOGGLE: '[data-toggle="modal"]', + DATA_DISMISS: '[data-dismiss="modal"]', + FIXED_CONTENT: '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top', + STICKY_CONTENT: '.sticky-top' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Modal = + /*#__PURE__*/ + function () { + function Modal(element, config) { + this._config = this._getConfig(config); + this._element = element; + this._dialog = element.querySelector(Selector$5.DIALOG); + this._backdrop = null; + this._isShown = false; + this._isBodyOverflowing = false; + this._ignoreBackdropClick = false; + this._isTransitioning = false; + this._scrollbarWidth = 0; + } // Getters + + + var _proto = Modal.prototype; + + // Public + _proto.toggle = function toggle(relatedTarget) { + return this._isShown ? this.hide() : this.show(relatedTarget); + }; + + _proto.show = function show(relatedTarget) { + var _this = this; + + if (this._isShown || this._isTransitioning) { + return; + } + + if ($(this._element).hasClass(ClassName$5.FADE)) { + this._isTransitioning = true; + } + + var showEvent = $.Event(Event$5.SHOW, { + relatedTarget: relatedTarget + }); + $(this._element).trigger(showEvent); + + if (this._isShown || showEvent.isDefaultPrevented()) { + return; + } + + this._isShown = true; + + this._checkScrollbar(); + + this._setScrollbar(); + + this._adjustDialog(); + + this._setEscapeEvent(); + + this._setResizeEvent(); + + $(this._element).on(Event$5.CLICK_DISMISS, Selector$5.DATA_DISMISS, function (event) { + return _this.hide(event); + }); + $(this._dialog).on(Event$5.MOUSEDOWN_DISMISS, function () { + $(_this._element).one(Event$5.MOUSEUP_DISMISS, function (event) { + if ($(event.target).is(_this._element)) { + _this._ignoreBackdropClick = true; + } + }); + }); + + this._showBackdrop(function () { + return _this._showElement(relatedTarget); + }); + }; + + _proto.hide = function hide(event) { + var _this2 = this; + + if (event) { + event.preventDefault(); + } + + if (!this._isShown || this._isTransitioning) { + return; + } + + var hideEvent = $.Event(Event$5.HIDE); + $(this._element).trigger(hideEvent); + + if (!this._isShown || hideEvent.isDefaultPrevented()) { + return; + } + + this._isShown = false; + var transition = $(this._element).hasClass(ClassName$5.FADE); + + if (transition) { + this._isTransitioning = true; + } + + this._setEscapeEvent(); + + this._setResizeEvent(); + + $(document).off(Event$5.FOCUSIN); + $(this._element).removeClass(ClassName$5.SHOW); + $(this._element).off(Event$5.CLICK_DISMISS); + $(this._dialog).off(Event$5.MOUSEDOWN_DISMISS); + + if (transition) { + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $(this._element).one(Util.TRANSITION_END, function (event) { + return _this2._hideModal(event); + }).emulateTransitionEnd(transitionDuration); + } else { + this._hideModal(); + } + }; + + _proto.dispose = function dispose() { + [window, this._element, this._dialog].forEach(function (htmlElement) { + return $(htmlElement).off(EVENT_KEY$5); + }); + /** + * `document` has 2 events `Event.FOCUSIN` and `Event.CLICK_DATA_API` + * Do not move `document` in `htmlElements` array + * It will remove `Event.CLICK_DATA_API` event that should remain + */ + + $(document).off(Event$5.FOCUSIN); + $.removeData(this._element, DATA_KEY$5); + this._config = null; + this._element = null; + this._dialog = null; + this._backdrop = null; + this._isShown = null; + this._isBodyOverflowing = null; + this._ignoreBackdropClick = null; + this._isTransitioning = null; + this._scrollbarWidth = null; + }; + + _proto.handleUpdate = function handleUpdate() { + this._adjustDialog(); + } // Private + ; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, Default$3, config); + Util.typeCheckConfig(NAME$5, config, DefaultType$3); + return config; + }; + + _proto._showElement = function _showElement(relatedTarget) { + var _this3 = this; + + var transition = $(this._element).hasClass(ClassName$5.FADE); + + if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) { + // Don't move modal's DOM position + document.body.appendChild(this._element); + } + + this._element.style.display = 'block'; + + this._element.removeAttribute('aria-hidden'); + + this._element.setAttribute('aria-modal', true); + + if ($(this._dialog).hasClass(ClassName$5.SCROLLABLE)) { + this._dialog.querySelector(Selector$5.MODAL_BODY).scrollTop = 0; + } else { + this._element.scrollTop = 0; + } + + if (transition) { + Util.reflow(this._element); + } + + $(this._element).addClass(ClassName$5.SHOW); + + if (this._config.focus) { + this._enforceFocus(); + } + + var shownEvent = $.Event(Event$5.SHOWN, { + relatedTarget: relatedTarget + }); + + var transitionComplete = function transitionComplete() { + if (_this3._config.focus) { + _this3._element.focus(); + } + + _this3._isTransitioning = false; + $(_this3._element).trigger(shownEvent); + }; + + if (transition) { + var transitionDuration = Util.getTransitionDurationFromElement(this._dialog); + $(this._dialog).one(Util.TRANSITION_END, transitionComplete).emulateTransitionEnd(transitionDuration); + } else { + transitionComplete(); + } + }; + + _proto._enforceFocus = function _enforceFocus() { + var _this4 = this; + + $(document).off(Event$5.FOCUSIN) // Guard against infinite focus loop + .on(Event$5.FOCUSIN, function (event) { + if (document !== event.target && _this4._element !== event.target && $(_this4._element).has(event.target).length === 0) { + _this4._element.focus(); + } + }); + }; + + _proto._setEscapeEvent = function _setEscapeEvent() { + var _this5 = this; + + if (this._isShown && this._config.keyboard) { + $(this._element).on(Event$5.KEYDOWN_DISMISS, function (event) { + if (event.which === ESCAPE_KEYCODE$1) { + event.preventDefault(); + + _this5.hide(); + } + }); + } else if (!this._isShown) { + $(this._element).off(Event$5.KEYDOWN_DISMISS); + } + }; + + _proto._setResizeEvent = function _setResizeEvent() { + var _this6 = this; + + if (this._isShown) { + $(window).on(Event$5.RESIZE, function (event) { + return _this6.handleUpdate(event); + }); + } else { + $(window).off(Event$5.RESIZE); + } + }; + + _proto._hideModal = function _hideModal() { + var _this7 = this; + + this._element.style.display = 'none'; + + this._element.setAttribute('aria-hidden', true); + + this._element.removeAttribute('aria-modal'); + + this._isTransitioning = false; + + this._showBackdrop(function () { + $(document.body).removeClass(ClassName$5.OPEN); + + _this7._resetAdjustments(); + + _this7._resetScrollbar(); + + $(_this7._element).trigger(Event$5.HIDDEN); + }); + }; + + _proto._removeBackdrop = function _removeBackdrop() { + if (this._backdrop) { + $(this._backdrop).remove(); + this._backdrop = null; + } + }; + + _proto._showBackdrop = function _showBackdrop(callback) { + var _this8 = this; + + var animate = $(this._element).hasClass(ClassName$5.FADE) ? ClassName$5.FADE : ''; + + if (this._isShown && this._config.backdrop) { + this._backdrop = document.createElement('div'); + this._backdrop.className = ClassName$5.BACKDROP; + + if (animate) { + this._backdrop.classList.add(animate); + } + + $(this._backdrop).appendTo(document.body); + $(this._element).on(Event$5.CLICK_DISMISS, function (event) { + if (_this8._ignoreBackdropClick) { + _this8._ignoreBackdropClick = false; + return; + } + + if (event.target !== event.currentTarget) { + return; + } + + if (_this8._config.backdrop === 'static') { + _this8._element.focus(); + } else { + _this8.hide(); + } + }); + + if (animate) { + Util.reflow(this._backdrop); + } + + $(this._backdrop).addClass(ClassName$5.SHOW); + + if (!callback) { + return; + } + + if (!animate) { + callback(); + return; + } + + var backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop); + $(this._backdrop).one(Util.TRANSITION_END, callback).emulateTransitionEnd(backdropTransitionDuration); + } else if (!this._isShown && this._backdrop) { + $(this._backdrop).removeClass(ClassName$5.SHOW); + + var callbackRemove = function callbackRemove() { + _this8._removeBackdrop(); + + if (callback) { + callback(); + } + }; + + if ($(this._element).hasClass(ClassName$5.FADE)) { + var _backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop); + + $(this._backdrop).one(Util.TRANSITION_END, callbackRemove).emulateTransitionEnd(_backdropTransitionDuration); + } else { + callbackRemove(); + } + } else if (callback) { + callback(); + } + } // ---------------------------------------------------------------------- + // the following methods are used to handle overflowing modals + // todo (fat): these should probably be refactored out of modal.js + // ---------------------------------------------------------------------- + ; + + _proto._adjustDialog = function _adjustDialog() { + var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight; + + if (!this._isBodyOverflowing && isModalOverflowing) { + this._element.style.paddingLeft = this._scrollbarWidth + "px"; + } + + if (this._isBodyOverflowing && !isModalOverflowing) { + this._element.style.paddingRight = this._scrollbarWidth + "px"; + } + }; + + _proto._resetAdjustments = function _resetAdjustments() { + this._element.style.paddingLeft = ''; + this._element.style.paddingRight = ''; + }; + + _proto._checkScrollbar = function _checkScrollbar() { + var rect = document.body.getBoundingClientRect(); + this._isBodyOverflowing = rect.left + rect.right < window.innerWidth; + this._scrollbarWidth = this._getScrollbarWidth(); + }; + + _proto._setScrollbar = function _setScrollbar() { + var _this9 = this; + + if (this._isBodyOverflowing) { + // Note: DOMNode.style.paddingRight returns the actual value or '' if not set + // while $(DOMNode).css('padding-right') returns the calculated value or 0 if not set + var fixedContent = [].slice.call(document.querySelectorAll(Selector$5.FIXED_CONTENT)); + var stickyContent = [].slice.call(document.querySelectorAll(Selector$5.STICKY_CONTENT)); // Adjust fixed content padding + + $(fixedContent).each(function (index, element) { + var actualPadding = element.style.paddingRight; + var calculatedPadding = $(element).css('padding-right'); + $(element).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + _this9._scrollbarWidth + "px"); + }); // Adjust sticky content margin + + $(stickyContent).each(function (index, element) { + var actualMargin = element.style.marginRight; + var calculatedMargin = $(element).css('margin-right'); + $(element).data('margin-right', actualMargin).css('margin-right', parseFloat(calculatedMargin) - _this9._scrollbarWidth + "px"); + }); // Adjust body padding + + var actualPadding = document.body.style.paddingRight; + var calculatedPadding = $(document.body).css('padding-right'); + $(document.body).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + this._scrollbarWidth + "px"); + } + + $(document.body).addClass(ClassName$5.OPEN); + }; + + _proto._resetScrollbar = function _resetScrollbar() { + // Restore fixed content padding + var fixedContent = [].slice.call(document.querySelectorAll(Selector$5.FIXED_CONTENT)); + $(fixedContent).each(function (index, element) { + var padding = $(element).data('padding-right'); + $(element).removeData('padding-right'); + element.style.paddingRight = padding ? padding : ''; + }); // Restore sticky content + + var elements = [].slice.call(document.querySelectorAll("" + Selector$5.STICKY_CONTENT)); + $(elements).each(function (index, element) { + var margin = $(element).data('margin-right'); + + if (typeof margin !== 'undefined') { + $(element).css('margin-right', margin).removeData('margin-right'); + } + }); // Restore body padding + + var padding = $(document.body).data('padding-right'); + $(document.body).removeData('padding-right'); + document.body.style.paddingRight = padding ? padding : ''; + }; + + _proto._getScrollbarWidth = function _getScrollbarWidth() { + // thx d.walsh + var scrollDiv = document.createElement('div'); + scrollDiv.className = ClassName$5.SCROLLBAR_MEASURER; + document.body.appendChild(scrollDiv); + var scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth; + document.body.removeChild(scrollDiv); + return scrollbarWidth; + } // Static + ; + + Modal._jQueryInterface = function _jQueryInterface(config, relatedTarget) { + return this.each(function () { + var data = $(this).data(DATA_KEY$5); + + var _config = _objectSpread({}, Default$3, $(this).data(), typeof config === 'object' && config ? config : {}); + + if (!data) { + data = new Modal(this, _config); + $(this).data(DATA_KEY$5, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](relatedTarget); + } else if (_config.show) { + data.show(relatedTarget); + } + }); + }; + + _createClass(Modal, null, [{ + key: "VERSION", + get: function get() { + return VERSION$5; + } + }, { + key: "Default", + get: function get() { + return Default$3; + } + }]); + + return Modal; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(Event$5.CLICK_DATA_API, Selector$5.DATA_TOGGLE, function (event) { + var _this10 = this; + + var target; + var selector = Util.getSelectorFromElement(this); + + if (selector) { + target = document.querySelector(selector); + } + + var config = $(target).data(DATA_KEY$5) ? 'toggle' : _objectSpread({}, $(target).data(), $(this).data()); + + if (this.tagName === 'A' || this.tagName === 'AREA') { + event.preventDefault(); + } + + var $target = $(target).one(Event$5.SHOW, function (showEvent) { + if (showEvent.isDefaultPrevented()) { + // Only register focus restorer if modal will actually get shown + return; + } + + $target.one(Event$5.HIDDEN, function () { + if ($(_this10).is(':visible')) { + _this10.focus(); + } + }); + }); + + Modal._jQueryInterface.call($(target), config, this); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$5] = Modal._jQueryInterface; + $.fn[NAME$5].Constructor = Modal; + + $.fn[NAME$5].noConflict = function () { + $.fn[NAME$5] = JQUERY_NO_CONFLICT$5; + return Modal._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$6 = 'tooltip'; + var VERSION$6 = '4.3.0'; + var DATA_KEY$6 = 'bs.tooltip'; + var EVENT_KEY$6 = "." + DATA_KEY$6; + var JQUERY_NO_CONFLICT$6 = $.fn[NAME$6]; + var CLASS_PREFIX = 'bs-tooltip'; + var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g'); + var DefaultType$4 = { + animation: 'boolean', + template: 'string', + title: '(string|element|function)', + trigger: 'string', + delay: '(number|object)', + html: 'boolean', + selector: '(string|boolean)', + placement: '(string|function)', + offset: '(number|string|function)', + container: '(string|element|boolean)', + fallbackPlacement: '(string|array)', + boundary: '(string|element)' + }; + var AttachmentMap$1 = { + AUTO: 'auto', + TOP: 'top', + RIGHT: 'right', + BOTTOM: 'bottom', + LEFT: 'left' + }; + var Default$4 = { + animation: true, + template: '<div class="tooltip" role="tooltip">' + '<div class="arrow"></div>' + '<div class="tooltip-inner"></div></div>', + trigger: 'hover focus', + title: '', + delay: 0, + html: false, + selector: false, + placement: 'top', + offset: 0, + container: false, + fallbackPlacement: 'flip', + boundary: 'scrollParent' + }; + var HoverState = { + SHOW: 'show', + OUT: 'out' + }; + var Event$6 = { + HIDE: "hide" + EVENT_KEY$6, + HIDDEN: "hidden" + EVENT_KEY$6, + SHOW: "show" + EVENT_KEY$6, + SHOWN: "shown" + EVENT_KEY$6, + INSERTED: "inserted" + EVENT_KEY$6, + CLICK: "click" + EVENT_KEY$6, + FOCUSIN: "focusin" + EVENT_KEY$6, + FOCUSOUT: "focusout" + EVENT_KEY$6, + MOUSEENTER: "mouseenter" + EVENT_KEY$6, + MOUSELEAVE: "mouseleave" + EVENT_KEY$6 + }; + var ClassName$6 = { + FADE: 'fade', + SHOW: 'show' + }; + var Selector$6 = { + TOOLTIP: '.tooltip', + TOOLTIP_INNER: '.tooltip-inner', + ARROW: '.arrow' + }; + var Trigger = { + HOVER: 'hover', + FOCUS: 'focus', + CLICK: 'click', + MANUAL: 'manual' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Tooltip = + /*#__PURE__*/ + function () { + function Tooltip(element, config) { + /** + * Check for Popper dependency + * Popper - https://popper.js.org + */ + if (typeof Popper === 'undefined') { + throw new TypeError('Bootstrap\'s tooltips require Popper.js (https://popper.js.org/)'); + } // private + + + this._isEnabled = true; + this._timeout = 0; + this._hoverState = ''; + this._activeTrigger = {}; + this._popper = null; // Protected + + this.element = element; + this.config = this._getConfig(config); + this.tip = null; + + this._setListeners(); + } // Getters + + + var _proto = Tooltip.prototype; + + // Public + _proto.enable = function enable() { + this._isEnabled = true; + }; + + _proto.disable = function disable() { + this._isEnabled = false; + }; + + _proto.toggleEnabled = function toggleEnabled() { + this._isEnabled = !this._isEnabled; + }; + + _proto.toggle = function toggle(event) { + if (!this._isEnabled) { + return; + } + + if (event) { + var dataKey = this.constructor.DATA_KEY; + var context = $(event.currentTarget).data(dataKey); + + if (!context) { + context = new this.constructor(event.currentTarget, this._getDelegateConfig()); + $(event.currentTarget).data(dataKey, context); + } + + context._activeTrigger.click = !context._activeTrigger.click; + + if (context._isWithActiveTrigger()) { + context._enter(null, context); + } else { + context._leave(null, context); + } + } else { + if ($(this.getTipElement()).hasClass(ClassName$6.SHOW)) { + this._leave(null, this); + + return; + } + + this._enter(null, this); + } + }; + + _proto.dispose = function dispose() { + clearTimeout(this._timeout); + $.removeData(this.element, this.constructor.DATA_KEY); + $(this.element).off(this.constructor.EVENT_KEY); + $(this.element).closest('.modal').off('hide.bs.modal'); + + if (this.tip) { + $(this.tip).remove(); + } + + this._isEnabled = null; + this._timeout = null; + this._hoverState = null; + this._activeTrigger = null; + + if (this._popper !== null) { + this._popper.destroy(); + } + + this._popper = null; + this.element = null; + this.config = null; + this.tip = null; + }; + + _proto.show = function show() { + var _this = this; + + if ($(this.element).css('display') === 'none') { + throw new Error('Please use show on visible elements'); + } + + var showEvent = $.Event(this.constructor.Event.SHOW); + + if (this.isWithContent() && this._isEnabled) { + $(this.element).trigger(showEvent); + var shadowRoot = Util.findShadowRoot(this.element); + var isInTheDom = $.contains(shadowRoot !== null ? shadowRoot : this.element.ownerDocument.documentElement, this.element); + + if (showEvent.isDefaultPrevented() || !isInTheDom) { + return; + } + + var tip = this.getTipElement(); + var tipId = Util.getUID(this.constructor.NAME); + tip.setAttribute('id', tipId); + this.element.setAttribute('aria-describedby', tipId); + this.setContent(); + + if (this.config.animation) { + $(tip).addClass(ClassName$6.FADE); + } + + var placement = typeof this.config.placement === 'function' ? this.config.placement.call(this, tip, this.element) : this.config.placement; + + var attachment = this._getAttachment(placement); + + this.addAttachmentClass(attachment); + + var container = this._getContainer(); + + $(tip).data(this.constructor.DATA_KEY, this); + + if (!$.contains(this.element.ownerDocument.documentElement, this.tip)) { + $(tip).appendTo(container); + } + + $(this.element).trigger(this.constructor.Event.INSERTED); + this._popper = new Popper(this.element, tip, { + placement: attachment, + modifiers: { + offset: this._getOffset(), + flip: { + behavior: this.config.fallbackPlacement + }, + arrow: { + element: Selector$6.ARROW + }, + preventOverflow: { + boundariesElement: this.config.boundary + } + }, + onCreate: function onCreate(data) { + if (data.originalPlacement !== data.placement) { + _this._handlePopperPlacementChange(data); + } + }, + onUpdate: function onUpdate(data) { + return _this._handlePopperPlacementChange(data); + } + }); + $(tip).addClass(ClassName$6.SHOW); // If this is a touch-enabled device we add extra + // empty mouseover listeners to the body's immediate children; + // only needed because of broken event delegation on iOS + // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html + + if ('ontouchstart' in document.documentElement) { + $(document.body).children().on('mouseover', null, $.noop); + } + + var complete = function complete() { + if (_this.config.animation) { + _this._fixTransition(); + } + + var prevHoverState = _this._hoverState; + _this._hoverState = null; + $(_this.element).trigger(_this.constructor.Event.SHOWN); + + if (prevHoverState === HoverState.OUT) { + _this._leave(null, _this); + } + }; + + if ($(this.tip).hasClass(ClassName$6.FADE)) { + var transitionDuration = Util.getTransitionDurationFromElement(this.tip); + $(this.tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + } else { + complete(); + } + } + }; + + _proto.hide = function hide(callback) { + var _this2 = this; + + var tip = this.getTipElement(); + var hideEvent = $.Event(this.constructor.Event.HIDE); + + var complete = function complete() { + if (_this2._hoverState !== HoverState.SHOW && tip.parentNode) { + tip.parentNode.removeChild(tip); + } + + _this2._cleanTipClass(); + + _this2.element.removeAttribute('aria-describedby'); + + $(_this2.element).trigger(_this2.constructor.Event.HIDDEN); + + if (_this2._popper !== null) { + _this2._popper.destroy(); + } + + if (callback) { + callback(); + } + }; + + $(this.element).trigger(hideEvent); + + if (hideEvent.isDefaultPrevented()) { + return; + } + + $(tip).removeClass(ClassName$6.SHOW); // If this is a touch-enabled device we remove the extra + // empty mouseover listeners we added for iOS support + + if ('ontouchstart' in document.documentElement) { + $(document.body).children().off('mouseover', null, $.noop); + } + + this._activeTrigger[Trigger.CLICK] = false; + this._activeTrigger[Trigger.FOCUS] = false; + this._activeTrigger[Trigger.HOVER] = false; + + if ($(this.tip).hasClass(ClassName$6.FADE)) { + var transitionDuration = Util.getTransitionDurationFromElement(tip); + $(tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + } else { + complete(); + } + + this._hoverState = ''; + }; + + _proto.update = function update() { + if (this._popper !== null) { + this._popper.scheduleUpdate(); + } + } // Protected + ; + + _proto.isWithContent = function isWithContent() { + return Boolean(this.getTitle()); + }; + + _proto.addAttachmentClass = function addAttachmentClass(attachment) { + $(this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment); + }; + + _proto.getTipElement = function getTipElement() { + this.tip = this.tip || $(this.config.template)[0]; + return this.tip; + }; + + _proto.setContent = function setContent() { + var tip = this.getTipElement(); + this.setElementContent($(tip.querySelectorAll(Selector$6.TOOLTIP_INNER)), this.getTitle()); + $(tip).removeClass(ClassName$6.FADE + " " + ClassName$6.SHOW); + }; + + _proto.setElementContent = function setElementContent($element, content) { + var html = this.config.html; + + if (typeof content === 'object' && (content.nodeType || content.jquery)) { + // Content is a DOM node or a jQuery + if (html) { + if (!$(content).parent().is($element)) { + $element.empty().append(content); + } + } else { + $element.text($(content).text()); + } + } else { + $element[html ? 'html' : 'text'](content); + } + }; + + _proto.getTitle = function getTitle() { + var title = this.element.getAttribute('data-original-title'); + + if (!title) { + title = typeof this.config.title === 'function' ? this.config.title.call(this.element) : this.config.title; + } + + return title; + } // Private + ; + + _proto._getOffset = function _getOffset() { + var _this3 = this; + + var offset = {}; + + if (typeof this.config.offset === 'function') { + offset.fn = function (data) { + data.offsets = _objectSpread({}, data.offsets, _this3.config.offset(data.offsets, _this3.element) || {}); + return data; + }; + } else { + offset.offset = this.config.offset; + } + + return offset; + }; + + _proto._getContainer = function _getContainer() { + if (this.config.container === false) { + return document.body; + } + + if (Util.isElement(this.config.container)) { + return $(this.config.container); + } + + return $(document).find(this.config.container); + }; + + _proto._getAttachment = function _getAttachment(placement) { + return AttachmentMap$1[placement.toUpperCase()]; + }; + + _proto._setListeners = function _setListeners() { + var _this4 = this; + + var triggers = this.config.trigger.split(' '); + triggers.forEach(function (trigger) { + if (trigger === 'click') { + $(_this4.element).on(_this4.constructor.Event.CLICK, _this4.config.selector, function (event) { + return _this4.toggle(event); + }); + } else if (trigger !== Trigger.MANUAL) { + var eventIn = trigger === Trigger.HOVER ? _this4.constructor.Event.MOUSEENTER : _this4.constructor.Event.FOCUSIN; + var eventOut = trigger === Trigger.HOVER ? _this4.constructor.Event.MOUSELEAVE : _this4.constructor.Event.FOCUSOUT; + $(_this4.element).on(eventIn, _this4.config.selector, function (event) { + return _this4._enter(event); + }).on(eventOut, _this4.config.selector, function (event) { + return _this4._leave(event); + }); + } + }); + $(this.element).closest('.modal').on('hide.bs.modal', function () { + if (_this4.element) { + _this4.hide(); + } + }); + + if (this.config.selector) { + this.config = _objectSpread({}, this.config, { + trigger: 'manual', + selector: '' + }); + } else { + this._fixTitle(); + } + }; + + _proto._fixTitle = function _fixTitle() { + var titleType = typeof this.element.getAttribute('data-original-title'); + + if (this.element.getAttribute('title') || titleType !== 'string') { + this.element.setAttribute('data-original-title', this.element.getAttribute('title') || ''); + this.element.setAttribute('title', ''); + } + }; + + _proto._enter = function _enter(event, context) { + var dataKey = this.constructor.DATA_KEY; + context = context || $(event.currentTarget).data(dataKey); + + if (!context) { + context = new this.constructor(event.currentTarget, this._getDelegateConfig()); + $(event.currentTarget).data(dataKey, context); + } + + if (event) { + context._activeTrigger[event.type === 'focusin' ? Trigger.FOCUS : Trigger.HOVER] = true; + } + + if ($(context.getTipElement()).hasClass(ClassName$6.SHOW) || context._hoverState === HoverState.SHOW) { + context._hoverState = HoverState.SHOW; + return; + } + + clearTimeout(context._timeout); + context._hoverState = HoverState.SHOW; + + if (!context.config.delay || !context.config.delay.show) { + context.show(); + return; + } + + context._timeout = setTimeout(function () { + if (context._hoverState === HoverState.SHOW) { + context.show(); + } + }, context.config.delay.show); + }; + + _proto._leave = function _leave(event, context) { + var dataKey = this.constructor.DATA_KEY; + context = context || $(event.currentTarget).data(dataKey); + + if (!context) { + context = new this.constructor(event.currentTarget, this._getDelegateConfig()); + $(event.currentTarget).data(dataKey, context); + } + + if (event) { + context._activeTrigger[event.type === 'focusout' ? Trigger.FOCUS : Trigger.HOVER] = false; + } + + if (context._isWithActiveTrigger()) { + return; + } + + clearTimeout(context._timeout); + context._hoverState = HoverState.OUT; + + if (!context.config.delay || !context.config.delay.hide) { + context.hide(); + return; + } + + context._timeout = setTimeout(function () { + if (context._hoverState === HoverState.OUT) { + context.hide(); + } + }, context.config.delay.hide); + }; + + _proto._isWithActiveTrigger = function _isWithActiveTrigger() { + for (var trigger in this._activeTrigger) { + if (this._activeTrigger[trigger]) { + return true; + } + } + + return false; + }; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, this.constructor.Default, $(this.element).data(), typeof config === 'object' && config ? config : {}); + + if (typeof config.delay === 'number') { + config.delay = { + show: config.delay, + hide: config.delay + }; + } + + if (typeof config.title === 'number') { + config.title = config.title.toString(); + } + + if (typeof config.content === 'number') { + config.content = config.content.toString(); + } + + Util.typeCheckConfig(NAME$6, config, this.constructor.DefaultType); + return config; + }; + + _proto._getDelegateConfig = function _getDelegateConfig() { + var config = {}; + + if (this.config) { + for (var key in this.config) { + if (this.constructor.Default[key] !== this.config[key]) { + config[key] = this.config[key]; + } + } + } + + return config; + }; + + _proto._cleanTipClass = function _cleanTipClass() { + var $tip = $(this.getTipElement()); + var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX); + + if (tabClass !== null && tabClass.length) { + $tip.removeClass(tabClass.join('')); + } + }; + + _proto._handlePopperPlacementChange = function _handlePopperPlacementChange(popperData) { + var popperInstance = popperData.instance; + this.tip = popperInstance.popper; + + this._cleanTipClass(); + + this.addAttachmentClass(this._getAttachment(popperData.placement)); + }; + + _proto._fixTransition = function _fixTransition() { + var tip = this.getTipElement(); + var initConfigAnimation = this.config.animation; + + if (tip.getAttribute('x-placement') !== null) { + return; + } + + $(tip).removeClass(ClassName$6.FADE); + this.config.animation = false; + this.hide(); + this.show(); + this.config.animation = initConfigAnimation; + } // Static + ; + + Tooltip._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$6); + + var _config = typeof config === 'object' && config; + + if (!data && /dispose|hide/.test(config)) { + return; + } + + if (!data) { + data = new Tooltip(this, _config); + $(this).data(DATA_KEY$6, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + _createClass(Tooltip, null, [{ + key: "VERSION", + get: function get() { + return VERSION$6; + } + }, { + key: "Default", + get: function get() { + return Default$4; + } + }, { + key: "NAME", + get: function get() { + return NAME$6; + } + }, { + key: "DATA_KEY", + get: function get() { + return DATA_KEY$6; + } + }, { + key: "Event", + get: function get() { + return Event$6; + } + }, { + key: "EVENT_KEY", + get: function get() { + return EVENT_KEY$6; + } + }, { + key: "DefaultType", + get: function get() { + return DefaultType$4; + } + }]); + + return Tooltip; + }(); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + + $.fn[NAME$6] = Tooltip._jQueryInterface; + $.fn[NAME$6].Constructor = Tooltip; + + $.fn[NAME$6].noConflict = function () { + $.fn[NAME$6] = JQUERY_NO_CONFLICT$6; + return Tooltip._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$7 = 'popover'; + var VERSION$7 = '4.3.0'; + var DATA_KEY$7 = 'bs.popover'; + var EVENT_KEY$7 = "." + DATA_KEY$7; + var JQUERY_NO_CONFLICT$7 = $.fn[NAME$7]; + var CLASS_PREFIX$1 = 'bs-popover'; + var BSCLS_PREFIX_REGEX$1 = new RegExp("(^|\\s)" + CLASS_PREFIX$1 + "\\S+", 'g'); + + var Default$5 = _objectSpread({}, Tooltip.Default, { + placement: 'right', + trigger: 'click', + content: '', + template: '<div class="popover" role="tooltip">' + '<div class="arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div></div>' + }); + + var DefaultType$5 = _objectSpread({}, Tooltip.DefaultType, { + content: '(string|element|function)' + }); + + var ClassName$7 = { + FADE: 'fade', + SHOW: 'show' + }; + var Selector$7 = { + TITLE: '.popover-header', + CONTENT: '.popover-body' + }; + var Event$7 = { + HIDE: "hide" + EVENT_KEY$7, + HIDDEN: "hidden" + EVENT_KEY$7, + SHOW: "show" + EVENT_KEY$7, + SHOWN: "shown" + EVENT_KEY$7, + INSERTED: "inserted" + EVENT_KEY$7, + CLICK: "click" + EVENT_KEY$7, + FOCUSIN: "focusin" + EVENT_KEY$7, + FOCUSOUT: "focusout" + EVENT_KEY$7, + MOUSEENTER: "mouseenter" + EVENT_KEY$7, + MOUSELEAVE: "mouseleave" + EVENT_KEY$7 + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Popover = + /*#__PURE__*/ + function (_Tooltip) { + _inheritsLoose(Popover, _Tooltip); + + function Popover() { + return _Tooltip.apply(this, arguments) || this; + } + + var _proto = Popover.prototype; + + // Overrides + _proto.isWithContent = function isWithContent() { + return this.getTitle() || this._getContent(); + }; + + _proto.addAttachmentClass = function addAttachmentClass(attachment) { + $(this.getTipElement()).addClass(CLASS_PREFIX$1 + "-" + attachment); + }; + + _proto.getTipElement = function getTipElement() { + this.tip = this.tip || $(this.config.template)[0]; + return this.tip; + }; + + _proto.setContent = function setContent() { + var $tip = $(this.getTipElement()); // We use append for html objects to maintain js events + + this.setElementContent($tip.find(Selector$7.TITLE), this.getTitle()); + + var content = this._getContent(); + + if (typeof content === 'function') { + content = content.call(this.element); + } + + this.setElementContent($tip.find(Selector$7.CONTENT), content); + $tip.removeClass(ClassName$7.FADE + " " + ClassName$7.SHOW); + } // Private + ; + + _proto._getContent = function _getContent() { + return this.element.getAttribute('data-content') || this.config.content; + }; + + _proto._cleanTipClass = function _cleanTipClass() { + var $tip = $(this.getTipElement()); + var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX$1); + + if (tabClass !== null && tabClass.length > 0) { + $tip.removeClass(tabClass.join('')); + } + } // Static + ; + + Popover._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$7); + + var _config = typeof config === 'object' ? config : null; + + if (!data && /dispose|hide/.test(config)) { + return; + } + + if (!data) { + data = new Popover(this, _config); + $(this).data(DATA_KEY$7, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + _createClass(Popover, null, [{ + key: "VERSION", + // Getters + get: function get() { + return VERSION$7; + } + }, { + key: "Default", + get: function get() { + return Default$5; + } + }, { + key: "NAME", + get: function get() { + return NAME$7; + } + }, { + key: "DATA_KEY", + get: function get() { + return DATA_KEY$7; + } + }, { + key: "Event", + get: function get() { + return Event$7; + } + }, { + key: "EVENT_KEY", + get: function get() { + return EVENT_KEY$7; + } + }, { + key: "DefaultType", + get: function get() { + return DefaultType$5; + } + }]); + + return Popover; + }(Tooltip); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + + $.fn[NAME$7] = Popover._jQueryInterface; + $.fn[NAME$7].Constructor = Popover; + + $.fn[NAME$7].noConflict = function () { + $.fn[NAME$7] = JQUERY_NO_CONFLICT$7; + return Popover._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$8 = 'scrollspy'; + var VERSION$8 = '4.3.0'; + var DATA_KEY$8 = 'bs.scrollspy'; + var EVENT_KEY$8 = "." + DATA_KEY$8; + var DATA_API_KEY$6 = '.data-api'; + var JQUERY_NO_CONFLICT$8 = $.fn[NAME$8]; + var Default$6 = { + offset: 10, + method: 'auto', + target: '' + }; + var DefaultType$6 = { + offset: 'number', + method: 'string', + target: '(string|element)' + }; + var Event$8 = { + ACTIVATE: "activate" + EVENT_KEY$8, + SCROLL: "scroll" + EVENT_KEY$8, + LOAD_DATA_API: "load" + EVENT_KEY$8 + DATA_API_KEY$6 + }; + var ClassName$8 = { + DROPDOWN_ITEM: 'dropdown-item', + DROPDOWN_MENU: 'dropdown-menu', + ACTIVE: 'active' + }; + var Selector$8 = { + DATA_SPY: '[data-spy="scroll"]', + ACTIVE: '.active', + NAV_LIST_GROUP: '.nav, .list-group', + NAV_LINKS: '.nav-link', + NAV_ITEMS: '.nav-item', + LIST_ITEMS: '.list-group-item', + DROPDOWN: '.dropdown', + DROPDOWN_ITEMS: '.dropdown-item', + DROPDOWN_TOGGLE: '.dropdown-toggle' + }; + var OffsetMethod = { + OFFSET: 'offset', + POSITION: 'position' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var ScrollSpy = + /*#__PURE__*/ + function () { + function ScrollSpy(element, config) { + var _this = this; + + this._element = element; + this._scrollElement = element.tagName === 'BODY' ? window : element; + this._config = this._getConfig(config); + this._selector = this._config.target + " " + Selector$8.NAV_LINKS + "," + (this._config.target + " " + Selector$8.LIST_ITEMS + ",") + (this._config.target + " " + Selector$8.DROPDOWN_ITEMS); + this._offsets = []; + this._targets = []; + this._activeTarget = null; + this._scrollHeight = 0; + $(this._scrollElement).on(Event$8.SCROLL, function (event) { + return _this._process(event); + }); + this.refresh(); + + this._process(); + } // Getters + + + var _proto = ScrollSpy.prototype; + + // Public + _proto.refresh = function refresh() { + var _this2 = this; + + var autoMethod = this._scrollElement === this._scrollElement.window ? OffsetMethod.OFFSET : OffsetMethod.POSITION; + var offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method; + var offsetBase = offsetMethod === OffsetMethod.POSITION ? this._getScrollTop() : 0; + this._offsets = []; + this._targets = []; + this._scrollHeight = this._getScrollHeight(); + var targets = [].slice.call(document.querySelectorAll(this._selector)); + targets.map(function (element) { + var target; + var targetSelector = Util.getSelectorFromElement(element); + + if (targetSelector) { + target = document.querySelector(targetSelector); + } + + if (target) { + var targetBCR = target.getBoundingClientRect(); + + if (targetBCR.width || targetBCR.height) { + // TODO (fat): remove sketch reliance on jQuery position/offset + return [$(target)[offsetMethod]().top + offsetBase, targetSelector]; + } + } + + return null; + }).filter(function (item) { + return item; + }).sort(function (a, b) { + return a[0] - b[0]; + }).forEach(function (item) { + _this2._offsets.push(item[0]); + + _this2._targets.push(item[1]); + }); + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY$8); + $(this._scrollElement).off(EVENT_KEY$8); + this._element = null; + this._scrollElement = null; + this._config = null; + this._selector = null; + this._offsets = null; + this._targets = null; + this._activeTarget = null; + this._scrollHeight = null; + } // Private + ; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, Default$6, typeof config === 'object' && config ? config : {}); + + if (typeof config.target !== 'string') { + var id = $(config.target).attr('id'); + + if (!id) { + id = Util.getUID(NAME$8); + $(config.target).attr('id', id); + } + + config.target = "#" + id; + } + + Util.typeCheckConfig(NAME$8, config, DefaultType$6); + return config; + }; + + _proto._getScrollTop = function _getScrollTop() { + return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop; + }; + + _proto._getScrollHeight = function _getScrollHeight() { + return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight); + }; + + _proto._getOffsetHeight = function _getOffsetHeight() { + return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height; + }; + + _proto._process = function _process() { + var scrollTop = this._getScrollTop() + this._config.offset; + + var scrollHeight = this._getScrollHeight(); + + var maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight(); + + if (this._scrollHeight !== scrollHeight) { + this.refresh(); + } + + if (scrollTop >= maxScroll) { + var target = this._targets[this._targets.length - 1]; + + if (this._activeTarget !== target) { + this._activate(target); + } + + return; + } + + if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) { + this._activeTarget = null; + + this._clear(); + + return; + } + + var offsetLength = this._offsets.length; + + for (var i = offsetLength; i--;) { + var isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]); + + if (isActiveTarget) { + this._activate(this._targets[i]); + } + } + }; + + _proto._activate = function _activate(target) { + this._activeTarget = target; + + this._clear(); + + var queries = this._selector.split(',').map(function (selector) { + return selector + "[data-target=\"" + target + "\"]," + selector + "[href=\"" + target + "\"]"; + }); + + var $link = $([].slice.call(document.querySelectorAll(queries.join(',')))); + + if ($link.hasClass(ClassName$8.DROPDOWN_ITEM)) { + $link.closest(Selector$8.DROPDOWN).find(Selector$8.DROPDOWN_TOGGLE).addClass(ClassName$8.ACTIVE); + $link.addClass(ClassName$8.ACTIVE); + } else { + // Set triggered link as active + $link.addClass(ClassName$8.ACTIVE); // Set triggered links parents as active + // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor + + $link.parents(Selector$8.NAV_LIST_GROUP).prev(Selector$8.NAV_LINKS + ", " + Selector$8.LIST_ITEMS).addClass(ClassName$8.ACTIVE); // Handle special case when .nav-link is inside .nav-item + + $link.parents(Selector$8.NAV_LIST_GROUP).prev(Selector$8.NAV_ITEMS).children(Selector$8.NAV_LINKS).addClass(ClassName$8.ACTIVE); + } + + $(this._scrollElement).trigger(Event$8.ACTIVATE, { + relatedTarget: target + }); + }; + + _proto._clear = function _clear() { + [].slice.call(document.querySelectorAll(this._selector)).filter(function (node) { + return node.classList.contains(ClassName$8.ACTIVE); + }).forEach(function (node) { + return node.classList.remove(ClassName$8.ACTIVE); + }); + } // Static + ; + + ScrollSpy._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$8); + + var _config = typeof config === 'object' && config; + + if (!data) { + data = new ScrollSpy(this, _config); + $(this).data(DATA_KEY$8, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + _createClass(ScrollSpy, null, [{ + key: "VERSION", + get: function get() { + return VERSION$8; + } + }, { + key: "Default", + get: function get() { + return Default$6; + } + }]); + + return ScrollSpy; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(window).on(Event$8.LOAD_DATA_API, function () { + var scrollSpys = [].slice.call(document.querySelectorAll(Selector$8.DATA_SPY)); + var scrollSpysLength = scrollSpys.length; + + for (var i = scrollSpysLength; i--;) { + var $spy = $(scrollSpys[i]); + + ScrollSpy._jQueryInterface.call($spy, $spy.data()); + } + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$8] = ScrollSpy._jQueryInterface; + $.fn[NAME$8].Constructor = ScrollSpy; + + $.fn[NAME$8].noConflict = function () { + $.fn[NAME$8] = JQUERY_NO_CONFLICT$8; + return ScrollSpy._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$9 = 'tab'; + var VERSION$9 = '4.3.0'; + var DATA_KEY$9 = 'bs.tab'; + var EVENT_KEY$9 = "." + DATA_KEY$9; + var DATA_API_KEY$7 = '.data-api'; + var JQUERY_NO_CONFLICT$9 = $.fn[NAME$9]; + var Event$9 = { + HIDE: "hide" + EVENT_KEY$9, + HIDDEN: "hidden" + EVENT_KEY$9, + SHOW: "show" + EVENT_KEY$9, + SHOWN: "shown" + EVENT_KEY$9, + CLICK_DATA_API: "click" + EVENT_KEY$9 + DATA_API_KEY$7 + }; + var ClassName$9 = { + DROPDOWN_MENU: 'dropdown-menu', + ACTIVE: 'active', + DISABLED: 'disabled', + FADE: 'fade', + SHOW: 'show' + }; + var Selector$9 = { + DROPDOWN: '.dropdown', + NAV_LIST_GROUP: '.nav, .list-group', + ACTIVE: '.active', + ACTIVE_UL: '> li > .active', + DATA_TOGGLE: '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]', + DROPDOWN_TOGGLE: '.dropdown-toggle', + DROPDOWN_ACTIVE_CHILD: '> .dropdown-menu .active' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Tab = + /*#__PURE__*/ + function () { + function Tab(element) { + this._element = element; + } // Getters + + + var _proto = Tab.prototype; + + // Public + _proto.show = function show() { + var _this = this; + + if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && $(this._element).hasClass(ClassName$9.ACTIVE) || $(this._element).hasClass(ClassName$9.DISABLED)) { + return; + } + + var target; + var previous; + var listElement = $(this._element).closest(Selector$9.NAV_LIST_GROUP)[0]; + var selector = Util.getSelectorFromElement(this._element); + + if (listElement) { + var itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? Selector$9.ACTIVE_UL : Selector$9.ACTIVE; + previous = $.makeArray($(listElement).find(itemSelector)); + previous = previous[previous.length - 1]; + } + + var hideEvent = $.Event(Event$9.HIDE, { + relatedTarget: this._element + }); + var showEvent = $.Event(Event$9.SHOW, { + relatedTarget: previous + }); + + if (previous) { + $(previous).trigger(hideEvent); + } + + $(this._element).trigger(showEvent); + + if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) { + return; + } + + if (selector) { + target = document.querySelector(selector); + } + + this._activate(this._element, listElement); + + var complete = function complete() { + var hiddenEvent = $.Event(Event$9.HIDDEN, { + relatedTarget: _this._element + }); + var shownEvent = $.Event(Event$9.SHOWN, { + relatedTarget: previous + }); + $(previous).trigger(hiddenEvent); + $(_this._element).trigger(shownEvent); + }; + + if (target) { + this._activate(target, target.parentNode, complete); + } else { + complete(); + } + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY$9); + this._element = null; + } // Private + ; + + _proto._activate = function _activate(element, container, callback) { + var _this2 = this; + + var activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? $(container).find(Selector$9.ACTIVE_UL) : $(container).children(Selector$9.ACTIVE); + var active = activeElements[0]; + var isTransitioning = callback && active && $(active).hasClass(ClassName$9.FADE); + + var complete = function complete() { + return _this2._transitionComplete(element, active, callback); + }; + + if (active && isTransitioning) { + var transitionDuration = Util.getTransitionDurationFromElement(active); + $(active).removeClass(ClassName$9.SHOW).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + } else { + complete(); + } + }; + + _proto._transitionComplete = function _transitionComplete(element, active, callback) { + if (active) { + $(active).removeClass(ClassName$9.ACTIVE); + var dropdownChild = $(active.parentNode).find(Selector$9.DROPDOWN_ACTIVE_CHILD)[0]; + + if (dropdownChild) { + $(dropdownChild).removeClass(ClassName$9.ACTIVE); + } + + if (active.getAttribute('role') === 'tab') { + active.setAttribute('aria-selected', false); + } + } + + $(element).addClass(ClassName$9.ACTIVE); + + if (element.getAttribute('role') === 'tab') { + element.setAttribute('aria-selected', true); + } + + Util.reflow(element); + + if (element.classList.contains(ClassName$9.FADE)) { + element.classList.add(ClassName$9.SHOW); + } + + if (element.parentNode && $(element.parentNode).hasClass(ClassName$9.DROPDOWN_MENU)) { + var dropdownElement = $(element).closest(Selector$9.DROPDOWN)[0]; + + if (dropdownElement) { + var dropdownToggleList = [].slice.call(dropdownElement.querySelectorAll(Selector$9.DROPDOWN_TOGGLE)); + $(dropdownToggleList).addClass(ClassName$9.ACTIVE); + } + + element.setAttribute('aria-expanded', true); + } + + if (callback) { + callback(); + } + } // Static + ; + + Tab._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var $this = $(this); + var data = $this.data(DATA_KEY$9); + + if (!data) { + data = new Tab(this); + $this.data(DATA_KEY$9, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + _createClass(Tab, null, [{ + key: "VERSION", + get: function get() { + return VERSION$9; + } + }]); + + return Tab; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(Event$9.CLICK_DATA_API, Selector$9.DATA_TOGGLE, function (event) { + event.preventDefault(); + + Tab._jQueryInterface.call($(this), 'show'); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$9] = Tab._jQueryInterface; + $.fn[NAME$9].Constructor = Tab; + + $.fn[NAME$9].noConflict = function () { + $.fn[NAME$9] = JQUERY_NO_CONFLICT$9; + return Tab._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$a = 'toast'; + var VERSION$a = '4.3.0'; + var DATA_KEY$a = 'bs.toast'; + var EVENT_KEY$a = "." + DATA_KEY$a; + var JQUERY_NO_CONFLICT$a = $.fn[NAME$a]; + var Event$a = { + CLICK_DISMISS: "click.dismiss" + EVENT_KEY$a, + HIDE: "hide" + EVENT_KEY$a, + HIDDEN: "hidden" + EVENT_KEY$a, + SHOW: "show" + EVENT_KEY$a, + SHOWN: "shown" + EVENT_KEY$a + }; + var ClassName$a = { + FADE: 'fade', + HIDE: 'hide', + SHOW: 'show', + SHOWING: 'showing' + }; + var DefaultType$7 = { + animation: 'boolean', + autohide: 'boolean', + delay: 'number' + }; + var Default$7 = { + animation: true, + autohide: true, + delay: 500 + }; + var Selector$a = { + DATA_DISMISS: '[data-dismiss="toast"]' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Toast = + /*#__PURE__*/ + function () { + function Toast(element, config) { + this._element = element; + this._config = this._getConfig(config); + this._timeout = null; + + this._setListeners(); + } // Getters + + + var _proto = Toast.prototype; + + // Public + _proto.show = function show() { + var _this = this; + + $(this._element).trigger(Event$a.SHOW); + + if (this._config.animation) { + this._element.classList.add(ClassName$a.FADE); + } + + var complete = function complete() { + _this._element.classList.remove(ClassName$a.SHOWING); + + _this._element.classList.add(ClassName$a.SHOW); + + $(_this._element).trigger(Event$a.SHOWN); + + if (_this._config.autohide) { + _this.hide(); + } + }; + + this._element.classList.remove(ClassName$a.HIDE); + + this._element.classList.add(ClassName$a.SHOWING); + + if (this._config.animation) { + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + } else { + complete(); + } + }; + + _proto.hide = function hide(withoutTimeout) { + var _this2 = this; + + if (!this._element.classList.contains(ClassName$a.SHOW)) { + return; + } + + $(this._element).trigger(Event$a.HIDE); + + if (withoutTimeout) { + this._close(); + } else { + this._timeout = setTimeout(function () { + _this2._close(); + }, this._config.delay); + } + }; + + _proto.dispose = function dispose() { + clearTimeout(this._timeout); + this._timeout = null; + + if (this._element.classList.contains(ClassName$a.SHOW)) { + this._element.classList.remove(ClassName$a.SHOW); + } + + $(this._element).off(Event$a.CLICK_DISMISS); + $.removeData(this._element, DATA_KEY$a); + this._element = null; + this._config = null; + } // Private + ; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, Default$7, $(this._element).data(), typeof config === 'object' && config ? config : {}); + Util.typeCheckConfig(NAME$a, config, this.constructor.DefaultType); + return config; + }; + + _proto._setListeners = function _setListeners() { + var _this3 = this; + + $(this._element).on(Event$a.CLICK_DISMISS, Selector$a.DATA_DISMISS, function () { + return _this3.hide(true); + }); + }; + + _proto._close = function _close() { + var _this4 = this; + + var complete = function complete() { + _this4._element.classList.add(ClassName$a.HIDE); + + $(_this4._element).trigger(Event$a.HIDDEN); + }; + + this._element.classList.remove(ClassName$a.SHOW); + + if (this._config.animation) { + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + } else { + complete(); + } + } // Static + ; + + Toast._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var $element = $(this); + var data = $element.data(DATA_KEY$a); + + var _config = typeof config === 'object' && config; + + if (!data) { + data = new Toast(this, _config); + $element.data(DATA_KEY$a, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](this); + } + }); + }; + + _createClass(Toast, null, [{ + key: "VERSION", + get: function get() { + return VERSION$a; + } + }, { + key: "DefaultType", + get: function get() { + return DefaultType$7; + } + }, { + key: "Default", + get: function get() { + return Default$7; + } + }]); + + return Toast; + }(); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + + $.fn[NAME$a] = Toast._jQueryInterface; + $.fn[NAME$a].Constructor = Toast; + + $.fn[NAME$a].noConflict = function () { + $.fn[NAME$a] = JQUERY_NO_CONFLICT$a; + return Toast._jQueryInterface; + }; + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v4.3.0): index.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ + + (function () { + if (typeof $ === 'undefined') { + throw new TypeError('Bootstrap\'s JavaScript requires jQuery. jQuery must be included before Bootstrap\'s JavaScript.'); + } + + var version = $.fn.jquery.split(' ')[0].split('.'); + var minMajor = 1; + var ltMajor = 2; + var minMinor = 9; + var minPatch = 1; + var maxMajor = 4; + + if (version[0] < ltMajor && version[1] < minMinor || version[0] === minMajor && version[1] === minMinor && version[2] < minPatch || version[0] >= maxMajor) { + throw new Error('Bootstrap\'s JavaScript requires at least jQuery v1.9.1 but less than v4.0.0'); + } + })(); + + exports.Util = Util; + exports.Alert = Alert; + exports.Button = Button; + exports.Carousel = Carousel; + exports.Collapse = Collapse; + exports.Dropdown = Dropdown; + exports.Modal = Modal; + exports.Popover = Popover; + exports.Scrollspy = ScrollSpy; + exports.Tab = Tab; + exports.Toast = Toast; + exports.Tooltip = Tooltip; + + Object.defineProperty(exports, '__esModule', { value: true }); + +})); +//# sourceMappingURL=bootstrap.bundle.js.map diff --git a/docs/4.3/dist/js/bootstrap.bundle.js.map b/docs/4.3/dist/js/bootstrap.bundle.js.map new file mode 100644 index 0000000000000000000000000000000000000000..89595f49179f02135c224a1eee77e51d332ee0bd GIT binary patch literal 392623 zcmeFajek=|k}mwO9J1_MCbkTj*>`_0J50tH6MP4-*EY$_Yq(gpj<FJ1@|9!^L)gFl zeV+R2?xQ1NG9j~j@6FC8);ZnP)z#JY)zx)AeD$`TOb6r9SNDIn_SM;7Sbuf@tCR6~ zHl0m+m)(=AQGZx>f1G}`_SJNJH94)PU)?|Ys@vVb|9+fqOed!sSF^!TTNICb!+J7n zd46&=n~g^;FHU=t@zu0$gLOI{4ttkVLqvxejr;ZMi*f&ISWh=D$CsD&1VA_XgXwIe zo?fI!K)pb$KN(;4$JcEr09>za{MmRsoDD8pkjB7cP_X6A^mGEOr<d<r-pzU^ZBNI& zX&c1`qkjF4?O(+rY>h{=dNku&Y}~o?a#Y=^)_=8s1l&XCfvWTN_ub!h@2=jjY^CM> z)4^#yn%4aa98yoJXFG>g=X^H1oZjEqcr%!tU!8PM#}^y3>yzn5@YBZ0aD1|Hfoay0 zji)<X+s_ZSSHA%E8!tyMM}v#Y@nlxruFfXoi)!V^|8-SQ-mmb@uT3(U!QN!>wl}M* z!%1&69n7$$wnzQyNj(H(PJh)o5}3^JbUd2Qs>A)w=Lb87JG;+cZ$E!jJ*ZZ&bq$4j z)W?jq-LuWVyneC62KVmDKk;Jc>C>Hq?XBJCj}Bfxd-3#eXYc9G_P#X~f^Ad>=i{px z{#R{|-ds($$lKY1kH_6N!;Q;#*Z=X|B^LDTYII5pRI~Bn`^&mBKKXIA`T)GENj<xo zjH(YGyR-4ZY%&<V>7Mq6Lut{y=*>>gI~y-wPCG}v^}oIPdUa#4dUWp<+CCj$*ORT@ zwC(`>N8%J?ys2jgm-XqOH!MiM{T3Uf(-@X0RMiP~6!E&>pxv6j?$^Wm4VH3Alk*<s zVyEU9HUt3=&Z^FBecGM%Cctd9JD7H6=Y#2L)-1>%{ksZm_vA<WYtrpqUJl<&x3vmj zt}ZalbhX;psOsr(Fq*AH%Joi$^*Vmk)#ao<t0(J|dOBOb>`i(XWH<Q-gwj8Z?A)to z=+a*VYBXMtHriJ};9n)p6NiDxw=b@Sz1euu>0eEHTy~r4u%1<1TnzW1I_nLmHP@}G zZYx2$<5AstLFG|$@LGjcd+<l)mnuP+O|Af-sy>1P_}^(gI~-ip;K@$Wfs1fU$IWOi z1A*b*ys0MzpC~f<WY?;gh>m2`<1#i0K_p_gffff>my|lrcelG|qi!wqsf%`?NGlD6 zK3(ODsdDvE3yof(|8l-JM1O5jx4sSx?^JtNC&R&MMa-(r%Yi)m)%1@HkqI~%<pKGD z)G3+eezkHkEhxK!UCeeM52Rg(n`7`U7@<FQzN%XGz^HyV(>;Zaa59)(56H8+g%nWr z^@Hj^|FiR~H#_fQ-TUJUEcKnrWUFk^mtXzof4=;x>YdJ})o}1rUG>2H)OeNjIvb9$ zRaUF>dSb9YR@dh+ysA!rd@5VL3*5JdHFy2P_d9)`1Nfe(7&j_DeDpER_yD5o6kG8z zRGvZT;1MAO3Aim`W=T7+k-g@an=@<>*k^TTrQe(N)>VY9*nU&-b}PF6{Bs880o2Yv zt;87EwxXNPL4879I1U?d0Htxjeo#fvfBBd6_bnZ!`ZgYQfiaf=d;mp9C?cr%$87RG zt+f#?C@jW+Q>)|St^%_E4UnU&;n09W3_&+loq96KCTUQ!c8&E&ocYLP<Fb_z$<<u0 zSn#`z`9T|ehowwnWZlJ9H9o6m=d~}b_T#drwvG-K1`5kKq<cD@b~5WB0Qw3wVAR9j z`%eI1lf*#E6xad1OloGRKzmK=$9&zHN7cBb9fqOO4uCI%i9xn~HA3!EU)$WP@g$>8 zD1d4(tw!TnbvA}tR65EcEt&$D^;Ywpj6TPSEvvb6RzXw1&wwoOrJO?l<CkjfwQAOb zJmJ!w4JOl>A~a7atjYYt?(}jvm~~dxR#uPhzMAW51kC#JNwbr7Gq&%vQ#*`+udDV3 zLJ*Of?S>}@ahV43FdSb8hdLPz1D9Rnvok2-C-vaXxe&#Bx9WT6c88VmzqRj_Iz|}J zL4th_cOUKE2NPYu^Q#7<>g~T0<Ed)?QW?1&5Stio)v)f3mW?o&ZtH%`%;xCNXIQ=p z!k0#MmtHXK)SPBB{N6gRPk-7PkIn{fI`G3TVQY<M&wCg38YMHH`hVFOrllC?75IEo zp*`J-OSsAK;NNqG+NEr&>Ht<N6iFA2XJd{F6Lz|LJ=(L*YTRet*8*;75bK!rJD5DP zT8#54xH#*0<oFotQo?Jex4q$2&7bm*cltzo&c)hmf9zbbvl8{?d8j5f{<c~%=2?Mu zFyF?T>DFK~kr1Q$8Z7c=``u-ynAK``20OhYy@*6f257DG$@scr@9oJ1hC%{M(8sqw z6srl(=mjGm>KT2!UmaIpH+t+|iYNB+tJ@!(gdbs^;P1DCK1_42TE(}45?{~5fn8Af zOj0L*!l_Krv3s0R462w&i%yRJ_(p;s(my!wAriBXP{Z5~7b1qb_CIWAbbGT|@AO=| z2lK`zDfF@8fNi_g8$oQsC#U?J%E;9OLsw%wn9$U#2D25owI*EH%*RzA#EImBdNn?v z)kO54V;fcvXq~uQI&TZfScSdiJ?Ya5oqT9%I>0XMjZQgQq7!&fUKYlQ8obJQh8T8j zOYeD7S#upfOeaw5`n(=h*QCH`1^SP4>*Z8S6uITJfV8KO0V(FkX;~5@v+TNdX6R-R zIUev66c;*OBm_8;VIQc>9+atU>X#$L0KbqY)D|c6&?j)dQ~mc1lvw~x+%JuxbtTyQ z<zi@C)I2@JI)rk+mP1KknLGJ>^VzoUw)AgoTv@aTmVLjye}ITuYJtDdNFt%p=+Wlk z=IcLi|21!gMkmv532giO?dOM$h7YRa?(Gi_;p4Ff<K)Ta-cH^eFuUTA^)3f7`2YBi z7u)-Pef@m*H3D~!5llTKh733yafYwB7gRyIn}gS)<{#}GJli=qpwDz9U=dBa7)+-R zUVbHbzx?VIMv<MS03?*=y|<q39%S@`$~hg5r}ga*G0Ts~5=fJVkAgPdu;12lXY0?e zedfRmAP1*E<qeHgMi`PS!*6TYn@(xmIF6f7xAzY@KV1hw=kewvpp9o|y?)IgK~)_* z+5JHtP0z>IKILCqP6#UthSejQ@e&&TLi|lSRGU0_(Uq3vn_Mv>FsEP{&Fa2(brE`r zbP>`@d;|_A0vFhhe2lF*L(m5*ud?kiXWrWL5{L$i6o&B194_=Lsn)jD@WnC~*b!Wz z-E#fX(#@2zL5tB8j7`q1$J49n46zaha${I?1GdQ5@}`p^2VI@;$$BHui}j_>*_%lG zuI_ho<4)CG0|%YvL|h3+w;U^01Do^`_#~3w?rOhB2-QdsGgfo0a=BuLML|tW)3tG0 zXgj^oxxHRMK=%?<Dny{<fm+V!<dUW>$e}amN~=~E!BE77b%`Bpw#L@sL6~FR1>u_p zb;X9%&TY^#$4}T2W;tbYNRzIJk&nm8Uk=_e+eKk>RD1J!o^@=81p-Pu8PK`zc2~Jf z{@oS18C;ej>E3DTYs+icq~|$CC37{g$-rwvnSCeGfHE?W5rSr2;OsTqQ_SXUudLUH z&oddncNTXnbiLeeZ>*jYDho(hU;+FqHY51$FhcJhL~7?eg`5!gahDuH$QG7!h-EWa ztF)ahL{+s0`xgbXoM{$N$G2Mx-u;^XPx2cW2Ia{{Cu5;U2`OD#ZJzf0fynbhw!i-I zKX^*IgVW{7S?{!FEC9iRU|!=iAxTXP+}+`sjl~dLvfj2;#(LR_kCUB3fQE<J26%5x z#mebq!pnQ8H;69TD3!v1G=sA&N-sakA?$XrINl*32OWD_#g9%{eL2}sxg)1T9%-9b z<#2$*F?l)_;=nZKYdzt6q-It}jFKJm&tgJG+C)&}z@RE=(0o=Y{~`V&Z%hFtzQ`t5 zjM|l{<r5I}@h|D|MQkAIDIOM8@GDf$%V8nN_3I@s5SW<yx8pEn6`Ne5D84mvTT{(I za34*it{KMiP#CJ)Sh>V$t5|0I?+fJ;=q~(1lnD=k>>B?(&@I$$N`RN6<Wh9E=%1-Q ziCrxuD&CLAXmJMHeMVmdBEgSw6AV0`_guJTjQ@@94LM|d+3@WRf#24-kNhQBp8vky z{TE_gVUd533$IHP9`fJm!#ALXdmCGZJpP+G@nMl+P*Dk+TZcQ}Z;O+QT${J%(ms4~ zc!;nC+}xAdNWI+0yIU^~)bqvp^3?rYC^1C&-C}pBqI(Z_zx(d#_Uo<9{rz2Wqcu!0 z8^3uotp6v%1WFpl2}D+Aot!ukThLC?XBwS$p6|Ut$Rhs-od%=JtJ!@Vxpj^hX+^*D zLBC&*&}~%*vw1iAb#dI@Bto+ZDN@7@L?igjw-7?ff)LXACXooCfYA8$!>2Fyi!jC+ z3BDwZF&}2naYnfRWOy}M(%-`%UqoLE$Nfezi-(dFs*Ej+`Clq%p*)-{Ts;OCgL@06 z-5U)OfRQ{!sjAqd*Y9sm20erWrc9K~U+d<}Jbk=XBRQP-RkhLJlu|qLAK$CpY`^I{ z^-%S1nu!_UurJ*#mmNlA^7v1~p^lMclZu_AC=j>+$iS-IEKj>~m?Y;QlU{!?E^X($ z;VI82L6m>_7oVLDP-1n;fYwuF^dgsZH0$9^BlApE5ahn5flybdTp3G0(-!>qM;zhc z#3!t4eWUB5vSd4gQ5iWG5z3J9*pQDydKJ(Lx@oK1jTRQxX*$+1g2U#2#cKBl*$=Ve z{W+2FxI|*t1}3qxJi*Nqfi%;wkEQ(i=W?xbvfQ|n@=43Wu2@dvr$$=dwJ|F<D|5s% zGJzwhZ@SKn52{<A&wx4X+qOHxA742YihBZ$ty$`#<BOh1URyOUItu=^8N?zBmleV$ zBSSeM9Gzv0+k<#ohwn)Fq}o+^<`+;w+}?0}b*nFBx;b&DQg$iZ%fxNkUp5~4#bP57 z`*4B3`pbhJsx@;jp3CRywTyB^Eam1w4_$^*auZZUJ#3{z_(a4*7UqkXBLAq+0rx4x z2d$xlR()(nGjf<EAd@`c#gQ5n2ILDhtD&2vuVs+CO5rBIb-SZ&Rw<>MTSaaETp<R) z)K3CGFe*aDTQ9{TM2fQ3Tr@!Qc>>xR?iz?wpz=*QArY*_Dqj0ss;NfKCX&-8*+|Xl zM2cJBic}f8FHNEej%(G%|5O<~7_EMLdqZ<{Y$UiLjP`)v#Sr=;4E`Ghd>&K_*0qS@ zY!y)+?NKzy!aTn)%Cis+VZcV1$1(VA<2>1QG%WuA&EvRXHipnjIOrb{1cLfQvV<?) z(nydt{d7WywnI+G9MramkhH#eP)LE_EV)D4ra-D^cQ8ov!|SKpk0rxoYnNFL()4%# z#v2ZQuHT=Gdz1b)Pq@3dXn-ts$@G(4&tZKAKNX3F*VRw;`x4~-&Ua4=m=CJo{lA|E z3GeH?1?J)Ii>)V0v8~-_dz*)^f7ryG!3Wj9-n~npyvideUGNepQadj$dq_AW)>EWf zGT|9FDb9F}0@u(^&mGr;A9nV(Umrf%-^NMh(?~aYQ2ibm*51g@MKGH9d$>VWPe25O z$uRm|iQr)RLMJ?<7cb9n*9vKU_~*V}Uy_HHJ>n-1SI&9&Qw`^9T$kn3yuToto)xht zLy38lEoiNDMpqXn_2g$<on*eS#lA8mSL}_Bo?*Juu{S>>RFC_0)-^}Fqi-6(vl*1Y zvuVVOaxPdKz3*oPe!l$|4ecSK$2&EO<lg@F_eP=>9$4v9a;`rmJL*$mJ|*3XaMY5> z-NDlxV|s&gEab@JW}1=2hSEg;h3Fm|&bLEK*Q4DZo_kZY1L1jPc)sbg-4_Sj$nL^* zN&bVT!oT3!x(M7U0@C{F_9o)Cd26ij+m-|>*)j)*n@DA{*0K^fRGiG_F_G5Kb`3N! zk=9I7U(lGhMfD$VjO(KFZTEI}I6tQd+Fp)j2enhgn!nf!(ANCwavt`h{mt)Q7gOv{ zdT$oY@agX6qZD4{3~^JWK)9JDCL6X9*hRO$GrJ6NajyDPpJ38AGF};=#tz6s(<QIs zrLby)=LIm{xyD%^%<7AE-3Bs5?3wnKX&c2xY;V}IH`^Pg?YeWg{Y=`lHnfed9P?Vl zJ=ST(IAC4GdAXC_aCae?Qx83hxW2x7EhwaSp_qkCib0MgTNac|O<wOj`;PONYl1WC zH`<I8d~K3zuGu;XxK@?m8Bj6Vw)6ba&erDP?!KPCWbH=%0dACyCsQ3oBD%&K7)8%p zgf(8RRoSog**HIQ*;m0AJtojsI5P3s&Lwj0>Bh~Kj))BsK%|9Yv$svzhi8{{oS1wO zw?~|@FMPysDoK%BR$OA?5rf}{iO8A8&A9WX!s`52%ADgx4dzdVDIsm<-xtB(w*J#S z+7o>pBGTdb(*~FxKu1B3+W=W0P#Vax**$19nZrQdBbqgt{e=)7RCe(!b$(P2XT9`N z0|7cXoNr|R$jJ6DKQ}<~6^wknT_hPoc{fk|Nga#y(wJIof)r}kaSgztV0+qD7K_qe zI#s=fr4)rPfO7+yi=t9ic$dkqbaed>9~@VzM!mNK-26u>$VKnnA^XXWnO1)+$oAUg znb_1iNqE+Fv+EjHCC1lX+iKbbpzZOqgZzaA6bL{kfCD3G&l8V&guL5k#@2U#cRDWU z;5odJEaZnEmVsf<xu6yff_a|j@KWfd!!U_UDgFcJ)!0NnGZAH-M{Xx}DOGLlFh&eS z$UorX$@hcl0ObwRAi&^}Ttwl$ek6Roo9P7=-qE@2y}`|$DX*!#)qcv0=)+5$XyNjZ zzXxz9ET6Qck4(lHqpL^H*%=jzI}{8m)g4yu+pvh4;uhIl6S-6?O$NAtiQBN1Tw_+? zD|xt1U@LWX3OQ}4RT4pd5!I>2TBt6rfyXQDKuq9^x}IChfs3sCK+`zI;{G=|S`5XS zQ$P|s?bskCccQLBgYHTm<F3>9r{EQOZE14a0MC09NoIt%XCPc+TU+B?_Xv~xv>7Sz zk`gx~P9~{as1s=T?!)=)r?K_@<h=`d-!h5{@NP8c{bb*(s(9v?H<1E|MLYH@4xy{8 zOhIC5C>WH!`BvpvV;94a2*zIRvi6FeScoO7(o<1tAnR+K7B%F=Y>aa@6h#W;6+lzj z>eEjslgy~ZNX9pk8>8TMI1uQpz@YbbU=qkfW2j=(06`uR9HBe3tC$kqVLf^?JFnKO zdpJ*pJ|gfxRCi-0<%wm>lC}xiIhn)KDxyldG%CHKir^8nGrBGrupj^~Hwv~HrUFl; zM*x#&x@qE>Di$Se%m}NE{G-0B1W?$?l@04W@NHG<4u5_>drs-*3#b%VtrJ7w`n=j~ zwCRpyv{!<o;WU4u*pND1+%xY))X%1O!)q9dafX0$zWqCi9pB-)8S+N+ZH%+CM)PfA z>qo1WHZIYZw#n^KHk^l3>;!=|-v(qi&&Tbq)W+6<=7tv2(&glJl&!+pbeU;HvZxbB z>~_0mzl3<fBW)K9$cCzE5Pi#U%Jbr!I|8^wqt|)pE!kR|g_OV<#+D|0a6Le=tJolD z1`h9?;9d|cY|0QR0D}k0S7Ml|^$qxn9mPiK@rMUhBfc5H7i?P{GguyDCTJVV|JkrU zDkwfB?nqlYv#JtAB!Pkbn~f}7toBIIRR0J-60As5N{~ufCy*9dJg-~qVPAQor<+L^ zqwAs349%ugRCI((;!M{<eZ_gL!nKf}*+s?xA-(3t7cr>U1~e-CnTVu7;yf<7fo6!5 zvq*8p`Odik^T}BVZ)BJ&DX<RW47E8YqLV{0bIDqp=Idq_h>T_Rvg&>|=n{1yZXB4} ztyRx2CpprR6z&;J9&@?4k&ncZ>yE*ngHdm&I?~$neOXZ9Rfd%bX2n|lX+Nkhp&`16 z@b6!o+bq$H*xAH$^nS?zf<isT5jRo<%dvFO;8K+aQm3SyX4tQ&;&_Fl74CmV8Lm;g zv4Z)arz{mpTuA{OygNO|d!H4j(?&|ejgHWg*KP&<vAVZ_02Y*pa0NJQE@4lYQwEII zOUBH|1?wyIh3Sgeh|de8BQG^5h`9Jap6QlO(ima+%zTo%tMyWn=`4ShHj&BIWpYif z2=AP+YzFESDaWkWBUUEtqX5HOln7m`(s{^+oO4J)BcA4=phOfZ6i9H(QH(=NSLLUG zgA;L_{V)(^C8hciiXmOfe3OIkvk-9C<EvpGmzKwu6=fiq`)b63b%?hiE`S<~K!Fu4 zG2~$O??qo0XIo?Wi=l*K<X}=+d(_9Bzjr95bUK&~-y@X3)4)8)P{8T*rj$!UAU2xT zAS)`6@URomIRi{*fEaQjQ*riLKtnOA=SavG;;qWo)B{nFUJD^YCypybNN}9XN<J+_ zEa1s*iPP0pVw6pd^(46>Mm)C_xIKh{R4ZlrD0oLGWiiQOf18hMuQDsh8z=N^BgSYs zOzcIL0P*6FGL3XqGgo+PDAv?^?)<gR;k9wOTgfq-rW|P45@lp^69r8D9HYyl2c9de z%Ehy7Id)IST-48kYCU&n&&Cca7E#8Gj15$>VX~9D!VZviEDae?6U@@h!zPLoyaEVh zU;^Rmq>{uvYzehXx;D&!EK}P6>UogcAPsT8cvk5cw7};xCl$w|1rVynG%GUOGQub? zJ*PjNc&?xe`wQ!s0(o6pk+~JLA*sJV&k)N*-JIUWpeu!;1hA$4;XiL!)*_FPwHilI z-dde7C3$2FbJ~N5nokqC?~AxNHIdWdKf2!~0GT?S0PCOpXEsKWH}biI<h}q$E(YnV zLuN1wIu~&n<HsO@a;YBW#7TshD4OD*)fw{nd|Ms8>LPw{TI0|T+uK=OL&vOf^a&B5 zDTAECeSlK1=00ZVAToyl(C(STm(Ah4V{>}={*ebsl1GNRz;fZqoamUUT6}})bFfu( zgS<=*7;k698wtcKa^7<f%N*~Q^we+*C#XHMs0|;Yr_QrjnG)%IV4TvW$XeFD88yrM z45r`VK=aMv_y<kCK?rGDq7O4P$BT2ni@2Kt5j0!=)udhvkOEuRjFj9ZO6X}ezv&s~ z*u+}73tuj!;$}SH#O*VJAgC^0N;#zdwpzajj=NWo$pe;H6T54&BXP&CVWa`>YW2^y zRynbKR>rh^rM*bRbsK;+@iKNk%Kmm6ACb;i9s+(X0~`e`*%!|47WQYD$*ZoQQY5PZ zN+oS8wGgZ+g3$%4vLFO0xovU4c9H`$MWkI>-)c!motF!NvieA9{ydUg0GBwVSOQpq zve<{5`LFpj$PxLJolj%;-d7{IAVLJXI0s~^`Ap*ZY>WteB8@Q^Fx0>1G_Ng0C!rl} zjTzD#g75|8-4YQ>Af(3lOge>h^LZv4XW&h}=w-G$bY)Tt5U&)<#%)ayOC+-{QIgHP zujBDZTQcslPhG+Cbx{ndvtr62_Yz>E0&W=%hJBRCJM!)x>n%j2F<D@PJ>u<2wqmf1 zShQQpcU>4^&1`p@zXQa|ak}!KSViu?T+ui}zIZz6LXyX%t!=pi$u`b+hz{KX45VCi z;8F}~6iRDgbjE~|lE)cK(J4F3Rqpv5C7Yv6THAn25YAc^=nke^=8~qw0q17TO+|AZ zPA&|&0ni)Dic<Eax8n)Ez|rztOvyr2I7~89$P@`$Ml(H{_q9gBla`@D-x#jTTr|a{ z!ufiRNzshQz20mdF*HpWB#6zJ&nJ-)+tY_xf=x1B%=nGbt&Cj!?q(oui)g4ZTUtH# z&mOd1&vDt4XlpC(SrZ^ac4q9>fzBp|R(4MU7@ZW%y!y-#YE_;JnY@s|{h}&n1aYg} zX4rSPvhg!Pg^=UHSi&EJNq>Z^hpe%E&S=aCw%l4Z9WxGb(i;qY9a~+VdD`ja>olp@ zW7*)+s|Z{KVHMzF9hT3=_fcAm#oB$5az_Q%Btk-02Z!H4(-#yMArxS!@-y)A(ikZO z3s-GU_qSXt6B8wOK~>S1@LNr4rrd8aj-9nxCGQNYti{|N=+Iq3kWBQUBh{9xym?F( zbn<R<D#NoJu$kcCO>6uXWonSyzK!4!qm|V)d`~AZB2lv`I^c{2UFib}q|bHDr}c)h zofo{uzEVcD_l|~7tpVL%18fUc-l-{O7XvBAZleAv++wS_SMzt&b}M*)2_yLw<sRov zJ~z|GSP2N<7RDh8a<?(t$LjWnayy`mU;|9Bc+#a|p5;yF_C{W)592qxw~P&JTCpTf z`B1vNkzoR^F@=;j%0sUb%A6A-xdS1B5ql(U5!jm<DL$)U9=gtj4NFca7N<#>7<Q2a zYw6%KUq~8f7;R8%L<v>ial*)gd{nJU1BDcufRbXNiqaUi;fpTeWKny5sj_`HxSFn$ zWkZXcgGDT3P`1W=_JyQmD2Lch_gIA>g`M5v_!UPnD%kWS9iKSB#iH^qdh5V4ioFRX zXc#F#Uq|zH_%0hCZJ4UzmzZYrsOXic6~sFX!TU}Eh6(#H$9)8`hInJX5c+%|QurE$ z==DQ~a{jUAV1g_jfo>EASbl@Q1!KKIRuYd`;E3DHIy%a>tBAP)a#A4Hvtm;(rjs=# z%p+}&&r-2Nd_t@ooNC2CZosp4{lLNT^Ko@i&(6m<Xog$Umv0d$xQ{Qt%B80411_AE zVYD$*-HdD+&4V49=>CkiB#OxhRSK)n$LJOtF?dG>nDGw|BA8PBnov;Qa0@}>pPtC~ z;ZSs$0r?n9xoip<!E%G(2Crl4A*8%|Ddh=xLYGK*$~y+Ur7nU-d@#uE^m!w>6`w)0 zHZ<0;MI}Vk>bh*%ji=lSY_-aDhPFd8(SRJRGyn<JS&eO~?>Jkngpo@<w-jWH6@E7S z_N<TzL9R<9+>lA%8zR|K*Nkq8VakgQMaP8?x!@ahVHpG?nWu~u%hft=g9vi%2PsHU z7vmgJU82B4xM=RYkd4qpT78k*Igdcpe?-AfPAnCXD6j7|>ql7pG_6$2E|g`t-O(Eu z*>P!cpActysaS`xvB_zEiKYxZ#tnfY5?mYu%hK|GmIfQ;!#dQP0|2|bhD5s&{_u+l zQwx^=J6`{R@9@XhUkAS`I=8*G>}mgjL{?2=twOIXVps37Rs|^AakAyeOG2tI!c4ze zg^Mj)wK*yjB`mh6@S~Ec_bHnE{Z%d;Yzr!~Ya4Ygy!mhaxsvSb%Gi4Ux6;Lbi%J(P zb75b_URve??LJ-O0*zSUq6sfj-KiDrpWm?LspVfo+=+{!^?P`f==B-w9v3dEmUoJ+ zBW=vN&QZZY?2iP&Ya+M<S3(pI&SB|iL!2N$=$PLRnZMl5cF&`kw`(aP@T90;z=pUS z)^ckf?H<Y1Tm`D_P#krB=u&ACA`;;Ko-e9oa|XHPdnrP|t=*?jH}~X&FnAsul)u|~ z{v8nTcZl)oC1dZ28U*Pr%Fs0`OW@O`{5-wW{)e4Mhfk!(^`JjHS5Qy3S*nC!&gBz; zB@8#N9fSs1a3dT4pi7sN;T>+}{=hFQvdLz730z*Ww!M;FvHl`zQz8;y_=Ys9r05-K zo0D!gF*?dJtYPQ6&+kEzbX5=J1D&&Dj3O+ee2afSKp029N~@NxHo}O-ZDT*#fT<64 zz2L5~#aT8d6MTzQAm7wf)1gshck$95@hh}g?SH!c!SL-4`tV9$t!3ZGTh?Fv67>?= zz@UCFai)o=e+ki%NXtrPOr!&$ZaN)j^SnB&A9S}{pJ|xo=BGPhBmodg-C%k;5fyRw zP|<3cYfC_4a&q$8^K3B0x#zYr#b?agNA#HzVpoB6I`Y+4!W7Fseo2smIM6qD%4-bD z!O0a}ekF%-g90~CYbkHUc*H#VGecF~e5a5%$r-kLc{M$k?1&%-3`5RA>_h&cTf_8} z?+DP0X9xDwQ*f|P_T&?M@MQe^fC^2*2l*zmuHj+$IEYEJWbx*xzh%O}QV5D|>=)_s zsn`SpZwU~=sqcE!McJk~qCWKyj!fP_Akz8We~Ihvj-m@a&P)TES@LY#xf#El)0{6A zd(5^G%N80_8$|=Io{>YJ=Q!w+46+Z-QuwCiwqJr{Yfy)7D`RbMYs=Tq9xz7WTPQ8L zGG;b+>pr)!bq?CROd2ViX;ay)o17atdG6dY{6}!nD6WoCZW#$vw#7Bs*OHtFxb5Um zu|;T;Kw5yO4Ihg~sQf2~EIL<`rGZ+rwzV5aAr=6tA*zg|E{}*zen$^AgmuY4bN}2I zQIIW`Ax1)3%lY+^2oNKP-U8nn#;3VuTf2N~gsB7L46uNSEXpZ=qH;>fxY^)NCnsbR zWz`sx|Lt~pBdJcmS;gtjZGt$LfmWVLcf*+YCYZlC55g(sI~8FWlcaM|0L?63PFz%2 zrN~J2qlu>FS_mNvx@EBXAaYjymn;xV(@xMn?o+s}txF7r^2i@jCh3ASN$ShA;OK3R zl~ck%I&QN@a1~-0MZwf`cRG7Ntd9ak95k>Ziw;eaXzN@d*~ZA|<A~?2f+jE<@^jTW z)V9;-w9pjaAD(npq<l7lI0*K$ezrKK2GFFo=~W(?#;3|4rM*~%;;;P7iiZ%a^jNb< zWE&4V!9RtvQj-w)&l0k4=TvApmZtL;>*A)ul9i!5?nuhQ%*|gMgbbuFjR8%^r?Nx4 z;z>6tYh=SWQD?p3;BR$5coifJPT{q`;v?A=vYwr(HN(Gi&p?}CIh|m~9snZX98cvJ zKD*sA4nIRm(rUlIBb%Y%^&m@=C{9wu#usEVI1kx;u;}&06%&dR_ieNMM)0D4HZR63 zFlpO$NH{3k94UcFu2&x~-w8#G`PJ5OL6~-FL-J=P3s0d$xdb2Fz^-bwS!^jo$YUu> z9l@B3k!fzwFR3FGvEV@9r891qwFNb9vK%y69*%JU3n_z>NO(B=IBe{!W};J9NtsE! zG|S8?#tMdL5+|6jMNSk_oEzg)63SO#VY@=|_%@To3UT<KYB3e3VJ_HB{42V`dzz4u z_bYw4(n;2%m>i-GR-VjoiUnG+o_WvAPxj_+J)!+FPuZZvYH&PGCc3kfl<0QfW^Cbu z+~zhS=XY)zL~yvPxv8x~-V$hSb?0S~GCiv(fN_-KS%%<pt*ZSN=vLPl+KB%)E2j9f zY1s%*&uJek6{WnP%jc34)M{wob`T{xi#EwZzHZqmXuEhzrHz7SMprBFqd{R4Wu@8S zUw3X39MsVyopWywrr!*KR@Vp_V<zR{FPnJ^$q{zNzlb7VMt6ljGq=<YT@zfY!mjZa zb8b8#jf|%A)q%`lq&ript+o97%SvV)55#UnIFoCpE!4T>!stJ_^QJ9KHF^W!+=P*f z9yXhA(U@h{!X}I0%a<>~qtt+P#%L#S@Cu5>^HmlH-x}AGQ{0}%%n;&`^5qta5aG$3 zrC+6tPpO1mr0N!dCGrE09Drz(xsy-~6SOM_6}BtQ?GFg7W@WyXwnMlsJ<-#QjPqFk zXwL(CmTkunjPi=_II0Dq#=x&q8B-cLwRIklGG24-S+sMgTH-<LJLnO9rAc|p)}IQr zbbpi#39WdzAT4Ye8j`T2tnQ+{5j2b5?Kv5(G*H|_R_gk?>Z>03)IJ&5*Rc`Ucbm8% zA<qe54l6Vr!*76rhf0mCkme&`j+Cq8+Z_k7+LiAwcLuoHVWI5!+A0aA!eU`O*XNjr zC%|Thk^`2DcLyHnT2*yq&t5qYS3Y5;7{lwV*ve?l@<8qJWdlhcI+=GNt(AI%=`Jpb z$o_Mz(#}h!MPV~GEx*>NKt80;iF&s6gE1b@Kox*nijhs9R9|4c6zxEZAjpDr-lZ#1 ziY4a|kY$-6=>*g1+4@A^Z&Ov=BBLqn%ygg-sC(LD<4e7sTIyKZP{NL%{9-s;fr>6+ zgRqo#3}}(W@>;+ZA+Bhvyke&g0Ckh}<OD9IC1NqV@;$@$oMavh>2}Xkf<MUO5=rBD z{z)FZCFo~KsHXMsWP_popXn^ycZU>gE~%@?T@7WK9kI3#7Mq7C$mp;G@TGJQM~Y-@ z%|1@l@chKj&OL4mt;<%_kUY`x?}`0dDZ@%N2;F5V!`kSTAFv4JNS{dPm1X-PC;5-a zzyF}mpKBDYObTgcQtC&4*Q)jp&_htM;2+`%o|Q8mq5Khj=0EiQ=qhMhb@U4}`qe`y zp}Kmp|8!MKh~ev<;Bk3o*%Pes>|H6C$RRRD_w;Ili_)f!ybOwR%4SL`*R~~Iy0o_Y zu-rI9zim3Dlq>o!MBsAq$t@ugrtI}OnV~)sRXHb{(z22Gyht+o1Vk;D_`B;STN^A4 zp{a=mbKesrgDW8XTl^2iN6C%f#^>8$fI5|mBy1NJi_R`|#K;Q~&4&5?Z;?m3=-8%6 z65T5ENUcxN<X6ZeU5tt_dNYqSu+T52-NLfmss4mChI$v@D|$PC7Wgx=!SHQe)Hges z^d|3-)KQ(Ho)3;6Sn=<2*n_)uImV^j$rM_nCw0^Z6C7Zkp)%SCFU_Esb`?0_N}ATa z?!Di4|4pB<dd_Idi|TivbuQn-%)*zUI;X4EH+S#-Kh@(Jm&FIC<Ldt#yd4iww+sV= zL9tm+uJ~mP_LIJQ_2gnO74W<&3<OTzS8ou*Mr{ztt4Uq6gd0Q-s(-+MBqS7O142j} z8=vrKm0n{Hz%TKMD<Ff`+|amcd^Wp=V<kg_8spOe>y3mlgnJ!QY;IUXuu+!1{OZ8E zy!;Ax+AvhV?hOSdzAV5N{$A=RvbY?ps9~0bw1x`Dr^74xm;=i!^7U|Vf#VAqhuwul zGIIh)X*q7K%l9k~*B_kmzqL&A^6CVY>CT~-kt8GpL(3^23dvC&Xw=_;Y=+QL^Z;dm zS;)*2meP(Rfm*=Bh$a=`uFuC8<%|Z3*V)x%grPwuPJav{%E-K^#V4G_85nSkbo)14 z&%T6}rYzc|%Xx?vy%QAPlBp?E;8+=$%R0!)2tK;x_G)^LGECJ8D*X!$F+3=aM?!p` z9VUEr0>cz#{_u6L%khMSotw3=tn@p4vRxhQK0f?mbAP+qIjHvbcfZHEz#}a5<^dkO z{A#WGVdwD4F1}QcHv5~;5C2;2KCU*O|F!xvzCy89ZT|(O1P%_W-F*SL^K9?w&NiO! zJl}fy;t^9H@qJCH+V^zl8A`)FLP5HU!y34qZS;LyJ=@;jdIIR14|ksK9R8Kg)}89{ z&f#;ye!RP1ZB~2u4%E)pi>I6W)!vK!y<Oy7ZsG$@&v&2iJb%28k+z@VJ5*hajAxa8 zdgtKD=F_JfPT+06z)bKd8i3o{-TSM4Vv8S5+s4C(+tt&Z&4*97bvR6L>*?msGlsIB zZGJ~A_p4n%(s{C}Vp{$1WSfsU?k4`Xb-1(poKxD`eSWx)pKF-${$X_gVdr3b4b{kY z4oIBG`@7F{vLrEjVH5yD-{;#3iR2f8#X6x035YK+1<>lz_U2Q-!<s#h>3RoQ?v0nD zw~%6k=|kK=WBo@&J=7M}Yaz`D1<iYF;DLo^lYgfkC(z*-pMalOIYNUkmchz)|4of^ z;gv&PIUC{AX4T4L)YCW{zgu~Q?(956BnX1QBdfscF5bvlgdi*r^jb*UFy_zlwBqXr zQB9SGRGKQLl0Iz0;+LCmfJ~GgYek>8N~%BRDJAoW-UFhvEu==9{0(g+3Mp*Jivf;L zXT9l9kLnYgN}bl7vynL_oE=N6VJBO{sDLnkF(4os|3Qc0q_jgk@=Os!1Y?V><4_sr zw^#Q0l|2+k8cb_MZl~iRO8?=Y8J`>Jw2TIm$-#)LWpJwMY}8rx@$`?6_*qVS@r<YV z)Oi2u^Co>OI%N}&XXNBG&nmBs**Yz>XvKk)D`p3;2r8~*&zLzW9rNZ=PW8Jx(`Q`q zL##M=K*59M5`bneN8)I~I55it+ElruU%5R2h1Ij`p+M%mCy~hMdlVy{j7RuVBzzE* zA*kUk^k0td@C(YmZl;hgp#3kdpvo{2XawjKI2{lP&_%F`^x~=g$qz1Kyge~{x{Rhk z<Dn7kiYw-dRv#XNg{e|Lf(zu8a_cmEgU2Rod@`Uz3vs@!=Jp1R@SJfHg=jyW*QY<x zL85+rgH*f`!r;i%qz45{rWbA-7ABjQ{@pq;zDhIO9KFY+Y<h=d9d1310nHAsIc2>^ z^owa*$o?ZV_w-sm&3V5>=Ua9FK^!#RIuT>n*>IU$VEhZx8I=1#Ci87Rhae=IHAS%Q z0EW=$jV4w3Z~<Bp{*E+sT{#A?R($8W$NwDyO<Pd8JPy2~DR?;<!xovncgsmhZ^rL0 zr1iFB9`mxYr@$9Wq4W3{LpLdi86PkkYRhnhOcNBn%Gz4=G>VE_tz#j7uU`vkd2pPH zZ=2LTqE@n?2t0li8{S4O!RpcOGh`E<vQ`hRZ#LnUH_aKj{9Sw@vz|N}pUQ6W$|m2# z-4LiE@B!k1e+vr}@j1wZ(gfs0J74%%23)_NPLKR23k%|Ra~1dN8H`kzvDhmbgJ!`_ z{~FZ!7%>4ego`C`VQ}M3v#msJtYmDCcpY)@VkcnwdvdBn<b3W6mQ1TsVaZmW96o!R zA|SSIHjT7+<@2n*X@$Gq*1AhVEF+y}_Rx&i2{_Syl|67n(kTvc)K$t7?gUBCQaUzh z2nJS0s7}UxxK78>{1_YvXJXd-NlJ$!CN-uU5q>!xLzlpnvBa;#@#V3UR78<(@;&#` zEhAuPW23ekid~N9Yr#%Yo;TZsT+sj^)pK=et+=f|dAR%NuPaePx3Q?@Zi_K#xS-ze z%0D?e3jstIF<#`P&#cqx8ZH#vPZCDNes#S5?pWNj<MsE)sut9@LV@#ZaWY*h@U(JH zK4H_hJ*H%hRihsu|G+hzoUw-agQ^u+*Bi|B_{%4|{AI4sUq9LBuUJc8`;ATy!HJ)h zEq^8=!`}N<3*0+iNHO$3|C;^%mlV=3mon!SdlS5Btc~9-!h+_QEFNX+V7jw??;d7T zSY5Yn*~RznvxA)xl-e_?wSl-5D^JtSaXyI;B0hsWBIE#iw+VCuu(nb5%I4kTU9i8| zcMzwKkk^U;1FF5b33Fm@7;G0QeKo@N+eTUa@uZ%B);Bj{Aewp?)raTux$KW&H#*}g zEF~(;w6Ir5EWRsElb!938J?LOc2krl#JxF{sZ{qBQ~^=+NJ;s&w9<o4o+;Y=v3?Yc z3&{quv~HU0XG#s<p+ct1KTs?e2sG&kUfmT0TgCE?B&hSGsZb{tX-2Lbjq?G7JF#>q z!-kNycNHlN`+&9t`m^h&O&Xn-;tjB_DT~L@paxSQ9{e=8tZ;e<2jAO6B%TjW&w&a* zN_mctdqZ?WdvehfHnBk)81J3@v7B%;CWjsBXk;ba4&cT>GlvE#q2L%rRZTXBmd^a1 zS)epe<9=<$F!N@V82N9pDA~?vEXzwPQ~Hut{<oOmqS0uCl#iELHCR(8K&kS4rMGRa z_tV-pUgdKG6BP4STfjCUEymN~c#5Dc;z$TxJ)+f!upHuIa44x+jgdy<f(-O}a1b?x zn~2~a)*O*^iDdpbKEXLMJCQO+D~C@cAoNK7O}HzsA`;U|SN&Wls(P!lGpAZbhvq#I zWP+b7QCGX9gbGe9Q8Z^ZHaBVxMLm7942(MYdyrIKx~ByK><TwgvmoS-(r316#-qA# zgQt8+oewhh@ke^zCma)eZkVKy43G%-u<R&2MOJH0(}$L?$Qbi%u{N__>9W^8L6^Ue z2cy2a6qE6ICj6T|g^3XOc@LlcrKiN#t6#)c=KL_-+yOWAKgy_r6dUAP4YS_|Mjdv} zv>Jcre!*NKu~9njp0#gd4}x4wHDw;xS#Yo~aJB+9%`G>(#u3D1{1#DCer~ES7Y%Q2 z1EerUki!;{W$Fv(y4m2HMf5ZT3#^-@Jp)U?gT+LY^-FzsFEX>fF}g$a9P->rO=|ox zs&NJ;2PwU`<3Ybd9190uE@|X5T&1JRV!6~Qh<Ra)_2vAXr(Fo3;j|0*6%LA66Yj0t zOTIt$gg^a;8zg>2ljeSNc^WpN(GklnRt*1x**!sYfYp01=vm2U#pqcfT7^$N;Y>xY z*S-8omfRKyfA<iwLqXuFebve0cGyV-N~s}*G?ON~hf)m}m++h)S)^glq@4>Kko#Y% z=j884yIU`KD)Jh~B|AKrc>NglDt3RsQGsAi=z<iW>nNdX_!R}i@tbIiZ@tX7{3f+z zMBGU69qcpXp&sJi_zV@o-7Xq^W;nydx2tg)?=cfSgWcz2i!w`-F0}Lk@3QC(MOM=k zoZ=;K^#Hke!HMbUn>KieWelg?7Q9bWcsNG3tL#SkW|!q}gkPDQBBRqiIU!j9mg>vt zxwIYlQI>=s?bK_rm{{_hs72>h&4NKwx6ly_S_(OXm7{f2bu8#zNJH!cem~DPuF?;C z-N+Yu0w>oHA7&|{gY$$FQ?!h@%_6@2u?|Hl_!BmiSWa`(enLD&zf4XE85qw(1mOcQ z3QBwe*c!ELj_5ZiB#8J@P^R!@usKwfT6jk?x}9Q0c!{zwg}fz!2;Vrnlu!geR?4KD zUqewSn50NN2rDBVW5i<`g2x<^SKM+HtaUaK0>|gp5H-QN>#P_(9=ro7*}kEXHEiWe zXbUIOh$&L|XsaDLcwsnvL|P2Mcz%SBs!(M|PBpCL;w4Jf0BZ)gF}#RT9MII01BEZs z5`&zLm<XgeAMzKv>aVAmEg`tm^$U%+Pnr9i_xbE%h<O`NHzUa=9=Fxd7mO4q#S@N@ zy;=xjt|7z>$23@G>@-^)1<fKbPHI?dL$+*We9kqm4sh-Su0c)$Zd@`w0;Z02G9JOg z46m47LdFuN#(J!3z_DlNJQ9wKr2CsQJ5(eiBfC;V7X~7un(GLO;y-o{@_u}!kv@r* zQ0WNTf3lu5ppC8(;s%7nY!>|3j7%%s09YbsCMz**h6Uh=!USd3d2A`xAdWI=!{n$% zE7Gq8sx3!zro>ayW(GKzY7jBsj+RhzAd%z_8-_s4H>NLQ>*oB1>MiZRZ<cLNyu?>} zdJwVM=G19n`+<WYNevle7I<{rrYcKCN(ippo(r0jowD{p1|CHkGy0dJWCw88I6}K* z5<x=cPS7tkIvLMqSo2S|6NZjff@&K$P5=2sJD%pq3IdIMe?6&(5NTwaJ_3y3>k~2J zB;m(*kC9OM?}jHl#{W176mR=ceLBQm(u3bAkKQyBYQLUd4MpG|bIIDy<e)Wj{Z$}i zqqwH&y@QdkUL7OOPEGT^P&3sB*D^ju-G}~b%G>H@aj5<zI8GXzo}In|&xcAQUf6~; z$;luK42^SMhmzO?X9-H8CEkgS;3|rG0G}qkKwa_>t@&T{;vtnbgjU&S%Aa(BF$unL zePmk}B$(EZhvOa%TcUD=@_hV;%nHKh3h(P`MXp_~ypr!M;Q1#zJw&6Tle0|-DJ~c1 z&k3&C@es8Ev+eZYS60(VV#vzJ+b??WIy^TyT2arCh!P60)5p4dvd4sbw1V<`OaMx) z_3<1KeLM$*F=LBw%JdO4@3cZ#bpo+PF`1*43kayeh&af^b*Y|c#XOn-TvaN6S-n-{ z{}`=*0VrE-LQ@tXxcln1$PUhz;s@Bl<7+O+wBw#o#*L&a*vsFf)3wZQh?o9{=`E34 zY*&y1(1M^ERolv!T_{Uoi~Zxe{saH6aQsb%zAqx0476h8TgF6o;w1G7v!2S;%Q|w% zBF6?|Xgb|OT9T$`AZ^MLHsBH=(Vc$g8ZvG1r`GK=BGOs76)ot9NK=T5ysb6n&9V6+ z?JvLD>Wz?zDakcVrImt#aO$(fldqDkFSHY~OJ<MU%>vOAx;9um(0GPrG9Xdaijiw7 zgNr6)CqXiH2zLNzclC-sa{=5;ZeGr3Qv{PvCxc5ZxGs&6+a`R$1x;_eHAHMZk&GH} zTlC7G!)SEH&CW%4xU0ymzj6RYP8L_-<yT_sA^ZWCCV^kg{_b8+kPOU}o<>fW+HlOM zK-9;m^gd{mfOYY?S>yx<?z$p&&LsOT7&=Jb$(TUsJsWcb$VIRTqQ>$gn1eF`5v>i8 z&rssRWzbNu91WR8nZtFQ2&ouh8K@E&TRoG@*@*H&wv0qixP$folo2viDNzy$U=OcV zLOWTbY~SD^*9#4T1nrBFKzvY9K?eo4{eAsU96Kj2%L>_&m2&=RymGeC#|r+V?Y6>K z2NFlXnAMSFaHU5f$j}5&Nh3YreT`FK1X!4sV-tgn8N3<MX-fpsdmg@P^IdpPcVXDR zDIqm0U{3N+$5*_=ote+N4|O`RvyI@|I%uwOO+zr)inl*^uSeuio`PuVm-dw9%)>vB zYrwIdIeoO5{1Pg039v)rKjm)GzCk!Y6ZlRN@yx1&{l(KXY#gN5LXgN^3VvW7hwd<D zE(S0nX{(A2)~wKik#FwVIkA&-XG1F#-4{6RR(gHJ$NIbw4DK5sGOIYTaqb5Juhh_v zC0+E|R&!?Qd_ZbwO!tG5O-%Xw{uq1!?*xeuN|dgsKidWBL!_qSctlIpv4kl+E(;L^ zhnL6{QMp5*HkG+{XXY&zCidsq`)&SiPSHfrY~&Uyw$$G-tc;(z9mFBE{6@|dQA3{k zBdG#;|9`n(?F|vqhv3vRWaQH_{WXOT<QTyEL2}SmMhYxN6_23spDDkwcRH9L8Bf*y z)Q%zj5JC?UCN*|b|LRn(;-Q=1Kw}A_|70*6AoCH<qxcrgF5!qXTo<w>rwn&XD%-0z zH=A^~mEj|aIuGQ)0)>D;`vY~x4MO4na)*jM`3xVJeOg`I*!uETS=K#Zn!)A!7T>pQ z(BjQngEFS7*kGzRBaz6ZkFdS;Bk!QJNhf6_@j~OGGbeFhXUjir%VCSzL;O`*q%w8I ze0{E;8@$rU=5MV4i0q)ML>M??3+lg|Q0l`<)^Ha8qDQKW#~<1J870?bgUE4&M*>F3 zeFG;}kp)1v!jgnZ4G}W{ETgH=p(gXLx^czy=3^Y#!-Map$;(fYO_q%Sl>h<Je$Ih> zB91`@GozIN1+@Uv=YKw)4F0A}PAVlvP;sdUuIp?96{Ho}#%Swf7_1w{HW+q0HYu`C z&fj0+IH!g|hnrDpeGqfd*a@%F@#O9bnGd*SC5LwdX4}*1?^Va@mrHp!!1OadNpaBQ zOh_TU>IL}J=1|G_&jp<l(3!`RvicMmjoE{k#neKQ$TpX_04PMM&=z8eAiB^AE?P<2 zb?Mm_^jLXk5i+o3LD?l;-b)v*BDb(Cta2Rslmi<!*2vfft%{+fQE6#lnwb{X?lkqJ zRTyMwwJVBsA7QV3elr}F$l-W%axy@udGem8pHV6V*0<ytXWHis2NQiiHwAIsqHsqF z=M8^%NK^CN0Ngc%%$939m{Qf^jp7w4L>7@?hI6#_dMBKyazTrF^+swFa|ngJw387f zM$%2OC#2Gmbc5=XpeD!gZLC2nYuw75%|Ub<9gZ(`i`(}`^AH%~8;pQ?6N!2Sj{1(8 z=~MlqjRPRgG%_@ci79G4tfx((IAT?BA_=xgasX}s@-dO6@J9H{WA88%R7^1%a7wt` z)Fn$HtfH$Nn^{NUib$aOK^5_|@=cs!SJ@(}HQC-rw49%ai>f38nBA#slkKPvx_Kdv zadp5x$R0?o=R=|i;<1g@(B2%f(VdUbJe!L>X)IZ(dkYLilGu9{7>zOXAyF{z&nDT` z$R1b*)78w<^378sr?1!>Y;fSm0NPbT=8f1Htw>2F7d3EF^CAFl5B8bMq0=;2PzJaM zEUG|?LLlTV`}?Fm?V$rQ=b=W(X!6!nF&-fC<D_PGq$ma;g)7c-y?lmSU0}}<@<<r5 zM3f0!h%ZFLjge%T!K^E%Q2FcZTCkzT5l_bNzzH&VV|KiZtw^CAZz3Y+kGihQ-sEQ# z_Yq@wo|DO5ImJPYGK!tn!#5xGMe1hDv8W$kdq-k}@2Z;<B`o=%!IR*+z(xc`YVStK zXLM1n^$tWuC5;clCyi0eeEMV`oeS0(AMWcRJvOkGgHQcM@Zbt#oHjQ`ZIAboJH-XO zC`punK1c&J5YC43MlmhZ#^iv+0Jlov_O0=MN>Rym2Q5<FAEM9lS3D)me<#hyv;37Z z)iFu1@`Tc!hgO%#l}3a$!J9d=f!DEkF@Cqze3<3-gYDGJY^dL{enG8z5dx*fZ20Un z1rMll8M#GxtO3w&u@}aEYx)^GP0R$+S)u!l3?v(4O~y>NgUDgP2n9uyx|!<$4Jk(! zNZduBNB0MeSWC*1NvJ!}4nr;V5{N#d{~%DD7|JXv*l(587xze4LJur>z9PIp1hk{< zrU%IHE7q;q6Ylj8+Yaf$3c&|gE&?Gw=oW+Yxo?1p5#2yFJeBHte%yQ*`_U8|M{+2F z-W(XVK;WnWJnh+1gSIKnOizL!MBd_8rE#tE3**{jOnSHi0YC-PNJcUfi6^uvr3+^u zw40Jr{3VgRZOv_AoS^kqXuLm#hc>=I&|9;tF}pk&DN-xqLN4+yap#r@e*5w(w$5XI z_9lENU1~B=^2i;d5LUuu6p*P+NH215`Ix4_T;{oNdW*Rd7}jQ~f7g=ME@YpB9Vahg z3#v4xPo$DzPi%btj)}*dZl%Uyx*GR1khZ5z!mJ;FiQILLdJJiy7LcTzyLNzK0>|9e z8{7ta2mx(4+ftvM&NG?Hg4=e|f?MvtC{P^iQ?Qp#0g>W(tq2wfs6zyfZ&*;qOJ#O} zFq%7-Di@U6L1|?%SOLFjDm3}h)0{1h-R8_U;-RL~0$W+1Z>!b`=BjgTrA%Oug{SP6 z4_fI-^CBK+j1zgeQ!YDLTGA*+NDEEuZ3C6q%NT--A&pj;&=S-O&h&F{k#!PSM^OP7 z!cvw9tcV0vgKL)7%|#nX!Su5tsIC>Il!e>gM|r8DiKo6?qIxKtkm6kdK25;acD?ey z#B-5MA)W#@=39Ua5h~)vc^T?%M>6x}DJx0H4I7D$YxmepaqKdNCqEeBASg-@B@Edo zm&6c%64(&>ca%_TAimYxqO~WpXTku^Kctz>Ei=$clv@q7-<PRszh9QBhL>fk8n*58 zMMVKHBQf9-el#6$;svWgzIaT<e^=tg+EDeciU%|;aTg=yaUP~Bq=^!U77LcM?GnZu z1wC$qDd^YPD;7edDJ;$(v8NhJ*gNOQR`j-MJEn%JR6fJ7&L_?^@GKUmRw%82l!2Wv zW(3!L)f0HEeWsW3z^Aq=aPFTc<T$V9x|k-ED<^6)E}gsDlDbZ5{;2yCjF?ob8l>8m zDqa5)RU5p#s*@yMCB@k+tPB-_rAx#vbEE1?-za6+%nkfU30w|eEVx?uOQ-u81D6Zh zGKn-R!$JhR;G0%Z`G)5vpsa2OhOQRHe-lg+)(>oTMOxTS#{sihh>(F3idTsT@}?3j zlZen*LKWhIdhO^2ODTpRg%2VtvayS+uSxqVxANwHcKD-n&K{VEESEj6-s{O)=-GhP zRsX>J2=Wvz<63F=W>a~NwNT>Z3+L&wwkYy*Jt8&X_SiZWJuNJQBLj64(<wQGWm^Yz ziEu~B;z07dIT*dEw$2)!Vbv8@uTNtUh_!FBCzyaoILI^;MX6#ZlQYP1uyCJLA9^z$ z(=L^N64Qb3hOdvpHe!BA2y(Memr0bG1OV-Cbo0Mp$Rv+;Fx}I}&*iE=npu4|Z>=Vi zywu}^go-62@F=1L!bpx_07YVdY1<e&1A@h2-t$dhuxT5J2$kIgh&FBmlj3?efn%)= z5EsF0x->VekSt7oz_f`|yUuG!?aaQ2ZGy)|N=Lri_)a++V6)-0^PO}+S(u`%x5ab= zH`Kx!78X2a*^Of@Oe(dwV9L=ymrAAbfE6`ijY)Z;J5}#(5BWAsrJG)&mMNpUH#c29 ztd$Zzq+G71T+5$hxl{o$tcgDT3KdDOF7XN{s8U};$D0Q<zSOcQ>lLbO49;*h0oOr2 zbC9pZ=C)P}WX`TU#Jn>sB)JZ!tq7W1p1(MWxp8UPubZIZ9!tBDV4WbHn3+^0fF!lg z3cE8giD{;c9ene&8k+xF8k+yQ%+SQk6nmmp4&>r;{0cb$`k32%eXa~gv=>=pLWXgS zggzw3-(zGOFB9ejw4xUNK;}k53@u#y+ce4jY~0p;!eorI?A$4#NkyV?KbnRTIk0pD z6Dt8zeusY3y;z{6kIG?GOe`HocJMN|E|>xneNYZW#WO#Q)5COIMi4$(HfS*!4&^B+ z5(tHXU*n?_$Uwk~Sq34J45xC_2c@?!dY4g&uIk`TGwhR+-gFujGez(7Up_5m2+1W} zON@ZHNl)^<MUV>5NE4|e4kXRgU+qqTVunHwE?yIdlP;mb2kprp%H;0RaGLs!>NHWp zv|nBO9CpZd5$b*?U9GKLu7A^D*oJ8TCdqa(zo`-hfP$fB6lc+LiUD0B78EVsKN0(9 zel{kr`XQ{abj1vzq(^Tc@9_mU<Ovn8_`yf44dh8i1AB;(xMn06{vXAjDR6<4%f#*! zXN<GX%KFMGE?8P?o8df8xJQwo;QququU4cdxcea4B88Uw4hf8A6)_i-Dh!N|lX#}d zm=^~WZ?3B@%UgcTs4j2unbiJhlm`!q-V{M!j%c8wLqbgZq~C_97RA;Tg?Xv<nLTc= z)6=r~m`)RT;q?M338$+s3`{>AT-lVQYzShiPp|RKnK^Z}1dn5togSy@lhC=EgnHQb z#n@F-TT;}Szur`gnHDUk(y9x8SL(vwEz^Z~SyU||w}SZ^RVHLdWPt-smlMCrLsmKk z_4mwO`rLp?>~D}p!BJ-|ayWxQ<Q`Q6;TDf`ZfD5)q3)*U4Mx<gJcKc~QBw=QwnJX| zI>XI(O)|`a+l{An^Uc{@X7FXarV@`4QWI_#sYm#<g|BuwE4|`m17!@Pu?DQDy(*pB z)<T+*d8B=rW4l${Ve(N#xRQn5QP3^UR1kM1u6z{<N$Sf!)Qg|=B2;q`D6dg00{Rqc z`;$=j<(mK{P)&LR<PRVu{t-$?H4ZD@^n-b`@69sMMQFBC1p~4Cj-Y541V`&Ac+$>= zmm-962gCA6lo_>P!!Kbtzwa4Jhuo5t)b;mg!vQYr!$o%G#C8p7wQE?0o=kRg#$Gs7 z;#ccFRBCvwh;_IEBVX^b>ESQq%DkZotpx)VZ^f#`bxgUoS&}YLLLF`SyR$*iKMTO0 zwad@wzwri}KCY-;Fnzg3ktJJJ)2qbp$lg)qnq@S%DlXUE@e_fpw98$ti+W+TV^cvM zo)0avE+v2CCxy_Ssz=ct*jk=^q{A7U;^@JY;3t)<4<4e@^o*(HcpPd>zB}<*D%Ke& zRtd1Pf+V;Ygi1r{<#JzBM@~q7A+@XYwqfQ^KkNn6ux|$AqWDcY<nMAT?yg&L2x)zX zg)~Zzcotk_r0WZ6H-MtHO9ES8xwQ>I61g%Pg=rj&t7VD+9E!V6v4W~P$k>#a3d{-G zlyM1*!U%Wamc7<TvR$xg_+KE_uknFAxf_FcM6z=dX_!1E^$3BZ8MH{xqoS3oOVxBp znZTmzDHYE#M?NQ0t3jTl5Fsi%QU$wM1Fu>q8=CXJKux#<+)_bz2LzLuq6XHEf{C`% z8hRE-T<_;QP|ipX_KXe}@b0cA64of;E0v^!EK}+dV>~PRA~vnF1afViNsM9%A-Z&8 zymS}a*VZ?C$%GcO^W$Y2`Bk-nglnXairgU=9%XZqw=&rxG@|KcIjusrmMF$tNzYb1 z8!ZY%;$2256V!T&@_|HYk|laA9Fv=DPJb2MR&AIfidakyL@5--GhDMf)l`dP9t<8^ zI1UV6$(O%@>Mv2+()T0s-K;om*pD>&6lOe<o0s~`%}8KUBN26iz!hKQTAWyR02d}R z>+9PJVlOju7H7vSp2jvjDzncB@KXnR-XdtFYqs$8Q7WsUUjbX5BY~apg^h$}A~84$ zC^dw2dQ6W^zn3JkV~V1lnxH!X<{+R_lw+IfR?zHgz~N>$S7cwx)(SwQf+kjp#%D@# zh{ykW>$1aT)5YOBuR(z0M(@HUlIAyFCuzNCv2^5QJK=kH(KN`9hf)b2I~p<3bm2F} zmO?SuGIK+GT^$cNuidj_;wp<O!{MjY7A&|-MK|xAF#_YPnh?Y41!Be(c+`rP1-vre zF+4iL3*^jVFFzgQ5M?$QU%fdO_Q40Qq}YlVv$6D)D@o(NU^=&4oS;8&r{V|o$g@y_ z7aE$tUr4sX6(s?d#m_(QY`}~^_TRP2O8i>}^&p3A%a0z7*Dskx1jNlVxpci=?aF}w z?o9c#u<5by<P-!UOXT{oY?p#p(ji?d8=Y@*c`~^g#mPd)VdA`wT~OBuiD<T7va)^# zaX8)w9pQk=O>l5iURNxjKvT!xU6=~^oDUK^$QHst`EV<o1-u9u&`qc4EW>qi#JG)R z%0i#sAXtj}&L1AFINPnDn8*iAT>gQmtbxmDwvKP1@x*5xKX@ZywvKfE?0{N7f;h(4 zU+~ShQD^1Y0e2lPcK~fD#A*>m!$la`HmTX@_*PsQ1FLd)Qt^zG^Hw>Q^nU$$_iXg< zG|_H`Yd&ujpy0In3?bp<-25qiNU5ZPSf!dR$P_LLbF=F3r&Q#W&A{*AU0mXex~y~@ z_rgO8J594o9Vhr;6)s@Nmh$Nkd{*TXE)ze)Ilvcr#MkJLYs!*rjZokdcaC^Q2P~j; zL|n<aFGnPInqxohs)h$mVIgEUcUs!0Hk$(wmez6@(aibN0ihed@}xV)C+tJXx{D~| z<V={cX;XZ?kmEqLMZ&kV7=q5ws|`^Lf+)Dra2-oVcY-m?_nz?P4J7c>{lm$m+V~?d zxKr)PH2A#={j!vfiy~6EX;>ZWq2zH~sQ>~k7c)OC0y$JJW)!Y}oC|ynj<t1@Jv4>j ze$OqW_t$MqcuDwX?9~L5nb>(LsYq^TK0#Na*WJPN5$dH%|KM;XG-wRvmV)@CI~L1i zffu$xnG684xR3_QaNOjlX)sz)Y)EdE=1*t#8O3S#&_Xbl0%rhiQ?Z#~1DyC@kiZ?P z;46>k`Kq#A!NsYiF#CSPL&%7t2^Y3C>__yr-{#4qk%rGD80@^A;m3p2<Px&93b%K- zZqTGtI%?!NA+X8@nLeQShTv}2h`$`O1EeU|<A5XPg;qE=0%<xaydV)yh!!C^a=7Pi zJ0Jcu!e>7?Fg#6pt8yX;7r?RVM(*-ZTi7TF;h<Ihg@9=i&bOm<ZoYJ2G4C$f0=G09 zS(uGQXf(Hz@@zGf>YS@hBoE5i5*#}jf=F@!TX|@Xe)?74ZqUd$Q(6~10pgW(${A*! zpNXUGZDame5Bpt+>^-qqcJ2H`266(oGrz4);O#^zS}Ta)?WI#-F*7-o5y!uGf^YpH znnT~;7!gL2a9J#pPY7TO14^)uR*I;jhrK|`XvTa9TG<r*bYOKn9_feej(JaZc+!)v zr%_M{gX3TDs`yEiqKk{~ybI;yEkVTvqykR9UfWBOD18`ES~xE|W}@RbA4t{0mv6LI zr1I7cTm6YvVic>@w=uBhL^WRSG^B-P_ROc1PS?J{SH#CXJsU_D8fh?nX4dSs+Dl<L z!us{$S!2R<im7gY1LcE?DVZ&rWj?8yCw4iK2_Yc5{M+;ajRv>S?5+J2x`vJ5ZD7SI zBv{!#IMLEo;9`h^^SdJqT9S+~uY{#j5FlL*Av}^Jea}$;UKk0FSj7kTM&g<YKCyXG z54Vt9Y^9aM=}1itla@Y=aqRV`U|vGNeu;o24%#^le7LZWHaZ&_A-5`E@Ez!PBvGBf zF20a9EI9@fV&=ISw7QKT%<4Fjn>n~aaWRF<vGPNG@)PbH<F9Aqzwtl2^0if6MXBgZ z*y!g_yZm<a=B#rUp93Agpua`zVcehqq77{B&OP7!OplzeL??vt8VY4Gx`eU}tSwU| zI=-ISXBUYW-&2e+rNDlD4T}k=3GT>NG{lU_#Dvlh+Q!`v7EXjog}RzY23n7uSHii= z)0=HSSW5$|CJyC;y|ypk6fA1inwz>r^3!{}xqVTzjwYX5l!ZVGb1;cCqC`nLzJj06 z%v8Bs4k{dr)hzZMf`29vGO5FkB-XsRkRiPXWX4K@w31vcX=Ta?5ocK0xXr9z;O?xv zTMs1`j$+<H79-bTD;khS4jIi~1FNmz_+z?D8ZZ>TyoH>{EpMWSb<5jOKW&}crwSG$ zbhL2y<~N%del{4wL^gHv-M1khW=|35VPfUfiulP&E3H)&ih;pZgua<nH9i|QIA!W6 zs${`U=GLUB>Ej4o5_}+fjJu3$P_2MfZN$4*xXD3cl`A+c;=a19&A$C7>*Q)w`|gg6 zKf_tc7ZdR!Oi6AwX!9)=olwhO*W2_jaq~S0W>};LELR}=TD?2f?ri`NG(i&a+pRZC zL#%5~JvVxxPO+H!rg3qPf~vTajrD9zTM!9i6Dm7=TLQ@Q8xUdA3HtOsG*k7YX29V% zzhE-$<X2M=Y$Er-t2S#3o{iK9+mj{8<6iheo)(qO8?@a#kx7Vb20fvPd3YsVzb#-d zPT0VN@-YOS78C3u@w{O7&K&w5kXwObjBimyl9rsN43bYMz;IGUOoHj!3B)~_5y5JP z<{$F;B-sRKQ3Ux+Ag!*Z=LT=iYB@mE|I$BiBlE(QLfh3E+k};<F@$_eyO*LYeA8q7 z$>6Oez2&w9N-<tt76fL>XI!VVJ*<UAVW}uG59!qzNugf$Yn~A+U&REVYK%#_6l#%Y zy}={dFCkvqOM$@Z{PM3LBL$<uV3~u7tkOlS04#NZTd>siVuB9#g~Zy(%KFr#0<dke zNWxK&Z|AE52y~_XZpU4xqb+<d3h4Yr!lwY8wG%d)nsE=j&AH(sn3xfG=uucFJ2Q2# zu-(v(6yDGglwf*_fS$Mq$hhzD^om6d?3$@Fq#Y%=8*Bnki_}2ZK=mMk0yE&v8<t`G zeCtP@g9f)6AIfGIm7?@2=n&gKH2`VacwZXC+LqA@`z7%G?;@NSI;tS;zSutv#+&{| z`&+eXgJjwKWHR|yrmbci&_KD|(XG3+Wwg$c4eM@#$PgJg=ea_Z*o$nF>N4wd+b=C= zC8|Zz`ip`>LKa6WsM1-oIc;4Fbiq6-ffk9k`1)lFqF_Gzh<N@oZSF?jf|t=Zl~}mR zme$EG-qqLg{mrziBaG$STJ(%mnrhj^6(k3~(lM?SjO}iQbzVqlKZSJ|*5=J4Mg;EQ z=nNk+n93JSXo;j4yy`O?n~bjT{Qc)ki3LWo#=j{hk`U+?lnpL9WjV&-=4gN;SLD7w z#ufeAdbR9#v(05Cu{bTfg+lFgT(WJKP-vGKhxk}D?$M+4g++!2{3tOUv>raI%7}#! z@lQ8Z{+j-N=Od!lgafle@*EV1F;RT>mrrvWVKBvI!g?||?Tm~>)?*|eSAzGg*HxeQ zo_DZ8y~-C)-t;hTFdEEibZ#mg*gs;|h$}~==#Xe6OpX4}n&e_z9w|e<w=jq}ti`xG zOzQ7P)`FMhDchA8=tw59iDaU(v+x2B5*fAE(>nWDS;YNQMK(^)lwy;{5GMz6+TxA` z?HhjU!zivO@yZ6wd416$?TAlsF|C*@P#!!P?kFTJHM~3qcM%~$nw$l`;v&mT@H0z> zJR1-3p>fsrh~se&9j$1l7>pWA0K;F*Hp73!q2?c!7K^_mAuUUQ6FgbXOTXBfI85iJ znGq?RP{l+p-+3%RY;6P;)o-&14hcZtIR}H-5a%m4k{n4E+Sz#!2Aswx<V^TCX2fFf z{~Fx58T3dTnb2(E%IxJ$I8)gU*Fa(%U36I{<uPqSE)j(njGZldJqtV~`iYP9G~lUx zZAR`B2o={Ql<0${XeqD$CwI4Xr6QO5ndgZtT0tJwKo%V`?7~0w$PlhYc0cx5-6BuP zTLwybo}WWvEQs<**gls^>n@X$+{2-!Musv;lm|jw_{q6aqGmQqJp7eLGA9!w1O;*0 zH`4Efe8z2GNyW<uOWNgnEJZ5yj7BX2ibR~Zd!!hD$oHw4DRnF~P+4-U{t=2k6O5JE zq?k}@`nj)^%Y^j2?x8p*4lPl-%9Bc}-%WUxAMyE!xI%3}8f&dGlUY=Q14#)1Vh=GI z(s1B-N5mDBxf-IP3Gx;ue*T=PA^kjvl(-k<EZqd8U?7+|KXzXTI6BN*e47-IOxm*q zEZS;^k4g$|4+FTIa=|Fm8&VG_gKTzS4vbhtl@|!IUF|+*;$EU2`xoCv!p_2VXqaO# z;!5-rKG_s#WHH%c+ls@0Fiu2CFG-0IQg=+g7?21~I#3_Vs0AFDKDp9P4Gv6w>*dUl zYK;ZRVHx$aoD7vvqR7Ip=Lm}|tSsc7Xo++eO<4jjy@y4L1RE)+6NN>2Ymm$arstU@ z=6Z+hNuJf)PN6GJr1(?jGsrvi^k4yE&gcubkyeL*Ivr2ob;NB0KP8uUOD$VxTs6)9 zggrG^Ln~};leg)&F;4j3?&XLvl$)JxU~Qf%!-X>oaA4OK2rf~RoZAx#-2D-IQ7avA z&h4UVcl31J>*p~!9RY=Ev}=+LyZ%625o0Xu`Wt23&{_;4Sy}=NDXiDNhXXxXLBO|M z_6(Hb?B;*3+!~T7POd<k*3=qXm6TtSm5DF{E+t*?_QC`jAED8*kvpSY!cSs{Y%EXS z@@qm#pl>ppt~&NjA=&N<%B2NF{=BRJ|5CruJ;G;mY%AIIWY?Ff4)Iy`H&@uOqgl<I z9+dz}NpZF%0Gni?Gdm)?mVSc|;wYb&T(%&aC7lMC&uX2Uf^v~fx2HQbOR<=D6DfF2 z%*da=z^wChjcN+|4g32Humj|dx@aaD?Ip!A^1YFrj^sxMUxq3%b%NOkjSj;)L1l3# zAM~eQVloiyEB)De)<Y>6`n4#wHeAOE^_j|NT}dd2F2X$kHboVhp_~rhyL<PaC07y+ zaXAue-&3i~YDZMx@IPq;0cSD?%p=yA7>_ip^Jp-I@iS$80p$7M0Ox!*yPV$N*m#4s zS10_0{l??^Z{JUPkU1O1(mzf&F0Y2ejeooMuYvqiB*Z=1+hNqcu2BkID`WRe8dLEA zfs^6Y1YhNWy4G_|D!em5vJX&KorB&P>KzC*fcZ6IFpPOV!DX);_^RM8tsV~`GEqF8 zxd*IKGaBp42xKO37|-%IjR~HZ%HVRlOz@#aMrT{#oi~O`Bkhi`E#=!8yvGleJ!wzi z(!Ji$b8L%2NF_3zHcV+|Dtg2{S2L9E%1JKU$-oFbBrY^HLfQA4FK;{lSRS4Ij5Hq; z7Rd3*Te}^GS;{}5X&^?+hVceFRC7^;QPJ*MZ+705A2Hb35XB??mHaSCMs!DGnHyfa zzvhoRZ^P;`sqj`t`<V3(JoE}R;(8=h(!+Z5Q0*{L3?eAX#>TJ`DRGOFZ3oluk)|Wx znBg@+364bEBt=O`z@$g!?g|1*R-L14oazCgNQXq}*6#&D=_d)Id*}~uB)gHP`2RC* z+3~WB;vdff0OC65yZyetSlC-?oHsxSSYqOfn^^jAj4!CxI2i&yw=xEVVE2{0pHmLE z2677EXLDZP>YCwj*;zvw3g)g5|3)LqvKzw2EFYAMxonVFNIw0W?8yL!>X;dQG&Y)+ z3ct(Q8J7?oME*UXn?3PbeF&}L8;MQCy}TdZdP9x5EorL_ytxRC_E{Jf(n6~7aC?Z$ zp*-xuPfq*cKrzb%liRT88-p%Ny3RVI-rE7bj53~dnTN88V8=}Ng6HlnQoYZ9!*GgO z1)zV73ghJSLlE4B7S@4%CCO)>E;uF*p?HvCL1$8z6)D`}c^8t8yVjq+$GRwI>yqJ> zNCOkiCVP#CVWsWsfh5l$Q0(AM@AQ32;ThSbe)=YFze)R4+kJO=wRwu85q`H3N_$rf zF$^bn-ek;hyu&&ziW}IHHpQ<umW)x65qVmfOz-1r_f0vvJf`ox3^zs(X(|E3+EW&q zSDb#>+<(6F{JZ<rabpBr578O&v{2mFW3%~X$+FBjDtC!n(6WH35w`;wMmoE~r`eg* zIiaN^@s~Y!0R5_zM6<cC8YqCcH=Z6O<+8TPaBhrYoWaqRWuO<ZOEEO;gIzHf^+{`N zC8@x?^F9qn0U*gDFo3c<N_j)qi{MKQj5se(B}@VsA5`4BEfwO?AMkaqxfQzAe-#s; z?&~ZxI250h=;JEZX}w2Vcc1)R{Q-IpdPFL(LjRB7IdUWoZ76>39s3bH<!2joJ9z8? zsqK%1FTDpp`HsEH9(pXo4x;ecLmwIaK>=`cV{Lda18;~H>@ib0j>X<fRUi4<bAd%T z015+-lC>wzkf%}q4mVl>K?0zqbB3n~$GDw*&A<#DIbMF@;U|w~rP!pjijl<NWkF_V zYB8!2^wCS#oV=#vrUYeWhW5PWJo7OT1D9OZz|izJB!t?7+fiRuydj`Q?|6(q=xl-r zrz}-*Ivh`H;M=*Loqa1R3sW&43ep_uk`g7)Cj5qa3)VNvirM#@aQ)R8ix;yZ6nlYy z?l}mE_wo&b90)#VTU`uL6%9or87))q1AY`6@xGc3Zp3Bm78VH))Bt~)!Y+Q8W$g~J zVp4rtW(aM9`;8Y;XBdCKmEi9+t}m)LTy@?FRo<_n#rXjFzF4~PwSgic^aFUrM@~?I zDER4iv8zOMIJo{G8koolffG;DEO3Xw?Q{`)^JoidboRio2Iu&lFy1jb$sZ95H+ZB! zAR@+%cp+&)=+q%~4>9gDgTfbTwg`S?FR_+zoqLQbEq6mJvbR5!ZAkTC8#mjup?)w^ z$!o|35_jAm_$`}13VECcvRGUz{g?|7mDh?E2|^O9`&o7LOET<YPjP^XuTct1>i&Yh zpsL{O5`=u%$AXHSzJ`}`1REKcQZPDZR0#!fu3GfaE38kNb(D2vA=LZ<nbNX=L!oYU z4RNTdBTR9}i^Y!|3UO}Sl95I6)&MI_MdA7KKuRVF8FS&=Vj8SR!;22ux;b%Ui2~#N zdqf$^B6l5Q4SIi2Vpq;t1sIw5b)zzL0c3vKhK|phKg)?XB|U8CrqB#hs4~O}soaQ& zTOX1po=N!*FG9$`Uso%a@8DD7Hy6@=-d*+6a|0-QgHXJ{efIp}{Bt<Hd6IjmA%$8l zJN6dbplhTQ@QRD6B-su)nL*i_J`@_H!di7qg!x}(B-L=oLS2+H78`n|<>Igzxc3Jm zIzorSR`Z)13KmHP_bc^x^Bzy>VezB4{kmYdW{->po1_5=cqff&e3P{jN(tG$8HXy` zm6TJgu_(Gif{`-^ISI6jsI3G<Iqh_M1)M%8yB2pT?yK1!p&{W(fHjDkkEMs2Aab0O zd!~t~kL-+z-NdF(O)+q)^NNp~r#F5?6;RbIl>SPoW?y|ecd+PVX2))gK?~nT@b$q{ zA2;00V`mo-LY!B3J8ym&Pp@a;qgIpg1&E||-jN=Y-!DfNoMco<(iXW~uk^+lE47N` zb|WYX*>Bg}sLpPFAI%P=HYbzb`>bvToK`}n4st)LJQ(vUX_NYYUBM%VS`s0;t~cz^ zExiZ`ikOYq08sba`@{Be1hjiZq&>XN$9eoQT`$@PZV0CK^XrHSEsn=?6v1DIH_^zA zk=lXB#1(Zka6c(xe|eF1l?o$KCF!c7?7%oq)wfVf2|Uq|Mp4;7#L;x$kjL=1Zl&go zh6E<fi<AB$M7*)8KToc(0W_*-F!PcZ(M_tmz>`U6bmdWrH&rX#97jBm;Cyg()A<Aw zS~;c;NsmYas*_{aB-sjp0U8|)>AXG7&?qlraM2M>f>_)vd_#s{&3IyvV^y}biZ&3_ z$U&X_gi{Fm-^?^eCdEiT#R$_9Pvx+?1y<pM+cG5DH08z@4OeOM&wt74_#$Z+MyZM* z{%vUs!ePIQH%Y+^pMz!h=xw1Yczt;|Ms$I<yAdH#rnLoRC*#j&7BAX2W@rQ;oayBn zBFCUU&0%LZ5=%`08#TqY1lw&(|43mqGs4p}fK<^GTuPsG0)Yx0N-rE0Tf~j*Nv%xy zqA-}pOx2YM*_Sv97-IJ-jC9SkY@tdx0&D6yb+JWJ`OijR^{vQYaos1RZ^4;<#~BYZ zpf)x2yK&E-_}UT_aNXz#5ov0bt;L+5GXOC<bzu$#dmANhKscEITt%f34a5t4vr)Au zdWmB%;Ru<BdAxnO#VU0vL4ElyH1!@GMDr;5E}MWD3r*V59Y;OFX-T#af{WvWGLfz^ z2Eu<t7}BN<4{PMIg*0lipi?bzVwi4_qk?%nn5)*QDy-Oc-pO2!@QRHx&675L9IfKO z3t$ScDR14jf-1f5Z*qhc_-BVuTpfZy{u74E&cYBGYbz$Ht!X1~^)3fE{KVxXDw?t< z+yM!~(ehT+#4*?lO>Ye;o(Let#Xa(jj`o*@3n%LDRAq*l+|A=<#K1V|8Mrc|`XN ze6~jqcwtWCtEqx&zD-t-KpvI}Byt<DnPeB#?-0X+2+d_27!aq)EIx?f3PTR6`>^e7 z-Dz)PgBXak%yI@@kEC*(9Qea_#kb7IqaUq!mJe+`F?%UsEY##P3h4lMr1W?NYc!vS zO!N<i$`RKgRV5P+cmG(C)fUydpFR5Tn+>EshlnD0P`VO!EY6YVaTa`FT+CtoN5|M^ z6|!M5&iLk0BE~|%UNh9mCCn!nw?I}7$pYssZCu)8!ge-Mog&T&y=pNjB`oL84Po!v za81~g^{mwD9A!{}HMp|c(qifw<pPDjXXQu4o;~uV<_xl4<+#HmM$S*YpMpm<aghAi zJ4MbR;<O$`g<eoCr3HBz>m7{F7#X!s7sbqwMj<=ufCmSLSwu=2mV+Xs{6ezm?`O#E ziTb<nef%cN>2!LuqA1dQ<l<(c=#_tkUMZ}g9*RkGfR;e23F<^%wt%7)ET`%#4WJxS ziHo!|UEX!o5bgVCenQT839+<{2rKbUc(D!C+dZkdlp@77U`f?Ecyomcc8Ignzz)sJ zb;!|_bd8JNyN>=b7};U92(}g}0Taq6i4b;t-&<Hd=R(jk|0x@&*cb8^tvZDkQ=1fz zQR2+P-+LNcdf(Piv02NKP9%;jYp@FZG=RPwg6R|3q$}vrf{pLp(l8Lq)T0#N*%c{l zAm$Qb!$jf__}0G7Vmtj;uenc&p+jJC5vNc*kzwWmfw}7YWsls|=TV}~;d_UgJ`7{> zl^P|+)F?0XT{4V~P%Fp=o0yh2o3o{-HVVn@eF-p0U3(gX;!Qz+zgYpXR9~XnWum|2 zH}jYcsbZFNW$SPpYvc#Wd87y|lvkFA4}rutq3=4%vf$i}#mnwsgB(NQ#@`wa^*0tN z^`A6Qq@_Gywa|p7WZ#MG?4`xg&8-Ol2pz@n>q4^_bRD!xaAVm7Wk_Kt8AuKi1u1<4 z$OA0G`|%aD!C>^0sUHN)Kqwd^#E}9+CL(xVBl!sCOf^K!l&jvGdfKg|sJJB4@Dxu7 zAmK6(4PzS}D~b#e2uNBt$BrkT$^Zqy%}^DPLMnx+BrQRL<oc2j2~8<2aXLZz0OhZ^ z+*rc;U5^z)%LN1gp&Cvu;;1YXt9?uYCv$^0Oh@qb6HJWu(or6ef>~EVt<ll=K>Fz4 zsOur>A%jky%5cJ3P|!*`CL%6~lgPLKl0rpTm&5Sucj2=m2op>#Xbb9p!dl>rSpTMX zTYcD+;G{mOaicI~g+4;^C$#yH-vo=eXM${D%eYXrCuRfNLXu#MW-TGekK|i-N;W$F zoTvYn^X1=M4wVD?!=KsfjPQITKjROFp@c1ev5`Fw@MJA-#lP7`o@om;=3%B$q~q!i zm)E}6DF5;G7lw{C(|HTS?YZQqofE5pifmG1_;;#ILT{iR3cr$wZHg~&=Lw^Xqaq&# zc_=s_R?F?`WXg~q);ocf6~ck~=}*@<zyXKx^GYzx>dAUM%`#z^-q&c&o^~A)Lqg<j z+SW?XI*8n<?4^`7ZRDRZN~zc$V0Ih<>p-(6q$CU@OTFPwGTVU7qyd>w%*T0D$z!~n z(FDX~IMJ-zLH2nx;oMx^1<clO&Dg+LN1uY1L&LY)ByTdF;|pt&zZpqPIISvPmY*Ky zE|G%afZgDl$O#P!B>NXOQ%eWsECu&<b#E2<*dx?@hKh##+Y5F~MXsf(eYn~*t520! zPY_CA78Hxd-RE!Dw#543_LI%;cXsy=fXD}|MD_UT&K`1PXk)BMlw#}Y?$)1w*g4q7 z)1a@t+I{i-aC^UK(OBFSXm*VEa^zd&|I|P(3ECRRg=~TbKOT&59W~2sgBG;oDo^l0 z{EmhX)%r1^rN&%0nqui-XWPn5iisY9xIA(z<9#|(ORxgOjZU0|$nRihF&NbqfFv)f z=7trBIZo^Pf`@VNJ_(9iel}qRX__ZUD90BJ5N$j`y<Yh`%%nyF5@V(oDp73-?asT8 zX7LG1Qs9@WRYEQE;Xbh|)kjQaal!1cj3q}7(yd;4eKDw)Sp}X0YPWwPfwZmiu2L(n zV(Sh_p<97cN!JCj$Dq60^*R^-74jjIfY^UZfDq+N2ZQKCI-V3S@Q$SP?gY0P&{0aL z@Wm8YOJMVMoERPvi&Z~Gp~@s+x*}QFk^dABV@}`!mv25HDsb&`0yE|(`_%xQB#<}G z;fK^}(u8oAL2Zh+8v;j_BIFFJm~RdN54LwT6x&~BmE+kYq|DX$H`=w_@@Ik`a_0Eq zjG#UDZO~FwnWXVyVG|_13M>0JX`4?RHz)}b<Qs4;zP{63)En`v4kepJEYe-OLbWK* zn)GCA?9&BJV+Vt>3LSz;<7RrN#lv5evC$afM(=Jh8PN_gV4|O*P7SKXAW{ZbQbg68 zv57M@qC}d=^{O-t9mB5Fq{|VCHPaJ^y-OSppMg3-F?Gkqu;szF^s<nSO|mQY^D0aj zeVL{&UyEPmW^RB}i+d3~4z`N3>^X2Y&^$cY`%;aj4Lh~hThT+eHte*=LV(h%1v?uk zmX@sGIiJ&~^n;P6z?(}A@|Dv~Izp*u@}>Z`&+m{efYw-y44l4cgLf!7Rc*KxbIoA! zc^jmM`W?*ni8favgSV7+4`I?FbByJ77Bgl^>3J5B*~^+nOC{rcQ%tUGNczk-Q=H3| zI{#n+>~2asF`2M}7Po_F^fZUGH?y-R`nbd)oXwSVIV?6(cCzMjheP3`nBT`h%u8{Z z&X@6K%B=@$Ee`YWGvQ~4(~PyTUC>K-7<5?Lk1lr6E2xablg}H^$iBSa+<3YKZsMq2 z$|<;P!vtbR8E4^flYXJg<Pc86W+!9hu)w{B$=F8-43`~f4$2zSgw*A<Ts8v-p3RCe za;>NuKaEi~dZxf+*PAVL6iPGMD5kA_m?cvZsUKhY{zRPC_Il(`5PoSb7F+X%AOCi8 zVVekb?FO}}xM_ADU0jfB+#V<85q-p!GSn+%kYG551<yOi88EI1s#PEYGR8MFJegD~ zvrvVykOhvMsAKhxj(1fjLY1vupTe|?)W?=4Yc%CGW@Q?&_0-9-6-}3?({+2EHg;lN zr7=(_KD!_&gj0~YRD1!M!8MNp+u#Q*n#yW(&Djj=DV*|ux>KB=sLQI^u7fZvPj0XX z`O-)FgdY2mOZeJvN&m8Y&s-`F9IW7j#)AbenP_e_mLoU$A^VlEGMW4NYJ~tKXxz-Y zFlE|u`DsCV1Z|x8T#D=~p1?js6)7Q-b}wBlImDEz_!VM~TarL#iQ%$4uJrgBd#WRs zubeH7H^R7T_k^|WZ&ndZ)YUD%HY${rU6o<tNf4O{Y`BnouYM^e+Sx}Wdo0<)TVu(O zM|{_k)7({{Pk_)JPUy8F9%LVcDDL*Wv&VU5Nza?bU=pdfuVj1(G4r1)z(@f!xJ>1x z^I~Ei<VA)XsQ7(8I358Z?d<{0I4wX1WcpSuj>2^5ah!&abqPc08P%UsM=!FYD`oPx z3EdmT8W-(6F8%@KE>U6gXG30qDC$rankj=g3v7CDKch@eX7B+DKnR8DjlmZ~zRsj~ ziW4%z$iu_4u>eFVM|{#Wn=8T&xraGlJI2J4gt3^NjT2!RP*3z&=MY2T5%w#pl*x66 z*`$lBeE5RkMyK=b{g*G-e}4J$>(y^xzU<$5`LZkjUF~%5tZt}sU|$9Kp!!;XAOsy^ z#0pC4^KbZ^;{lx=X5m?+%xjeD6Ie<7ED5iGuT?v!{(^!R?8I$zOGXL{$G93)$$6a( zIc@~7SN<7C!Zc3rMo(gGDR<b(dM!*~r05VqM0@1;F($O~&zCDa{j`4)gkl*C5F6z| znt+i&7|=<2(hRdi<w2m?WJ4QA6fy_nq@+TY1PQY|Aj4A^EQA4@79t8cJgCot?I~1N zlIm?IC#gF1Z_iig*67;uBG%jMbmoq=MQa2}aej=Cg@QS7EfcYZsOu&66Dx+}Y9^|L zF~64<)!RXReL0@k*A0auHR-KboH<0Y6%v@H%$P_LpKS3zwypMOe!UI2!5SW4gIN&9 zwkvO#oFtTxsAZBWb5<l3FVa;Uc-Q|ZN0IcLau9h$0;VyPrJS8P!osEapluVG@%>f% zR)-23Sr;KW%u7ExB!y+Ycw9*1MQKg}I}dMwb83G3!yw5%<?S%`#Y!5QKQfzDRxUxY zR~i2_?8QB1N%5TVSk=L?3qxoYk$#tBUO=vR5mZh#-ycVzS?w{E!}V&>Y0NKFI0_r2 zfNuI#l|%w&>Or`E&*O?ZqLK}XGI|`2tuw<-T@+40m=4EYtPKfA1y{*Q5}qPxSP$w& zRq)(#qGXWmN;A6>`AJQIdl1-;ftc+p?n56Ab|5}XD<7jK&wvA8U@cYEa?gjg$=y%G zjk{kgKEYd^PQ1Fyi+=S)&WU+0BnsLfihG4NtcOY7((k}2255*AXi1^LY05i_7?6Xl z^!w(JB*M%<EL!qyT)^TOoDe|RMyF}3HmM!HXAzSIIkfsPgrZ@3Ao^0^3!O7Yw$FX1 zy3ev76kSnm$jLP*hrn-wDmGZ!ejo1X6tOC6ElW=LmqUL475Tb@5&oDW*MeRsZkNHU z?R<R?YqI_g{#DOT<-#y$csA+1xxfKE17Au!^8hwFQ07qR>rmfN^OxDD+1MwfscmFF z>%#E5kdFqLLujZ!(l`bdex3;7iNjj#;ouwRUN$St19m1XIaUsf^#TM&sI7S9v{q9^ zF7qHu^#V0gXrSP_yf0yYzzgj>)rqNwx|b_m@i@QIwQ!2lx;LT4vj);kH;NG1M>(J7 zxYRuX_Q)`JCBbMXcRUSbR@Th+Sicv<Wt2UxG_B}1W!Z*o*0_=nDJWC!pr$ti_03Nx z%O{6Hn$FrP_(86~cg=k_ivSy8=d5y4VZYcl4(7-T{bc3*GGGgnO1Mf|+L~jXE_lOg zOaWB=MK<7HDUfAfiIul6-29;00449N@n59r*BfF^h&Z_<S2|W!)cad}ZqA9A@&l|< zBod@HiO@1=Ck?%NbobROWNF>3?Y&p8JWHWDzGKKthSgU{Ku8cXJJ!4>p=7>ssca?X z&p(vuRpaPFvC=~I|Ficl>TMiJn&_**9?g=HMM$>WGt+9z-4F;_7?T8-gzWB>bwH4W zDA**yAwbDmTi>@2ah~uz$@%}dWoA`@7fW(ads|<(S*XfuWMpJSWL#z!G?6($e0>Ry zBNSmKu)%*Tdy|*ULO%nCu(q2s_2T6A)9w&$0BfWC6r>Fh0BM@rkA;*;<!b4AWr74& zWK{_?`Q%SwH1biRk`EHayp1nQye_;=q;&cYr`5J+uErL{b(1<m2Jh)APfTM-8}0GY z5y&7;eo{#Ul>9_xw>9twq<7-qgH1qJAnqRSeX@=wCkX7+<Dq@jhA;Phh^(J{(R%n* z>lx|eC-~nN&voKZpdDTy$GQuwtySp0_5-fE&BxEixJ5ZV!l8>0TX5<omn-V&XDgpj zzrL0q6izR)Mp~^}6RmyO0t9{wGF%-@rtQ@N0V%57^i^iMTC09(*Kjqss_%S>*qhP+ zTIWCeU{Vp^Kl?6Th_aWBz;gQ8^AyD52}N8=0;+Hjl!WLOY6e>BV|OS^<L3pi5()=v zq_QheIh(f)`PYle253`yhR-fgbOS1SDC5QTg&WB^BH_*ST%Y_jIe=@9OiIy`v6~1j z?q;}>(#$qPy84cuoi!9AQL?T7SvFT5MJWja3nf(%A#VdzMgQ{_5P)UC+`{HTUw)P$ z_S#B>G^nqkz9}`q);s_vC(S>!GB`2lr5eWr<yd~}hxf6TcO(|S&R!9e=E|_(IY2H5 z&?Dhq;h1P{sP;ty?nv#w1f%bor6I71TE^=Kfz#g2AS+9!n>cmQa!IGFB?YVbF|p@W z(}z$>7rJO3(ioZN_l`n(im;RSr@1b8Z8RNYttqa#qtaB#No4wga$9_&07yGSf3war z`)1-yRmx8VmkUyvuB|FM3CN8H<B%$|<5?nl?by%?Qn(o+@`^L;bMP@nk?gaGRB&~( z(Ycx}I~E!`Qt9T`^puUn6ndBU#GB`8KQiR3q3V=4<D1UNuFro>SJ_B>N-EC@q6cE@ zg8<(S6@JI>-;UZ{Gp&bR(u0<7dh|;kuQyJG!TDXE1eyQW0GH#q19@$<$i`yp!abVo zG)yOko#$o+^>0v!@iJM2>230Qi^l6vo<}4CD%|K^(Bf1(@N^C}scU#e83r3X#-_8o zU~AzB@z72oXE9J5QfpG5K>Y$+IfXjPwwg5$QlFY$%&Z9uxi<5>9T-H=f3o+8NJp+5 z%}N3@c7YrJAJw3A|9tl2M5aSJAy^m}w5cz0pEY;|{@1<$%2hzt%GjwMpxhb^VJ6L# z&$OP0Yb4`q+YEVYPFV&((VYRcy@xq#A(NXs-^20p00HBml@J}Nh4Bu(FFjz)9Nrpc zi&C_ZPkhzrD>ylpm~KR-2p&ZzI-TORq66x2p#v9JPmw-(umz;`qo&9C6A_E~Va=lj z4C%|s@fnpb(-(+uNYelgUxp+D$(tq#kAqT(AI>tlq0z3zG%E_klrWvV)U)`&xw^2K zmyn}^B8d>G;*0g#@Tt-)IxS3P6OJf!ABFW)1u?ZdGd~C*2D&Dj;xIB!O&cL_+l40M zV!;0jY{bnF<V0dmcBKX<UN_i~{Aw@g(=267TPjX%`xCgisMM{oCkxo|IFk5XOTkL$ z);`t&8w+T}s!sLLPlAe-628WamAwWoN-@dBjbiq)9f>Z5PJSk`!VU;Jyz%)PIDeS4 zzQ0Mfwn0!7xkZ_Q1{6Tgf+KULL<QyASD0U>d1bYzCJUP~FwEmK(Gu)<vXHEI_Rm}A z>?)_$4Op%~&#af4_!44j#Q~RIy)mV`+M!o|Ya3Lx$|cm|-BP%nAX3OK^b-V~Yxz}w zpsW}bD8!=Ds)1|7W%HTaguSt=fc{l8INky1$^SaWumt8{J`yl0Gu3Hm?0aa??5AEC znBNa)4!(+iE?X=gMRl!M^R4eP?wtl9I@TeOjG(3x35%5C>63xI#9)#OXWK~DE>J;< zF!q=bdNf%We(78IS-zYc{HUfU30ww)&@~7LVElbDB-18rlK<pLkxUJ%Uf4&>Urt{r zyJ$<y1&(FMk_ceq1wg6Wts*d`DmA%N%S%6KJIo)W$-IKd7VH8?8TdM>r2kD-!6wen zV2b|&vw<kt5K@U8VcB1SzJ>JdGc?o*4ud<&lCu*p3575<i!WK}gu+G90s$2gnb8&Z zkO^hbjF!8o0I=&x1^fn3-Go_dOUNS^wA5FZb>tGU!R#wrHx(_&{{76w;XiS;MI20o zNj;rJbOs&{qz;*guN&91AiyZ&^zi!Cpo|V+mj)M&mSU#tbgE_svo)&FNM!_JY@*Lf z?0H`B{C_Vp^4~aO-AgRFu)4O-xB+29?vnL2g37T4-VRg*<g1+(iQPaE#tp7)<z(-h zh!!~?6q9>SA#A~fyX08}vh<fhK5Xs%eF_~}8@Tj|R0@gN!W(WL!o~({0iB)k6VU{+ zynhvW#P}2S_@U{Ge<jE5AC-pWU)6ZPI7)L0vb_t^+7Zp)1?+Yxv4T&_<yQ>w)pS1H zpTeq*k=P}Q+`&u4j!?c|ry$VdstMmB&Tol0lv{-4!gPAJBek9z>GQiZmxA0rL%3a} zH$!OXwFJNwh6pz4th6oq5L2pV!oB94^6Q{$PbyV1IF+6KQ+Y<+0qzK3XO@#0?)_jR zeD}wTwCi*092AQZIp<;eRW?~1_TFrjKe+U~5554K71|&sJy^;^7+GM))47CYLD|Gw ztLT%M>t$?#^JVjkeTdKpiw(VlWmDuUt~Ao2rc5$du_2w@GapZtvEV+8nLR5;#He(u zl`;Iep}iW@K{J6e6jdw}dZSj(Vj69`Xqd?YvedHMYG*xaX6BqaF&^if<|Vt#kFJpV zVI{<9KTi4cU_YT45M>-ysSMDfnlNR!X$?Z7hP@Z3d#-AElSj@OzJ#VQ`hpRcW#(m8 z5H<9a-jxM_uQ4zF!P6nMh^P=53y2{yF{wMMP4&=(aJ|9RG4l(~&QIvfW4`sYrI14) zJ^@F0jNtAb(w3SEN^@Z@7>e@81YTk7N6`Dd9G`&%m{EQ`hZVee>TT2H{3;!NKBUT6 zpudoKWY8_!a=KKMLRR?t<BFQ_JHCMZ`JAd~Nlt`#W2Pc=2YBea8IcL}NJQCrzPQ`+ zig}(;9}U7@Nn(iq(Yr@JL#zh|C8<U{SPb^n^dN8ofj}%a{~eEb4r?N6>5ixS=QzUK zTohTDr}GO@*b^%>qMy5Q(FHDYS?@_~Jf;I6R#LmZH<J{&ilSyM+Og0zY6_@;<3I#1 z#f6FCV%VZBUc+~Pawy|!{e?lkHK2oUAztx&xS@E5z5X-axAbDX1vK-O2;i$w$eAmw z-E2oB5}La~!r*dn!v&RMn`jI-2~@ME)#1zjLiZa(CJ97Ai%m>5_4;1WqNeR@ZJ5@c zw;~f*@c=>g7^KL|ab$FR1O|)$B_c1y%>9d;a{2>)3=p&^pg(Zl3UHwd2zbAr)!O4N zW(?iULz<r>jVS{H1f*0rlPO6dLPf1Dc$^aUWWD4QEq^?_OV&q3`?0tr56S4EpYL93 zL}{*q&w!UmR*b8_Kpx(Oy?!7ZpB;`_FTTW&Pv1tB7pD(&>Kr8Xiu{|fVu+6Sl-Q@3 zC_<DKJ+i$>`~YQpDF{L1S6c*`y{x{6J>qO$Ac2e~3=+dIby<)gac3~B#=Q7?jTcfh zE=hseaK)t#E7mMrY5rB0{$J0r$3SKoE)2offRkln8?%-&R11uCT+P~J4v%X$WShe< zKDF}dHCpNJ?uOd{kpB?S;k>d^FRP`@S~(T7!jAzHn*tDkAd!5zf*DZgs=0A>&at0} zk}RsDE%&9Ew`Hds1QRLh3;+>s56q2%S!E!Mnq_Q2evIOkjdo8ayNB$$xXhqm3i{up zprwrnw}m!f!JpL)uc#7p{s#KWO&^3Cst>WwRaNvVP-0IlW3+KKW8Z^?B|ug+@3rx< zj+HY*Pch|ni&a!4ePN6+29&$a1XOPAnw>c$F++j@5*6qW;55#RV8J;cd2~vjg~`Ih zTGPmrq9Zy6whRvhgMp3hT(TL8t<I~@%BAXr>+kU!fu3(E_X)-b(4I4fXdeOpCO9E* zr*t@dAxyG5P5AC?ZOz0c4AIF?5Iki{zY4YXl$K~>syY75wlOlMm231Z189Nhl>r0^ zpS?YLw(;px8YuB$<<tBBir`iL%xJUO&ws7_hHk1X54!jT9CtoxeV$rb`}97X{yyP{ zyR9$qxYqi&_?m|BRqM{3tw(q6JfPXJoZFK*ax#!D&{T59*YZV1+9Zzj*i8NjDcJsd z;;$3&xrYnBP3SAECbl`Y0<6kwROT-BKUl=Y#VIUFxrQ8sEWbtrhV%V&E^(K*z4qwv zoanBB9O?+)5^|JE$U|U~aI2m^4noEJV)A_Tn)#=t^!(oE|Ngmzz{4upbZ&5hD(tR4 zLO*-gBNPqP54XSX5vp^qkE&|1CpW!fsR!&g>Y;V*Vhx1py4HHqf-@J=Fhn~pTm2aK zlRsD%)Bh=<*IOY;24vxp?be$j(Zxcpp@@#AA`%ujVMqr_;=p*|78v^<u~#8g(KJJv zPWZ2;5+spiShz*Z6fx<YN>cY79rBQQ4_gg{6Y8<n_aE!6tTK<O-uEB3{=fh8|B~2? z!&emh{^PPm97VE4<UE3vuV)lzydj1U&3G+4)HSWKv6;rA*uFrp>dAtVs(_8qNpmF$ z1`+3}{Qbw!5-@ZL23eah52$Dkr!MAcJ;JtwaZGcd3pw_=DUB&P?~k=9YY?0xT-X|} zvG=$Jl#CFUmt3ZbBx&&Ynv8<1F-HP+nBcA~fPqSAm`5LxgEO_lWAD{OFAeVGlcIbB zs3_A6l50T2X$r`y2uKi24#Cb<`L^=>xdEA~sJ^eJSD(Kty+Q+Z%JBE4R}~<n;mL}V zGMV&a{(eZ*r&b;hU1jE8X{z?}>$T_4qk(NDD}opZN5~`9sZQWYk^->K;1aDD;svB` z^E9@>VN57=Dr}DmztM~weio6Ln~%RCx*5vsC6qPe9_2_dOQW7XIe5^h<pb1sst~m6 zLi|y_7h&vmf-WLupmIUcjEWw95uoUt;6g-n5hA+;6*j?fEVf%Gh%Jo6AGrjnA~L2e zqW}O(G{{Nvld<#ap+b%XTU!!E#W%R}z*7;{av-2|_oL<s9&g|yB~*c)LV0i8Y?9HL zn;mQ_^U6$=Ol1Jm1|GD&SPl+luYX}uO9T7cjCk0qhbyp5hbX89jLHQPq>sXOMuBBI z7?*+DtuD?6B&ylVt3#mJQ(x)5gfn~Ywk^T|U3X|hXyTd@ku<LwrXUVT-h&MA8po?J zhp`fgxN_YHS3h4CINeU+*{4cR(f!C8-w^^2vMZ#M{wEyx(HO~sGsJ)kZoAc!OL|d6 zLGAV8;#d>F5<B4h0WYqpq79TX8n{#r5@9<n=+FdNbmg!C?}#Jl459WgL~PgMd?`UD z^85j00%pI0f^Q7Ssjs#A!;1VLY${UpLA@m$uFjmAS1`$%fx>2-&&=TC;7R~2*6l|6 zoje}S)inPP?@II0K-wBkO#i+#KZgKeUdLnA1h{VqI00A0GF`k7oISxQ+q~FOxmJNF zL&UfB6r=(^p&7Tu#gU$`a&1`!HM9LuS?zvRfe4&~*qs~bR>miJwJ<D;X!a7@0or*6 zYbTMh96^`_=$z*W5{0Ygx-3}?^iCp*fG86P(zpf($A%x39ywc8FpEZ(-Q0jT5$Ilx zonO2wcA|m*ZrCYPuMeu}6fv}Txbp0$HL3P|1@gY9j-wzT>n_O4V^7GSpY>K5ggw=6 z-VHUOiPCs>?9#|QbYzeoaB~U<o{2n!dXhVVT7Xp4@U4dLC4!mx2KD<m*eV=a(gI)$ zL4zP6;&R@ZnIg;fpz5H_JT%!N_W0Qe(hFiNI@R-wGbP#w7w2?mfQJF@b0B!VIRKYH z>dUe*de!`MON*?cn@Wf4vQz?*L&nB*lU=|@uHFRy_O6=%4b<`N?@OXN^E4&_yigFm ziLkxU(R8_fCH7Fm;zi*hu*bgz0av?{CCCdcEu5B>p`zMT)6@%zR1FmPstEK<Cd)$L zr+3_QsE?fnhDMI|BDBPm7k|oX#*Ue{R;8d`J|gB++y+T91SxIoxz7fBmH^TK`RSG- zgV1sooKP{YLhxS@Rq+_AT}9$xePsjIc)^;~@cx)!=TQ>_%<&qjqVgGv1{rpC)s)6p zIfnhT)tyJ^R40GRqy<0{rC&+OW5>C6g0ni9@L0Z8c*r1a5GlZ3&QFL|!5B=l4h-ok zHPh2;L9Amj;W{HyBfYL|^);kd7x<0W%(~9ilG{9o!!kPCdX!{J=aO+=2VumsX<uRR z%2soPsX<F%qUwyL9p2#Rml<45_5S@`sU8|g6lN)7Dwb03Z~-ax>;3q;R&OBVGWHs% zAVzKZ>gdUvT|&pk!GgN#N>SU^%+@s_rcglHVAPC_5!|V676(O{=YqE#36g0I0y&&j zmf;x*<n>?VgS~vnA*E4{!eFzpX&=_pdt(xAav*a~SEJ^Cyen#=fjY|keGg>LoRF{M zWmhvr>d7%@hDMMKNYH{szz5zZ!E&BLQMU3<((x7+Q_dLjcn7nHlvJU3FIl;CN!P&2 zQK7z=UEqjdN6>DFicECjU?R^%Naq(Bq<86Fk$ZCQCBA<di%DicFT@a}P_;`I{6`D~ zMKFY_!Eh36sOZ$GRB%QR9g_oucmz1SvG#3S9KeKXcG6-HH!%~D`^Iv@r6fwZYwth4 zxQ{J}2T>RA*?oz~oM2|DY~LRvw-ZkUs-DrPn%3GNrEfCTQ>1!q;r!EUO>DJow;O^o z<tKPNC`;_80s~vY@Pj%Sz0bAw(6KR9=vjj;L$>?@j8NV-;hq@|;V`!9H#iwM8wk1r z!)xrqFW%8W1#tfFwhMCzq_GJkGv+TS#nIVC2R_2b4ABXE6=Rwx+=t2n*B-J*K(lrK zl2CuXjt?;P6AL~ugvAp3hRpVGVygyNT?rB=jmgGGi&At?>?J5cnbm`CaWgH;ncK=> ztF}8a?!TxEFqd#NZ(GlPdKfC{D1%EMD)MldeR}W`m`LnH2rLGoTZI;UfnBF25**#_ zcB}JE2jA`fQ9V`D?7Cu#jy6ym>>f6^Tiy9B)sd(dK`FpCF;pjML$WfEi!txjhiDxA zPhbH}p}u@Q^QnqIV!B&sn&{trqE#~!o9N#@>_pY1r7};rv)V-hKhzJAjvNw-gNEd= z-r!+^cTERJNhRHAkQ#01wWenmG<l-Y2dycOrzbF4u@eZ3=oHNeI^F<VsW3MBEn~l< z773;rrk3DHV)6!&L}|GY9y4Ii$%JYLN`GYNozjWs0Qh1Jx>e*Mb|eF6MVh|)urX&G zI9ktYr=w4i&{=dvOrMh)Qb_vxQul7Go}IhaCeIU9Ga>^mu~zRxaaipm>>X(Bo-0|> zw0R^Rs!p79{-_w_e=^c&vfRjkEwC`DO}5bNH7}<S#Ng!=QkZN}T=--Ez<fsZiskfg za89I?_UcpOkMGK>p@Fn>mx>X;sTpIMe|=<+&8a*YKB^5alJ*6EG7ziWR99A5&X*L} zkfvwgYV3$_ecJx?ejDN2NNA11)7bfy?mFm6(#f5;tJJQN^xw(375N-FKe*DUcc9*r zstRH+8H<a)06S{7{{tB=yJwV(E;EE?PIQ>k%k~u63Ri%!8@Wf=CN`S2fTuIK0w~~} zDyTJ_5z@WcX&3fV+}v_5&rY9;wsQ~6>+vypM>EA18)`ACS6h4OOO9XU-F?&gIk&)% z5FMgpiSdz0%0+IquB!0fsvlP9!dly|EfsV$u|Y}Kr7d`LiBvy5`8S9auFwIcWA@Z) zlYxL-pEfmPFj#2~X@U%ztHY4H4~b3T-?1K|L~~$Y-l~Yj-Xyn6O=rT3qMGmvdpSL$ zu!ujNLgyoTcKnd`WZMb%UhTZNb(U$#EkI8N4j4Vc;7713?gua(y(m~VpJLhVjPBr8 zmb_!^eTTF#VwZ}7qH;i7Y@olM|Nl9DHQq&-HfYyQk&_vTS;t7*3M16XQM<LLSEY}X zhogqgEHoNWQl=r&!o2kk15|K)xM3y@M{8gKP)z@57?%oMI$dR7=duAa|7#$V<8J09 zEn8pL*;oP!#LHo6jeDd6Ve6p)7Zy{j4PequjksEEn^1baCesFZpRLN=o}0aPCV$vO zU~<Omde!pt*g6S?MTK*hXo6tZldsOY=2!FpSwwm|(g=f@C?7~U825_<guqGWcS8Rm z8u=vy&QJKq9OBAMQv`A&@0lAC$n*J;MrkU9^Dp<$Tlc<_)fyrwmNvm#DjN_z;-OK1 z5(Vdgyw<Zt1b=og2fHfOb$r}ghH$BCJxvfuUiakZP$u|j+O5anbIrtA6U?h&F&%|o z+u1~yV>k~mb|(F6?m*IWdNNn8jIZGN$GpL(iveaqRW?4kd4^>_<_Rj*_3vBV^4{TJ zG&i}CBq{k995|7>JltM%U0481N#93X#E3EAc1(9{0{Nw;aiY%M*&4^GHGiA#KSLNr zS74b$%!`7Bu*U+a(_I=O@)+kKZ3hn3NFp-;j8Kd5Q;6ZbVMWL-iYzNHraw)Pkqz*5 zlLI-VTR+En=G7jv<U`R(=i|#`I~mx){gnfRqzT-?x^uZ8M#JI-$q#^QVz#7luPq}v zP|t2aDu9deXd^wf!%1oh1y}Jg)BxpZ1Y8Y}0*IJko$L~snK!hg#12uu)a>w}CfCV} zgvVm?c@NSD0>>hYfvUHbja^$DoUUu}8Z;~4m%+1Zyp}LspdEUilYQ1<0u>H~OFK-| zgFJYCb;BEIw_(LuxrVs3K^$0?${&yb!&mqNIya_Qlfs4u<Cc8IlpA+0k^9au+23Ws zsr(fZe<K)26>F|BOTB78G+~^}K^Bw~qdu3vEeyaNP-|H!L$m4s7N+=~fQiCuacUw2 z5-$*x$kP#IKKZW;psp>w_F8da`3+&KEO!Z8eOJI%Up2#a12&SJbI?^~<gf+gjXG;O zQ((3d*uv_eOKGpBm3NdMvXq@_Xe`Apch6&U4rT9wTwd8|PmC&`W4wHjMqL$<{t_tQ zsD&jXV}hJWC#|28=%m5}KNhERUSGj?&H6}^0rNcYEQs!~DIQCB=24+jgr}%azr_V1 zA|?8*5*3cy><pv_uJ5>j4!GIal58TITE?sY5=@bE+wlUIkyxJwu|e4Q{EWb28#P(p z5sogUH`*$P5VwXd7c6bZ$Cmu2|0bdG^;*N<Vo1THuqp6d^zC3AAMx#a=11}K)qlZj zrmi;22duie%!jP$@H8kSFYmy^0J%<DPT*KLEk));!z2icg0nROu5i6aau6fBAkJg+ z+}GGdKBI@h3(Y<D{8z2d7{bkYr1`VYo=ZmTPzE3-S@98^4iy7HfR>;HDP@;|$5z?x zT|+vL9MF=%wCD5&xHz6DUN>PR+cTIk0WHp`&MD#vQhV^2YRXlaT>C;K{s^NNvjpmk z+EBj(%?~G(J`Nc9%5TbW>IhjyBrM=NoWO)Ypv)QoxrT%HN1YbuVI5(l-jGbsUbpv= z$Ut61<__#B=7fPw?9Xo{0==Apwyl&Y)z5-S60ch}868*5pHxAW)~blUWN6|j7ZETM zpwT}M7#grGl%F!#^S8T;6U@`Ou>cbUn9A?@`AO+P?L%%u4L<nUa|KljAcfv>ADZoM ziY~TAT~I?F1W8Nr!~eXPz@Ol?IM$rIwUB^45F7(e&p^=l(f$G0f!cpguMox>K{29) zVW+fbBS0(@r50#OpHegWTiej*9IMuu$Vze{B+BmsRE93LYV9~E2yovgN^aUePTtH{ zFI&`9JC--Sx_!GL>>z^$1PN#<0ch98@{Gk8i{yHpTXBR?VwAF4Yk++1omC-ih`m{0 z<__p1B}%!4^*GWixNpE2y{hnGDvb{9&&>Qt)-Q)=4o3M{8%8zXPz5|jUlJ5_0l6nw z@`3!<-(l)Xa%#QkWYavg1~$MPexcZN$<tq)VC42$%d}Y{%g|6s3u5C#JbYeQ<D}Tv zCqw86;V85wK}H=<(e2nmQQ_e7ToL2*{V6U*v0o0TF%xEeTeboZdG1)!43AgEInWG2 z%7T%#RwC;F1#rDhCkMp~7#~Hz0Mqw0OR%mJrowb<^a;YqP=MK*i~>U0kRpjkBaeEm z&Uc+1gp1a&9Bj#JpozWOl1O|p-1*Rj0pER81MOu`?|PIR`nRTx8UD@cWjhOM)YZz@ zw!341rcCF4KT#{C*Ayv30I{vwl9sU}F6fvepb{njWphW4PTNK{SpP2M-;q=F`0TO7 z9k_U?XsNy)dT176I<Z*$1%e1p%k`-03v``i3;KB*B$IqdAqa!)6q~j9XqZjt7Vk62 z6DKDNL{66iLNOR22b_kWny6?Oa9V)GrTQSBjm*HV2Qdc=g?Rua)8az-3TpY}pNvme zvqvof1r+JSQj!T2vq=kx+r@w}%i_083=#xuVFv08i_Ah`O_gn;m;$y#BE;-Z4#xZ- z6H<)l&LnYEP7@!jA?3nRcQMo8NjPOC0Vt0Bix)3Y2awpEp7Kg`0ojowU{w{#yX4_l zb^jxA&d)k0oJ&yfDA?RIS0XcH5}kg%b?Z}?AP6|4SNg3@@ke<gTU8ODKt_vhOj)t4 zAN$<gk$t>oPfZKDtlOrt&0}aPdCdXY^>T?~%SO~#xOqs8MH|PY>+QlHMYvsK%tha7 z3z_2lAY`nmE+kdK)4ux`;HG1G%qRyc9*Qt%!7@r#UwfpiSl4J0g;WHtkE;upLNiFg zNpk`DR-!s_|AdF!YXmJPKVjBrP7f_GhRlw>94sQHEa}eo-$^`hzS)rR6cbVrK`j+x z@VGKQzQFOhrzCNW<C)_C4J!ltz*hm0sD0<odT)ED*X<1ZgDr-x7_x6kKS?u!Ow}cF zJT*w^zB*bVKkfHXs;aX9BOghQOcHF}*xCr70eQ>pdZ16F{E65lF}l_|E(i5E##P)A zg8uNr(-;VVob4%ik`t+PD9uZ{3)}^)s9K7!KDvOO1J))&#!lF@`UZn~p8)c0ALR)} zuP~%IpU%w^LvV<cb$SqUhDv7oDx?`=QB`d&IMn(}f>-T+|36Y|ih`~!Vb!Y;6O`X# z+8V7>5QD(Im9rt;tqcLLy*Rp+Rju5Si*>1Kr)0m03lI2W90_Lch!qnVQo8{<Veoh4 z$_qI@=A!rIK>;Zb_Zw!RDd{k<Vq?637Y1!|=slG*s&~STQxBPh_*f*@u%o&nH(H?$ z(ko^Z!S@Klb}$21irnJJpC^Mdn<E*Mo>{_&j$;6<%?@RxrnVsZY3wz>2q|w~RJozh za}@`#dWE0yP&C@W)+5_UFJKbDtDvdGUyblK<XifTJ9Ubq6lS5vaJf21AQ~BhhFQZ@ zZCu);%uCdOdMWEXo!$21OnyX%3J{bODN*Wll7>wdS&;>6OxA_0at6HGT63oXtbllH zud$0<u}^)XG7hj~aAz609@mW1-!Vj$j_I`3+x<7P_;j&Mmd%F9>{a7g*=Bz=MNk{y zPr$_0X$G)MyL~bN2~o3z&ei?uT`S?jQC!}!s7Sv*wGE-P4T&U42T)&~#YJJY5*jO} znzIiNT1UsT{qgbbwl*O3v3sq#xZvV#TKbU+xVi<O{ShC($7#qs;vmza^)teYFZb^K z3#7mcgfQELq8f<ubZ6tC?kj9&<`(?^^y9l9>j{itY47cyEIF>J7Ptz6%i`**KeRt@ z-@gq33fO|&<EKtbHl~R6LMt1B>%6tuAGVr83@u*o&+qMfd-wJM#d{}X93kiTHu~M( z)^1PlGvC_;);I%MY}^48wzu@qUQu-q{HpA|E}eZ0(5CNPV*A>@cYz=Hl*sh^8n3{+ z%bRkXc}fu9XVU@*xrlFVbvAo)R8{|j5YN82n4%W`wzsnjCZk%k1^itRjEIu!ondG6 zP492DqA0mPZ`WGxecRg_HdT1o+H2qX*_(R{A3Gh2yy<NBYjw~;n-ptpd^U~Y{OA9C z+S~ctXlpR)4z?Zx#fCPphpk)f7pKn%1?U{L>E3R)v)yCE-NAYeoQJK?{+;61H<LH} zGx!k*tKC-bJB>95lQaZeU}~7wD*oO^qIx)!YqPuCoo-XB0N&@HUEQn(?abO6b{;j1 z5%YT3`s3Bjff>sO*V)+_d^dW!U2748`;V(zW9BjOqRz&rO|B2V+p0ABu=R)gS2szj zQg3vp|MipMXmjv%w>Nt9bT}MrjlO%*?>-?A+2$skHzv*N!oxtd4AA2&Ab6}oTD?G4 zECkQc4{NY!r@acIvCJ8cNY`zr_jT{D0vOIEL+FR1enPfr9RI6(w|=g|@a-@DE(ZeN zmKgSS4}E!WGIq@7XOMu_lYW7JEvTXQXxN4pe80TaP$nq3-pdE4C1F8RFT49>@Le_y zX%%s$UN@J_8)g42+0bYgo9dgqRTKr!aPVWjRVh014U9TXMQzX94!2oiOA08XE@}ef zh$?wE%jyEXqo(wVx)*1c)wG0(iU^|K*rJZomS?@c+j+FnTlZ;0&0)gwp~~G=NTUG3 zrytjM2HQ`!y)MTi1oy)Hm-$(+-AdSJ3p+&YV2O?1V<%<afVe`4mGWk9>uEz11lJna z`ir%!F_vv;ER{{oZVz_*lr=}YL&%(6_Uml^no3xpyP}*j!iNhQD(3@iJR63CufN_P zaYgNCLa!IIqod==!|y-#!{PgnpDUyu4|X<3-6#DGfix<_`2ivD{6q_J0tGOmkjzyJ zZFRnV)Y%!~4~w#;)A6hQ@%bA5Xo+w8yM3(bs6Xs&?n((Cjx^IstwOJT@&L9Nt8HKO z+w${4{4BxHk*H-9r@*{9EQSNe01O6RHw57MLWhEHy)B<IzagTlet9$i<=eC=sGm$; zQ9rXT8nw?+Hz5Q*3IgO+<*W1>U!!J14}2p!<Q4f*N9!M1ufPLiaeeA)f}xX8UjZ=} z<_nCQ#$JNNX65-tmMgy}R8S;&0{toq=?AO=SZ-7!5Dwqq24;HDIG!P+#M_R}$F#Dl z0?;qud2vYm;+N&Owf%gs0P+km>`wJdG2&ILZI_f*xfpeGkz)MXh!6jL^Y_YaiU9`J zNX&>NMdbUFAlQR4o!W~@4SLE6l~9Y&RRa@}jmgbTDC$LrKC-W5aqN+F(2M{^%B|xk z4(1CBOCpN6_DEZkPuddX)~@uhY8~Ybkv6hfG!&&b@vf)V;j8%#;%IuhB_t#YYuFQg z$)b77xM?c&v)WeD<bN&lwCL3(w-eM=a*bx3cT$g=oNe#fhc%)USSs0ut5vf1msaAg zSXPnWvdUn)wlDT^*6Un#6Q;VneJPeN=w%Ccz_-e8x7+Z&(tCtBZrgs&=C@ore}%2h z9M=$(m|)*4v1+({>n@&-u;3a)?(zBT#22y{maVF`F`akduLzw91Oyu)v7&K!Jmq7Z zQ;!IdGd?HU%o7$67T$E=w%>F#PDa#alfxm5WT5LYGDX}hK7d}*s>C-)w8VlsA@Uv0 zTi$BR)2jTp&EeAm9%?!7CuVbNRe^cC4H|fKgtRZwPL$!C;%%GOAELF`Rtx6I;p&yk z1_WC7sK&De?s+m#9-i>Aj8wYm#?l$G>yLEiz6~>|ri%zFV#SC^S~C$JN?jaL@T1Uh zUj&sKIpc2J<06L&0C(j_+A9l!n6Uy(T8Q1MEwXl*!6nlcWdkCiqDw55lH5Z*h)n0J zE1_5U{(D$gJG(&z?0;SGCRN*oh9#*|ic#IWy<)f<M1UiMN;hfS4C8}H1^F!IAvmN2 zF=g%2gqVs4DLp!Sh*K=JuEo63EZsWwCP0pI=T*DPF{QD2UF&K!r?DIpa7kAh3o~5+ zo@Nac6J{a)%NDM=RX5@J=#urk!60D)<Y19y(oqEIl9Bf#t_N;Z)X=vYz!Fldx}!SF zO+EOY5`7OqL?BSNF4j;Kd*wjG8xIeRV8eW^+?3HvfXWz`6iAc}`9?T`@!7?G8&?VU zD%v}X4gT35KKtTRpQ1oFN2g$l1e^sQSL~2Pad1{v4}yy1kz>7rQ&&=V2XMVf`)?Si zS9I+WLF3OnBgA;6tE|Co>mU{h;J^~G6E4pfK!!QXn%>zSLS6d`+D}^N(Vzs$*U!fa z4pf_*oWV6v6bm%^Om+rbD6Yl+?C=eiV0v;gIYiPE+}XUG9v|W$gW8vKLmOgUsF4TZ zeyn%;P*Q6KcC%kFA8IlChBMz_H){JjzJC3>O}g^q9CvsVQZ=eykM51n(c`Ph{N88x zKmEhK`=8yD!Hy=hSQzbN<zFsNj<q!|?g}Ema`q~(kT84h^tL}ZRrnwOL#uHbX?YPG z4AB)9s~(oGon*7yZaqp;dOt&tTdUqSQuZCbx!rakt=?|WPFGg~zR0sh7Vs{#d#AJ6 zS#=#1O^hVK?hRMGB~$00aK8ev?R*N2(PVXn>1fuVn-?t+x}c1Lrge5Do1jck6@QIW zC;;KGLDoUazn4^Lwc-@6pWs{7BV6Wen9Jk&gD_+{2gjYXoIlD|@e<ap;6i>wZig#^ zQzbEvH)b6j34RNH>Ay3oQ9b#=Q0=2~<_)5P?6BV!*Er*5&YJ4m>b6uo`7pQ^BMG8J zN*!;16>nZb{7M=X^!+`MHPvZX0hrS@>PT>kBz(ICwv~=;>$m_a1<SiFQT;-LEDi7^ zDoz0$ATM65hFaYU6-CHURP+kMSmm!1-(yS&*&Wu(a8esJ7T%1`{P?NpGV-QD%Y(mH zQ>rv?ZPI0+;PR`g2$H!QkFd13@`2`~0dKPHmNXpXs6ox)W_oq7pPC#h*8+FVQu8*= zwdD?kV-_Z)Z9cJ~)o>KkuLv1-wheKAj1V$le|($<P*+N59r2cRg$Y#y#_(ZV!dy6( zN`L0ZP`lk0P|N-`CuSRuC@VQwl&MXU3hvdEdmBZxZ5xjB5F#W|niLVHt6Zp0lXsNS ziB^xF%Le6|npP`Ff+>zt|HdN_44XK@jcZG|MT9XSTaNg&ENJ7MPfSHfJ2g|&z7K4J z>38t0aLsUrF>#Jm{o95O(Ms@>;u(y0Xkkq42pc0bvl(xDV2w0ioz*Sv($zUYg36+{ zwSbrp=@L=k4l55-C=~u}Rm%HHW6L}N8%Yy7;OvDahmyTn>9|oJCO1d9u)MrmTp~CE zaUp#YvXV`0$DL8$Jp9oePPKXIErs`CV9x~qYtBb59`Zhy_b5fR!<+ZRdy4CI!;<x0 zu2Kdz!f*Lp;;P1a(m#f^QH^gMX-k^!JH~4G@|yet0m-B+zvx;C+3G9H1*I6t-9L~h z8`X_qS0d0n+6b1bPP`};CVpFzYmD?e>@9#qmOnbD@|JyEOGN+zl2rZ!%_J4&F%79~ z9;DB{=?+(_W@V&{C~q{tAw$W9Gm^IPpO_q97&O_Rm$0ISaB(u(l=Kg#)i4ZgA=<aL zwMM?MHSL41t&!PGGl7m`1c4;317<tETeCAK?3Xpngw0!rkyRZS5@hh@O;=F~2eO7J z@OlPz7Ib(4qFEF5a2BatE7LpK;ZteXbw{aAESxV(Mps>xtg0NUO+omelrj5JyC1RZ zHElBSL^c!qs;W<|kt4G5Ze2N_lM7utg$m0TD1%mtFrgU7MW`Z1-Zn>P-*I5<n)Nc@ z+AKz@-4sJqTKf8JmZOIun_wj~S7**)!R4r?n7EEnD*?GJTWz(%F}sNDw`st3ReUSZ z6j(C}szMt{dkeQWVVZsMgq>h-*#LCsqkAgs{Kyqb3%4U}C(d{0+$&?eD<QL@R6w<$ zR{22fO0^h;;DOGGBYdXi;o5kq3b;wBzqf^O1Df8GzJG^Mz25p+n|u5H$29n{4aoKN z$Gp$PzgmHUXZ7XJ?wEuNj@fV~@`m2m`ecS`oQs^GO;%LD{NkfgrkV?^vlmmD6}F~d z)as4WO=gFdAFPUc+FYy#AOMb0nQ>D1XV2SnTpUi+og|cd1)tY}-;eWrZ9z%39iets zo97kLD!H#InnbicWSzx>^<uijKjGt-{DOy1J_$HEPAfBqT8@3~B{znmq?<pRK942T zIpMzxsC>}^wooc`=|)<r?cxcPUB`hOMvJ~a0a8WqSnKM#i49gxyDDviLx7Q1k6K=g zU1~4s;v<`420MWsJYX)&Av~xRF<Rk5_LfFOo8Z0Cfwhr%ah4R45SoJ~uC%JwxwPXZ z+)s$C00AQVG&zEM(^G^{{)H=u%j5CAX&ZhB3)?q%g)_B{q|r3~y4?cjP=#{y?%-C- zcSohuTNDBrn0juvtarU#=`i0+m(EuK9cmt;U~$2_Tn&}$<Nbm++6e?FJmc+EN~B9i zibJe_o%<72;>f*7c8wyJAj>aO^xg%emgE38AMiCkqp7#AGpBL=TZ;nAFTHnw+UTl_ zhhkr(z1+V1dSOM_1>WuY6fll#JKZ*A*QHkmv8}ufaMB9iORFutYq&%yC$o&H`VmET zR17k5!;9d;jg1x2SxV_J6{Qi$%MAxbGlHi4AZTjL;lzdZs@XCIiEln;QWYIS5Ln}( ztU5QpngL}B0M@YbK=BEVw9~~Jcu2Z1uF<z~4R6#9>lit37h-YX0OG0NIh%f?cC4xu zI9JjWqt}hYz)wP`?m3~-oU^<fgvmk&E_^I9reQa4<SLfSkhS!)BN3?a3Bp2K@*VBt zlJ>E6!w8+~xhopOh)_d@f>?{V;}kccQ-Fu|@d{)PoI_6q*(j{Zv4weRT&EkWZ}bcE zj(o(bJi2_KM3$RSe;s!V{H>k=$_J6sm-hW}NF+w7wEE5tgMvRJOVwaH-@tfP?ags8 z`RGX4?Tpg1BoqO@f!d-pGv??vY$QJ_u_ZqMWeWLm)X3Xuf6Yo-{nntO)d6!6L`Jba zbI3E+MUjSEo)2meX6K%gAUD<$zD`NN@;lC)0DTlSF_n03V#X_IQ9+y<X65TZxK+`x zY%VAW_nA&f&mT-kr?X6{nseGYT50uU5Vj)M=ZzLfzJktLtQa%u%{8Kt!5zlcbpfGi z#D#cJSZ^l*fpDU^c7&xORCB|E#*v6b0SmF804uGHuuPMm1~1C3m9KhrF=|^B2q2BL zpnk*Jka9l_or!!|qpKSJ#re~;$jt;oTmI4p3t8s~@uJpRpIS%jAgB&{Df-DL4PAL7 zIe7FPKvpeJm_C!Q&vP>hj9rHRK@64Gsj0w$S;-HBp?v^*<;3|3S)i3kkFrv`>WXqV z@=NA2DsCN(VQY^X&-v@ON_u_$=HQN`<1C$R-nRTb#-F*vz`rINY0@fGhF3PWY|5_s zjjKFk@^o|D@POb}NHDCZyHsspWJXeP(}YH8k?Kp*f-N0;@-E@!V}9{CX*Zl$*qMOJ z2Xgt;`F$W%4o64Ov!x*Y{xms6w!2i<=rw0nrzmndLm?=B5u_hV{RF+#3f|Y<FG)y@ zvA$#|LPTor&|cxU_H~8^eSG}8adf6c^*eWD#x<0z8T@9Ht7!0FMwu%;mr({j%Vkqx zDMA9J|8C%_j25ruq)b)LHQbYbtz)vo#Y`BmQ-xGB(C{J7t=tU@a-8@)=kJ8`<J_U3 zbayS98VWe{U6TVCjS?EVT3IzODs#9pSE;Py(#<OCz5I|3AwCr2kdx6zK<${WpZ^z5 zrBrw2exXa8Y%y^by`GmX3v+1ocB$Rm^4<-2%lvE~54ulx`*~?JE1;MbKCn9Co!)N$ ze-+b1X$?_cABLTf{oTzzQdaOE3Jc3lkDU{kdDrU%8x*xr2TMlbeR(bM-zNK!*AnC1 zi?b_gssFFlLtj$s^4`jmKc81VpQ_Vvfia>h%UyqWyE}u84SN3yptMn?Hc<SGVNkuM zHttjbsav2{q5J7(ue1Afr?&(6S`{rzM^wvDp;aDry5G>tH~J7~Mj=FNzDcztT}87} z#dr`1&O8$zcdEF~A-otL`Vgz0;nE+G)?E*kj=B=T_t1L3voZKO`bV2eEe#Yp#LdBa zXJhneu&zNNQXw&Ym&@Wz=Cm19T!Urm;TJ5$a~v{HV#8Lr5|`y4_y5{kX9Ng%s={lU zBaj>cYcL(V+p=f%m&MQNd`-UMan9(yZ&=Kh5^m4m{4H8yLs^jzDf|c`GFZ%S;H9}q zen(FPS@vtWXrd%c=mHhw!ObF|zwN3`o0byk!Y#c_t6J2=g_P=ARqj;d3f*2sIpCoy zWs9rB?A}l?wCK<`P~K8*Z>haa=et0EaI4urL_8lK&rOBt#U8;SVPNSx7*m4ohxKAd zr-&2v$j;X;uihGq&4<i1DY@sgt;W`ZYDicn9iR#6ragdq;p@MTM=5%4a0)H1HA6RL zf`CI(0sd#TrQt~ovBE4uNQw}pJi8l}CAHZ$e04*J&@hgCL7`{!4hvw%s9Zo%+_Nt9 zvQj0^aJOvK2$I(3y1K^Bu=wPhDqYBKV-n3vJvPGvsDOtxB_b*@qBc}l#zpf{v=K&8 z?5c~uMirV*dRO+4Pd4Ap2oQPj<E|u2!SUx-4_Xh`W5t)e-uRFSjMwF;Wv%=h>S+)j zVf1Qk?nsK3_@*^$aDt{szqDFXv|X@AVcX<Kp=y2XFp96LDHN$#rX<)rp#n+pHZ#lh z{*}6kJCk-Ryi(5fKueLt?8YTVCIQn@RT!;i>uSeo85gd(dE0#(%Uv;$&o%~owWVz& zXbGoT5?hCVRB_^ei}eC_I89vD$r%E03z*Y=f#vF%XL~XOYQEhS%>L$bBl2Q*yGOB6 z{$EQdbQg1QvXI#7^=tV+Twi`W#*%tH>PJy-)A|sj+<V!l*}<jLfG?w+N1R6mGny<m zg#7uo6v`4UWQb%)R5|XPP6)1e8-@|TYHRzAuQ_>$0@nno0Bdbhm)?>uBO3G}k>(3( zVVm8%h&>*qYnxn#rJXDVUUg;GFEpPuc?G{OPe+@7&2P>XrjBzC>H4AJ8yHprq%G3; zaHq3naexr_rJyX@EHP48NF#y<1TJcOa>7i+lQg;>6J7*{_*kt<)#$d`z8B*#Z6`wn zC_RIoX~;%*^|d+sPhFAcKF>&nfY^m6$3}sK=-w*cRD6bH(Kx>pc>qC09r^YoMdoLE zZ;UkciYJDKmUFbg9fnCl{44kBzSCNt$(_4o?#i0QP5)jtPJ|6cEVi*nHMo=FEo;s% z>$sGP_jFjG>Ik2UGymfF5c=5@7$+G_JmNuiA)>Qy-b~l?!_u~OIf2a$f<x8e%GQlQ zj(>HgU6(To$V0u<y9fZ)aZTq<{C}-f<7rtdRUwBQetq=K%)htgN2B<dJe90AI9QEk zRDf4GsMtGX-3xcFn%w3M*_vh6=&;gn@Q2cJy4n~SCnPk4R(ZLrlejqXni`mZ3n>jG zLUp0-a1#_#b2iP9aH)-qLN-)do(75ewa1v9yoQIF4G>HgY^z{)3gLPoc%vUqME^-M z5Bd(ZdmBAm?F|u|67qtNR!rU2X9$3em;s1FBYF&k2VnGN5B%W0IeihAc-o*Ns!5l@ z11hI<fL|ZVAxgels@~vE@CLA1K}>*yAEEW(T9rlhT&%jqgW5w4>Sh3CjRrF}olwPv zo+n-PjBK#}NV>PWe5E^onN34dLET2qsB;8?A41EW?zN#sKt$;ftSYl;sNhHD(lc7n z9C1>R!}Idx@Oc}~+-^67zp(HDx+v0R9$`b2z!?VF=ucq|c`$jL$2hQE;|3wzJg3b( zs%WMo#X`k&*bpjCJ#5Qji**ro95xix^;aa8E5}~NIhmUaa+yS-bDUNPW}$egb2AY| zAx%7S5E*cTR%Ae}&e1uQoAO-70y_SrLB<DeJpNnGaV28rkhW<^wRdE(V)EX$Ltp5( z)7?pdUA}WN9zns$Sp=`^j5lpxzD87kWY9gL5j1TZMXfo31ur6Uw2l$EBh`1q3#(o* zoUvn7ly!<Ifx9Qdpr}-v+1v?iOUib2@!BQ@bt;X4mPIaMcO^Ngpmc`Rg{Q};s?2a8 zr#<8vE!Y-m7kWN2A(&j*W$0U*K;522uU0MtuR=5#K3-yRcDdA@tpSAv$1uJYERzS{ zno65F>r(i=basJsm3u00l<4KS3_ur}p{0N>dQ`C@)7R*gTLC{=6~-3!427jcR26S- ztwy6Uer>gB*h$Qaag~TxJK9en!!@4l4d=8S>v2$XNy_G%*#SM@ZM<6HQYx)QNRTUv zpxD}ps95ZuX8D{KVb-mW6!)D7<0JY)SOhO3)KBrfP&9Iui6qC7?5b0h($o^(mqh+L zD(TQ-Cb2MS&${dppHg@6$z-UsEfh%p9mlG3`?g=a`vQ!fHa2?FBWx_`FZ1|@G0g^+ z%d|NPmp`}SI<ze}in#v*K4mATuqDgLl8-+I<m=!cFfpg#ZA~oIGu9sAm0vlFS*-;N zXT<ZiJK8irze4r#=?P)8&xX+498-0X6I=BPejXX9b2RbcgLM-gd^oE_t4c#yPKFD$ zQ9(pvBj^llPt^s=VopA*X}uhvoN4)VWpf=q-(Z&dLHjI@QVKBo;^5+(0XK)LICipm ztrm3_c3wFEmwDZ?MXg|{nwy+zcU4jvRW3bWe3smvzR>wJ>P);3H7L#H_)w2zSFrL5 z-H&QJm7_10B<n^_!lu!BGl_0o(uxuTpH9-p1z&qJRiZZpxHwQ9*RxN$R+q81K8Jws zGM%BfS|7PpHH@h94d4Y0o4k!|=hOy$xzCi(RiWvF-%)*AP5N;xuAUO!ilT$Jl8uUR z^Vj+6#x|{>htJ|l%3k#G;ZdUDtV?sh4q7N=GvxTy=m8p65&9E|wU-2F19OH^z8D$& z{FPUeO13T#c-~JI7eWh-F>a)0L8Fm?r&EI)U1Yphrc?5aQw1T#Xw|`#GSb5AaMoIV zF<u~*4_brr1H1!uzevZl57VVL2s8;2q{(&RS~)`oRD_%q?oKUX*~<Hx6bFUaQTfHL zlVL^5>3ox;&&@0zI_8uogKBp)Zxnnjf}ijQ<0$C;jHAo*OKDpLt*EMX>A+DNMYjHx zVJzMtiQySI2!MVAA@gzS!ZcqCl^Wc)XFr*y->{`P=WFU^i~}x4Rd8HyAUn*ab<L3^ z`KZoD`{G<ZXYz-nUYC^gL1|Hg!Ki8;;9V*{oWngd=N4&6)`qtFQ7w;}Z$}+KU0cs| z;0Fsx?^vQw^jUHvAZCCHW9{iF(!zTFvzSV`h8T->fH8zXA$7EWpB3bh_?*=8#JeTq z%hnb9ZELnbHfiXBMS-mHo#B{5QJDthLk59BUTo%F)BHqmt6W*3zdhY7F$&*2Xtagw z%~Qmqy0vNzBX|(9xvp5lmMi48F(leHh~0r)<Q=B=?>98Bt0mTSUB*d}SOYhX{ZN?i zd2HTLVv330JG8!A*z_geF`<(xJ+@>98p8lnFvvIzZ>{DNyxo>~E34uh1;>7sU`oRc zAG<Emwo(b;kh8b-mG!>7W?Fz$8=jxmS>pnxCQ`xl4hJdyl&Z^q*U-p%DNo)8G`UME z2XDRk<ni%ryjZP`^EP&w;(ED*NCl&Hb+jSf$QMB^En^i<Aa=wpC9qdN8zS6%6*i^0 z+9GH#vbz$n6s^<TqHcn$E`iqeEtDEa<<h%YfufQxfOZiOB4ir6SPp)x53j&q34M~- zD&{L3s#xqtt=>y5$K@&%b4)JUXeLMwxvGB1-v>O;bboo$qoo+#v}=|F)OW<y_#DT2 zb)-#KJ)y?(BSTK#hC>6C8(K?bR{|?I{Ru1@z$paQrmJ9380Yi}82)|;@Xg7d4#viZ zaim?)NP7a=vvMjr(G#>vsiO39B8o1(^FPOv>ae(<64l9ITN0fdsMb&2SvhdGFiEDn zGH7F%4VK3aQo-2-VzTq=&@ct5Qj8{u>X#}35{3h}>*VN_>`|$+EO$kW$o65;=3Q&S zW0L676h&fXfYM9hTqiGeYze@!u!RAuvMJg{ZKqv{H$~ep>d)ABXHb{pj_=h5?oVC4 z7cYNm9kyRX{$dhc{L{(l5x72mg{6xDEZ2NS@g*wHx}%A97EKGAoEr*6i?&Ajuwa#| z=H(A9Uj)XvjK^-jW`1BCF43R~SQ+13jzSki%@v}Ojl!%w^tBIzQ!zMWd+uI4BwjU) zv<ni}iJXQXAVOZIwQVqs!P(@&f(?&Tj9~dj0~zd2tOsqQ7`0%<1MEQnwAWdvy%f>X zU_>Mnd6ryVCPfqx_e6>m(c}N#aC@bBv2K`94iSPDhp^4dl^P)BZG&S1!Jm;k`5`Ow zyNZl(4JZ4|v+HikX71+kvP&3lL$B!xeIr3QT`hH_DB($2?N!x|6-0yexKwj163b+_ z{~2{H&g4`fqb@oC-+8oo*87ddh<<;L+=K8`i9N5IJFk|ucWvV<%GtJ+lbN?@7IaRx zerKiS#^~kyon9w}_|r?7rZ5ZExX$cW03}T=IS%lC0@qJOcDe1$1y=#Ff4Iur97K9> z3O(Za<Op|ZhykUx9bjk4vm#KNX%nGlIX*U?9L2HF;s6uZ2>CsT%>!y=or9Rj$S~U; zo~*&(NVVbO*s${8)pS0kXJ&3eX6mVmVFo&rT`Y%^^M*n(+tui+5spHa+>;opkumCP z?GLi`f3v_5%`-1TLUfC$5mKS}{_Y_omJLD>0||PV;QdgoN0AX48spzORKx=LKo`@q z-%YRxjiqeiA~ZrV<_4wi^hAJ7;{5v$CSj|JX)6hRr*IP0#%>T$q8?6#GG8rFM0caJ zyF1$6=|OQy5{7>??484pS+Fza@o2ZZ;RQz$1`Y)oirI6Uul_&3e2;(g+qZts8-2@{ zyPqI-(8>|bG8`_M;WiqQ<4`ZEnU>7|LEtX3<|337Y>#0r8vjtjf;5Xi-D0|cdOH7y z0+rmk)g--Uv6EG*G>Uv_k|Q{kV564!S6OX~LqQLVREke1S<JxMj#Mfepp~@7B4~S* z&5C;bBrB^S+M}R$>_b!lRi_Q~WL#Msul_G<-V_$Ulp}&I$T2U%BXm5c=g<{@5*v;O zWA~N?4qnjOz75n8TCDq|NQB`S(Rn%?=v>AZi<$b>TQ+R;9Io~fs#^Mx`xq@}`L9t< zz4i62<)_A5$yHtq!BEmWZ$ifiVbX|+U&8dLB_>7)D_|Q4X%t~Y&Xncx;;WUG1yxJ% z(WjN71weH6`umT+`tlyyy>2DzWlgT4qOvuidjvp2me#CqK;tDm2#oJiKsD|p{nWG{ zG&y$@{)+*Tblimd>1!jp#}YRoxc1qE$Enpulw}SAok}C3sxo0)Ld}*)`h-xTJ|SY$ zkO$^2AQP-j4xVb*2wa1gm4*3q<jNw-AV3K%kMcMpwNNrz=BgMnD8+HqTM`p}U2rSY z5C^8ewcFbn_Lxi_g<xzwIY+YJdShaK7L7^lmwF+yz-BQtChT%k>=`L05Q}1fTfI5) zeS`;$#6#JWcrLggoSZKyxzX!<+hdDT5;>M%mEbM5eb@o|+PJ-9CFY5*a#7hOO|Lr~ z3^s;+55|HjNZF_dscZrJJnC<4X=oS!tov0lNCG!1fCYRjZJ`7uHVthT+u8YK07gSd zpzLIANT4e(WdZc1Egyy^OQ$b4J6lgX8-UmfV*TPO*!%iGA?yU?zfpvep~7ET3^{AA zh*6R|W{Tq(#L;t0undWzk`Vfu>7d;;QiOI@*crbp3cCvg4TWFB<S>colr*nQ1Z~Lm zYw|#cfDGyT%w742b#7kJ)BG)hh`G15eqT&aCbaa?f8idb9|Z@MPU1TlO5hU<>Q`I> zB8hB<z$QNHSCt&J+2qrx^)XbWZ(Bg!GqHfwQpY$7bYxFiZ&-108O^LNy7J1?pk!qs zjY+?5G@X5-iv<mRCt#S&INSh;F@62_37=xY!KntJQ)Ds{F?}^(atb!kthi{};O<bX z;vbr;$q81gBX5^f_?BLaO&x_K(_Ar=4r={n-?GX?jf;H*%TX1dCLc<56}OOE+>kmU zv_S`MjSRzeSq<STvMx2sv9)+v#c)Qkvb8n}9j7VdD<cj)Wof8uqt`kUx-n%1h1yBZ zn{N>8-F84m0yQ29mWKo4KdM*pJ(842gYD9GTXmbfDnO&AP-R_Gwx#JmH0ue)MVVGM zh6td-HX8bqW0T+bPhkRtU&lsA4#!DXx3cKnv`F@d%SiF-x@7#Ke&ckbS^!kk%ly<H z6$Fd7RT7cOC)@Zv*)|g{2GceI3w?(a>7ASau9oV>C@TC7L^x)swwGy;b$e7@wf0Du zon_T@ovYTY9HE&31GK~GS<hT4ZZ`%k60`IS%Y0e#p1Dvl+7e@f9;F4%r<&EoQbgfe ztOkicJk&$TEaL1)LccoCdZJf59xS2*pz4upV<)7_+NjmgpdeM;Z3h*zxf&FsQp&7% zLJcDl>(Rw=h3tMiqJ>76!W)P}e|na|*BZs)<QL~|s2I4a`yx>{g4PeQ1m^0IojilI ze)ZI@elNB`(SD44WT!W61Xw+rhW254!AeHk%0#S@+6)Y?Mc2M2cF0%8Ts_ePpC~6K zlAY~<w01OXG-r2kWx}S3S6neC=g@kP)z4Q~wy_CdAbp`m(yv?4W!Wu)vnF%*O^P`S z8p=gRkK_uo^B6!rx4=><(3TCTC?0@U!qQc{9!xA87Xm4=VOP=Aeb&-Vj&Gs3V|zJ9 z{LGyhEJDrM1KjH2ZoDlwi;m6fPUrp8;mgVT>_nzUS|<67yc81EMLXhN%QZyqjO?vN zcC)o<!xepUz7GFiy6UyvSfHm=D?2a*epbnQi`{0|fS2A;@hS}#)IR<UgqP4XT~Eb4 zJ98^!)yEPg`-cuzlziG>S8&Q_OCU^ME*m;puOtSV9<G3_P0#v=MvIIrJIv_bxWGd1 zUo0l8E93L&cnzEI052wo`){(kJ~#m$YIPl_5>5oxVT9Os?a-7J00NegWWl0N#J$y! zv&A7WMj89S@g-9P0emVe`A%SO>AUPn*MypgL2_qd0c~_qUa#KRlt9W(0RvEshw^e` zcWM5zFs<=ofozFHK`frsU^=*@$6Sq$qirb#fTThSn$#4E`T}S#_^+vHvrfAH(oX{M zmLassm({Vy*?OIF)(2Peqb$dm4A4>L@@=M5<`Orqy1O^V_yY*pf-fUP4*v?_a}8BC z0fl=yFu-AMOA^$ABH4P!rF)jE_(8Ug8R@`zJ$*5Ste0KY6SY(iX&90x#LeoqS`FDy zk->C=?4r}zd5K;%1*I=Pd&|?KwivN#_PR12@XSi~9;Dn7qCZ;R%;kAjmuFhVN^<+T z%CzVp{m6$rJMAJ-9{ms+Gx;h7CdRgB&}L0f$H&{AlvWM``IL51GMXT4ob6QiC0+EW z-o@LaiT0YtCa1sFEnz!5)$m98KozsD-MZiUv-#ze&yH>%5`@<Nb#mQ-WV9fOoJXc% zR9v3qZZX5&oFHTF;Twblnw}uF=#(n!0|xwo7w(_3?q{^SIGs!mVHLbTIT(|3fic<s z`Rqp|$Q1brIxi8ncrl0nA!}Y%|K(zFHh*yM-s{(|5m0A({^J}wXM*)Sx`*gMNB73( z==IfPe($sUpZ?+A{m<@+Ms_3(kM=M2+q^RH_DGFBME1SYn<d`^q9f1<@}4b;Orv<~ zG-~+)=oku<>g0NwD0YF3+9$VWamQdt7}pLCDQ~)D*>Mgj|C@^4kiyDEK}KG6s?}kE zxlf~PLw#SI06w-$<Ut$(x(&0lfQxUV6~19vgn^<j1sgVo1)ltMF3IdKox9<As;`}1 zz}9kUTtml|IOAC9h5-zL4h>Sh;$T7=gPi;^;ECHh98BbDHlSmWF^wk0LBXX)PE^aX zooh-UyuGryYF!5ax`FVKCv4}kR<T%!dxk;8I+0kw)oS`KI<3W22u!R+_Q^f1HG-L} z9t+8ia@5jJsU|obPS2FjiuI9?&gZCoF?h12+;P;q;dUy*e`I9i5;56#kFqrFilAJ~ zkf5!tJE7n&o6ttVvuqxL1DLUvWGC_VDnq_z13Z-j%!-=<I5JV7I1sOU9BNZ?$YrPE zrDx*hiC;O%Uv==*oCo}jT{TsY9Csw&kg!Ob??SjgMa(M0sGxs}t%Zi=nca|RP-!F> z&tq|1R$i|CZctwC4zu!U;crNf-<=v4gc!YNTl<Fe_lDHBN_(B4`4*}yRCezA?Ut3e zsKn7s^v{Hpt5joixHBJKL=>omD6#i}=-Dk8SF5W1F+s=ffga%o6jV^jup9s|l7iZq zHEq<F%cRbD8#+|ZkW9pf(^6skwRY?0B-+AnDeJM)h<71)jb-=qijPpjSkFK(vRiI^ zbNku-=ZdU0Q?H%%lWQ=%6T{QgOJy+HrZk4?Jr%IJrUwzMEQ3cD=_QLR{@b@r%TNJ( z$Ot)AB=kH!k?2U?w(>V5l_d-t24`oQT^VGzK{{tK&@ooPfSDL@LDg_3Q4j2jH;LY4 zK<O4SO0hU-h=tofh{1fW4gjVa*npzQIn2<ctjW~9<5t)s^URX_BaWpw_Bo`FZh5b_ zjRgR4MdbNgHrKpEHstR?0nQe0P*%N|q7hwPmIU(i4<2fqS2V&KAn>I&N5ov`Z+F0p zCaMj1^=ATbSpM_x3hgUcf8}|!rz4Po*j7xK;^-<)4`SG8E9Z<0ie_93rR6mjq}RlL zOARhLLjk0`%iyavUTCzgWV26P{wo!1QZ^~q+P*Fh-Ks`S%E!d@!8b6c$u|ZJA$8MN zkY1G^$u%wx9xM&SH8T){IgC{`cB?)$FImhjgNlBKr7W3Q0<~ml)hmh@IoN*m=*+ZA z;*X^Y4gFkbh2YL1Gz9}D71I`^2XC#Sk|gCz-dX_^uBYpt<#yKrEofB7W}A@yal%>* zqIog2Lbe)&emAKeedck*S)2IdDoemvZp}0B+Dg0DUOc}m{j))F<-z5JT}9@Ai}v%K zZ_SnmMJie8Axir&Znt@%5t>u3Pg&WpYN?9XfnhCUUz&1wbA0wJbXYL=dJ4_xc^9`t ztGA!$umv_{1}5Gd1|jis#blG%mIK1>ZQ2OPJYB4=w9<CBFY^?n-rkhBEGy@RWZVyG z5|*u22*bXq>BptOR5bMQR8+NMWmaIn7bIxi60|7bMi7u5rL3A)*xS^lF+_pp`5eew zIoGTvZN*d+n4){?b9Wm|<ZjQa2{W8}%P$iuQ%p9AdGVy(trRzl$W%5P%>af}?`1e* z_?WuLDR0wopt^B6kE>~$$Co;9r@HKBtI<C#me7P(%xvi@w<6=Ouk#4J!{ofS&XV^= zag6_6G5|pCJ&ZtARe~6SUhFh}IAz5Pg-QifFbbK?;jXs2Vktl+*sBAua^W8XuBb}v z#G(a&FM*Q*4#t2h>Yf;w918l?#u!7al4aj?*_O!mB=9dg$jYNC28<ynwMd4d**EV1 zALBC40aszLq~j44qdf34AuA5K?4u9NXd!Dzc>I!aF_6*i{3cA1jHJ1)@F}?Z$0;n2 z(y2s0z+OVEuF_UBty+0A>qyXQtu%3H8T_s{lmy#YX~PVk1x}I-0y+!0-(-dd3Ch{t zOJ+tTz&Yw`*^gm;$lU^y{7ED?*;dywA|uASRaJ(i-Ws&qmm82Z^i%~e&+l~rs>ygP zHr1~%90Q)~LURsENF0iCuT8*I48@)$%+P_84Ocr8vzK4NO}3v)YRml~ei!Eyl{YD$ zRxuV6UC=vb4n=6s7^+KbyNK`x^Y$p$bl`NYXl?7ORMx1L_bDrvq`zXgg-KTopla0> zAM%ma`$?<e7)6GT$I_v=b778+AF96l-kll@T|R!r|MtiYtq=`^Fc(8<%UKpQmU!ZA zUmwT`m&)-tnT<VMOjhT_u^X(-N>I=)s>E7iSl~JTx$SeOe1k>;Rt0z8-?oQQ{f+j0 zSS82mDjyNZb(PKOhun)9gP9Ze0y{}=nztfZoxsY3`XvX{Jp2!^6|4804&ZV)SL{TY zQoa)#SI3VII-Zb9BoPq#FH|}zjgm7c5zfk9mA47TxjoN{h7uv29fCyUCxa@RKpSZ0 zBt&%qAgCN5{zSX_Gv_BWZZf10v*M5QIbvM|@2j><MKlakRCy1SSg#f8CMF}m2^D8L z4b-~x;$$BeH8ByvxU7t?3c*A2`+%ope2<y5T3qDvqn{g&9XYp9OsXyHnpvAJ8;_Oo z?&T*m3%kOVX3VtqTAwq9owU2^$J{XMDCPawi{(9u&W6*;^L6>uC2yDiP{0Mq1Yhy4 ziXB6=rB#C0HFVSl_$|Z7Dr4shCN0}6h?gZgP~Ot!vX#$v9#W*luB(;HWH#x=%ry<W zpP}w^x$X8D0$t=~))mo7+tuP=<<gMkl|wByXFSAAmV%{n0bYXSmfp0OFk591wOg4M zg6{0g-2}kLO6@Uj%U7W;!fh_B+E2!dgO{uI5CO(f3kG@ve*YyG{`S%`;$%RPPV&nU zA3*zu*%bCX2+E?vlO5$aaGAB1Ucar2KG(P~otl2=1Np|M2XyRBB@xh9-)dj7E()@; zQd@s!rA8IFXP+AG+N9yCYEjG>Io@RPTHM)*gdCPH$(Y?1?26khEyWD+T_Iu}$@M`S zuLA#)ZEr!cfC0dkOv?OeEp(h9CBDYlf;Jx0Ks?;=x;00|G$6|-l5L1IAPh7Pr3T%I z)XBNzWsNkzfU9LVg&T<7YX^{v`Pz1rE<ZrTxZ=pr!=iQ$`g$pa`iKlHw;W;#NY>L| zcu3vDbrzIXzy;8yT$}Ekfud~ygQSX^Sz3$9@~t$l0=hZe3KQ~wZ>+dbCJ2E71my*O z2wweT$9J+7uEn-0A~=Dp_;HS%YE_C7?;hi6`9K89l_*a!hL7)l{Js}pZ4F!HP79_M z3(R_a)>?h_hxX^~`^cGqvw;RczneHu2F3{Gw1`MSA1Yb^F=>pXTms_vlSo3>>mG@u zo`hsiNyzel5HD=;pwHG~4dI-C-7B)zQOMmbDs92zui9KV5N1V@{h@v9XK&*z5<Y0x z4H2Et^|eAeafpcNRPDXau!-B?I|p?_cfw&ort=+|i+jN-&>jN!2`?8Kgu*0LfCBHc z;1rm?h%55mibfzP6fJ`0*c`7JcBia+Wx$=4FJFEh0e-BfwU?9e;pALG?Y#WFDNIk< ziC3d}el<Q%5n3ekb6*ZnN=PC`IgkL4N}#1I@Ke!#*cy53?-ci>KiuH{LHCa21{jMv zGC=T_tzq$992ANn^~?cMu;-s4a%5pe@ekdT09PaFKt;GD@XdP<k@LRKNg?4XNdmvg zdPC&+Ky;n*1iis{`qF&{Ij`r=h$w*qbN}@}V|M`jF74o)MUE7StQtpCk}OTCi7(9+ zGrCo)ntjVEV;KfmqjN|kIOF-@a)VY8t3+ENm&YwAkmZ%zC*e|4wP3;p!g20Wk4smH zEYX4_2iAWm>(;AOJA|@iO!-dT)zwH+LLG_CqRNv<;WI<j{;3#rwSJhZN0?*=Gm#rN zTy~|{)nj^9R5xNx<-xJqL!J&xO<^PINa;!I?d3|OP~9f|Wtb;s@~9t%b`uTTRJuf{ zTHJ2QbM?_prqb1e43n`=(2&Birn0)RJ#Uk>V?e>tv`{VRWo|_mLs@*yMh9igFTd#c zY?k;yowa@EC)*`em6dmhlDL1k3ZIBgTGBOjU@HV9A4FA%d~Nr$1+T&02XUFY@E=XJ zlg02a-TXo&^V=wR>`48mf`>RS+eiNVjubq$!Z%UySe5sz;8{M9CIwH7;kQ-rXuQz* z*_+>uiia0@q2IZ{52!YNXUZLDL}J}SanqpPxsGy2v@7j;bHOMJosj=5Q|^emr?cH> zuskb`R^<wOZG1M35jH4+N*$1Ei;UBD+1`x*AGAKzsJWU5mg0DdtZd01@DAO{{?Y?I zW7=!Yt=RRkh^nbk=s;;8DQ{D=6~#m)0(2q#ce=y=x1FJ><PgbKj2YkuQWtzRm63xO zMRg(S1vdtr^^pS_Q{O|{!6Lq`Y29oYsCmnvP*azz?+mur2j6Xt`orEPA$fQ{J42MD z)3qra)O7AqX0x~Tv?znPF&A1!rW(3Ou84$(E7!nTX<q=D#_qP`3Y&f=d>_aVVofUu zzW?}nQx~eGv0h|}wmRRAHu}56(bqeJrwCq)*4n4zS9e?OW5m2%J360TSiod0x%JJi z!P`o%9Zyex)V^4P5UG|(K#`uZB5Wh|(*V7+w%8E{<O+PPIX2}b8X6i62VZ{;JylUm z{R~QQ55#?EbFz3jV`wJPM-3i7-tDOxW<|G?j$wPS+aLA^TWs}gHW!VCxAqUOKG{7$ z^z!4~vo{I@AqZE*&s9;}#H^rY_FF{}Euu(j(j%a3McPH)nn#26ztJ8}GwcG!4Gm#b z5NRAs?Ec!60r=qen?>JfMv?|ett{cPwuLdAL&5MC4w%04+JX9S@9r%N;I3nU;HNWO z-dNfL@1wOKGqMdxxHu3UgQDtOM+PWAd!B#Qc`o~E7Gwg8rig;Nf|fxWZQl=B*i6uh zB^I9uq4I5|*+?EFCaB_+q@zVn@q-B>1nB#at>q(fj3Xt`OE+*TD>(Pf$^HG*dX(U^ zD6}!+QkLeC8?;5IQ2<JA^c&tIb>1ls7+pVlCgo(RZS?6u`PQkEuZ-+q^OmfP!LZd% zaWRP#<{<T#4ctRu6_uJgdBlK-4=X*wa<3SB8l~c?MR4OD-W3WooSi|L_#k1Jg2$12 z8CvW69N`O;%}9lIqo_;_(>e+*-z3*hhiZ#wM22QNHU`;BrayyI)5-X3HBvDbaZ@xH zulDQ<kTfhLPEMErTrs@MUgdeuj9$hN2w*kH${WdaDJ-D<qGk7wEFIo0&zX-v_8zN+ zE=hl+ZYs^^V13lxK|k6d6<N#kvR4~LO-m+81+YMtuU<}grC8}vh{ABNK4`7J7%y-u zZ!tvXKTcq}hF`~1vHpVnle(qj+Fp<Hdx~Re4LA%_!aXbBiU*yH<MuPHr9137oY0ZU z0_lJCEw_a5T{<KEuTH>0S~hGXTML3G^?KQ(jYt(kRxsA3{bG7dAG=jDVM1-?!5eDN zkqm2fb$qwAFCWK<tAGTZ`}mVJF+1<Ur8R3qxFQ=oEfz<%8{20WpwjFiZ@|wZohPos zqtK_Rm#~uI&}uP%>j8a7hTV5teqU|_Hf8>(psN~_C8RPGRS4*AwWbWV9!iTp8%Qxw zHi25dD<!n*4d3TR4YWkPzCq6#sDC%WE&YDe!`jCWBqA7=D4#R_DLcf-Ze<RGxac<_ zG0>Ve-=VFS;_t&+TVWvfg`W2*+vvPVn37)?rzdo3Y#c&Bh`B0aqy|2V&UAX1)dpFt zhGDg+tG=eoo4t#=(RA!eI~#4#U^4&Z*3Z*JXU`1oEv4QBR&F*e=F(;t4D8lKb-e8l zthF7lop1%M!Rn!D+cdv7D7S^M8&%e#0p}5Y<7o1?frv&piknL4cEe%aI37P;9g&s~ z$&@L^S%SQ8ju$U+TK*Ki=W#I6il8VSC>TZjp=Z}6IS-%|K-MmUpHA}n<81_?f)qBy zh*oSfX@=U8Q_oJa9F)!;2iodM8ek`;)|eXQoj$PzGo(~%qqEN&v4PeaaaiOvupYa@ zo#ovY?I$@Yhk1*}a`I1c2=gxi?u1zw2sv7c>NGFTUj#IaR0rFw-NZ&?b6O7|X?^t& zH=8zrtOW%|>{%V5(cWjpFSA<5N%`q>AF=UPGUkFHbIjUG)|VeGQWDB7&mZgH!N?U( zx>FjaqXQ~>f{|~U<d>xs$b&sXgDVQm`L4W8YiKk-j(pVOuj$g5^F);~Dm1mHjmhZ| zGJiX2S@#A-ttW05LdH=nul1+abZzZV8R)d(>Aa)46jVg@rVDro<Yhs86{iG(gO&hJ z@B&ik>>W6@va5EiRf>VR`xI`tJmgX`pX}~c*D>#^x-?U1BFMX9QaQnF{=Ntabt+S= z9!G*pwiVQQEJHY_$c-znU~>%DBC+-gMqLfYf0|ArN(pl2sFKA&?SV?}rejzoATKD~ zC$uO2`>pCUbpTLnLa!nV{T7<dyLqvf*z%R{j5d}J?iN*)!W%q$-ku|e$3%?+{BS5G z9ES9=>DU!A291B-CP|63*lvhZTBu`kvwE%Ju_AU2JZ&#;L1=34O>LP4S_@@#TeZir z*xCaOUZg}8Xt5|)4OhjRaPUrMfQeAR0;@4XcFFGY^}Al<!b;Ygo3}KyCmOA`i|&~g z1rdw!pD!<tziN$74_jYC1N{|9^!bk$XNVT2wHZf@!HpS`b~?M5x0s?CR}CN*sDx0) z<5&0#6%sN>m&3N+R|C4G(i^eG(BvwRuTlWI?zf2Am|kb9yS?iy31;^M^FdzH`Pt-P zIzC2xPN+m)zeIp#YS~41&UwMv2o_NKj?&Yw8GkW&(FWdbM@-7%<3=AdyL$XaF(Noj z$vQ%=)qo(Ys@L;to4Za>cq}ku>)}u~F8Ck$t5YkaJuyEyPZnd>-K9#8=C+sIEeyI9 zmw6d*P6!Jh5U2%Kfef@H7BG^CqPCf0H>L1N%NkKNLVce}69zl(uHTCbQE>ugPCvVT zPw-Ex5IyPTxP?sSh#<J|L9T<=>Dkpen<COX0+ur$1#CD!lu_-iRh4QoU4C(`3YEU> zH4!?MD^TVNS4d<GuDh#)RQW}xZtQA{!BVD9f}bRfDfr1$MypkLN^ScVE>ML_NTr`m zT|u?$SYES?QC@<TaaQ2J=DZ%OkB1LrKoL<i@3h{#YfN%30Z5ilzA*af7Jgq*sVMXA zo?p>!Z6)l|zT*28<-b4uZH<Fqi1<&lpc^43_U)aPVA0>f=L_N+Rt(qoN)6u0ASiDr zl+G>(Qcu(D=j9eE@68lQSTl4dG&%FC;ZR@&Lr37cv5bbUkI`zms}fLKi}bp#w<x(K zqCxh|at(>7C3a+Cs3Xo`d5gc&Qs-A#;fOYIy}#Rev>~an1!l|($84d<xy4gP9H(Mt zFaxP%j?O=E&Tbu|IOa#4uaHZFQA-|jla*v>lN;@5d6sK7-6`#iymgjWDNkF~QlqCE zUch_*3PK_DL`7jiRkNu{<<X?c?X#n!;|b()>;y{et;*}O>G5&Xdm00U?UIATZFjVv z92{$A!J|v%R#`TY?vwt;I*@GzLl4U!8ehds?7;XSyqSm=zg42^@xE?xL95b8C)jqC zmLM!y-ZFb47AI-t>v#5vg2<EGL1-8TmkE<r*Lu$~dlZVfVz61E6n&ifwk?Wvy^S6= z_i(f|Snm~W_(h;~)tJ##Q6=}3NaF5g^_(o^DxOA7twiw71YiDk4F*B)7yCr~UaU=R z=rzSrMTG%PZr+;9#2_q}83+_m7Cw~&;v!|k2?X+?QbCbXuB@o6&er(EVi`W&Sb-W8 z#3QCwDKJ2RKSTedx<XTEkpSf>&1eoP$*egx2OTDM3kt*^C!O>2@f$>G&pI((T0YFA z8^{{)$7lXfYW3NjZ493|&r3g2JyWM@KX|rYqWKU7t>Kfd6Q#pq#c((@H_gLydDA}j zYO7pC|CX)bt@JYVH!&*_S+Ysju+TL=+|)AIm;}3vw~e`C3Wa!d*;q6iZ{wbl&J1a? zvZ`MKW;E+{SAA1dr>VOjwCM^-SF+op#m!=dXId~ophvoA55X`pahSNI-!XHrQq3!^ zj90eSbro72kyO#(gVs*C5=;6JR_wAa9BI78gs7y9{xxa;vI!Yr8z^XwI6AQEB5+N0 z0rM4=>Bh?FcSOn;dYYXI^vKh6S>9|V=&*nGD=X~l!1H&pH7N)vmi#KiikOO{6|q7i z=3@@ciM*6W>*?7*MM_lReI6}bwSfw4HR8MMGe~bN*PqpDLYt}HL<CnD#UGT#>pEsT zR7(P<)4=e{`BV<B={)7jqi!FwHK@pBtr5)o)~Y@?p6U`m%Ek)-z=zQh01fK4)Rjx= z<GO}GVP)Ve<oiIo3p(J#($DBiABe_jkd@hFn60Bq-QPHSoz33+<(`XIq&EDwB)S$! zKrE(&SD$Fkh2c(TOAXpby{+}yrjjNnCl^%er&a1PcS6J>^LbeN)!QathNgWuO0C3V z_#zn6H0+TC@C>>EizN`KAgI%37ZSQmE(c8UW->}+yTg&9m6(?hR&2wF^x@?+U6KFd zn2Wx$p>rY2Z&%GhmO61N%D*WtRJ?;>&p&}zu-sHrLs4{VHQ>~p#decq(RyxD;<bz( zJ`bUyK}R`qTd%9{mIwkXeEmUsh0Djth^CHyzCDBq#zpZlQos8c{aZeiORtEOs<<c< z>36exC0xE{_d(e{3qCUMEaf{SZ42NP*ml_!GgTV7{Gl|(k*Ajl6F%k0RS+z<W9@PT zwRQ?zDSH}<tiJ&+AA6>v<u{idYovbBUK@yCcn3u#dZ#Us`nnp&GR#bi)qp$D7vqvv z@Vg0jxMWW4Gbs40CQ|kxul*GEw|IUDiQ+?0b4r(XH76zXE+R9K^{vZET^`DByf628 z(KJ>;&P+DH>Mh=t-l9yPx!FS1tw7B?FoR=Jl#M^b3}L`ov#2TRkUd9AY)K11)5snY zWS_6@Z6RcZdTyOU3O#JmZbX}d-H0Zk3v#Is8o$u{^u-j^VS(S@C7ugMvS>`Lq5^EG zdA*yRYn@@oHYMo)#VO1}U@7n3J7!@zVe}?3qrhLYSanzqaSbxktExVtd7Zx)yZw#I zmx!maLV-p3Q582nh(_)=yDn>*ad8ROEiTGXy!iU=S7gltklk6i9Fx9(<7=_m7$z7$ zXh^>e7-OBzu~TU|ci!6U50P`$5{n<fFbHYF!86`lyxyPR+xG~I%rCxw?*z?E&hKsX zyS=Sl$w~bFu0gXHfw)?Si$v>|ImK(HL#XlXJvoctzrXx~YxbV5#)_tHa5;8u|94le z2yHUD*5BRi@9y&ENiLMy5c*H1^Lc);v?sD%c}aH7JF;tEk=e~xy<1Vs_=(hfL3X)I zx?e=$x+7gd`DE~t8aKV>VOQ)4FNN&NwE42X^|imG2Y=CD=7j*RLm)eju+eA<dy|P~ zwFmkNvOnpg_@W6|tapna(9};;ALPwsta<bCGH>~d`|w5;YNyPSGnwA1a4*o{8%o%f zm7xUhtcaq#g|b#Y$Z7PO-Vbp?OK*rM=#%3L21|7#CNuzO_N2U{e$*O;#{mvCG}7d8 zos#0Xe$2J2;KnI8OyDLlSAM}*NN~{aeifC4w9D`}*%_J>O7@LYv=P)RFRPeUy7cmE zsXARbFcTLQ%H+>;NT=B6u}Tg@Tb-q1sEDoFs!h%H9j=YR5?6H91qNg-*K8h*ZiED| ztYV{Ntb?L>S5!;7<ph{5^x(zourYd*fyRJCD&%}<;_1DqqSwo2Njhp%Tvn$(L6B3c zQy;LC&TPa=s*(=OHECEJzrssOH~*M>`xYb1z*U8=gYmzQ=1*4XHMl)QH?^Eu0T>Zf zi>YM`1(;E3J+CTVqV^KklqyK#Dohd1mRkYE0W2At??Abnbu_E0Jaz1e1cKx($qUxl z9I)0>1CNyEY7#TUENti?Shaf$an$g>ieVJEoQ9^<IZgW=z`m?%BLPX1(Y|ZT1CN|i zOx3eHko*ST!NtI^x2h+S0y&R(kxr!T^GZJIZgJ$fX3(0r(n+>9O;N49->gSMI;sw) z3guSoL+9lwPj?4TZQ5B{VcmZP&mK1}&c(HJ_AS0<w>m;jGEJVKm#rdP4Unxho#a@n zrrRM?Yxs`5>WIzGhbvDrlwI%fI3pJv2XcXy8HKxSzx?x9AtR&rzCnEn*R*3lnDd3= z&8@^ED^}aGY6K5a#B!BMO}uDLBdZ0pJtOhLR@Zf>*U9seoqUzdERX<}J7_q9|8A7K zPU0%+U2d~jBcKU^{~M@ye<RJKqLTiXc~`LHHO*_GY3!DIND+HaljT1w3Q*z&93~e; z$xKE_W$?bPm?2<IxLP&}*`rluqz(Y;$Sag?o#P2qaxczjCoo~XH|DRTk$ZHpSU^MV zU-#u_`rI8Oq}_ayly(R9A}fNpXX7(C>UkRn_97Kow~MVP;@57e$mZ-24u9Un34f)J z7OylupJ}Z6R6xBJ=#k<r%*6u*Z&D#>Z{zbqY}XBN0`>HXaLsCI)|Tw^>=?<oQUNjz z@%7?E#Q?n|Zw_KzO@8{vQ4!|}e&tYB+I_3)6CT95>F#PJ5(s_&{mQ)cpW|0!;K1~3 zft~bU7gK~kv+zW14^wn<0oG-I0_V|#;|tth;u%g)laz_5(ooxOSXBJg69=*P=bHJA zTe_{<ZFkmgt?*jde_3^{cQQTQ9RGkEr4L)5a<}W-<AuNcEWKpW>8TX`WAS#IsRPRf z5S77O_=66U@U%fPTEUks?*mun{vO`<U$&wfSe*I?RG_g#47RM}pJZ^^r_Zc89beg; zMvjm%Hms)JLSADf$BP!!rC2^a8CtJCZU3?TX$!Op?~%G<fpmr~q>;Mcz8{PB_BNTE z?@x_r3X95}DlD*2M0ry3Cy!3*^oP+f`QhYCeh8tGC!<R890W*yfzs$-k`j9osv#;; z82Eq83)lI_51xHoS`mSmZ+8AVdfH#-Q-1?)3q1tVU*8>VKHV7hw>SE|9ei2Lc#De% zFgfyb7bb(JM|k8tJN`(XN%^uddp$Yt!jBri5I$sAJ*$&$1O`bWM&R>42#K`|{jg+y zx1X9W5=ADwxy0XF_`li};$b?+f3(Oz#-q>Yc#C8S$8Y%e{OE#)^eh=sAMl(MI2?x< zOU+pC@Zwy2Gx5k7O%CxeJLMd>hWL~80{CI}lEtK~Oqg1s{oRW*UQXf53;MP-*=Dhp zLI_U)mo5a%IA2VE!W#zH!5=hwI6J|E-wtcxp4yN+dei4{32Z=-u`?gz=(UgdfR_XX zo^Y<pcP$-;MEJ=t4g8HqOpaYK#=;wK5WkTH1ph@RY1R#DE~!6;yF9O<{X1SB%()T? z`s+;fjyEv*88@_uFEGEEPagAgLous8KRcfCvziX!L1TkxL>&CIb;8qJmm)J?#QNYp zs5&o3@HCw#h|#CqFmVCA&!Rt}AY~e$#_58V^zxgE^>|=C&J_WH&cOI^l0Z^`UEeKc zY!S~e9U8no-A<)II8X}y_}0Ly@$m%<%3r?3^Uma`_tP03m>m*-grf21?CBYLvu(!| zAG<Hd2uQhuJ6U{ov`I5W*e!&N(?TeKWo1!1Y~a_q)+(Av)=(%w%>@3K4<4S}-~^9x zW$3RhXfuA+IZ?dKP|WUp*obZW?#5u3J;~p7dFXe)2@f>BVAKFxiOxoEXNY%HspAio z-}oc67k@n>9Ueu?fWMq*f(gTO5en(e0giC&BpVDYAg4!1fHHLy{&G6E`-yD?sQ^+4 z<rt}6AT?ylKXy4eLDr*n7}DT}0@Vj3D=I_t#<j3a5ry2?438t^<5`@~-ef&YxS;r? zby%ii)PYw_c#1zR?BbCUCCe%WUDs<@ybz|{Gw<Rz4a+e*n=4+-xMv`KU>Fx9Irx>t z5&TdyOFTS!IvftR@F3~3@K<m}UDHP0&d$z&OP0OFum0BdQ(4GC_v!BF(Z<uAe983) zMKSd*<AW^>W^oiN1C@X0d^*Ou%wfTRQq$A33+@KnfCn!p2S3V(1CKm`kKmL<XN^ZS zxlAAi{Bx4|Vg~d;F`NwfYaNuYnTj_k#fg45+UPwV(tETEXQ+6&)BpNO{&qNc+I^zi zs5{u)?hHrYb@~Ly?sxs|-e~w_rw7#D;C4vsfkZ%)bC3$WL~85(+4!7OMl>DS(Pv}G zRQUZG2{7?zF}n~%$gbA#b{$--m=EE3tM^y-xV_W+7JoQw{E>m;@9qXJT<kCYU_Okt zj;GDR)7_qAI`bbJz0S8RDs$Q$c4U9bkIg~)0CQ%P*&g(fif+f+vR_ZP@nwCd^YzGU z7f}uH5jezdH}J@?DygB7z!1O9<k!CProH9l~bBb#G?YrWs?3<o>A_#o)$)07`O zI^}KTxCWq&9Lq%5VUM$Seh!Z#dN&a{M%lV(Y^O;=sL^!3&4uAg;dvK}rA(Eqk6jJm zoBV{X?0oT8|Aq5&G3GDRN%0Bf3ma0;BJ_JWJs4wSX2;q{8`7gtdWApg^oXTUAI$xb zcp+1iv7hN=of>I;36wM-`1{S>%8L=Uo_vhUV^jiT%*{7)l;rR45NYSzDFX!&IiVPa z?+qSEZ1Csc4X#M|7bo<&*rq9dW5Z>?Ua|fZe83xO6Iq^YCH^dC_zxZ@WTbR2_w5%! z)yE3??_-I7hGK`=7631SH%1wEUr*%#9`A$R1N747zCa1vjkyI_7V{Pm)+UeJYT*NC zAXL-S@v(!>AZ+La+ZWK-SYu%$cv_(8iA*WKGQ!J(Me7J3&axN<{%f(?@$~xTRCc?B z*1~Ur$v`G&aCr14-}}?~7S^VG!_zH)1BzKda611Q$Z|BCeWw)WkU(Nz8I=9}B%TMA zE`kuD!bFZ4Uj{qamGk%2qQ=Fa1)Ch2{D3A9-E7g3@K`9Nn;`8uOy2edN)iX741T+> z3?2bQr{Tpp;2pDSYBl@i1*Y>Z@K^V9pw;+T8ntQ7&S6xSzu;_qGDVX?+l4Cz_G5&H z8hJF^3LL1M%fu&V4Vk+SrAIvJ5sRh^b>WXsB<dA6y}-|h?5Z}R^%Vcdw!nXH`D;9r zr6Q^0jf(!kWeFa-gN=>Owz6vai0k$2J<0p}6jBJa8F>D#zdn3|zfXER`|zM7dKXV! z6NK>ynwW$Qg{0$<_?4o_RChYP*-32hW&&vke>BEaS|R<-4>QPve2?ddgNJ8EJ?5+6 z$w(x&$LH9Qd<}dcH_<sg^Z^Eb@InhkXsv}miY)}8JsGceDxA0w0$<|83?l3;htPcS zMu;C6by=re?ov?r-3od-Kq8vO_;~uiCx=BF8WabwQ3mbT19;=T@lFCzjlP4Iw+xE) z1ppKD-SkkTQq@MGG{-&^r@vD0%$r8B>3nde7)3olUL0JU6TDiLy;=o4x}?ftw{-jC zskhthfCEYl)b4htoBtkm9%WyZ=X$zbdnL(XQY*@U3G*^ic6IdKlYW;7y3_l*_g87a z*b=$?#0O(~a=sL=(3fxvka<wXz0moH;0MOa47Qz*;!9(#=q%!|`E0K}`aYSTVZV!p z9uIalN8-GMA1sMKa5jI`*%{#vetg^C?IR+FW_rPI@TTDUsQ}m%-fuV{M}_|?)AeWo z_MA+UKIlssi9T{5`lPZoO5(<WOyoW{()gSLF68eCR`P&&Mo~v)d)H#&<p>IN$ftb5 zNG|vnIJ1ezv_rwNY>i*-kEPV%WC30@exp%|>R}aiTb9V?@i<vT&PldT^x?kr9S04X z4kJdK^^Xzh_u!%!!5A%^&Sso2_qjJ@@)zD-oPn~+{)a$ucyT;=8ZQu8p7Q+|9F~$j z2p5^WBn0Ld=Js41v~){JPX@Ng$BnNnJ&*{`_@QgT*(qRS#JI<pzL-L5j8BtOhnY!l z11MhUV})<Fc!&v_03f=vU86fH#;_R-dV#}^PdqyU0+<>39)cO){CxRFxuJBzI48V6 zKKPNhFeodMV4vp(B$@vI>fxcVDZua8UTR8$H?lpszsfhVmD4*-U&4?usG>i(H8y*l z-KRUE%6!!6e#4E2@7x3Uv)=D)40u{?4%RyxBj&Z?TRK*xh9CF;+FKu4j!}Hx#diGW zZ`lh`)8fPE5P>9TM|{erO!l5$-+VotKLTF)V%WJhJ%SE?^2mTBr!>pztr9kc6Wx)B zt*ZUCy#jWp_&q-S0eXw|7zV!g<~Sk(dC4H{Oy)Qjd@)DdB;L97%S{t{!=$(4H|_(U zEp9ZJdjPMQn>N)@eL`#nQ!M4NKu|?9+lo6UeyQRj7o~ObhzQMIC#UG^VDi|dZbH+C zpT^fUg98p|Ozed!hU}n#g!?SLD`2LbXAp4zF*Ko;)ZF3+=M(JpG|Pib`J|H>Qt0q? zPs~fM2{ni59Z>|K^mH!3Eb&379*RutJd8blo`D+y-fT=>a9i519VXYnPYUt)bF3dB zaL8MUbsk6rS`yRum(Vy*z}#T73pJV}-Sm%d(r<7x7vtk??HTO@KnLP$e3;&8nN6?) zQ(`(I#Nxrnl`2F58##(j6xX;qS_=;fgY_w8L4D5l!E0ke6f!;sT}H>K?nY;Km-0O} zFWPvt+uiV=BRSadGR)-h3|R#fSBUvyiUihp1vy6a)WmN5BrSwRqnu<fY$3NZ65e?_ z9H7{f87QrbqsS1CSA96a><oKkgoXU++u>lqTNb>ur%``vOURV)E_{y#gw7F9PoOZ_ z!Qai!*3%BP9Yeh+#uG?NFNpofEC%`hWj+woKcp6MtIR^!AGx5e#|A#wp^GOy3{n@A zB|zv|8JM(=#lsOd0j`)LoaY2TYO?T-$YQBmY-PwZ{0_lhq+2vHoSvn9RU{cl!FjIC zp3eKH!<UnFk@Y|XCg<y*33i5JN^%*3Ic2CDERc;j@kDq*&OQo=G-jpPfG_s`<Rw%k zq9+-{myt*4?6fQ7fR9)tiuE}vnBqV=iulkK6{XY;;yA+2OQZtdcw84KR3?B%2?3a5 zC}wJaOA|hbT?~wtD+r}dsA)$zuL$@{v5VVoLczPwZ7WX$QI*QjY%9o?Fiiz?9w^A% z&TM47?_m1@N&vi3ro;pv{gLUCVG+DwB<LuJhw16mlvf=$zQ$Y0PL99n*abL=(s)PA zOEXrtQoI&H66q=NsK-AZ+>2Ux;{3Pq&#LX)=BZ!CZHgBN$ZXFNxf#zX)--;22iarr z-~P><G*LvkI88vrpOU>056<l4QHk^JnQSqoeQ9@iHXoE5sc0mJnu?ntOd0DCXU51f zRG=1^U!00OwCSr815u{3@{<{n*b$(ugR<i|en$ssD9D|KD*8LS-q9CG1ci?;B^4A) z$>~le5kHvi2!E(J+Q<L1tS0yc{UrXI*x=|mOXH!%bf7FOFj0!GLIGatG(*&Nxgh{& z!R1j>qN?Ms^5q0FF9z{PR|Lz$cj-s8$vCt4VtVJNB-Vij_R>W-+}z_UcRYip<MB9! z<H9cjCIcb+H|0@8*Fq`PoH{q8h+z1_CiMj#8e(|hExB@X@_uak?}TywW*DIaP|bWx z*uFV<;884_@V7L{#|yRW#e*4t;K}Vi@Mu;e_L3GK`Y1LYd^E!oS~38;&cOV@nBn6; zy^nvrPN$>obUK61-Cn0>KYN|c&fR{8|2^pZ|J1!%cNDqOw*7-(EoK_lKB~zBrZ7X( z3}?oe8O%KW`tQE4kQB<SDr35P@AvsQNYW`O<_LvC%B;!Z+3m?>`|QzV@^$*3#bg#u zv$Oje6-~N(F=+ZSolL$=qfu~P%>JW++mo~RCX;)!v&+fk&$F}1<oR^wE-$7+J^28D zcT@KXu(PvwCX*d^d^9sPkA3@cy5%vi81remeRgj$`8;*Y<>}dj$>a(R7iWHQX=cFJ zX0x*oCX?&@aoY^cP0eCnsJSd!|1`{RGdF&oL4j{?f_5@79d`_B@t5Q=zv<C8ADASy zJra4eJyhG)pK9B_`KYulCp&v*Ur#67i<#)$*;2pldxre@?ET4P7b4>_Hy?W@dbY59 zZu@rbi-jcA5|aLSJ2hkpN%uGW_!?3Z(?^opP6F9A6SwMk^y5Fi378Ol2f#IeT}NQY z5|T!|hZ-ZFUpC~$A5+U}Hn(W^>Egy4kMwZwi7t0{Ejdf|{!pqPkg8Cg5lYGL9B6)6 z#5Ov?{E8t+2x50>DCp8awR2|PBwURzLK54EgUg)<?tj<KVH&&iyfC%7hH1Q<Su;x` z`Z)Urr-GNL1kbt>XWNslx$bs_Kaff__XBf<@XQ<pjvd3e>7EB3{t#^mvfxFB#o1%A ze$xQXPc7^VsK_X0Hr*TdG+4)r1oFndd;O&rIT~g!C@U7aJZo>lLf>McuV&B2;(3mA zw+wD?RtS)UE>HhFYeigv1PN>;RjiItcVt<z5=8oZdMnupnSMloUuO5t+FRsl0`zWS zmdw{es^?#e8!zdPZEU;4LxBn0QqZAq7iV8iCtG%<-G|auG%hDM9@t-YZ`dks?CSCE zuCY8ZafSpwacM17eKyep7oQDPU|Kh=gXhzC#H%+L{zJ)W%c9)gQsd5Cs@T4FjG5lC z2;~bRlMwZ7dc&x2n4Ldux4RQZ6NO7X4qZv9f8AHhqlbHik5ALdV=*$DJd%0tPaZ$k z^G6Zj<Zia5g3MMwk3ed?3)?I@_&_j|*!B1s;fg2}e3@W*gZMruv5DXzVByTwOdMpE z3wOR_f7#yIfJvMLrdMGn^CI0gu)wgOM+kos<j+jY;}D+u{b@<a=Y{s=-1k>-fEpt# z0&8>Y?15x?J4p24JAQ!Vzew`x_7zKdt4T+HNQnY?4HbV3fKuR=W5Qwqb9?S^+Xx+^ z6lV?Jk}7Tm&h5$1sTFo{`mkEw^V#Im^ugK7Gd=t?y)9UmrkYmV=L|ymj>ba%6Qd#q z9Ck=Vez6DH)ECWoYFn0JcWl*@*D)i$>EgaZgkWW4dvMPT*gz*oxb8FG{tUfX1hSkX zx2e~5MC*WdA|N9N&}Rc$AWIoWH%rfKD-rc>Kr19&Al^jxJ;KUyurSZ=Tc(HJ3h1-R zUz$aQ<Di$<3``iTLWk8HLGl&S|AHbv#uVe$CdFq(im#{NXE&`xd3-0w_J<)Z?dCBt z{(weVrmR47oLc1;x_%5P-YAfo7$+f7L)kTym})-(1sjkNc>E=<Z;A*V1pHJsyiRm~ zSwk-cur;Qju3*3~7cb@r=6eKE4R|%TS-zb={D998;NHy%iErmOp2<|+%^eiq&iB-B z_OwJISx}IoX+QzwncF<CeFWT>`NK$x1Wr@aSHY9Df0^HZBzRxvo@&3$-y)kUQ^o0! zvpIvk6~j_&7eY+*?eyo|q4FK0jq)cbFU}vDhRONLh9;pa!YenvJZIjNTrI$oL>k#8 zAYn*PD+AYo_I&a1as_m6@?!D8j`4gk|89gYlv*wHSD7Z7RwioGj9%FQ?v8o8Ps>9a z$8+ueM~tZm-z=<v<3)=LN0ax$cX6s`npm}sys+ONFOHSfEcMrWTiNmAvi^LaKN0lt zf;4CLh75DhNS8#9hrazXott&VHBoSkgDD`$N_I&lmXO>sE#<pRMoMbL%JbPdyyyk0 z`7pZ(sE@eO>p3`tR2|6;Ut(7p;WTE~k?;Va+%*0N1&=}sBVH9(ci%mG0g?2<ZBGS3 z6O#aaOF9AEr4tu|)_%!h#pCWD-7NeXW=M#R9vCu_$ob4n)A7B@oUk~%^}gf(c;Svl zHdn}!O0;$mWf6WY#SqpFGx1=@tfA2J(_J^pi1qx8Rtlm`laT%(T0bY!Xd&=i@o)(k za!!Mp&6z6>+<A6j2|cxfcFz9Lw#kFPWG3^6wu9Lhg&Gm9VE0M0&L<%`m~6?M^$hZE ziP~KdZP}{gB4*!j*|a`wJ=`~3`QqW^^VWm2=cjtMD;4hRPpj?IR&@|Zd&t?bkw#|n zgYeG;`9qc=nZ%TT8TDPTiT3lIq`0HJgQ-X~0@2Yz)VHAVjpflZ3;fK~hNxLq6rKU1 z6sadNU&|cp`MENbwDO6Woq)b{7H!IYG+OagzIau3FCc&LhmtMbUjjv+6I9?Hd!E7J zCoQ8fd*V{Ww^`yzVeq*p>?Skj=!lA142p^;X6grlN-&3FvV622bns9>gH@ZsTS5|+ zdpt!&CC&y!IlFqb#NyI6^QQ%IZF}-LV*3|c@9h1aR?fo=`Afkg$;kf2PjxC`m$=c6 z+KyJ6umv?8nycX`Tv3;olC`>N*^N>RlGO5%6>;Bu4#(xBx_fDX$#Lmd6`!CNSuj>f zguyPuGzFII{28Vr<A#0-+)wAMYsoE@J_dg^z%c4@9mP}W{#Yvz`IAMtcwGHuDRkD` zvC^}9lPymY+mBh6<4lr=Mn1T!HU$F_^kr)Hca#T6OYU828h6}-hz0T&a-(oau$yL4 zKfhz#*(Rzz@#?aiY`JZFO`9M8RrP#JY87Io3;$V89xWpuoZaxUXY%L@Nxzo`gSyAw zRrGe#<UgPOL8mCJ#0qOMxikOI10`_R=tttRyiT`UhIJ$gv{tecoWYz~ClllLw*1&; zh)K9hz-Ow6wXDWS$dV@WgLUelpn318ENDMWUyx?UYQZvXwG;tdzFe$~v}Iv5-=;fm zjLO4%$cQ{tksNe(xCQAQVu7qr81VZ+n2_>B(P065JY_Z$z@SCKnJ?`ale2Gy+97v# z_uQ7PPLGTuEPLC1Sot2n<DZs}rXvaQ@|5L%^$_Dba%<6wL8VS~K6$<k)f3MY(ppF; zYFaJaSUTO3@0o!_Y(F@w#bSuaNd$qwB$lNZy8KdRMrmZ<)T&K<74dy$UPfGp=JxTY zT9UwFti=mu{bu&pEwJ=FY9S>KirOG9Ky}rQ!MfX^UuB9lTgeo^VJr{L)R(Cwg5Q}4 zicpdLE6VGMLi(5p8O8pg?Xd({+x`3|YoZBNh_}->z*o|b*37(SevA6Y!s@+mH`;#J zQFx8C0=3_npm(eRa-RB@M0PPbw-_7D3U7lf_#5k?$bxHmKm-gax8qOFe$(|xsg7hq z73Z5Rw^YPFpC<i2kH3(9f0>d%DVSNP+ooA*T$%=tKf-R9{R$Tsu?&D6Powr4zz{$z zn^6CGd{B!zsbx=*EhEB}5)mS>SP9*Pz8oxkH9t4ISAj#TkTCpDGcUL&s=VsSB@1NX z98P_EpB)iD+kPhf&Rrj#X&uo3YoKbhjv=$lq%+Fq<TK951nt0?ul@}C{z6ro`1D~~ z8L>58n`*JAZXp3LW;AwhGAF-ZY)b%INo^VT;@ecFpfI=f-Gpz8c^j${SckqE6aw}z zD4c@Bt9E6vxII~HGi3zI2XC?1EEjK4^W5H6ol_;}9nql-^gsW(KiO5(aU8tuJX6)* zuS9qSVKMX^m5M`qnwi~`8B2_a<Gv?TN+=S9Ou3I<mpYH~0M-O7i<JPX@9t$xk#zAM z6IHFMsWYkTp(+>hQ(UeEGmpe#BRRzE9*C9MpA;Y@OLT0X=1$fmqFDmm_k+JY7?;zW zYVaDN>qguX!MADPLUqk<O~?fVMNwgI=&Q5OQ!Q%)JOtVIqC0|spaT>1#Kha~R3g}$ zJZ2ST`VOR<`;)~|t2f7l+r)%V3jPOdWr(g1s784>su4Z+&oLEK7Jq3w6BUS>C`Rxf zipuIln9p}SS9(!W`Kyz>u*GU81c@?K-VxztHWksgO#Z%Y=|3`{H`~YHR-n+}eHop+ zwgx$MQDI_x$9?tB>DJdSm;8cCkPw$gKfD{lp3ZEc1#lyH+wSWn#X?K%PJjE8EwAym z7x%KSfSNfoDwSIsO6@TUfhI}W@%n4oZEJn*!r{97RzQAC)zIisVcg5bb8tTS+1dWO z;lless{`qc9P~$tBP!sDj+vHtC?zz57xG}QX4f8mndM3uZZ~8T<B#c^9SclGZG+ng zLG&N6=M?4_`wE1-u!q7<*ruTDNV#61bRx1Kmoh%hz4)-Ao%B%iAvdz3XOr&8CNON0 zxl(REv=oL-dT`HKfY&GLHe8=blbhBj-cb=1a{ZImC!%*{ee%de^vQm=*P!Ku1iCHe z=KIo4m+cEuX;XFCZC$pHVQ8ESPCG0x34LX8p#^N^KNdvFZ$fKjjRi(!igUZ<qOF%i z<pX!T?<{i5ZQHG_VwAmU_hp9y!!yF8jG>ZxB)Q&j(_S0bn)LK0PC`<t%*Q&^Y%A4K z<%vaD-TsmuSV}#g-nH;z_3qqMetF$quy}l?GUd5N76nu0TNO<Wxob_iLMBk}r=Eaj zng<?C<`jKC1SqPpyNbLeT--XeO+Ss*k}5SgOw^(uz3`Guu|jxa7bQ}aQ!kfZZrkdj zUd;Y0I}R$P7p2rWWmsoN5VffkkL?Ld&0grsZ9hAYCTM(Np@p~!bT757AmS<Dso)iH zJ0>Lp#oYUW3pS><WaE-Std3%*WjE$$B76k?XEw0qhY~R%&jzB3j!47)4^<ddd?uh@ zo?a~$DZn#@7WGvnBP1=nF<~>$b+d@0j__l69!Gk0%YWnVqm27dod^5ZV%Ix}OnZ|( zxkRH(-XKLlnYW_#JQjp6XJI*!e9A{<yV|{1`OmY&>=U!-dx=Vf6+K2gU|I~_*uu1z zx14O-W3^#Gm2cmoh`Og18K})1X~NcXP86IUi0BKr75&sJN{^C}A??cjGz2L{wfxoe z-L6f%56N$-v!eK-ebpa@HR`ulov`b#p3Se!^^qo+?kyX>icwa<Jq#3-tP?!zTiPsR zBAzeZ5o?nl$}*&zJpqyM8m}@l^?}zP^r0l8pM~3<EVj^UfWk=t<ueD;ja*++=*Db$ z%=VTv+JLKiD2)Q#DU3#mMvXcHCW^0d?%^7IUMbv~)A<b(Ea^2nV<~aV(L=%(kTCLp zWI%Nx{cfiq1FSFCI4+T@y7z9&j!J^6lwO>~8r&146!I3o?x`hdcF5IxxbCjD!**Im zJk{ZyQq@a-rC#VXvZ*kMJ;h_Sh65|UN@KW*ww}~oNw}btbjsp7*Y*B=r}7HHoAwx* zX<B1wS2*d=+ctVy4R6nh`PIO+k9U%RvpCY6V8#EV3XK5N+(Pzua)oB8Sn;o{g5-Fb zI-?GLrOO2UG!5xatbf?YKhRtuQlHqGA0qIGxLEfo7dliyVynZ5Sgpr8=K?ze10DUE z5>29C%DN}cb5%nSox^pHEQ1<FEn}U$?y)1Z)y~7V+Ii%u+^dHx+B9>YvU*U$F2xO2 z4_6nbTs_RTSv|z!f2q}j{I<rhT>Rg(<YT6li)gB!YvvOH+VoSy>}&CV$%D1i3k7=J zOPVbn<>E<gnv!-E3-w=|R{F_iaiFE-ruvUPDte+|Y=Ws|_RW>!&PeWSijjO-w7zxe zrFqS3W+3g8$YjX!E)p|;&SG&U`Wgw}W5Eor6$Fvsf#CHZ?NG=TgxJmQ>wcuX6}*to z<kOz{IE(ge`ikw-n6Ix+L#|`Y%2p&oArNcdBh;(QL$6#OZBur5?4rq|fzC8P$vfka z%*$EqIQ43KtchFWRr6k_wvSO9{egT#Grd>_iHX?m57sFyl;OlI_ic@cqC%-HHwi<N zkgja4Pu{Pr#8!k)6h!u)rhQ0^%8mAK?S*laBX*pg8T_$p{%L*PW@gC})ajXnx9SF@ z&AMGq&T&RE%xttK6~i2yI5;l#j83hw%0FpE%V@iYG$ivZOVWF`p1Pn_1Tsi2>u`It zvQ8<E(JD}BVq-yj<<|?^Mtz(;Va*x~T1}8@jD6{1rB5AO>~OK7y>z3Kki%xbqE+k> zMP*4(W3Fg5SI8)aZR*UDR%yY(xDCHmBs-2Z?K`YKmRJi<-K=TZP#(g}HSPWhdv1t8 z67I*ojoM-)!0e8x)!YZxsQ4)xR2qd#k6OLo@QK!KcNw)FImg%I`?gT9Dxg_>xhKhT z@o8NG%G23|b5U;Yrp4N(EjMkqCX8Gdyz<y_)9#w4{mBhC?X@P+!7iLnblr5*vNbh; zdU}hgnN6B|m3XNsHpA4eWf<FKigii7=LgCFZ<NN0vO%Nv8z}>1Tf^sxWyg)X8yau8 zaW5N_iF=cqZd+zsgQ~~3C@$cog^Pt}%)XdW2~ChH7yD>XSIg+zw%pd$GWxb1x9#Sx zW>3luW;yB{I{2tjOPMTlt}MlRm_5F{C_-bLocwtDYD-b0Y~sGA+9#QUQpz}<zH#%` zV^j24$#sZaK=<u6+Kq7Yjsx!Q<Kx;aN4!tb^mzK-?Khxl@9~E<9klWBU~)5xGmk&5 z>7ZiVgUPMn>ap_Lpa2nj+B=?pb%)zgG<p23cEDtg-2UC|cf-yeM?F&<Vrecc98Xmo zcrf{seWCl0&sP8)h70cS7Z@HqzF0fJrAc@@z2puL>G0_B<=R0(h=}swikl;}YP(y4 zdrT?&plzB<lyzUc>nNc<$$fEQLZ^2Ot2eJE_Ua{f6gKA*jh21At4Fd3#FE{8In$OK zWnh}xLYmczTm#v0qb#fr%r>3pQn;3vWMehWN8V|<>Bi*?owW(5gT`BK+)u+DG~RaO zofod?j)xvi?z-__jzp~LW{cLQgTgMx@hHS2S=V_0lh^6Q0<%iMCky6||BGiT=mtKl z!7zQ)FAg0)8?$lWY1WPh?mnwkxGM6c`M=?|EbL)Gg1LA0{A_a5ZOc~l!*<lR>wV>0 zZrfkec4j)c?Y29ut-;jOyUgcdmBD*i@K<kN4OpC+@NT;*Sye3VZ7C3R+PR3EN@FEi z7rB;``*|+H^WmfKHyl<<p^x1xm+=MTDoY3DtfF)8CAl8^@tVk_Z;rKU`g0>Q`NlT+ z!^Sp^u5B{SAxw#NW1E6qZCjy5>aT5LdI)n(o95c!K~i9xHa+boWKh%wo=-2pePpc{ z5K9bFNl->pM#b5VzWHtJ3iMDvyY{USqHJ@`@Hs~%v~p6f9-h*VqlT^&QoruSgsQHy zIH@L$Nha53XLih3)V-(+b3RtZ4Rw8oJ5|o*goVcU7z4B5>;uQ}BjKYsa@%lymJ;VP zLb5FiPPq#n!gMh9n+Dzi(?6{x;uH-jO;q<h536J-ag-&MrB11pJ-1KDS#=BPY)`SI zre%-fjA!MmslSx-sCK-bBb|v)4{8^~h~oT+qmPWX;e6HYcfG!89Dj+)+5Bg)ZBa!* zY_$fXxlT?JH5mDqtW~s%g}17~GVFx0?|qE6j8$SRYnICixx$-vM*i@;KKsToMkdV3 zo-9d>7J;f!6-#e<@7i@wkfzqSqU-eHq}CE1(~I+#1r{ft-rO*cq;dzA<-?REi+EPg zY-0a~;=bIp5n^4+<i!IauI`J*VC!Ayg?{Z9XE<FNenB<w16017pTksZsuPy!;D(<S zf7SsNVIaMh1=y&LsYcL;H_JFcT`Dt_-vyBQscBNnX>min_DNWhtsOU7$D&mfo3J6g zD-`|zuJ9zL4Z=e#y#8^Ft-qN@96ts9mcvH+HMOwq9#xlp8ynI(P{Ba5d}4j7Jk!LZ zB823jDvKPW)}E0x1QrQtfROquw2uyX?B~u2WiJYGym_TaWy`qb2U@+$VdU0+!qGBq zxEPD}Cq#tK;|Y)!X}W*slI>hd7xhBm0dmYC>09i=Q_QUAh9hoJ<>%b<Hhxdl!E<am zF2qsCJsn9oEJm%#&={_t#(b}mIfnVl$plq%kL0*i+(snK-Ui3H1VpVhCGf!*g`n80 zilMugqutVplY=S;wMZG8I*;9`C?g5|feXH#mA4idq{r9M*h`%0oO6^_|CA&ZNwBfH z9r%@aDH{`ns765QYNXUj9ASz``C%$8Nf}YY(_tHFOcRy_{L+X8?I>2LWm1T@G7!Zb zG(w5jI{@k`IOPoenC2o-iw>KS1!%-YyhB;ItzL%))l5i@aG+9adoY5xydP7k1x5gj zJzTJO=XLf}lfO(qCnbeuogjMJJvFO3K`Y4Gj&Rse5x;5b&`-$06faD*3aqX18jslT zY1Lzg7M)IzPEM}rZ%~PHgH9!X>{=payY(kJ>D3zP2(#J&@J1&$MFg%?GO3H(LAnsg z3#H#ag}D=+xVG(m$&J=F%6TNBlBSHIvP$33R`R&DK)0G7ucMS4#&YT#ozM6LDw~<S z-7|R*=^?K})NM*~cnMKTT>1dzY_6rI&N$oC7IQ5zb*34o;b?)+;Ym>HuWLJzB~QTc zKj`&11B$f#;#9`0zrt(Y&R%a@d9?<n+x<5vpqBY<DIfOiR^=q5ZTksvhj1OM&v)@| z2EKeuNf*>{@JAV*;68PuR%aStf{zRnqc_oVa-oou%g<gDL*l4OnNK6mb=4GhJ_9#4 zrMLwfLUQ}SIPOE^u4VynNDZaLWDHfz9<#?gK9L&<)Z<6wn@2JH!7oR1FnA@inwL|r z*OWyN@X7?Bj7kwZCd9wOmL-*gD@=&NeT_2bSTyvGw9Xl|uVR_4*;moYSs4tcDiyuu zWV1hrJr2`?DrrBk9fY}DBu7JMhnLu3MqT9?rQqP*gAGWixqLI3P|aVV=ZP<hLJF>7 zV)ccoS2f8xG2U<H=ZsGX2R}+r%+K}B{Jf?KejY^5$sSztqq$Iaxc$;IbR5wfY;Zhx z<zUOg(`iwVDMu7zYlU~2yeyDKjy6P==S=OqX#l<ObWT^`!vfmD0b8d|Wc#Jh6$_hi zK2*_L;ymw(saTj8!@`iVK<;VMmaa+St7)lsKSeKNhKNbY27i}aJT`Rxz#7Pw*mKiy zJ;@&14AXhdD<14wd@6?};!U*|yvH3g^|f1P4@&0iQ$}J;QAi{{pS{@gU$MPH8m0tC z%zR?`qKcuI>9*%C@=5}s`t9_>CIqAib^k@D5Is{ac&9i>PP<pw5M2l-woLV4h>;Uj zze32aRB)t>N_;8B6BB2&*p(l=Av5CQW2HKwDFx_Emk{YCA3`?aNs_-!2#*Ey8%`^v z<ZCIy;_r4m2coTn2<VyVt2iTUdS+{Tsp0bUv85q;MS|)Pdi0&T@I_ul)NDQ!hY~rd ztH{H>;|RU^EMm5Ck&$<5BSR{KE^X3Ur5&nPgs4eG6e`tiF-w!4NO={n;u@=kdmG`Z z`flN>H-fFwy~T^9u{M7<lCEaQ|A%&cxwq?$62h)!X5vRKI}*g_Vr7zqf{YqF`Kz}} zUbZ_eUWa^2^|Dc-*TFABIKxl6#KhhqjzxXJD-yc6p<;y|uq60GV*PP?kz`ARtKku5 zn@s9>l%BG7_69`6FYO)<&6A-R+VS+#o;fYw1<~E?X&1qLjJuovP7dL6Ox*Cy^fE=- zwi(w{pk%xWF;=(Q<dz|G`ckwO>-;#yJQdKdvr{Zq)oEq*6Z7!ZUH0;sh|f$_XB7_- zldlmLHDzcpF_X)OxsJ#w>S*&?&%e$4Ll)Xh(P*u6)vni3EDgQ-<>4YtR452)o2b$9 znIq^_sGJ9?gJzNoi=sz~JTe$<5osVQtaH|@C8pQG^3c82RUK(dS=DK0sXGv&Jq-D^ z0*w&MNKETH-fu3n9!YaoyF+kwh7$Eu=|rt`5#e95wI}=&a<ow;{RcS;kS6E-n4Gue zt4bDN4J^8U8nP2LAL~m#;%ra*QW9Y(d2kZ!1KYcr!8P{sRK-;Fjy0k5CrN*f#kC}Q z(;mJTCD8AC|Cq;@m`CvVDR|VpEXDnn$b-CpLFBTlvB+PI$$8z)=XIu(*u47~1|X3; z+Wm6_h+~8y9G(BN0lXPg^GgG$Z$vr}MDbNAx71rsI7iNnCp{+^KDCMLmLk30G1Y|5 zfn%lC{ecrs(hwB&3r#kA9bS_ZsBXTt@^nhq*Sd^S2)*;YOACH*Z#z{n-nOYiYOB33 zv@mse?UIc=UZr{DK>f8W6=_ihAw1x`u8#Ql9?ut-eho(PVFX4b{plR=fk^in^nhSE zAsIgW$+F`q5u(f;wwS#itTBlHhd;|+gy1S&l4v5UiaAE>FqK`{(bzslnVgEb_lix5 zc;o4HIX@wJ&SDhBqqoyDH=so@)O0-SBXfvDGk{tgxaWSOQQsibBIAab(Kit!<dFX( zdo4lWk=`s9eN<?Ur!Q`yM}YT>@RzrE?{sqZsswxNvrpn!$$;$rjCbax4dqDstCdcr zyX6nwmy3_jD0SD6Sd&XZ+?zRy2Vp0XH%S``vN1@}Xzd^pR}Hf1#3;QSCFVG?5ghhq z$QKY8BJ&#rIcnRKbKDy}>|N^WTB{YvaB7?7QcL?bvJh-tYt;!Eo_4GT)swX)<01?^ zxr=<cby2>4FqvP15vj*s2i*rY$g*58DDAmON0BD!WSJVHP#qr*(OG`cvj5E2s<gV; zTV9RQs?)Z8QMXx~lC}DrLG_qW)U6eC#7E?JA!;2=01An%RTw3fI4+}PPXtq!(Aw3s zD`G6Gt%XPdrfkjDc(o(Rh`{DIHA|gWSwkBQIP$x&+!Y1s0G_Pg^Vlp7&h6<*8?FO^ zqT7Z(=R-v<DA>7YgO`MnrA$S({94B8c%=M5f7O=?P=Be>A_6n1E)qUuy`4U<FvL$3 zyo-^J>qb&yj)FU#qLvW=XY&?oUyBc;j>=ZSqS}k5iFlj&E9Vyx>TLKnv+OBW$2y54 z4hUya9sfMj*%V1lp;y!$nD-~Xo%4GA;`2<))M&;G)Vz?@NKjiW@wY$gD@M_d5xd<M zv%?FdyPy5V#AtSlp)YuU@rFX42+>kVVq;;qKlw;R6d~0z=&~lEQw>WDMVbD`R0*{t zz}q>+%vg6+->}jbL^9Pt1^MFi9AR%*GQt~CO4$l$f@}v1gkY(uu}Rv_vn>L|!fG@J z%!g&nZf542kG%NEPUKrZ260?X5>R}Z$8o$Yb0>NyAq3Z?asIXmAm#RDw*A>@Th!x@ zR^A<%$0<w&8WXQGsHnHuuv{&w#?YsaJIE3tZ>B(RBUj|nh+^b13u1orV{{hVLYnRb zefQ<Q`;rROdgmqHqUx1-@wPiP@^ws=6@RGlyw^|)5s`z2uMZL#Me&l&C~21|mc3-Q zBlx7->!}vAG7AYpR)%qwI+eCj9K<z034grp1BWuB-*dm<xj3GZbqi1@9hywFa1@3j zvVI!UYwI};#R8lFy7!SxD)P%ppQaE|W)*zfj?~6h@uN(`Vn*y8&te)T2b;%RK@qR7 z?qF#;hS11Tj*w*Oysg9>fux?(MLb=_`#la4NeqO1$uEXhKa=Ek6=S@2?Q|oAqWSD_ z@b@!hbi>@of_+!h2Z6-=tz-sK%c@0ry(zJjqGRhqR%eD(>1$S^4^SxPlzp|>%TZ?$ za2W2{b=4d9>dMyxW)rPx18%23C8LlfNyoPmV*A}2Z8tnA?ZyJ={4YrQLU=7Cwa#lv z`p}c4Ab%oBEP@M32s3KCpV(31NWkv7F8H6hZ7HRz9bMpai5w&UHh7;PJWUgt7>{}I z8d<zPC?E)XlAHXSELVmuopI)E#^Dt5m?$zYpLeqm7IU+YE(eCC;3C8QpmP`&yGpNM zOuyLWC{ff<M6NrrPZh@}NXBC8sKXmcla`UPZx${h(i#jGQxb}+*gW4vHs{+qUi#is z0kY#yCNkJHQu#uiAfS9a$1-^lhcU*W<gEUT0^a{zp8-=>?JG6I*LTw}FdOmv?)``j z^K|StGf&4!iT65YQ*1=cGEXo3{_>n@eDQv!f?AjmXvBD(r>QpUbC4_ZG&9uBHLq%R z-_NwQ9^*aKf?Mc4+r{LD@*C-0lY#^r(oy-w-v6TG0-di`UJl){26&m5WD)^hTMY(^ z5g=c1i3VvtsIVH*<%%s+(kQ09w7YYvbum%)6GKTvJYMOho}iIOpI8ICo~JLk)SeB= z>YJJ8$;~S5@s2^+9)5G@w`h#9g-9mj2<veOU#B-DqYx!t8#@{*?PvkbI!)!PBj-1k z230kMaH&UggdS*)6ibS}o`$u=_EH#u*4MJm%3AjHji0unPzES)PaGnZ$T<wh_eT)Z zL2Z=`L-B*ws5f4r4jzkgy+GU`M=Ow(@$5hgY^!#v1HKNU_3hg+QG=ln)dM~aQ6Ecj z-U=pBTk0LWF2HLM+w9`Q;PW!tmKHh6Qzg#weHp#F8>Y0$KxW(DeJ&w#uYJ~N5sS3m zJIoKvNQJ!4a(#*?Xm)A<M`k_SzLd$_>*=){o>}M0W$sO8=e05sP&v4G+xGTpY$HBe zNtyJiLGi!q+)+l=qgyrbSjUBdKljHLn{&pTAasf($Mfem>|<J!>aR}{t!Mnt7IsYN zT?Jmp{<~mWCkuV8hl8J@My(OwHClhVFur_}BC*UvimQ=C*50N3Kl}x_;u7VAjsC9A zAsL5r_~Y5wUU|pt-EC7JFPYUZ^OQ63p6JhUVD!v1rh3hZC)<D$*j|R4U*BGn%8#@^ zIqHMjidrYkUa`2@I3=I{kkeXGBC0O6;7IOx>eF`%rPjd)@qZ5V9U-0L_`mWBZ3%^M z%jc|ppyigPHk~W*>rRVXIziNY&=Db%r1oa6Drjun@k*}F96Gex`u5{PKDR9cB^vTD z1r=Fx{Z^9RG7PVCUyjmjxf-a|rx0)HjZmGWVJE~(Q-6a=k0VrRa+0mZ`-x!s%!3Y- z{8Is2^*DFbKD++V52*%OFr>AI$oeCo7Mjhd=2&t0%kL#Amlo~a=ZVbN+vz=16N?4b z(-W<+Mv-NM5QY0dxFx$M2DSO6;?qc02i^i}3*pDSJiwfFM~5>cl)Kg02Yc{VMM$?3 zX0J9SqKeWX$SZvPISk}7K(UU8maOVq3XritX@xki>Ek#O!SV(lYkIAaBYG4+L^EFi zKq<4iz>m1-kg$mIJbBaGTCzH`s`J&@k`)<K<Xt~M_D3mNgHEgHSsZJKZz5jud6f|= z?I%^&b@DxG)p_OGO8W0VUnq$cV(a~-ljZ|`l}dTOkBHnp>(fS;r&sQHSO}$kg;k)J zDs}3=_^>?X!4T@;dxoZ3Lxn<zh3yNGR$|RqBSssEH@eN}wA3`)90naRd(Tv-720%Z zc6Ldko{cdC1QrdEadlvb{0Zg0j7?zIyp63=gc{_IVnXj+$j-kZzTpPBx-9ipFa$du z-Hu{UkUYkvb*$v#GXC6eZ!T`1;!^?&SS;2bn@N>qjPQBclJ<JTO4@sI+lG$ED0m$? znK#+(y>t!QeNKfb67tv^x<DY(WDWJ|Kht|=>U!G|NN@x>mV_mo#a9c|UwtB})wvG4 z2^$^f%X{JyzCfMn-xE(cge9M!>8AmNRK?r0jq|r0P<r}gf$AiDCXGu1LWB3KK-J+W z0@5=p>c><iG5sHT_2sEPA}-MJ)ri8&A9t(@!M6B--R()K4<9agbr|b21<3=&8ts%T z6REXFf7xL8VFSfkIc{q=Z`YpmA2#Ucr!PZu{_PJN=oNOIW0SWl4SJ~$?KYjL<m>eE zf{k^1a;aO$>4=r&+1bA8Op+3|f1r>i;zJZl(Zp|*3{=alnQoMOms$)<4CT<IO;D1T z6jy7dT7opHt}c5^>G!&nq6?e~=u+ZSUt%GuxgL6?rClBU#RRZ--SOS&2i>WhuE3+0 z>cwQ(*|(V{mo}3AN*=}XOC6l$x$fn#x(@aPx^meIHtWLru9go7dn8W)g80JIW|J#y zK%Uk`zHyLWiKYn93w<G0L)XcG5-98=)HQVR*=N4Xcc**9y$>Pl-oqE10~OnvB8tnF zQ(z~2)lO23%;F+d#qtdR9rqBZT3mcX$O-AJLoUAl8y^AqvdT}qSY?I8R{*YSd1x=T z6P7Qu$;8A{{jgmN2+YQ({ji<fBEm==#llMV`@j3Joyw5H7bit*8c!ALC1=^3xGNv8 z(+l~$4E|KXc+{pLTX;DVi(F)>@12XY{x$h1MGt`L6<2>kP49WGhf4KFyJUJ{HKd~e zf(zSiO=){K**@)z>sY4-Rpp{^^Y~l+3JDQeF-NaiyVADxL}Rxf|ESG5Sg*(FMRAYb zeSE$)BLp#XJiXxN8&6Hoy03)`KQ<j-3%?n2g?pFJ<gL6EU0=|J07=!K!-(%5yqKQB zRjS{s(KB>>`5@mimdWvPg>6OD`1C=x5m7bH9~ZnqxMS)qFWoco^e<==#e@!7d6*=< z@mq!h894+Xi*o*8XDzZgb(lT7RwXE%@okBH<`IXV#WS6p5*8tp)c9PX6{^?0tBc*# zYjp}-PWG0Q2g~C<98VuTcSYgRE8e&G)yuu-_n9InNXL$I6qw>Ym5+RIzBI;5u6^@M zKGxce)!R#wH}Prs=4?Oe;=b*^j$$rj6@2Qs%uBFuV*Kq))`s95zK{7XhE{Et=dSRm zBs^@IYtE53#fJP-3l5^B8O2tGA`FGe&X-u2pPD2cQRt`Fh~C}wTBj;U5vG~lFDwnq zbSh$2rdNe_NHT9K1j)tf2Xa>CSFL1ZD6hNuH9i;6e(Oho{8cWT$lR5USA&jv6_aYb zVZ>5*smczsmwRtoZ+s!0Yby@fbBty8pll0zyx!OQ%~VA}M%W{%b;({|u@W+QzDm5> zr{(wjlnqFjPPpVDN6JOZRBrG5iSqw&SX86Dlyyt&Hpc#~HrC(|UzS{+SU7syh7YzM z*g9rfD@y23otG<b)DwL)QSjax<?I!~dr$8ghzM-?<y2S&GuB=bg^YafHSlnVw@S{1 zBi8=k^dWuy5pDs%*m9&OxQA5(^oU@iPe99-fpVa4ScocW!k?nr{E47KEYvz&)Sjn8 z@iUU{ZVd=5r7j~_F_rNi!c2Qg3O0LRmV90xj7lgiq*uIUBF~cuu918039)#52l*w# zw*caNsVZ0vkG3U6vn)+xTN&MWm_CQqFXs;Bg>e+R@)^-fIAx?iP_|mzq&8f48YFO` zid_<xg5p8SWX;olb;ZOS^E-S&jQ|gh#JfG}K30BJm`_5GG3R^OWrv)iP6*;@39$Y` z=anw8{rj}XS30kfqptp_i;6Q6{9p@N)b~5aV5S#mGU`k6^(d-Fmm{%uUVZg{t@8rp z8s)4oOm+0K^ofOgZ4eDL$qA;8S*ZnYzKt(?g&h$?Nw%B;@8TyUwDNByB;$!%$H&g1 z!VBVHMXY!fY-L?lD3rqYl^_UijMjY6t=46?GJ6?iRB@t<&IUG<4FvKb)UB%ui$@Yn z4^poc;rwFjh;UN&(E5+7YWXLZi0$B5qzcDviVONihrWjrl|=;@#4b>?uXy-fGfucG zKVDTGG|Zi_R`nz%qcU%5Yap>FVw_ldys=L*UK0vy_e%JMH8Z=2GMNduJmB43UWbY> z^rzXC%q3@?X-BqNMrr7=XJpMW;aN}3S15M(ct4UCtD)pEMkNK?R$>u0eEE3DfoH8Y zF<<Y9-LT8c!4D>PjzG;O`c#8(i)EvYi=)|U%oy&6y!E$t+KP*)hN5D(MX~U7yXj&1 zodU$Tj85c8J5eOiYVI`EoKq`De1=$c0!gUO5txfM;GYzm*`hkWj6me{GFriQ4sBx# z&!?g6D9@emUh}PC5oZy^<(GY1O!uZ|IX5E%ih9Fh^5W0a=x4U=6Ax<+X5n5sm?fKB zZ0mT!+MT?&o*?T^o+;Y9PJAYA9jXK-i@;`%<2TG?;<6cS+DVo=d1B`;v#3o+apRy& z#`-}%X0|vN5x-pd$5e-XLdQdsyL#8-IPY!unr-U{*jk?S4zBXl!jtO0dUxDY-r|k| z&=#NS*9Nv8a&Tz7PP}F-&cwl%as%-Y8Bb8J6c?kj+gk_^;fdvE{BG~`{h#XykJvbJ zn2icS)|Gf=6KfTM*8D4OTF!*lcFf`SVE@%~^$r!2NE29h1u><VE%~0LJy}`Po)wZa zNxYm><s_w6IlVi*1XO$&g^aG2Cn*SOo_KnQmJX2kQY#QI(2mK~wEK*UR9hkPQrbPx zd3H_QPYmhm^re4=t7I{snUX1iX_26jaz$M!KFZVWc{=Sv*gVuiFm{-01;wrJ?w)QV z->Cg#2^ynyl~9!3e9cg&2&%JforC!0mi}vh$gKX-%e#9PO_+P#PmVWmHG9~?^-Ty7 zbF$+~zNY(o_geHB%G~&PJp;+v<tLtXPfFgNbjh0qF#DG>IKR3)tB3tPT~;@?dbAn; zJ9D1mg|q>4Wzu`YrdA)&k;ur0S1tHone>*gi%An`tclgAk1l_93fdHe*XZ&&JHfFo z`!u7N8%Ish>|!Dt3ggr@!bN{-2|;N6B02L#9i4JIr7?eUxj&|$L7a++M=)D#>!VUC zo)NAG2Z$r$5!1Kh$Yn&lK_?;}QN0u;^k!0b;0Drl$a*~cT(2jV#M7>J*7_kbS&(XL z(N?AvwO2A0(5{Z7*r2^&r1bT~d7V;`e0o04??=Y>&FA45pl&+KtZPfQy;q_0Rb;SD z>#sSTjH|w#k{QR+H;Tr*?0KpxgEBw?ZdHbujlDcj)Dy>Sn8H!4FYEiLK4Y`IMiw0} z$Nwa%c1*|nQ>-Qj?+(R!BC@mL4$81BAz=`$*$GwL6~eH$iq+CmG9V(E^^aCoqEe0e zkc)AKfA(&sd{w;luB%#-_y-f02l6k0Bp2gFS!py9V-kn>h0@tJi9?vH69<0dXQsqK zKdTidj!U*izRkswjrzks%p=Gmd<k*POAHmOQL%{Gb~afv+qOZYSoJUF8$WHR;eGyP zFUdCc-}HWge$9)Z!0&6cSN%QjTsd9B7%7LO8MCnVJ3D7oh-e|{!{ERip8bDgo^?Ly zvc}8196*XMRlJ<;d+{3%Ru7XC!}TtUS1+ZQdyQ@ITGRs0CFZh|KUDOa9~p|1NVR?} zkq(N>rAVMKq;mGC@mycd9ydlcYXjJ7!y~W~mbl!V>lbqrm4EY-K>m8E!swb$0<n`L zaPo%u;DJ71r+bbFJfB|g&ahCk>HAP%(t1Q+D%B6z$fcLBrusEA2}1Ci`Dt2}K8el0 z{KAkJJNXMk*KT72^~d)-&pdU6T0V&Q>>1%wAAFq?jQm@<$e?Ja4>GoNmvk;l3wWoT zOCfJxzDxKwc(o3@Qy=}H<A?1r64X>F>WYaUhR*zfZdXT2<u1Nz_?cb%zGxPOgotRb zL5KLFGNRZ06-Rhb3bZj_vGT8no6u*~s;S29^*Z2asN#g)vHQZTzN@O4a=~&e&4OF) z|HPBX@l@|5%SMzRsFx1#OGKKm#a7(}kS9uBr@&v}8LFm!UCXZ)c#;tC+pa6@$C1tz zmNxzNDXi*n)`->6YX7SU7>*V=sP?6Ha+JK8ZJoXuj`itXb$Tkz#jBsoiyYC4%{8(b z&9@r5I>GC`pypXR#_Ir9esm!wcr9DSH3@YwI7u};NY5jKxXk`Y&dQJUr6P6VXq2|) zq_dgcO;&fRn!E4$$xX~5-Vs-gMl>M5k~G|DCHL9lN$_uMvNauXiqk%4rb=!l1`U>l z_#DZC<B#$PJvA{~e(jp+>!#;-?PS_jw0kXN^^A<ey9)gJaWmn6D;(#i*V!+L9p<;Q zV}AH43aYg@hh8Wj#-Yk{okObzRM1D7@?iWsr!7Mv5NXa3(*FFIGBG7R@zszEC}+4= zuv$^M_NPZQ@z1t(Shp2Z`d@(PiYYTiJxi4D(8M90#r6|vZMD2|AbGX=itS!;{y@ia zw>Xb@`|KIX?rKqn4y(z_>Tf3(Ikm|2EQ9XgtR9I+OKOE8G}XnlV$G&_!><VQAwRjg z?CvAkoC2HA6sk7*uN)p;YAeCMXJ^`bQ9j0EdW;d-*Lds@6+gqnNsl|)N@1WoOL^)} z2K+$&uCAo6-o}P)Jy`aKi|^`iv8G1v<}U8O?LIhE0cm61joWu^b*o2+Ri6_+9jCO- z%hp8v7fDxtD3<CEeeOj+B^V!IdBO}CC3tK@TdVM<%RL<fH3FWu9V|8IOr)*#99@gU z|7G~G;}q4`A1LJOe0YS}@(57;XrBUw#1ul5?#RC_N>E}stPO_0H7W|?Cy`9)?imiD ztsFCspYV$X7k)qaP|s4Is2ExDhw^Jhd^N7sB_M09yjl6SBij~D%vK@F;3dv^V=|{X z`}>6oLOuNZm5FWj^sf-agoZ>c+73;e{<Vd9&iX!WCvSiFGd>(N{CH<@&`>G4l7$*1 z*B&(N+pVtGcTRcGaMJz$>g1?D_2=JTEnj#1pigf}%(3u{69jSvX+$4q(DVCxK}Ndc zduQ?6g!-rt9wgIKd93MG6}5xna5|4edZBq-&3gYx_Aeh4%$k(wgCY{2CW1D6cq9{> z6oTbj(ubH`->i!ToO20B^XDCY83B!V7yymtJil1lopTfeB5idN|BY2Tlr5YZiE*)N zQ{nQKZ@acxWOAUAl&E^*MwK1x<(9Ch6gSKB<t1LpaQpo_3Djul&RsNIe(T=;RaH_L z$kN+seqpOc5f7C^SrXROZgnE#G!caSL&as?hoR`j1_5LvS1+|-5Q+(UBt~1OlQx+y z-*=dcsP%28(xH&oACubF$BG1UX%XqiB6O?utlcN#W`FE@-AP1Iaqyv|wU9wkfA;%7 zg>;@+SC2tn>h{vtA(yWI8^<7@uksVhvy9>x<dsLf&inu3V#V`ndGR17FsupxRw5Sf zHpk3{ePo0Ef>}sEB?BBMo(hW?A5H@#3AUWo%{y8dFMrWjU>JT>ze9twaj|_Wy#^<J z7?=ovn9m9UJV@O9nWH_%a25R-P7CY4ykkgP3+B8|ZY>sRA6-^4oa4oiU9X+v13Njc zFvb{D>c8U?MZP0^g>1``)UWEr@jb$EydUhY;fMthJR=<>W&+(uANhb&v|FQ;9)i7* zKp%IHP3Jf&=f9sIf8Uk!5s9Yp?AFMncylvK44vFS4G~DKjcY+uQx{+p_Lv1)0MXzW zD+xlB<eJG)`H1uA?h;4mFx4VX3n7%z0J>wWXo@gV|Ee%$j*QtXOgLn;I~uO$Q>agn zO#p6I{e@=F+Cf!Sk`@a%T@D;bMfB3#m}nAUr-~Dzyls3GV5>oBoZ%QZ1*{FCg2=8S z8PyS<LNAOW2LKD)A{G{>4rO72@PMRyWX0rp-t>hM<5lBdAPHhqq(^qbs*sPxi{J$g zK!Y5skdzJcH_eRB-f#}t+|j@t{kTI>URTAToH%{uw*yMhB;h|558nht#Yvz-3}iLM zTZ>x4@^Br6&0-q&TIFO%#zB?faC(t*;Qk#$WoHQ$jU%O|@v{e-u!AmUiV8)C9djH* zxTMXvgc4iPtZR#%rW7lnIF?%0RcR$aLma7sL{kUHlC4BhxH<U}29qo`QF~att5PCE z3IO~F80O5id#e_b0&cx&iRsa|{9r`kt@R;u?*_wV6O4z&o7KO|){(6rU<0<wS2;R$ zt@hD$kj$jO2SjOS$_l_c3t#k1zWk@jSLk763a#p^;%P1J{wyLRa1vN5X+VWEp0I6^ zhEQYg2*hBZh)VKdqPP4$ty%HKO1+l%m;h{JjD0dvxj$ECxs2z1FF!TO@*iMr?v-IA z-i#`S=~qL)lt|GSj41+=5+HZzy4tLYs0<m($>b;yrgXwo=#(~<`bZrCyh=wLaVv1z zGXxJDCRItU2@3uJQO>^5j&OO}CWL@%DoYZ&4sLRrX!2R!H5#v<J~}5vc(3BroDL&2 z(}G>|toErpd^AHh1c(`>Qixo)#hv~wIEf301FUj`CV|rn;Am55=>&kz2J)%i&coDe z1BUCyX@fqhK=fh#!c<riz!5BW*i=Gf1kbp07XW?@4m%>TDSAQ_z<9>M9BuvdgXv92 zRD5Xa=$&9nUQ-pXuO87MF@lW#BLcdS<jT$7zjEAm5ORSD=Kx9CxdTO$OOZjxezqr^ z7K?*kM(4B2PLwvwrqenmGCrVRsB4tO^2pe&bNz~$n?vV*5Gm4_PDn)Od6(i&X>zxQ z{a8}c$^|HWaAyn%GKGY5=&qc9=F{GVb9fse^q=NJCt#ATU<Ps<Y4G0rU!)`bx{m=B zbCl(Z9YGUPO&K)#B1+W|VP>6bE6CWj>h=zst*KHC^<t#YT0oKJ0PGY(lF~Cl_ts>t zb)X6<>0aLmZ5rQr7lLUZ!ZIrlgRl!hC<GmXnrF4QvO4|-*a%{d;|>x<oaDY%kqwvW ze)@YH!D_Hoe*PJh&C+s_=brET*wfHPpV6NQX4EkHGy7G^Xk(T>2&I|Q&{YSb2p&8< z1|n=sGDr96Nj{}h66D`uR6V%L`wFkWuK*o^A0jd>v6)@Q(ah!KaT>UYT4taBjm97> z);n-p39U;?dZ$3S<5}wsZ;inyGjl|@R599|jHQL&0;XNe;K0(0WRpd@cJd|&D627t zJ#VN1@=9kEvHs~g&cFz=YB_rO3>aK`&+n*#Co}QBWV)DH*THQPs4+rvDLm2bsO1~o zfF@2sG);_JS;G=-Avv8r4bf~M**;db03BRaF16r+LE!XGyQY7*=0JIxF(JdMHcH-V zD3P~^25}h9CW3>E0r2-FGZ5UqkZ3%=s5j6h0#PQ#V6J>?Zv%2t#qg26F<zcQ6aBKa z(HZkE4I=>Ag@$HyXjF4WqR-J_p(hsx;-TC%m6*NwU5pYJ5HEe!h!=z>&6{9NSAp{? zCoRiTMBI(gj8Y<VZSqve$#JDjvT<Z-&jA(6AbR)3mZ2t$FgCddX(X~pfvk>+ZMf5y zATTQ~VOz;Nq@&S+mFa+XsyUUEl>B$COuxC8=+nv)eIs_1Mw-X?cu6rZ@(%R3ZZKRl zd-vejz+JJ<6hZ49@uU6e!Epko45kIl$T+zGmRr{kfu@s&40HpQw7+C`fTd22bYuu_ z%AXsCR4hokjWfxAC%3|t%lqDkUY<cjbJ%dX>bey*STmlC{zSBChV(O3lQ=Meguoq_ z90z~EN{I=?Lep5f1u{yKxl5Bs1OTIzv0V5Q1pgR{L7BZ*{j9Pv8&9EjcX)mkbS+&C zb=(<t(|cFK%4e{bf2Kh4+5f99Bgr?_h9pM%OL9|JIU-{v&*;nrwI|bQ1sE5g@-nor zv!?}`;M255K=V)E**wn09u_`Vw%ZPy&jGO+Kp*B|YD8xfjp5crIYlt)eN+=e_a1mL z{L;HY4EKV1p7pb2c7i8?Tj+~bDAjT>_>!<8>(&rqrLoxAJrL>FL~khi(giIjZv+O3 z^DGDF-2jX}J_2)91B3le#-ITD5CxLNwvIt&{k{#T=}7)WN5tg@_tpvv*vNppoa1~< zR0po<?~D8EdoZTJw-G=hXV>5Q!3xF?Q#N<hP8D<jxmQsNzRAx0_1Ynjc*q?jH0g9& z=NbLzk^uP=td&ziO(t`~%E1h27Zak&0z)$B=D5+bB-ju<IDW&0&vbPA!J*^Elsjr- zO~Nvaf&dN@6`F+S0R(+!9td3E;IR2B&qiQ?FnU(W)=5Q+#DvAJG9jQZ7(q@mx!CIh zSbOHd@-=AWlDzclPiw?7HV{<HtN>~#IKW+ZAM<H~?D%0Mf^E&FP;2jIQvSPqn+Gx& zU5`AK@0lV~M!-%AG4C)Y12DY!a!kqO=mR0GxBIM~wg8LK2XRm{7@~p=I&HX`z66Yx zl(rEXO+8&k5CCLt(Lo5tWH6~MaeQ$7nG6px+!8>cFKN!Z=3MTqvnuYmVoz<fJ3Z;b zjsC7dB@G{H!N46Ng<<}zvaeYQ1kfjm;tnC?vkZC-Ob|l93RRz60u~oKLVFGdV7tI+ z-KI}U7?U6>aIMFZBkll{zz>^GCqqeXlOoa4qErAvYzZs-aJR0(I6XLyt1?US$={O# zLWARh+7cQHfZqlFMag2kqHNP95KDr=LpTCK(@Y#ts$$epD#VlS!8nG{0PFe8{ftFR z=%G%!b59HzjWg38r|oK5l4(8UrJ&O<t%Lo36L}y2p@3QFOCES;wAfiWOlp$Gn=O9E zfzh(h0f>}gyK}!9LlRAjst}lX)n6`w`st6YB8{}##>tvhwjyK>&Y-$(aI>+<H%w_i z7#_f!gdiGq95@yo>B9x2wWC}$$)RKZ*=VwmWMkPv$Mo(2M0KRay*=<@H*RE48-!cU zvpeC{878XmrI<ixClF{H#>;C3Mf;3_`6df@(fI%#Le{8H1*07#`oPnu56>993R~Z> z;~_MS#x**l3p7=H3PM2iLpUrSxJnR-HO-U|K|{hmY_T)@wd}i_X~86E3`&%VggZ#& z4yF<y*+nv%{a^xOc-91jEyXF&PC)cdOpF_0Vjdr1N@f$&P<rtZ;*yXYS|YTM7#O0* zH2M`quEKI0<S?$GMqOo-%P{)w3Q$8mz^qMosS!B&0%X6Rn<y>FLL2=PCU<TQU&B@a z#4}$!u9kM8AR(MQP6HP@1d{~PJx$@TS{an}MxSsQ+)S@@G<`^{&$C;nU<44pc#HxI zx2C8p&;6@><z=^+_u(9cR0%7$=V8)-U|MVoL@6x#Wox4#f*K7Y0NI6xX2lVo_^xZQ zzcg2{Fc9Jz2=iIb>Cz{MG&2iMLDQaj++gD{&9k3kGm|hz4;q}m%;~5f)R44kXmCt2 zF&))1Mo^ecSz|gtmU>98dP`qLG+0g?Ht%ioO=l&vf?-vn$_f+rk*P#e>%h=TXD%Zi zRyMHHl_1_@EY+HjB?b_3N!9Zw7)JeusC%(9ID7NwDWKAC15_PVH3XBra$*b6%_rTZ zruMV|5&gpj&$uLo`OFG3g!<A%(v%RApM;Rlj-)xHyHb2g2zCqi(fM-*Hnrp#B#Z_) z-D0>2nHLee7a}81g^e@@A*f!O;Te)g9ffAWS4dViFguF`E`$zAHjQ<=mX?e@DV}s1 zT2aYR(*`rxol8R3f#KOYFy`fJ5q)wE!%$}hhhw$yY1G;oqB(~os~d*Y`6h<|fs2h` z<i5tTIwYs4bwkWdJqtG?FQq)-Ly6g_;~F`dl)>qePR+?S3dgOGUaBzTb6RwEfg>6q zB)g2VKPwN(?{pLcrnz#iAG;80vOG@f8~0wBoSQn_Dc%7t>%DN2s{(Mf)K2MJ3HiS? z2O~O!(bzegV!>3Z9O@x{h8#BQ?vswjW=Ps2TO`r9tSx|OL3f}98XftQyL^^qy|fDK zEV~Slyy}rK<P=D-9B4}<naDTz!HJZ;(7}vkCH;e*X~)f7I$<P_?rg(R2uWD!LMOu- z5j%ov5(hTc1Yv|_A;=iuBm;+5Dwt{IlF!`F0QA9Mq|XHiNp|+8bp*lv451!T#|nVp zJGa!+#8BM01Zy`t;fj1zqs&Zcv8h4x;emrZ*$;kEh@wk)aJob@Y`5xoHKf5J!3I9F zcZ*x@{ZCJx02WDAj#f``LP?)HHhQBr?~#$Qw+53YZ($@4xvMCo2lM1keHN68PKh%Z z1a<Hr^QMJymYD(8G6MsD!5DoK18@eol-Ph)fPZ=D)P2g~0e=MLaw$^+z7ls1o9UOT zprcQdP*;9I4m5DVE-EbT{qvB)%_i2Ly&MS|I3ufSBDWCZHvx+I(;HO14K!N(EtvRe zt}I1i!3OlP*g#_B4z33n>$^2cX%k$qxq-vqeSOPBja@X{v5^y#G;|WYxJzovVMRYR zFhv_WARu5M*bL7tJVxxJU$!=L``b%i!c}il=|&I+IoyFOi5)$2s~J+2B>OOV0U=rI ztvdrEo%%zG8DxjtLht95LzhLYc<jKT>+4#{R-gLh?3((koaj(6RGAWU#uuT=_sUSi zVM{Ywpa_3g=X&Uyjy-V<vV;t>zK@)cj@r6B2^tEZp-_NCNJ)z+A6FbYRQN!mO5rD} zh92ttLxph?A@*20d_7CRt$6CoXTO0*+rtR33c6IG6GA~|_Dq*vb8vqwp`6)81~?fi z>(f5Kn7UY1a+eGPQ$QE*nNL>K>-MooK}G`@xyuB<3PPTp>N#pFp~IHOtdYODQ*wl@ z(hN5Y21}KYBtRd;HtN%C5&6jc0YrCT&^_gq&uB=Fn$?*oogo>4N%Hb82LsEXJ-C`g z(g6Aq4g5Kxp^Y#Y6(dG8B>Q=nGyt&DAWx%@AsE<0U-$r1IRP=m48HOE>j<=uJmAWK z4PkRpRRpj%TG9p>#|4_&++?ivOkQKX%V$Rr5;IB!$tn%+$_$eL8Mlt45y0#R{3^=2 zj7flSaSDLhZvarUJW@)4==l@?vtI&~5EpuF4T#9NfknK1N;XcU!RUeRIe7H}%183> zGk2^<6d-2Qhi3@RWYxoEsd~C+r-0V_pXNm+Q&2Wk@!0YvEArq$3W7V3ahI(nzE;k^ z_a~E~6*5~u2sh*zXb@Yr@{9{oqhSOfyCf7pi^;u5pI{+`flXfF(h00F(3gK21WRho z84sw(MxZ69hINvH2&C7|N#X8R@Qa@GW-~_oG~5^zl}x_t&qw+BO|=sDVW--bRuGVp zw4@k-#idzzTNi1SQ$ds&5^5^uGQ+lK<AoSd6H^6MH`9}v#O!Bgv}`H+w*Qbz#r!z< z*@W4{R(T#`iL5NCtC+O`Q3>s{f{K~1;q}r^2$;Y~l741t>ao02^9-D3%%u<j239&W z0}Mse&{U2k#ifA>-SB5+MIRMn92^X1k76&ad$WkA;VcHxxlLlJu(be&IuOu1<%HHC zHpjtf>ODEI@VZarL_@NhIt2+(D-BxBC4aPV;n@&#^s6)|z7Cs9iU<Zq<K6VhWoIe_ znwn{vfhuVR)572sgzqqu@{t^XjrueM?pQZvkScJ1-TK6OIG^PmGH7|GVd?1MFZeA{ zie970mLo^4DRAy+<&q*>*Tv6}_qjd@u8aODy`*6Tu>q^)8pKt&K_m${3Cw3{Q$Uie zlvX#Ozc;U1(xo!feQBq2Cv*o!2&h&(D4wR_(Fb<ZR`@g7;?KMwujDNOWEW%r06$w* zL;uO6B;}tj#U+?4{fU5n+0{f*zc!D6(gvZ^0RGmC*$D^3s3ISHKqtkU5iG|wW43w+ zo8&o;JA~XH3r=X2hr!l2{n1B;xCDe)nxeW;zpgXRKI&X?>PsX@G@Cc#1a$U0nLy++ z>bw?b6O#p4>h@SFWTlV*2yGQi-JJu%s5dMRdY3J_@Lr+nOY2RprlFkd#Q0C+;gS8X z&6f=>eomy{PJpZwdQ#3^@}7L<UA88aRyS$9>9>gzYWjH!vy@Qjgj#9xpC-8;MdxAa zFo#zSlrJfT`PGNNc_`EfyHaRKv-gu^zC4BM78g8TZz$(O1d~i7G1E4h<C5qQo8T-y zuN1}+4iMAjo3-S?pDP3D?t!MSemf_%mu~83?xUmwQ760E$IskHDJ`@hY7@M2P!Jup zJ{z}uyW;*jNg=MPPnFdWF4SRbz)wtY#j_?E6I-WT#x-#S=IqT~(~-vwP7S5kC%zF4 zmCix%E$#?(xH);aWvRLle5RsXN*q$}jq-%1HY232;x6^Mu1jU(XTKMPa*z&GnLdlC zezGk|%{y4`NgXvM6@AF6*gtOvt<~bnn-2*i?^Y1?@Uk1yui$_7AI#}uRO@c;R578y zm2#Q@>@j`mA|n<gqEuv9#dm?<i|RKkngK@mfo8zeAv#>m-)TnKhr5IT?INkHBA7?k zSNj;)e5PAY(J;K2N#*<i|GR=oS5Lt-E;A7|s*fuHEg4KO+*J|P)6XLjWp6C6VK$ap zRUQpV1%k9;_7Gude}^>mFxH1Fk_HaF!J1$j5o;F3^?2@Y(4<-g5SzwKXn&|ITY*Zy zRWAPimkNxpEG^o?E-V@2PaU^Ak5CyVn-AM2R7wriLHp=#4FdrxmCYUCG4Mpxgp{_d z-|(Rw8fZ^3VKhWrcPV5;BA1NA8P{sZ>&49>AR#giEMMjm{eld1G*eRQWX*&I6A$zu zigg%Aq|n(I45gk@8})%6o(%~PYAOp?!VL|lL^zmX+(=L~Kw%4}S=H#~d-^f9QdqwR zxejV7{$!}Bc%X{lh05_sEQB?=1Y!J{;;iIo@s%22TvBVey<;_!Eur81*g`l+6PqE_ z&-_Cfup5Fd>M(m(4fS;xgLp_Nh)~qI7jVps`#cH$n^p5?;ExuFf{2Qy)O{OjKzm3% zXo3|DhSYa1u{2t$SXWyrnr9ivU|}V{L>1{vX&!w^V<a?i=d)xkpJlYjXNe_EuNl|- zm{Bc(;us?=Nm-wktb=|s?scud&jC=7T~g5PmW0;V$#yg*Wzr<^la)cA%rK^}*d@+J z2ihHE=!`<r_*{-joJ|jmu19G{g3s>FwFWOSC*XBr%+c!v-^kCo<N8YdB0+!vzHqgZ z`J$Dv+_k6-ukYgR&d#Cfl#^|8wT|wltUjK1z@RZfWNOfW+0eE6qtC{ULk2x$aC`(T zDV>bG2@pbK9Kb9=!zs&v?D$(?459xFi~sJH{G&f3E*JZS<|c(adf_p3iyK<fG?GYk z$e%U7)l)n?<T8|5i^STDMLuZ|3AXWWBI;`&JmiwF(POg__twXDKnPn^*uPmY3HkJg z;Mzn|P^3qu-GdQ=vX#3wIA%DWt<pGnX9!u-hrxhOUu(QYDw9*zXhd51a0Culci!og zqEEu0lYt|!8C7VdpD#r=sU13w29GF_#s*H8){ui!VEJr~fQ(+Bb4&EVO8F&^DHpmx z63?0>4Xb{3gFdaJTeLUr?!GNww$NQ)UT>(}<y1*im>gIvFppE-0p|_aI6*?Ptrexd zSXor|Uf%i!HlR1>Y57il8zp-qcBFK)=FpoPOs}d+3|TiWC7%8Q`Z`#(<5LWVV=jZi zHA0+>nby_8s{uUOO|rRL9b8xBCu2^t9gtnC>n9H;#I9o22aOna^58y(Vccku%PL5n z$oE4GsV|YyedVokseExR)_>N1pB^Pm&28eive|d%leFE^g6_O=0!-aB%UOBT4y0{} z@%@Gi<}3%8O0g;j=nk-%!zF*2xd~tW;v3D`yY&gy&_H9zbgB>xTe`0=<M!{2;;WE> zIdYei3(zaQf0X?R=uP`eZ)Y4}1{4f7$Z}lXC4_a{v{rMYUmAwQhG3ATu494jP3~df zJi`Q=Xa*ncqzM$2_p-&+OYW$}tt2K54HWC>NfyCvo=SODx5Y)WPcyk#l_$;WtVyns z|BH%i1m}LWhfP9c$|lJjOj_l)a6<6(feiX!Z!HQ~L-nPSH2S<_Twmo*OB=z3vJrX6 zf@diPTlM#qG#~jv+EG)|kP1^;w;p<>G7=mola}PBu26>Hs$33)Q6K1Oy-h&<fZV!{ zP4R?IsTz>zs&zMvXTNC!-4=_75BAIvYeU?n22Co6ZDp2#AlU0IECHph<+HT9d<Go& z%x8z~#B>$!``GL-DZjfs>5B?UR6~nE!jnSWX)}3;ka|8h8VWt3T7VbdnWf5<)>L@5 z8AMm?BZ>^dk3uLS$w>2?6i8T_2++}xtea+fg{t)JrV00}M_5PX0~Wo(?JqhGAXdX( z2eCafYE|t1u?GaJsIvIHDfiR*&JwgW0ylX;P49Yh%0Y)K7F%De&OWe)*w({H;~b4i z<%#N=T<P}op3n(lWYm_gTea_<q6Q)4@@ySBIq5a(Vi8Ga++)<>KaEKT?6}qa>Gup{ zE=$@ok_=o%`5+Xh%Ovgj48nlG9jwr=3S*!<T2`&S7NBWPEJ@fXM5J`N%hru_CD7&+ zorqHw2_Q$nSY=0>HuRwxPFhDRL^Wn3@NGFoo3csFZAb)^bx2o1OOQN-9A5$ncYj0w zqqvD6(O%`W=F97-8(D1fxT^p9DIR!61aOfMQW%w~!2*sUd8yRt3=V`P>XznqDe5LH z;Wbi{UVI0(VOgH#Xm>(AYWdG9o$?S54n6!kx-qP>r8%O#GG2D^>6n-CbeqIx_&{C; z69U4HQn}5J%4@Pg3Ek6FP75|^Z(vt{%PE1OI{r+0vNi8oo*cg07&5K(h3E9;90&Xn z=R;VAP(Kf&`^7&i93i`Pmk7Om0uQ;6*0_m8hG$2%KJKtm-x=)nJ{5w^0um$aGn+On zyaiB+GR-_y+!S_w{AtG^1ayD^SwH<IxI|G1195Vg?V~XmWh$=UEIPSowl)TSmiI!^ zrZPmpZ%PBSZQzS;F*tUt<blyS^&|nnMmRj<4u@dG2vu3?(6fQCjt5^IS!YZC;<GTz zm8vB4;wQet@cOe8$!99eEV!c<u}F#w5=aa4GxyPPE}GMrvJcNth&m27?67DcCe|8- z>$_x|`ed>+c(pLq1lp#Ch%%M;S|1xWn~^6uF|*k0-r2TULe?KkGS{J8R}Sst;& zT&^N=Fd_p?K4Y*b(GMeaqp>+8MRx`Qd&ohzZc2%6BC$=JgYTpyo$DYZx+G>udxJVS z^nc{w$B@G&#AG~i^2`_OqMnI`5d3{31jdczobVH>1zR^}=w1SBa+9>cD-B3Lp>vlU z!9V?)BuxFAzQkMn@nkeP++=R}1U|@7eLpwktP8I&kpzP_jg5vRWnHVGn28JJ*QMwK z);_W%$Og@WYUw<!bp4<<+=G;&LKi|<;jeW~H!Fh%m{-5VkMYxoJ5Xds!=Fejoh0uN zg3v79#2jsmzuNT8X$jacf+6|N09JpT1?tkVs_5(MXOOq1PjfVV{u?wPL{Rij-V$~b zBeCsWydKl<ER<h^8v#gAnSmlE@FLDOd74N4s3b!`oI`kqew&osTT=q~V3f;IP1F%s z&t9PqAdLd|s%O-a*ChJP&SY|?{|yB7e{%z*9@_gUn4x9`Q~#9vM3wXk-r_<JFvC{s z)TQhxo2Hqj)_Ry5KKh)nFVQwZ#xSG*qc7SqxY>lcEyeq$ub8(HyPvs>>QGG~E0Z8x z)7(2XcotrdBqKe|z)y{=@v*^MJm|O45IzsZJj>Q5Ka)M!TFE}3=FcR(NhBvs812_f z2HCqt&(7v;zW~!Eoq##{(z!1pN+wOa$JSUt%dolG%V0Yjez`P78&1FA3^N2_S`ob& zhls3E#+CFg@gvn7mu8+`(Ja9b^x2FC)_<49`3PW<F~Ha8D2>Y?^fN35>D%(nZ4dFE z{f`}hA&KJ8DpnQu{I`enJ`15-7*~a$JQHdCp2$+8Baw{~4O&53sZ#>Q-<7K(vJt>u zWON@fJOHUPF#db9$P##pjAxZ7rRD2HMsTBJp{EM1{z6PMhQS^sv>vvMFtMld>B42; z?B`15BjGkiGk7)MsBbU*-QJmgqqQmwEhC`JV6i)2`VZ$2=jZ};TwsG|1_Oy}D6X3v zh$PV`81!>$FdG>M0+$w(%|u-wZ5)@XYT1;>4N^b&8_^D`9Nd)V!GkY&hA3@D;dKp; z8x-q+!6GyJfY5xnk1CH%JTZ%nL5}Ea_7(9MuwWe_Xbd;=+OS^^`gKr|>IiB|+GLs3 z`pYPA3auG3)<MmF>AT2xgsGWu&@WWlj|-j|*x;CmQ=RNUu<I^Sj3}>MH|+$jL%Ths zH7y#%;4^Sd>7nis1X`iiU_4l5KmN{3+8cuhyw!l7Tq7<Bb8jGaR+RE82l#=OG=hOk zQr5hx<A7E)Sm~}`+JutSE%2cU5%FiXCfWIn&hQKph~Zh~r)(HU*x{kLtS=-q>BLJ# zmAdL}G^Y)MhRb1#;QU!})tsDh847b8T;-p2T-|1ZK|kzdmtgv(N)mNZFT`9do4fh6 zk=0!G!b<)Rwk9>}UJENovV=~P(S@})aR=2{IIycY>+UUL=@#(>snr+z5J2xjsio9A zVi}@3duXjNx?<L$B?hPEz@J#H9}+dIeJZpruWM?7;MLdcXlEdzfXGTgJ-wW8*Kw1v z5DS3^MsNqsCiHzQ%Y&zcL(hs(Z(;&%mF2<q9tPr$)_Z*3(0Bb@4(`N~vQKLBSyEdG zQMQ_dj9{IS(VmIz-)5lix4Qlft%+J896j_}ODAaq!#2U220C<$uob%aVpM|{nbTVn zs>KRT|5}Y$&=!LtF)o>uB18){mu^9LGt0HCCR;`@s4N1TOQJ%PJZoUhX5B|c07tE+ znd6Wx<C;}?Ts`N{I4<-70+bP|;HrvVi8FuG8zM#|f`DgDp(`Y2pCoYuYXepHYu!yQ znAug>tmS%PB~1G1%Ii(oCww<41+*S-HX#DKTOww1@M{dTG&SWKv70r3unr&%zaj?& zz8JNBZ^%OTZU0L22vCxYhSu|y1pOnvlKkJqT3PzovD6veI=RA4T0|mTCx77E04{AV zNp;Sez`&Ah@h8-b?s~D(o)}|lu$KB74&%A>6`Vwz0X%gB%&@t1$R0DUH6kya?5Nf< zL$ZKKS_SuKf0Fn&;lfIa9^k7O2BkH`$~ai$E(MUVQUKXX=bprJpJMM%pC+ae1lV8q zEOCM<Wm@pSTH3{s(~Lr@4bYS*GTmqsvrS|57u=J7f+`UDEh6A@Ic(WgX-|}S2L~-Y zceYN$32>l;b}rey%NLX3OaJZ*#r-(|q-`23ufd0aXn{8_wNL#B3>-9ZBJEOEM$1Sx zK{S5du@)bA*rex{)lcfvr<p`SV{wrbtxQLPv3Uo_qyKlUF+JtHjE-CG8q*lcrwezP zB{Y$TP0>nN=B`OI-h<#-LMArx?657t69?MK5m43S`G)+sWW`6r{D+=RTal9uM_*t9 z{XGc>e@(&3u9Y=dNx?L6BYVS4#*#F;Mp)1Z*$f*2$bK|5_F}Epzqm^iosbIyA&I*r z$$w(X{WpmiHyYe<MHQIVB!|0<mx(in(FIM8o>dYw@6!yKDZa$SGrA;!b+A4%!mW7G zt28ND_cVW6Q8JPi?o6#)o<;*Ap}}VD2Gy4NyN~v<@O7(7i*VGij?Xl?)7ZGeUZ8=& zNloL;!~R(LoX*PT7Q-_?Na_JZtBE(Xnw`?paJyyGGP`w(MGb%EGjO59d{*eIC|^as z6M8s3-i$u$a=PR;gF;e}t?Ojb#M>>?I-0xOJTW)TzUWWg03G{F+&n|(Y1(PFGz>2m z{$PbuXkpOGeAmW$n9gNmm0<tJ!~g|&MiLd2^$13tif<tGG&%nXk)<GxI8r*s=H^-j zN%CQlKf%+RJA`SF%6I6!`t9RT+6aYV7)AZ<-bBG&;^D5sR`fUp><9#gzIwiF1U*$W zz|()H*>Hjf-`xlTlH8$CBe(@-LYl_Z%2=Y#F?doc7a^G@qpEvgX+bpeXFh{&ghDHq zwCM^<TMhI9GlQ#0Ygx#Imh<Y#T<aMD5nN#4F46Gk@L~=mMj)KhYfOSRd>O(89|ubk zlCpy#BQ>ge4v3B!pVp0Qdccj!hbcO&DZ(7xm^QAOtJ0j+V&Kvd%4lul&St#IXRwxk zLN-!N#M~w1)L#xu$T@5y<Qz7FOasrdOG0k4j)F^eNt)9dMv#d;8zJYgjWj26v~4qa z^;f5`G?Sz&Ne44h-H0H&RCChL+3}FeVcVxz2S1-}gr8k1e7%F4@N=1&9h3f32q?Q$ z`1M1kAUSFo_d56~-Hr5T7vQ6Sa#jlj{Zcn=l~J_A40qX@mW+5utq{sHgfnVQi-NUA z)VqG2!I+E$?i4ApW8&yXd%J7{3bQkJ?PBk*Zy5l;<eWnVbkGiMIxqtzBR*0FDWP@! zQX0Sm3N)?joIq1_8#^cDCdtgtKi}<)lsE_GqV1l4i`24tQS!-DJ(wX088y;lCDeZ^ ze+5AWs(n2aj%I)|($PrzMrmSHb}(Wv-Hz#R9nH!>M&M6Q>{OIr3l>gCG=eXmL1=Qo z9oEQL=(cZt4k?<4@&h|fY@KN#V?aPYAOOZ?;|N-d*)k@3CLCaIgabpP)>O%mm+QNo z<e?U;+=zJu8!S+hV8aJ(xt35l!!>CBck5asf=!YUZ}{{?iW4hQ$A9ld2ph*>lPgUt z(WWMFZUlqin}~8j+|t#-B8PDdNvI8$Ss%PQ@m~nBgMBt=fSSaV0j1fj=^A|3GyNmS z<+A}lgH5wc=yKdTd{)L_gD%Z9#RlCCSC>U+XVg-SN_t>$LI5>=a!B5t7C!xQ7(6z6 zu;^Z`-^|G&dAAW~68+!dX$0R$u*UMG87ri0XCt)M-JSl~fh0qS8d0b)m4YycQpl7$ zCUfq(l9WNzlLxdxUb-59kXxEdIjb^I)Zlw$Ieav-4QU=;t7M?%GScH{h^6^?rM{JD z%tHtkVCf<5;)Z9j;b}PiAp?2?W+cP}&0U2*_=r?uNg-8y^;i}W!B|X$DrXoj-Rr|= z<1gH`WSb!+-S9a7{j`J7l;nnIT|?ulL+aaGV^rPD>vk0=Od2^#|C>v|16!l5oBAuu z_1Gk0X(V(XXaYiBn$V0|L5~*X!(c8=Qe7a*XH_eIpyK|VOH$mhG~27^XxCw>5NoX| z;c$m7Kqq%C+~@D?=BE)uAN0#)l0VzUjO#TMNURE8IUs#n#Od+K5G2eQ31EO&XLF3$ zH1uBvNRBsXO8XT}Qy#o>&<OoEvAfG)$IC=uVSjgDD}r858nA1{on0I1@~KG~eDW$C zxJf3;r1@u~_G|YQGXv^(<TLSMAYdUVHIWV6r5`mxWgdid`q#DA)@~Dag2-$OENQ7} z2-U*tM-WHeiu$455X`7tA>r^)PZ#l(nXw>Jph*eOASVrxR<NuRR)6w+L|C$$cgZ;L zE5!;#LyE)oP4=y^C>b~+aUJcWehGg>Llv)HM}^%HXuw=kr)%;1RV^sJD&Igdk=-|y zJ90DsYsO>o4?c7QSzN$7qAiI|4o6+kNzx3tDR2JFv7>$o3R3C3@dBcM5nd9R^d&)1 zn(U9L%7z^4F8JZ4QpJH_dgcW<IU2U<#|8AhvzqD&Q;dQO0W1g8J1NcvXyQ-q7|X=N zv!(+hdDEA{`Z9NeORtjEGqlq8#4RPMq<0E5wFz4=U5C{T6Q~-Al|KQK%<v5Oz{+8C z;n}EjV=&`mOqhwS5~IkGGjcX>q+^K50;tuOUUrQ}caXP%Vn`J&(@2S6m@x%NrA`Mz zev7(>x5Ws((g=i}y0K<YL7l06vW|@|V;M@%Becz6rhQv}JsfRuac?*L<;x`0lfuow zRYg%hi+~hUlxYK*%dAZ4jWXj>VYvyQiD~>Rm66T{X^@+wCGL}aS7|ZIXuNjGFXOTm z?N>JI{vgd6T2isKqhveMTXIG3yd(`9Jqz}dM+7$dvnotKCOuN>K)frGl*s#PRui9v z`}e;O5(yprfF5pPwA~rOpv0Bj(}!^lf_qD*2_j=?_VzP()VJRlh@~N?>{EsFUo4s> z+O&|={u;ey9K^5(-{(Lfj7bnx*UIBY0%^ML9N%3mmBDYej;KIfz)A=ei^NWE_c5IE z7Hbl=E^kkO$N<nS$!UJAl**vtx?jW76Mh?<qE{5jLkNX1o;AZwVKy|1vZHbQ`O9(r zx+owdVc@Hxt*?*#Umy&zRl@25J_$QD=Oc-oTGGu{#u6hQR>HJ*GD7e_A#BCcup*?B zbXUW#?uDu$ueSVVu`i<GQ9E%BEK4G0ohp;Tmv#D#AZ@!m1;7X%oFL=mi93jv`z-z# zpG@nbM`N$cXz*OjX_WV<L`eUh#-ye^P23LMeF@dB+#QJPsL06KpM%f%0xKFl_~Ash zPtrWWyG{-*eiBOh!%Yn4l3OwU(;Wxt@TiZ4;692Im=FRR^%(^{bzju@K13El7OSXi z){<&=MC@P~bgcU&*)h?MdYgd3`SQ%=a?CnwfJ3mZYt1O1#@a&U+0K5#a!^v@gJDzl z9eI{T3&@fs7|BZ&(kkyMq(-T=RMUrqm;?Y89vUfiA1wJvNpaVD)~{)U4J!j&4s6zF zGE{F)DQ4tpq;{DotqsjUYYmM-J`JI!yx}DAH|4mqA}?@9)HYlZtc<nIpIYbSkaZp5 zw+W?#u#T(ly#&*v)4s^3anxA|a3N(KR>Zgt>wx${LJSxLbJ*UK01THVr!`9uz4dMi zO>uvUEyp$M3HIIK&h?}pl7P{)HCToko<SUUG?)uRP_UzAqr#ebHHFDkatL>bBuNCz zI???X6qe*6tc_TqZk<S=orV+>&yq9#^u+?Zw9_qt=(ADd&<0se<V}b=XX=NcaWI2G ze=o{8;2e{_27AqrJXl}WLaKRbz(PxF@OMEVm6qsW7bvuH*JerM)T>pXgL|4sS^y`l zBkXAaAW7`}i39{+hmVs99$GB@=LhJXVo5@{YeQ-@q-Voz7XDU_l_CO`c|!$#%uSIs zd>OIadr*I6j!03%R$>_n0n^EgVb!@FREO=HUyAj#umo&TJ_FUwA3&^J4tBwk?&Q)! zHc_>1m6FJr(9hgQyLXsODlYpBRan;;;KBS;Dx3VPv+o3(qCm>Nm=gWkC7|;H{KS+b zHVB1-9D;X@#$j_jYtF&?K(EB-K(YmQGRV4z2p${<1wbx;a$zucsb-!H*s3qyL%`pJ z#n?pBLO?Fq!y2=p3iaJ~&T%k(tK%6u*ZFRfQ<xxBBYo~Nu{vy%>wsnL)FDZUvToV` zOMai?ZNj&{2A?2=l+%B(BKhhUG-lM0>vx`3>EHA&O<G$Ln=)=n#LW74?6EZzo#XN@ zH39_mfM+z%Gr$-9)>RGx4DdS^;cjKS4Vac7#xi(`Dw$a0h+&B!%6|L_OU+@!8b|%; zGU^A8QNI*X!lO&o)|K)~JP-4NMerx%hC_b&fes0(zR<wPgf`Tc1*%_;8=-9iJ==db zk&!47SzC2wrZwM&6npa>v=MGN;Zm7b^$VdP|JK{E*1Ve0+5^K-_#QKuWMKIOPMSJA z^1t!z^O(3BnjpF|E}<hzc)~q~iuoVS`X|lA|HUda>V{#ogb5&y^g|l*&y#0jsc@k< zk`g^^*$i-+&4sn`?6(nUt_K0s=4ja9+0Y;(y0qANHaS4&hmFE@@KQh-5mR1`egfW= zzB)})+SAFWxn=b!vgC-n<R}SGO5FwIHHU=Y=Ad?|-^`Icq$|7uy#IUDyynkvu*SOq zz8IgP8DnW+LJ-YP+^>&jts#;GwLS$@;Dq@mNjJPIhX;`eEnE!7%}=^q133S`y>u>N z4$Vi|mWB0yNp3bggASpmutNNpCGy2A{}=KNwvSvjuWY~TRsJvWZ3O0a<uuq>1TCYA zoH`|vrkNzQkYXtPk3A&Ryc=7174cXV;}LyX^-!_S?W#67h~eAasiPda@h;>|5?|$A zd^_k%=0G4^f6G6Oz%(c~|C@xuK~URh^0WVDFbSOaTdLd3DmSQ3|4&%y_-V1s&+c|e z8>4|qt$$1ShHt2k0lo1O3QvQtvElvNSpWOx+cDPLuro<Fl~1Ie+J^rnTd<6ce(+Oa zc7=rR=6^P^1g!s=p8vUFqN~v*nD`%tiV^<&Gi=W>JO%64pKC3ZaWTX(Hip>D-S8}- zj_$@I90A<r>3>tYEURiD?w$Q#3I)~K2G*XFTD(VKF0X7BC2|_8z}cZ2%IOK;_CIo< zzZc_;XyE+wi$VWhK6?tB!5*=&&U<SuC5(yGn3#cCnWB$t<rm$_`{_>barg30%!sma zcLMol=!}jr=^G8j_q7xy#u%94AEufFXeBnkp+0*WiT?`_14PQVnwbg`_%cb8C9+~% zez-#9=wWCX^S73H=feUyA&$7Y1KZID7>G)8n`e30U`q&p1}U>b<6}@WBI%$LAOW7# z@+YISm1kT)K*I<?cA)_~^fMSQJ4lDEl-uU4(E=Y+(3DMkV<A5C3*4IVX`=v=;ia#7 zK_JAW<SHFy7Y-eR=@xPyV@p|JrvOV@5^O%pJ350;pcn7vYZ0UZ5&;6^k_ggk7%_xh zzC$`DzFB}V>(C|8sM!PD&2Fh@Y}2S}i+q4F8BRRVW3*$@q<ez+M%ICB(v*OGvhB3a zMmqTT1QJLH+yS4vb*)Wi;n*N<onhkK2|8kQ@`D8Z%!Jh+1#Zwn6AU?pS`#!-Q^Ae< z3`N}z7c)65SFPx4=aA4;)AdeRX`zVVw+MvP1kkWYlp0YE_|dZw0J=0;hBr!}S9a69 z(nW7u*8RJCDY&6BJMky2>j(h=W4T+EsJ51nD1)1%Oox1fzf%OhbBoH~bce0essjAJ z7=ljhwQ>Ht#3r64Lr}}O6kxRk9m-9*8|;9Z{L(PMq<!=D_gL_zq@S3eB*{qwOG!iG zQO%+apl(kxjuwbu2+xwMY)!wa{OK#QNPk_QWB`&pq+<$Lqi3lu;Eh@no=G(mm$uQc zZ_67FO~k~J^@f_5fuqq2nMz8LD2sAZs42=;$~D%(4?nc%?3Pk)3hgJHQcQ-k%7r!w z%o-H;@9@G)GM!`%NYDW!)5_>l5c2(YdD}6!hDU5eV{i?xkYrt&dQDQ$40c*jAs4Wz zPd$Z?Xwov0*SxEo7OOUf^4Sf;jz8(0lo*v8s%A!%V4al`B`4sAlGIe<&$~*Ah)3q9 zpybnZGWkSCE%JdhqUDP^d?_U&!BaUusp&Tll8U^m^hk@Rr6<r?Hg&oi(NoUWR_W-I z5J^v;mL(N=SLqQG&?7Yci=)O`LQfc3_aK}8=ACg(Fy?NWtpt_VK!?U=?Aoh#pP2aQ zZ8$gnO~OX}6!%J#NB)>Dlq8Kb;DNL<BJc34=AS0G&T@chCLX_v0&D6cBTUT1ULbN; z*q?oVzIAE(AO0;SOJ?e2oEhA;d}XWx{)!M9jWh3+?z`=nNpsky&Uf7Qc6wH!XV@nC z?|Ja2>D)lOmnN4BuMr-3;E_KmFdS#cc#YHC)3?%K*q7(*>2CSK-X{)5-t>Jx_RQ_J z_BgQC)rPX|o6DIgJTT6~HEmTD!V*CHf#u5z8v0<(&~mUut@qZnb}qLD@?qJhJRp3$ zxN8OSlc9%K@9?{1Pc6aMv)Nf=(R84{zRho#O?}R=vM=8-hhJ}d&f7DKoLPE&yfi@* zT6ZnzPt%`E{Xch6Y4P}cZN_ROolnyXZr-B!zy0{p%IL>x-SObv$KUE;ELjV^Pt)%n ze8VM@y~l6wl)>5j?v9#ox_SAyw!*&#AKX>jg!<}_=}he1l9etd`w6G$Km!im8&Kc* zHebuV^Z0lL?8iY@LA<N8;1Zj8co0&f$Gs-B7t^b^3+XtH1bAQOJ9lki@nU+RHWC=s zcqo-^xpDi&^kQv9plW=i6llkdyD!95=t3IAPVQM)ZrjVY9^*~7Ewe4hDN^5Z<9;^g zKzYw?H{Qv{qmtd(DDL7wRQ?M8KkwK(@nWpz*~LmJJ|Uv_&Yqu6=3aO$o}D4u%A_>r zzByXjOt;*){j3hGvU%jT9k=bawj6gbx#6b0)`Wiwq{+A$)@>uW6M9Pjh0OO&pf-0? zVu8+`qb#zmDq<<e*>c<Vy0*i~j@x##tqR-apc`)6dq4d+uy`TdKYK8_>Bi;z>8ILQ zHDQ0d<;MN@)33F$3g(W$-ge`i_tWM`Ob!C;7608kwo(d$MNRK++4l*=@c;C<Y9e`@ zP3BIS7Ei~DxTE;6<)-b{lyr)FH|@5jWd6?NhMV?UQ%~bff-|wAsOZ%#NklQS2B0_7 ztCjO4(zfL7W@Xl^WJ*hJ+s?M6QxR~-jl0>Hl&bND8~3uYr*->jo%8N$8k1<XpY@;R z<Z!7OLZkHUUC%m?uH1J7eQay`F#X1K8b^t)lI1CO2;<%d4#<+GzMTHSH~Z>|1UFv= zNNILp?i;V{8AEM!aGcqdn980{FYrmb$XohRpZ;{tH5_&12O_lZ$NVttCWX{)VpKDQ zN&LLWe8P7><|P?;KAr#PfjV4RxXXkN<k`2qj*HcP93O_*!w+};oEK2ePp>?%P|Nqw z&D9s)?YQNqc=F5Xp}WU>#pkE`0XIdLdkj*%Rf|BYuXYZ^(p4MX>=IXzC$i`6vb??@ z36AV*@53EG!cAuToTU5H0M5kfSl^dyFeM;^n*ibq4H50GkBR>Fz+z6K4>e^83}<b= z3~1&@$hEi-#sI&VyyTOX5?mw80cr9l^z(EVE_j3B&=j#1+w-T_7l?t?f8I~|NTXo# zSdxil@)hT>bKcD-L}*1Pq{|<7t+|-WUOYs$T=aPou|?pQqssjDc)V}hd}?_gPp{oD ziuidsCWpo3-EFrEw|ET2zNB`AI=S3er9jaBa*x;35BH5-gRQUN7h?-0zq^Y;{bh7W z;FugU_7VKL#n<T)S3Ey0_6Ay;k}@FyX5<IlP-j8ty2~uIYZ~^k3|9I|9VK?veuU{Q zNTjDjPgIV+-?t4cQmnIY)dl5Jy{VdzJMRA2uD=S)>|!!5VL93o3;x{8V%<BY(tuAK z{Ma+}Cw_jB;*(Nx;rIa=UuU?0B%1l;_A64pINf4tZaK4EpqgF1A7zqJ!0Y1LlFAWi zuflhaR_`mS72#eEzUONYGWhFF3#}il1*2w<m&jmOm3QT2Az1qVEKy7F8;`pGGF2H& zkzHOZj(^N7`1nxbdC%<niDf0~64a384HP^v_5WXc@75K?vb1ggm-iIM5ZQ@i9d%VV zP20A(L&dXZD*^%{B98I>_wTyz$gIxlZV>01^Ih-rj5QCKNL6J<M#erOBk@1@N$8rN z2`L(A18^^@6YakEP=D%}1mNmsBT67|hT;fs#A2o055cl-ysXw=Kj`tjw7v3Nub8&a zs^#HCTw&QBuuKDCbk$uw971=-DFk!iecKjlOlco#Z}~^j!deKZ_rgLP9|UirqYr+^ zvYLZ>tp8BUG;3I2E_Nek)ml6t4$N35)#`fz90HLcff02z08x}~GTI$1>_)bUgW(yF z86&LNDvX1Z*Y$<<5-l(Q^hCVhh4q2%*4zA}d+}0hE%C`lHqflOqqZlp+&Hd&Zt5w@ z0A#IHgpxr_kT3EZWCq);II|Qt+?{kk7pdgSkHYYUXU}X4;|-sgM?*iY8`}LO`~5WO zZLqPoP>aOP{BUX@3n228!Q|funx<TqcWOpWeAyDv9&EAVh&2BQsb@8DVWR5<H<yD= z$<w-jB@XIpo%O-=FkPQ^?e#gFij>ehy$_t!X?FGwA%8X!$d>Y#6-+S35f^uDe1wkr z;0~4Fy|x?=x#aSO7uuc>Z`hsu9w_}sRDLw4Sn56Ao-AfQnjfN#<EE`^hdaOdXQmHU zF$y*3AV6{={zD4ZOf1BXPSdpy(lZaYX%2%xx%zL4K&NP`^Y`g!&)9uBGvoZd`k&4c zC@!S=e3m%<zr_+}h`)y~KKo{+8*{|>znd=>3d8gJ?+s7FQc!KOJQ4NCq{j064>88l zy~gXWdyUusHH>jNk{0*ATvZr^><cErl&-jVZj0`b&hoot^UdQKk#N-4J9aq677y<v z>d4nf!&ZlSm`cm&`86fL{Qj)>xUeZ(A>7By>Zzldsk}-i_t2KEJzpZY44Lbf^$gDp z9q5N+J=@ieg+CZN&b<CYFCF{i@cEZ);-PkB-PvyngP92s4S5hf#9?oleqp(3l8sQX z3=1GFpIU%9xO<<wUIO_%=6E2GSfhIaQYK^q1XVxiUc9ic+<COl{@I=CU`g}VSH-s; zwimbF$k>bX3L}=qhfBF`4-AdYMjtz{Q9s=lUS%yt#q<-_1eJjd{v2N&Z3@=Npkw7t zJze@J^Xz5XGd<Lo;T1jh<qHwU;I9!+Oh(PITgY}C*!d8F6&v7Z-qtU;*0EYf90?~j zwL8PxZSA*r`nV$Cu+{1M%ww+$(KXhVfuE()OOp?n>2)>~-0F8ZE<fsQ+D_8~N1Zq` z%_5jR20XX1t{Lmzm10g^$?6_aOn%?c@BMK5TcG`r&ADk`h%^o$Z=Kpbx08_Vx_9;s zI*-)t+uoCMVz6RbiFUxP4(wbX8!_h2(T~^KhLIzAe{7YAzX!?tVcT8v|NhaK$*x}u zalwgs3gMJyk34=Q{9aaTCY*3XmK3>^^Tv}FF^jIfYVQR6#ke`1B9oRVpS<kOqg#F+ zd1d>yw~XuqFYIZds)`K_TNi1?G7dFyssuFRZr_QMBgR6=3aH0=r8e#j=f<8$72Xz} zkJ5B{<)@vK2=3jsqDim~*d`6fYxdud%(KsGd>9_Ein((-z5m1kiR1?_+sR5^fp&Ms zRk_oKK6aEPLRyA_SO7?VT$2u9C3nH#;u~OS<P3-;c0cM2BZh$#fO`*&qq`A6;*J#- z2srcPKfBPvJqY+>=O)e0#2ZpzkqjH0Z#`t<BM113iBCN7k1mejJrkc=RL-CHr(OQP za}U0E*@Jta83=iK54;oR3}}zPm-2w9>nu}9bSzItLT5$W2TA#m`N)3;j_yn6^@$}m zynudYyCC7lFBc;&4Ihm~J*t%$16)!!AI*#~4C@LpgPbGe!5b-fsQI?cmPD(qUKx6P zHPjb~MyQ)u0W8Yq@#TV@?5B-#@v!1LuJhutn_uqe^?JqTiWQRW7X?{^z$X&<O-v}Q zFuX`t6=|?@J?Lu0p5X{NisGDtZ&zqIuf92inxwqP45Sgv1HSnCueX{#LM!KjYU7tk z5QF1@^@l=<J!Fzsdh}W%`<-~~Z8+<f79ZfaS+sxknlV-+2WC-N1h9y%iwNQ)Cct8F zSO6PBR$k}P3O}>j^uFyWc;fuM-RQ4X*4og8lbfNiHXgC{ifBbz?rUWOGm8?o#S#8@ z2%Xpf!>>OZ=5=qcKiB5=-f^70*r@#Z^Ds0R)dbUgPByyPm22hHx`=f0OM-a#jxC6> z4pMT|ppc4$L>Q_(n<V^^7jFi;@nBB7ywIkSS7b;&;zdkSe&37mw^#AAAl^m)zN^2( zL(I>L`10Dc`>kFvH!zTqD|#~ro0zVvfj}cN3Y+EFxua<1!nI0922=-~6yE`HvAr7_ zHcNwljXQ%8@>u)(O6lFsP4z=0)rrn?M+OP@6k&KBH*Sq$-MDQ48M!7t2vCF6V?rT} z)xJf2{D7ex@biz?D~^V}(W5cqf)Bm2kAgAu*XS(zH(5Jt6<fa?c+7EqFvcEA&O~Aa z^zjd(W=!-w)|%qMLf&G67!3QY-n$l`3s~D=i_SM#Xoq*8Epf;f0FamrWvq3$(>zE< zgFkeE+TIEa4+x{~FK>zP<|W!fWD_6?7>*etb<ykqyB06TdO~W%N5<<%eMzp8og#$F zd^y`-Ssz)CYbTGNKT<KuN&UmoTI_Zvn`A!fE)&E88$no1<FY9$M_n~>ILdfY+7N2$ zjn>}DihpJI;;bV71X!RCfEH~YKv;}U&W67a{iARJZcSt__2;ANq;Ej6ln7scTDAj` zJOu}2{n~+$cPP9rR-eO-^PaRuTG#+B-B9oE00o*5vHkSVyc0k*I!X;WO%?j_?73iZ z$ocITi*ctH_s}`KAI2%kZK+c~Sgg?d>}fJvoeGJ09TvtN6(>ga)ns>_%mmK}MZFQG zNE9>>+$3HQwS9dd)`T5-=SqZa64a|<111%i{?1GE4&mpy*Gd0602@8E#`=v(PqIX8 z=kb4e^&S(ag&D1#6Q?c~ocePo;1N*QJ97sx*L$eF)1lVCuTRdZkORSG*<}~7VKuY^ zwLzO`6xVk3&g~GlKn2D4PAq_|D8Hxt;A1--o;6dSAU&F*rC^>*3%;-Qd6uo7Pw!uO ze|_+8sd};_@^Fokw55ftIa+Vt8VAng?D43b=hf<Z6ZL6uV-ZAL7!$p$Zwfi~voOwP z!n*^JW6Dy2Mub3-c|bk_j{(U-L1UKy=NoI78Iwaly_eI-5u?@bQ>KZ&itHegn8B}A z0MUGAZ@~HU@s(WX$m(~u_4QT#Gc?Ja6a1c&$)R{b16b)tkuNwg8vO7B)&#tgTz!1v zHgFhV1hnMf^sc<sk)0_}G9tNTGe+$7Z$>k<k>t^V2Q4kq@Q;~IY~|6*P-G&5B9DH5 zC=!%EtL(TP*Qczhproi${9fFu5J|#FwPlBsTw$<T1MHt9@(>dsEfRTn9}punjU2)) zfM6mseAfML0tr+^BJW!%k5PhwuX%#VA%YJ-2Vx+5?<l^5Y_zZ-zWJqX?RCiAO`&~p zM_*Y8`NvW9-4z<)k*`z`beny?n?RJfn;L0q1M7ZYY9{h_)1&;wyxs3&u}~JVMd@86 zvDEsjM+^L1tG>P$65xFBo+;dl_u9-E)zA9FDAR)I+=?_zi?Llb8+t2LXfar9Xs&bd zV746`CI|_4<-s9xFcm6>G9o4kb@=)bQq*elx^h}Q68!GkkU0<3Z^bBKviwLIS%irD zi`a}XjHr6t>5s0q9ol*I=!iGgt5pl+(2!Y%oBHqn;l(7ewq|?rp<+#$^-`d<?2dJN zJ~m*8gCeOKA=G+pZ9^s#uMIm~<@x=t*C01>Zwz-;Ke_8Y!tSz1kR||E|19L=w1_qv zB_?2W_Bfc}rYdUyBKU?pg_N%AuVSbT@otwt^*jAz4^Uq_db?-IhN^|p9W*;{DTY`! zf#JHd>C%DzjfzycFik%b4g7M*2qJ2*H5D0V?DA<58O|{Sed)-XPs<#)>(cmq!u_u= z``UaPCdaL4T-2lC+CW$-6JYsdzdXaLZy#8X#<U1o25S|fnS*BQ(56I7XZryPzQvi| z2P(mU&-6UD*AphtW7oHZhM!M}z<P2wAqH9FC$gA`WE|Q5f3_k19Q=mP3EDtN*>{yJ z9^qC`1V)MlG4?(2U~3iFoVT21>HNrsn!fYmmmG|k?DRIdPbfSUx#-tue2}P)B8n;T zE*hSE{u=4SHzt%w{Uk%Rpj=bKal)?Tsm=JWc5`NZ2#U+RYC(K9FwdGHZ(2SCWp7AL zSdG{A{lj)<gci;Uj{a%qz)lfyaNZ80y|LF7Jq5Cmg(wD_!Cr!L$vLl}2h4I-Y1O>9 zTo`H=>}(z5ekuS+7aeK|ElNr<C}h=n&F+|)jT2rDzr@kq2>yJfj4{x!_k>bsdZOTS zK&HKs1+8hOL?ZP>%{1krGHRIKA!sgG7YQoX6VqSNjr8v6lO)Q(yDs=ZFz%K>hs(y| z+_fj68YrNmQd$u{07lc5mFsxbVXoaoM*sR3QJ62E&b@0`^6dQ<*ZLI^T)oh1Jx5<o zKaX8Uzv}xf{cJ)$+P%e{P4uV!Q!a{Jt~Ss=!p>{RzV6>D^AtwSsLb&Zt4GUpg^YT= z`jSo$XdD;?Gl)<oPtLmwTjGi^0H~NI{@cY>z%=VqNlBPfe9@aT@`gt4O^xgVc8}a! zs}H6J-UyWv18-{J{@W7dK5BOJ5M1?-X-EQ@Cnx8%{_auxw_PmB242~Pn<S<1A^YSQ zd!6SRbkKrUgFY9mgO%#Vl<WWen~*S|R1Ueg9n@Lm*d9alP+&<NQ<`q-X`$(A1;68Q z1MX9ANe)DO*%awn*AgO+4e%B>axJX#8>^t7HgdJ^Z`A4VZ68Q_op)OA+nM#g(|X^w z*1ISIc<1%L#Ufz6H2^>kjzC1y>1MeNwOu}!*&fQDmp`f^Wvr6UM43;D)Eq*W_1d{> z4t}w~@sT6vvA%?XkanG4MG$h{*9`Z;#EK6AbKh1(&_N~!rkJtwy>Phi`ked_OZDdv zj&zwmU9C>tE|Q&XmO5_)fj@L++U#%tZfnU(yS1LsG};_a(fq4dfBsw*NYZ|mhxd^F z&~^kRoL}b58}h+tM)qbO0l)2!u~yRl%6<@^65P|n#}-O4<mBj{ou~G9lcRh62OQli zzYVFvX)5+(OZ&}3FdE6c5pp~)#0JMcc{|<#&E^4qRV=rwXTAMr`4m?9%whljzL_xd z9iPe9*wkl({mWq*60Eu)RkZuul;mw7KO%g8ccpxJ#^rW)KFsy5KIe?f9B4>F=plz( zX2E&e+0--6xXg!VON8ZSYzdy#mm$!kr1-F&J@j{-4*khqnseyyIvx6RLSy#O-*x3f zfBJaNp+73Xedx~^8h+voKx_+ixFz4_y85PiiWj!HMxSun;yF5ZB;|Bn;q`D(%9C$> zy3WseG&X-+S6G!FI<MTg==G<Y{KA1Wx^jv@pcmda|M~V4H4-sH@xm{?@Xjx6e_G5h zq!f>QXHcM5-n%I2!_48tJs(bV<ZrQ(xcnF%@jk!q1y#%(B0R~{z&`%<gWT1wN>w;T zXqO5yjG&Al?(6Y}9&?T`Kh6X^md4%G!{QuaCR4bcGirKB9n#l4ZSi!}d7-DpQNqbX z{{GU|h&SkMEashfzBmxLk_Yv!0qh5acN~ap&hF)9%H)XSkcX$v1hPt`iO<cB9&tcD zjzb=v<%ft)pEDgQiV^1_n?X$l%r|&+*6qZ3$mSWuwP(b!gg#|3Np-vn6Id?MsB<tm z-lg5%`Rc%|bl82zyKd9T3OI_4oa{==dZVd*L@O1sNj8;-!dB9uu=4SFiV1triy}zw z^thdit5)R;NC(~FIF<u#X*O5T02~`xKC?p4&j7srOvHBQLrLyC9ui4YSmBPR*8^$t z{1D+3lcKKpuh-d$LuEgG5<HdDlG$KqEj6#KS+Hmn{xPoCd~(C%p*e+pd<fR*C^l{d z2qZBayW&4H<u)!UBih4@W9Cd>7Pdny!+6KT*oaPr2*i6}vq&K2xfvHS(i|Lo(AqJk zpqV&T^CS!=YbPhn2CLq_Fr)p|Z1u#RCW-2a_Te{&(#e9b3Ww8j9fJ@u<Y;Jvd8`b; zivDfM$IzIg^9>QiUpn-~_HZExHSrJ{YzhXQS=m(^hb}ow5D<=^g~MRZiLg6X%aIKf zKrR-EgJEG@m2sLQV=o12a16Z+@KBd$#ln}pbO0v$bLGX0>CU!=gG?;o2R#JvDbE&^ zsXq`$*Xyp=dQrSF=MN(0)+hN7z0S|Ewg5~C$oL@|nceMMlZ)41_ew_utuXF%<^E9K zr(@;GKU!BxeM315O8xk2z5Ge2)v9A-99oF@?Bd&C2Y}dq@>Z{z?scAncZVThM*uhv z*7Z-?8GHG5^^U4%7Q_+$J8KnlvTu@_5$M6*%|`C$?$=L=WLk&_@Mf`rp9|9lHC$F_ zj_Za4cD^my5r>SzpspEO3m3aNY0ohj<{cz-YrZ1#;n+kO%e3OmYtcXf)1?oil7QxW zb6Kvq5U%ay$9tq+N;wDuvoM2%6huk|ri}d3WXN$!(Up`QRLJPAl8G&IZCZ?L-1+%Q z#nC%njwrK|?=gQq>t?By&mQbCbnLLDmg*>z(DG5QNM?FHxxQh<3-iOLnQJWTghpX! zc<jP#UjReeMSn>GFZN{3qHcLw;Efgwnezu3GN!d8>2*%?Sy@BUfHQ}7T9PDEV{J*& ze7tDwm)625sYaZXDYK}pxUx8D%GBUSOP?um0y@I~vX?RXAY$1TDfgGhzZC%w5%{uN zEUdIC*Y7pHcQco(N(DSFl<zzhAo5$9Bk16(B<N<P)>Npcv$J3c`bmpAsz|OOB2t9J zN7?OF_d3sZ=8BZrO&d#j1;4M&X4QU(oO*MP!<qhOM{8I9m(W?7X3zEWr@7G03OpPZ z_ArFRd26*v;Nd6$VVtQRfb;2X;oqZQJK1(;tN~PotVptk8cXnKZl^LyJOw|q!*N*8 z0)^!DOipp$>g&E`X9VH4EYV{U?2)|`g2M^~pn9zDlfGc@KS)5wyKDCEllA)4@5SPi z#-N}PcZMzLBLWbA5tzHFuz;`_H*9hAC3Ih^K5QiKlonm0O%ke1E#HEyh$LhfT~z$@ z=T31#M6lIo>GU{4%vx(mi#E`*FHsMcg(%!VNbjkjsrxGMiIto4sD)$BiAJP2zu>}k z(_9n1>>T`jsa<v^>MR`>i7FF&nii5>AAxM*DZ>sO>!x((-^M8qJrR>Em#BlwMs=fy zLfg<n61?5<Fi?2MLkq<_pWQuZbRW9&!?`*$V4d<ErdHDS9h!&eDjDxPG7dUUZb#7F zy7rxQZP1+F8+4yo{r<^8k0t4^u8f6VcUhdcVf#YrcyR9l4cx{nr>XJ@A?#xqEwtrX zP2t*D1<8W$t}_`oKF*Trp~D#16$`A$6H4kG_GU9iHx4WRb1Em4m>4fn6mn}1%LMLq zy-!#YNCi{I<l(+Pyj7~02bhP9a8(~$J521I?qlJ%UbAFa_Rr3fY&Y^<#5v<=c$C(y zyH3@EFNQqeI0J7+^f4PSQg~L#mS}s6&Jg*d^NRXu<Oh2K>*FNy`!mb(Wd1*Mv44EG z@?O;C?|744YrPp~>Eq3X)=6=U(b#Q@O(0l`P1v^N)j;eZrtl1AmCr95Tp@qkXFyP9 z;JrAB&=l`U)TWj)3_pJSQQ+=ss-;%MV9g`oOF~CS-6a?4#~orTUA?{PO^_r{O(sO9 zA<3T_(Xn2(1RSSmm%b}b7NoSC14N~%@;GlSC`nq!jNuVonK9%j3wvqln{(*1r<X$u z%(RZ7=-=N8n#EQ#hJ3(&vI!pIs_4l<ZU_R!904skCu;R|)Dk6<1)7DJIr|Vy_uW{I z4SmS@dLi_?y5A!ckX&q2;ZTP$fZ$*eVfkUeYeJ60rZ^yE>-HqyC~wxEE=|eKED#6+ zEY~yzf>+(_%?KXPT_Qs}OBt^}Gx}qPb7usgHCN$M31Iz*m#IxH;|`!N^^GUe5ldqY ziOwe<&1_pc46tNtAr<kkC5;CKpo5QET}e^;_n%o=Yahk%Ei3C;Cd&!9l6F&US@&@| z`^nb0)5^Ns)0SjY>AR!T4>FZ5GZ3-KqLJ|SlDV{DTo(t`k`mbew)-1%r0&~rPv&81 z86Qbrbd_6TTZfo-G{%^la`lUmafR5xdHvYzI&r|U4MliZXzWvzk>E%RjUwdQE;yEz z%AqC%bY)s_!uzE9S=0*X^)BD5fYU<h_f$k#1$>di2fucw=FYnJ%th_UPe6mfDe|Q5 z8K%ymBY|H)_|#=1bNGSn5xj4dk$jshk(0M($Ko7i+9L$HsMjDlg_xpQ{=+v{zy^oH z3cN@th#kpcL|nURW)fOwJ)k0-#G#@xo<#iXAV()jXlnmXrvfM!5kLuD?k#H-Qc!{> zR!3(7S+30?C&N%Co$LsvBf6qqmnIjeT=b#~HvrmuAzd?)<b5UKLM1|@8H^i>#=wWu zUs2KUtNJ{CAUf`L2m>9FR<yE9EQT2`=DUCYoPE_Hf##^wEJP=+S2E%H$M&h)DmVZ) zE;r`b(R=uU;n2j|7#vi#S6~6iLCZxu+EtLtlyXviHibuksBzJfmpiSzXG)i506ez} zF@Srega`oRR;LnGv?m%1z?tKEvb(+&X2N}j7i8Tsr%J=CZB8*)Ffh>@D1_L0P?%=J zfP_YZMcd{Y$ZC!MW1ha63`DCe=J7!EspVs9)F0Ka8Hx*kuQW}KIq&sxMSIpe0vkjQ zfS$-kOe(e(F^4uisU1hnQRVi-IQt#nJ=vY%fM$?csnFK0XAYEwOpe;&WHv)|i5bJI zqBGVMFEnSuC4CV0;NENyjCoo$#$8*BE_~9PlTb3D&3A&|A--^bhSxqVZO4&t0w~J% zpQLQSvz^qRdROnUJ#2Xj37Auinea5Q%uw*r0rP2LnT0@^u|D=RRH%*lDHl}MC!G&U zCnn_lcNMCxRS3|HlYA)(<SEF=nI2h2$_|wh{=`jT+7jMoCjJw6N;u%C3}Xa=U5_6@ zmZ>aSGelK%pvdmy5UbDMg873u&U+|jxKus;Faew>I%AUe0%3R}($?2TmF+2=xvlLo z3^7cb(J%=3-SH91UtF)~qY+e)b65;Ka}I?Mlh*~hMYhwKk69AnEGDpo@LCdsHLDFz z&!;VVor{li$D1YcyH#HV|L~NNr}$!$uwSNB9|i!-Uf9fMQBz>*Uhw*eHA&M6nqbxl zBjivAo04*<4Kgs6HRx9d(h3_W)n692P7Y5B!bQgfQmvI~dKxyIN3b5&LeP@+0G==? zWak*<#)ELkq7CwQ`;;LkOVgeWZaI4Gug-lSs;#wmz1;^vLvg;UprJ3j0tIBj0D&x& z1&H&^;pAQU=uBpE(PQ_)(t`rjf^^D`dv@|#^ldxl+D-hN8j1K&vqyMxEH+>?C-|j3 zJ^y4Uk41<u^@p-(Q(ukT?HD&xjMfhuJVwGmo{sFUd%fXvIPBBwJZ!yn|Kb5Y$D(9d zb~#8o6wz5s2FgK;=<HK_aclHKZMMf!ivnVnTBdlM>j<qI2Sk?ZhXKv`)a7@QJHg-U zv$1^$T$^qJ8m)a$1&}Mc?A5B}3V%R$f?2CzfDlDZxbKw=qpT>!W(M9g7`qp?=VbSM zghZJ+bR08N6Qzw`{Ts9cBG>aa33=HKEJ>|Y{t|H*F(6ti{*54g7<C-&D+z$Y2IGC0 zvrQeq*-*z;D|T<30)jS29N;>7$*nk_&yjGGkoDOF^<VjO=zz>QfqO>am^s5Vmp>4@ z)fr~F6@^#Jm5F>fLS%#=EJe#(wmA|bgYrEv45A%<TC2!bXtMBHY$;h=qOf$7tIIK7 z&2DN47WHsMz%+$Pex<_t(!ZkQwG~sNXECFP+-zC16sJPu7p7AxmjxnzC6qZ^`r(Hg zp21!awmz$<|H7mkFJ<8|X@rV~EQCpO`V|x>lj+KN8j#B|cpO3@AC5$w4^JPmB!EMi zq#OMF8RtUgW1<8K3zN?xxDDbJp$9ATZOPGjN>)jRhTbTR>WKGJ4X!&!Z0#vjk)pJV zaoWi$c(KBgY2=xI_1|}Vv?cc3RrJ_-Om$oROnr;A3AZjy&lj%=JwL<R)~i_h+E*+G zt-$)BIiIhkQ58N#z&R`<RE5X?+~3-o$o;`5j9^_7RTI%DL$mfTT;$~X=)Z8Rd_m<S zDMq|6LdzY{q_;Q{!oxT+?YXc{S>j)v>*&1%M8u;#7tC6Bp3@YKHEu0et2wMCRGaA6 z+!e&Wl7AdkwAp3zBHEq8OV>V->+sU+=tAs+??J^NT~hXPcd`-`u#JArLho)C<YKG6 zM47gT+%RMGHaG1Mo<AGpfD38O5EHmQxLC>s<_BUh8^ICe)_U1qSgTpp)Yo<YWP?RT z%uStuUCmS9R%agoIv@62)iy+QP;H1dRO{ATs@xVYj^!<m4X&YjukFITA7z_`ld^pD zS;th!yjptqI<ErtN7ZtL@yWX-l<Rv!*<_8!)rD~%{tp5J3aRhKJ-i{@Upo{L6#L^2 z+#kCea!zyUt6&!D^@RJc55+z7W!y(h_>Xaq@)PaUH`S$-hQf-{grtQhxZg{-Uo3G? zMqIo-!To~m*bpaVOu+p!sk901x!S{Ye+%+6V}tKtwx70(XXP8m<RMoh<Gc!b4FwYB z(Vg^qe-MIxMj$zdLxEMty`a_!0Z);}J;T*~<mEp^%#yAxI<{rlg>(@KCF$M+AGTr~ z@5^p{=@mrGr8&MYp^b`~)khY|;_6WZfBtc4Ozqy(68{#-C>g()I8tnOaUYvmNW}?x zxDp}>A)M-&Xwox9BvVqZ^MRvfOlTpA^k9H=w1z|D@##HMIazPxklcdRy_wv>(+ROJ zHW(Gmd@fC}Nx>7lv>nlOgbAA!<>!_stAC=$0B)^yj572XPBT1WjHUPr`fF;JE^VP& zD)`3^UD0^OWl=aSzm=fq4(-v(t}qmb;J-h7j}V5jM~A{i1ld#H9~blF20>V+XyP7G zYU{o)HFMmrvN|n=XQ9jI3)PtcCB($Pu50S}fF2DDo;bJ0Yc!Am5dV;OKvzFbKEzhh z-^Z@o=-f%Sh{=@%c|TKI>LeMKsY~-t$a89I?jMd0ZGav!V#UOof;LS-j|qwi>ayNo zj(onb20N?oCfy$iDYk##%=A)~%B~T}5;q@YTc^V8y`X7<a7WlLg-r=~#oGO?-bbzR zyQThBEAB_OBRm_^%QLscN3hOaYpb>bpN0{W!Z4`5AR|2Wq7M7>(ChQmC-sR>GZWy1 zp%=-KH2|vlMJFz6>3rQw;Ln8u1B6%26N@y0D1hM4WM21*)2iDXx5O{GyFuBp4-kc4 z*Es1KM_PAC<1p}O=kA|xSEfFJZ^*DyRHSohy*I5^vA{7ADoqzO(y@BC@3w$j(P%64 zILO1H<2#!4N|+G-1L@ZY1^xkx@(+sV5u6xpkjSni22EgLg0Nv|5aq?g*ts&8A)yWa z>TCX@^BL8@pvq@}oxgB8?x;F--ZF&Ie><Ng1dW5-?5D~kM;bOgPPvJ%(S{2~t&bQ* z!`&a%v)nh%*cVH$N5)ipmyfQrMC~^kCGt$j=ki1yq#@S#Y&V>wbT*ueq~M?CaQE-d zhKod&cFV)xC5?uBolxnH4}XX1J1Fy-I`o|S3tUn=1jU8j8>eYu0Z49X{;B6&+hzlT zmVuCRYDOb<i2-7fA#35TW;7z-RU5nLaMnYdkxv<lFDHSjPviu65o*`Cwjj_k9$dJ8 zNG}?F2uhmoNhIh~|FD}j!PNGWH{5B$0|GW+#I<wkZ`%DJ`Pq9zlk?wx-iQNiv*u;3 zV=`4CIyQ}UTMF>KkYJ%l=L-liH!=s6=tPE~c0(f3Mp%BxH(2NFR<4hrmrY<zuNs8n zNV)@UMAe0nOQ(mD$}f7%Oe4l6RFQZt&wO|q^ej`e=b)?R+%uHykbvX(9ModBD2{40 zOnD&48=VUk#5ImPCIGMVA{u_A;0`=EX0TI&5jj$%Y``HWR)ZmFB}JKVvI&e;Y=S#T z__529Z6O;b7jV`PAHW;cA&Y770Y=L_OVg(u$UeF)MVwk1cWxXD;p=7(F5cNyb(ZzI zij)13CR`~`_D^t6LW>n$*Br%Xv(Od%Yr%oD$F>)>lFv5kPJD%u59y7t^(G6x>%clE z6sF;dLZ&}IZ@=OS@Hog(cb?kB4)&TiIZOBu$AkXX^Y$mR>q+80AGiO4eI@Ce^eg-^ zb=)2bEf2BVuKN9Pdx)+56;_MSN6tBJ-}i~6lZdSR;hFlYPYUVS-+im!+LOw5Oyi34 z2d86Ej8C^;R>xy~fFTQL#7JSGxRc65Aa{id&RvgH#v+j|-Z`zBv(@HYZJSIYb$KW* zd$c6xnKI#VQh0J@qv?xh2THTVN#WD#+pdT>c*?B-log1R!l%_$emMD*Lu+wXcrvcm zr$L~ux9RTG)9S}w8g~K_IEl+sPZiILSto137JZ||ygjXg&45V~Q7`T(9rsR8w@)kD z5l(;0)AxG%VFFY-fX<ul+x1b8cTTG>`QrvG{!XC+0?Fk%q-TZwcXG-j0LAnAqT&=# zOqv&~exF_0f7~R%{Ri<-o26fMI&DJ_xe%3Z=J7D&P=4p89&#gUbBAzVscOZa>tT5% zYBMK)f8q8Sju)hRL7gQHjluJJ|2X$OnBbNul*;cXSC=-ce{{>m2pb{@S7-D#^oQp% z9ftcCdG{^vS%gX|UTC1v{$+laS9QQDU+URbbDinrQQdi^N3WYlc}0*6)qr~Tc7G1V z(1}~mw)f}I%dqoa&pzzWp%!|c=-JNx99kK6KIz%Gfu*FBQD;{V_x9(~$-Xs({b)Wi zp`d_JX;IM3hxM0=I*HityheqCx@v~r`%<0chnZ3a{C&fE-qId3g3m_3e310MyQYs) z+X*Gu=d_*RB)#vNe$V6Ct`kSmbwc0H={mt7HFup*26Fg`DwJ4`N#;OYPMY;Y=Y{Tr z7)@@F_GTm1$V;eQ!%Ka=HQTb{C|Xv$QtjRAPe%?|!RV90DGQ|Ega&{6iPP6Hw^6Kp zI;t*IRP=72=i8q+c{=m_n;8B5z8G3BjRT?XrV`Nt{zy%h4Gku4ZIUizE&4|^&-n9( z8^1b?koIW0j{|kj0ZitWw@^m9*V%>wvmw#FVvD4yYn?N<i1{~dFgTWm1uBXts<X6! zhIsQ=5-MGF`0DNda(7l{E1zxXS%07EqX4pewy9@>{j=PnrIAJYGY!N;MZbYpL8`2& z*44g>A?y$)W7)>Q{HuLq49re;Is$JCu4l_mIhwE?c$0>VUX`s&MNa_Vn=3Z;Y2{Zm zz?KQIy&PHEn=Nsq6Pb7>;4Z~hW$+Fi{mjo;P5T)@<Y!FNezte#Gh98^o<H=2AZkBy z8pq0MXlBms<+so={CcPb#5t}TdqW=Kz`M3+sp9xbyC+8R(U~Jk=_6*fzk=})%Y@RB zRUDW<!YWnifQ_h`tCC(eD8pu9tO%E-JhbuII&i2dUX`CfO|4H}Pp5aOPtZpWB^qSr z0sWEwcWkBUy`WSB;Zj~t4J}sPe$EXoTv6d7k1+p@tP@|VW2JZHbbYS71;Ob^&FP`u zv?C$*s?EEjr9<sQXiksxcoW&eP68QCD_!{YCFMZnx44`?y<c|a_7Rxy>Y^%ba%i3o zJ+73<Ud6h5lZ2bSpS)}hZDi2h$|M5q#X`+3pkV?fdlSy+t{_#WzkajoX7I)QXmVEW zbncMyahak@!4nZ<VbTbL&hnuck)gc_`tes50ic(4K;1M35zcM6Ww<psmlNzIKk*vR zioF0KsKAAwf{WDd{Ek<{{fr1)`Re7S&3C(XEywj+?pkTYY1At>BD7<9AOb&>7`&{$ zd*W}V8ikq4ioO=|H3n7nNXD5l$e}S!8bibt#Xj;7&#H8uS6f_CjH&Gifhsl?D3<sB zaZ{1uVs8jcGwCs>S+vtd+wrJ}^Lq11dkr%r=M8u!ULO{;FmBjcfR(<y2IY3Dd%oa< z$WBBx3QC_<lw#mK-`|R)PCe?SRTg{>(3X<4IPC}=aVlwT=DaR>FK`&~f~AP3a4=<> z7gxoLGzytHNNjWx?_i8c#q?3NVo4LB*7F#ZwqKJ`PhCG9lso5m@*Shz7}gjS!5v%0 z7M`f9Jv2=~kBy_q=l~UxEB37QjGZ@n$5k!C<KGUo2_<$s@1;wTC#%_cx}*2<C0yb% zOH{hyvn^ieZ?qj$-_~eG1i;MuZf|-_(@!XGEhFnZevi^~oLO*y&Vy_ybryA{h#1Hi zL+R{I`2UuA0X#_L&!q|zm3m#Jx-`QE08%0?Z7E)!Jet*sredd)mVL=g(kXnBBBpT} zFO5KeGlC>{?7OYUhL`|^FdI8UR-B(X6eLiH{57@<L<x#g65x_49I^}BB_RUR7@ZaO zp51k~yun(tA)7SRQ^$ECGk0A%I7hybNzlcClZNb8Tn+D5wxCZt$VwobXg{4hk$jm? zi?f`?p0jb82dEVQ9aiAjAB;LW@of(2m}e1iriyAW$*9DTw6<iVD2`9@E{||~p#Q}P zU&Hc@-I-iQfUk9A>Q5cJE!IuX1_E=Ef3Q7T?N9YP2;n$hJa{y2j`&{e!KYmZYjMx~ zF4=4}fh8Icfk-GBSO!-<x*LSj#7x<HD*i+}S7W^ugb)|3r9^z%XW_-UdmjggJ6crL z1XK{Ce3eK`Qz9*h1$_Tkfx9iySrYGhfy?J6qU_r{G09W!zJ}^`7OW1CD;mcDlJA2q zO^d;^te2Uus|6bnQJ@zmBbEzvp}YBPS3^JuGA4+^^4)qJ-#rVdY?gO~K6OSh&b$;- z*A3_pBD4bKFhZ6V&t`J$A^j#waqFkg|JkmhM60+j-nyWDhFXZGjT6(DWy9MrAgew% z7C7X*32&fX!DZZW<-Y5+EydyNn~tJhRo|^!p)JsXrUL2M_pIf(UbDmwhDs%-%l3+_ zu)Dexu@{490mcwJ24f>a)ObgNoep{YFG$~DJ9TTQ&lPF{Y(x(q2X#U<lC}h>!qDTv zP34y1aHL7Wqmn(z7>QdusQt{um*vG17>%7OmC?*j(3^!tdne*l0{VVJhha2BhaxNo z#^cyl$b~R-%Y@B@n~7$cQH!(Xvy7_t5gIv+)yrKG_o~UnOmrOu0zGsplJDMS(D{m2 z5<wv(z>VWN*gV2n_v^tlCJf&1M4?}zC}x6@wvb-5ZRcbGDAB$VXlm)ee6=Ur7#R8C zD<^_uZmT7W5acCjShu!aRvYkGt~ZzmJ(Ez^mt6Ih>u>II4?3FX5;nRR4m#t{Y`J5U zuBaQXTQLZqU30cBhKu*ucLzF+<>$9U$pt=VZug6g&wmxnej<&pi{U=xi{WnaoEC8c zRiM1UM2xXOg@e$&Xzm>8&m*0(>dNDJq1Ru(BO(wG9VnQcN1=IT3^EDm1xQ@l(a4`; z#ih7&mY;8w8QU<D_LggIj|(JDmLq<uzl=ri&Y$^0Lsqi~9#Z6pU8+x_*wnedrHVkm z@#H7Yy}@~a*c4F+Mv+M{!|`+9|7Y$#siS@`ipRtF21FwN+6XR9tIx;tfxHMHd5f{N ze5=Hmfn!;^VQ^{&$q%`LSV27m2@(+0lb_?yvZpwpI$OpzBMa`7%FfzaO+4myO~yNc z4EbMkj3Fz#5Lzb{z1WR+VU3K)fqQcT-QRO_&Z@~aylz}h*bY01(Mfx;SF7HilP;Gd zYkL2Pn{(Pd%pkcDE$$7cl`8D?(d6$ejWe8>!R)VH^yJgKWIm~!Il9k;JRyf<APH3# zL~$OD=--}_AfB}$9oE1~QZbh4Vls|piw$cs?X1ztosFImjFV3uBHCh2_sF+1_vJ&r zu>u5~aKY8L23{Nws=;EUwVn6ESz;gVXc$=PNi8CKw2YLaP2frAlRg<)dts+NcG+`b z%g^{y92RF6t<f)Amy_6<2pifCc0O3Bg^bAJN+RG=YacKH8a}_AJ-c>pIc?P+nL&E8 z%|-rj3c9-gM5aP&J7EG1tiw)|u4KfSCTG{azAaBDVcP-b9jB8{d=5VeZBbcs%qSm! zamk^NFAdLpn~*i@0q-V<X;-)#-FAZ-K}GZ%o0zh(H)f1cm@5%@zpIy_NN{+MV?&M% zOvkQdOT{o?c>j(Wp|;|LDh)lXn3?dh+MSRhDH~>>*o~hzHAx9GnuNh;zeUx$q=hB& zlP-q?nHC&Qy=BY#fV41km;{$9c#4-IGn@<yn-%&IyNb4jJMy7C8DEoUSpSXFa{Ea_ z(N=gm<i!zUZD8l?u7@l_d6N--%hL@U_waN&@NS+C7o|WcDH_8FO2es`3IqsK6L{_q z323t}r|XSOM>7Nq%^Vt`D7)2N?HjLX!{Uc1>UV38c9)Hf44^1=TSywGY-`zyEehvp zE1zymPduX`p)9DuW+v@lEwGDFp6%o(mCT#9YB#o1wDkvCQ4~|G9BI$@VKzlIZrNgi zt1@_s+XqpuRM^t|KeXaszE4gV8`3jGL@eB&SMHqTM*8&^yRyu{{=`wg6m0WX^h%if z)la*lcYTG^Irl63`BNW(SCo(t`Yi59pHRn?)a~s2xlWKh@KBu)>Hv&`qEzKE8~B@| zp1)fYw0lgV34(S+FCyx9;rPUcCP4{(aI6E_7oi#GUfG%DO}*4gA_>Qq;}F-q@&Ilq z1A{12b~6PA0fIA_Ofl%*L}S+W30J<|B9_4TL0+El+V|C1N!bx}ASD6%F;$Sq4cqpK zqiIZTPw)eWcb@FHD>P4Po0Udr{=8mzDZ3yX>vP>A4@ER4qYxDr$FvtAesQ6dt+R0P ztV&$9x&u`}B83>k5n`XhfaGWu(_0CoT!CH=aEkCv)MyjdW&3i#Sl}R_$J)2teTK#r z3^xjS5SMBhr4v=|uPqga*f?@53<z1Ri2VheLAMcP`tru9KkLHF)=?1(379=x3_}mx zP!{2INo$OLVDUEov`^T%V2Y`|nPQO6Rv})mTH@7)910z5-(Vp^IfdBGM=wmwM|(~p z<?cmKjN-^dtW-;5Q5#YPKrijU#1Y03eV>3WReKA5425Q!Fc5f{>+iI#h(SdIMQ6OD z6-z{)XnQcB=^rL%H*h|$pzVg(pSS~81UsydZjGiNfh>{UfJT1I>xXt#--ItBdO9uS z-xY{uSnq*<eE4SIO_k@>V;5Ci*cH64xJ?cCBYo-J$+o&}ZHS4dp>Bxmfe06b9&^VA z*nqH@Tfr!%b9gvql=wGClSZ9Eq{ryJz$oQdG@NB6agg~}NoupO+tqZ%L*jf%5g>V| z3Esv899jgNa)N80=Scg<GiPp`VF{p}<vZq{ErA|6;PA&o0-B<tnMukgYm*@gk%HJR zLTumn^toAP>|2S=x)>%pnT<UUcFJ4d%=zbg8pNnpOY-`?%_m@=49%Fq;<2uf4WNuS zf}*exp$DuBx&Zj5?cwa3_I_v|cOXnd@4#{$@o&s(W`OAHPFEP}#So=8=E)Sbq^2Yp zL*g+SL;yomH7`N_#Z6l$GAB6^A$br6;6AFz#bUXHLC6#gvC7A9^;WEM!N12UF`Zdu zc#!L6&Q&-mHrm6A@Hx=Qz^}9?&K1-vHrgifoC^xMg8INi*yQIvHS$8cR1Z1+)PB&_ zh&^BT9j`wtqRIiEaeG#M^Udbvm?82Awg6xJo!hWjD24%uL)4R{_ZcX3<N@oCgNA`n z-g_k)d@U*~shjJyrWS21c+KcH(akIhBW%##J4VTSCv`!9Z|abKbeRZ6|Fekm9q&re zx<3%a&4g@hDKW<^Wwkh@6_#l$-l{zqa2I!jYp9Shz3T^FgPo3`f|!rMJ3DM~=NMB> z5v^t-bgP|@A6k8>LgUk2J#6)+5%rcI!V5q&k&!!RVJdiQQKT9d-T`GLNU$6Omq^6y zmD)^=mct!(@c~s!a5n^DtHvR(u|cM}0}Bsz^;s7uMI%3h(p0u+e{OcC_a`xz(<vin zW(Db_r@;MHfNLY&YdNo6UK8@3-Gfm=GP(MUu%lB@rR;p>5WR&nh=2v_Q&+W^r{v4j z$PVeFq}DXIh#WZ%QQUgnKL}<fwwvq~$PA_c4Bnq4zmKXbD<wvt;Kheq;zjPz1wY<_ z<EkBLUzeUu9RrFlp4jY-JwvNeB)tz*>0S`v23Ro}>(#aujow#W{ShBVMUv5%dI)l{ z*an{sr7uz^ca!ppWogK<6KjJoT@6u40|%gM@}P<_t)=&+LdeE8GO+yCvV#3WxVuY4 zpyF#;yVOR-f=(NErQUnR2kS5I#9j0)wV%S_V!^fG6haUa!TR69Wqabca2?4aN1Osz z@xj{Na4jirw_&&j9mqN4_U{R(?wfubQ|k>dRLJj2ZuE;l22r<$nN1j*rq_X!aiZuu zDPzG|^Pmi3kG$8WjOUta)IZkUg)bFj-Wu4Df2F^_E<hmb+6Li`L3sOn5ah2kpMDOZ z-v;8HO1eLU4FibF9DGyI0Wpchh1w@b6uZtc;N4X(d#plQ*qnL5fdu~Dv$f-hxGMpQ zMSiz6=mMBH!p9o5kAgoahJ+$8wa@gt<ZK-k!B*9we|}i&6^xwZODR`}NO7aZnp``B zUZogYiH}~-DP<-$F|!6mo;G}I0X4vhwk$#Qj4w9j4Z-1UKUz#QlyZ=^;)P`5hMj2U z>Db&0V@|^o&9{KJnb>gBH-_LJUeH~}Vz?A3q~YZlnRC8jB&0YCzN!;!5vA4q9H?YP zCw3e@_Y8k)@=3xUQ48ksjtYGwh2{fUOvvaP?!^bPg`5J$$<V4Lh;M*}{3}0m^CNIb z7{D5?ECUVJiZW2Dp7>aj8>3Z7C+aB7o}@xTqgL?VUD1h*3(9ApC;?5BAPc0d)k{Xb z801f?J1GbRu)J6LdQN#K#F+`uAZu>#>#i{OZ<Tk(&<$Jvl~sV<x#gWg^?*765Nzu! zTp;$OSdJ#1RDIS;$!k9>XO3Jr=$4KLVujRobKRzJ=*Nfw;%tMKrJ7qEyh|EX+OJFY zo*vg4W<zqV@j(Pw8S1+!t^$mE@mwrAG3%C6wPo0n=d;z89J&SW>n;^q4G0`cWp`X( zdo!Cx;JS7YcOHkf`g}KqmHag;yPEwv)f<N(5dn4AXUZ%oVr*ccpBIa^F(&cU>pZbT zoT*9}`|X7O&YSA(DVO@)sq?6LrJ@K_AR3|4TN}FdFY|V6+3c$hWnJn{F249`sdH-$ z^rOpN_fu#AZM<chTq)@sW9LQwTrMY8>@rGRtW+juI+vlMPf<oPKe^VqK~u&73z)NI zQM8q-;8;H>EvGDCYc%Nd6`8YxClwGj)7+1P=O%x*ejTO=CC7bXfK-&26!(8coX(;_ z%fG8&|DPh_AV!P0m1<VR5j{o_tjvlyZk@1*;~?RTi2H6W9Bg-I5q!Z!I6c8ca7a{Y z|4kyqz$3DzBnTnIdsyPnB?uQ(&q$Dk841Fy^CSo_{*w~KC<p=4Ts^QcEkFv;W(5cU z-h-_qM2&(u0_6OquKkq+K?F9o5HiKF;L)kmB@T9y50D1F-BZQ|eTR~2!X^@ze(J=( z?aA}%m;F^7O-8n!KXH(asQQ6SCXku}9bvFZS4l70*)2mLlsJtAp)RueKm-J~b-dQM zIa0*yQYxPF_mN|6VXJW0G@}_7ZX;9I6w0<F7P@6`4MRQauAF$&{XVx($wDxW|6(JU z#||dF6q$1zPez7EOCU@4gl^myG{i}H1BVd=M+e}G`tdlaJFju_fn#(B;?!NVWN01m z8dY{wSG8a7N-_3!A%&?o!xwT_6CmNG4coFR<Qn7<Ujuc(5-&&4_)f5!xOoFdd=OyA z({do^xyRv{?`r)n&7XmQ7ADPr=T31L0(KD~BXpRXabMUa&cq?a#RrCfHjI88Amj(U zbnuv+XDkQW9LLJ$1X-*Q2F9|-GdYXQ>K-hDcNh*VbkEIY`kmmA8K<PjA6pRTrn90@ zgsA@1UEfN&htm}2?>wT<5cMY7WdhfLHG;E@0NeaVlQy<+ZcSPCk&pe|p{59qURQMx z48#IRo(eDwUPdEk!ALo=8JV9Mu+2s(FGEvJHOW@(J)aY9os4Cs+liSRMj$@T;5U|C z-@8nRz$iB*UbR{6n*sOk8*E>g2r;PN@bwze5lbnNczlrJryTL8!bBgqjB2ze3`7Fw z3t>oYW&F@GX7ab5(+D1wRYNI@r;i_7qIu;$sp-7ISw)8v24vrO=eB~zR00;q6(B5u z6WbPbD{+I5Aae?k?bm)sek{@ik*>&fWn3x-?!jb3j!*6RC8@W*JNev!n#hQ0FZKmc zChfqYJZ7kN!8CWp<FyKMXQzlt^Tn;DH=0TmSQHdSKOy5z5fDN-u`211FRt>6Of@~R z_Edz(z!8F_>VEPj6Z16JG3nd)Wj(s-p*;M7^$cWD3HaU3mZHEbrwQ%<Q-Bu1^Xbh; zx|(<VLmNJmveqIgHrC-}a;?pK--}pX97SlFs`JHwc#&V#8YyJPT*}8K#!hFlS%l}= zELwws(wub?8j_R)G9I&|8p1#BOIo*Uf}FIDn;|0S4zVy}aAQDgjzz<;=D<|E_$^vq zO}4{8Ivf=*gf5vg(qhjzYS8|#9d(A=y{9vrCP7GNO+UOb6D7uxfvFd;FJx1AMZu&G z=)45V#@NGrxGT(Y@|=<4OhjDSnU3npTA~9TsL7|tMYcwKZt0dyQUT#zh^B1@^{woe z18Vx%C|g(OmAza@m|3m2GJgtytiGm(a)ve{A7=8*#HJsy^SNUWrl0aWCMR`(KN7AM zbe-j_&l{2vWRn<0)0wKo57c*E1uaJ9M+;10XvWr|VwJBV-M|L2Rbj>iY64C1k>_?5 z7No{ThcVL#5M>49Xg=)(VD;y|Mf9Zp;SvRimhG4vajUybz+W<gw8~-{IX6igK-FrJ z&kI7#dDENi=V{ey&W2QD)~qGey{*@JPIuMm=b<^U3dUgON6)mAHrL;WdWHh@T<Mbb z@DZt|G(eAij<7ZRRgOXGu}h~~k8k`K1+B+RJ^inFE*d{Rsmj)I7p9pI9t4Hivkl=y z7aflz4Iqv&hkYBL;m3~ifN=u(&$~rYP{&ZYTII7j;_k_T=AY;mbve79upL?XrbxT~ zjGLoY20~csi9vV}gjl>_3bEz679I>mklg~q7H0bq`|DiRp17d>2y*w?vE#~$@pICK z8nWybHF!X`sB&P+g7@TnBOcr_vwT+DHHx}&2m5BaMe!*SZa^!$MKJ`pz-$z3kA0kN z%l^|Fy5%&~L6>+uCwmSbj~!Zq5y9145tiZz(T3zBhh+Ez&-^97D#!@x)dFP6hiqEU zdQ|Z6Z1|CWa`7E3?qfg$w-j<c6^#JM?NKPmeS!M5FEHNtgI&S?Az)ult*(@%`NUmh z4eVSL`+*u1-s~No>`cL@0PBWZmV_Zjwn2#CK&Q7*a+o*%kybBj&OCq*nH~abC_5$E zuW$;fjmHEh9Bgwffw^kO{J$N394rTuaOAd)y$5#q>5KY98tmF8-B(+hvubp55Pwe( z7pmtnCAnN=x>$l@76>I$^HGlH<I()8T@A%&CEuJbm4S`S38(I#t0{%q|Hs#qF4-D; zxO;|}r<of3%3ZYxr>SaF+fQMjxTGqK&1ZX}npErV2tv4N;R#dpqkW9Tp!booPYHzZ z*LopkY^~`%Tz{y+??Fk;YkmvE36YfRHkmVK$SuO{tY_h<0h0`c<LhUb97rW6P@Fy) zMs;1-f67CLeaSg5Eqm$EJmB?RSHEBOx}`|D>~pz*K<heWB&=o!Hhu>F3jdPJPQB<T zHL|IWSqK<cGZnL+?XH7AcxlkR-j^=xIPkcqCHRm-aMCFYW_qunoyO)9r=)3Yn-Fem z1}yD3bkmiO-eV52+2$RN-+#*MSM2iN@cLa9i-Kpd)IFgevgi1>1_124J^7#MyTLb9 zqsX2kTERcA?7@CF%VI&mbpI(oZedphJ>$pGrh`BK*N<bz>@NP!kLz{5kfxWf)`UXG zsNerpzT5!fJ*!qE)-O3AnhX*7E5CEAkk8}GqT2s-@89z27EQC+r&})Lqw_pU1kyj@ z)E&((Xv(SkIlRZG18P*VtNl>gV5sovoSJGsvMqq*7)v>|AK4*5vCZiK+-ux2ch+ft zC#fH9S^oj<p1)1**tJ6t5wDVl+$T>LZUOw_W((>Qn;JH*<PNcuXQUpYVdE-TnEH_M zHeE^J0_x-o6DozB%67qPv!ilk*exzkt2t9r{HBNf)9Q{nZ6~+_InB9dBdYLW*zkbW zzTkmEuip;X#IClz_vtD>_BsLgtop9U8@rnK6P5Y#HBZLc`t4Ppvq+b7$PwSf@<NBo zQb;hk0Jv=IiAhw9!moY8ec}Ip=2*(?vkf_={m<1iNB%Ht@-FBM&87pnKGB>eB!HeN z&Hm+Kv#RU>Z_7jI>W2H?A(7OWF%P<ffwiG${X<S3#WU#DzYY|2-PFTD<3&QX_S8k4 z&-G|H_t6VI8a0oAa9e}FRt%onNm{Ws&n94g=)BUS*Uh5|AcXkd=-J!m*+FWxp+&!Q zrv$sRJDD>T`IX`}Qoc5r&g)ipjjqla_9o9VB>JRJKtTV|;24#_9;<$C)cG(XlFJ`C z#v-?C=PT@h+P$mMXexjw`YdZYD&U>H;BFUZfXfbO=ZwXQ)ANfMIf^Ra9cFR;$+^>G z7}d5=DAQ&|*+lv2LabFA#}Q}e@-{w9L)y+Yx!4?Tck(PDIe8^`{nc%_pTCMa%P00r zv8#D!u_AtG`U6Gvjmzh7Nw+(7oH(NQtLNwG*xxB<{<c%MzgtuSPp&Mcc6_%y{T+vU z_^#LfZsh=kZSWn#8-83JA$m*k-MnbXu3Vd=!FN7`)$=n1eEYlNS)Pw(g2-dugiVEj z_#t;<o#5<Vd1m0c!aoF-kQj><VQDZE1&AaS*~PfrCOXp8pZT6~w3Up_)IOORHs?8W zdVx&2cfmh+(fPMj{LepK?~3d<+3|)pA-R$IlLO$beylsW9V?qTX{wm$*G(GGc4lMo zlqu;|P%E<$oZu&sBvx$FI<IH~%97}>!Kr{l>LtyNLXikIE?(dArPxvbqf8&SaEkHl z50By+A2YDWUUv2(+_)2uy{o@7Gt+QzfoZ-}{0lmQahh{xPo_WXK2z{JO|qDhep*rj zM(aq8^aZUmka(e5h2hxIUdSzX11;_sAy8mNn@BI+&drEn*u<ft*oX<~70=QpISOym zL)-|6EgM`8063D)d+a%zz*eTblfeFBy7-f8KRx=9?SV*fnsf{&eRkd^YW6JDAUxL& zrsf~o|N0Ar$wLQCRoX#7Q-2>s+TK=oq{x;aJLqAL?@?#`12zfz9s9(u_i_cn%xENZ zz&42^24tZc?<5$=g+7r@Ijxo%1teshsDX)-@Rta>l$X7%g)j|nb5oIU-Quor4FuhI z@Kgv7fsR)AGwc!Sdo|vPVvehKmiLZVH$6Z2WN_t{N)fW47c4vXUJE^|Xuj#8GR>#f zhB;{^%*B}=N%;E3GiKAP{$ZhRFUCK%FL}sh9(l1ccu%YVj%sx<h5#YR-V60FAOg)W zO6O2%!yK+=AesZ!79~=^dBHg=+=8l4tH}}CO(b+#ZF`T`O$8I#vu&js?V0%W8~I7K zWa`T&{_ZcY=%Op?F#M(sF7pNu(L>0uZ7(HBNS>tSv4>leKc>%lY!inshfJUv>FcUb zT7C-}5un$VuVblc5e~9FpHCP=Gi<9(rXV%`&`8RtI@}jnXVsFI7%%BB1}6xReQ6H@ zg*SsNyL9n4gMfEM`<{?S;~pmE4HZNB;=a%m;ab0mGCbe~fIz}bCtAxByn4{MQh9)s zsrl&uS@|t9&ec1dVg$><2}>2lYT1iPqGvBw$2%|+=q$A!C%*UYREb}caGm=l2eqO9 zJCrGx02!lmznqB4S$I;9z&pN!$Y&-5`3@4&D3Qm1QuVi_TkpCu(J3U9JY05(=bbrz zbL8x`Z5u_k9x9S`&s6JC)&j*jWQ@JV8yIwKcs|;0dAR120zFI9XO7<n#SmBK+mKQ* zjvtzyk1H;HV@KfvC@f=Bzq`2xgf2;I>cgO9MynfnUG*zN3cmPjOnO=zJT7{F(jkob zU6mE}9rR9S1tnqr1rSZ{0aMVsrFY%sc2H(x@ToQ1U_Gw_NzJKL?OcG(7vLe5N|nNa zmI@j!E0DraMCF-rsbWU{wd{YL)h9kH?qfi(3S2X%s7?(4W=|#SU9+RF)pmgSCYeNG zt5{PESIXWoK!Rt=R$*%_gbhHT-`oeJsncfH7o6v)G*{QFps3@9dbxbnfO_(B^e3Cr zAgm8GoU8t`LB|ow1%47fII;XJBxcHDSmQ*I7l$Lcb(uU0Nc~km9cz>0t>};Ex2Q<l z;k6Cy8(?;eJr#UP`q6^-K3GAEmx>IV!c?)>mkR86p9@0(Epdm{F~QJ}*H+RjlJ%_U z0&z^uZ#q|&5%y8YneLM?dh8yiR;z9oH#~Rn!rMj#mgb?`H4-4qPuf~QB)@_p!zw#- zPug_Xu-?Cnelgj66Gz3H_K=FHxD9J+;9V{6Yvm!kt`);YH4vasq^3c+N{KN!(QI*| z8CmsM&-fiz!@C`HoGlJ5eaKNKO(%E^f4Yz0v#;k2m3Z#zH^{&|s5h}SkQ1XHs38`f z+9PPrg&-EAB}yy}Q2cw<hn3xS4kSVj_^SLoENnclYAw~u8F1N&1qW(&+JdsM;SIA} zp)ke)6*zirQqCI{JLQr*wrJZ}f!cAoC;J>83_WVWUjm<Tt=4hO^me4{iuDNieLZ4N z`1PrdgmjKJ1md$ewb-)Zc`=UMvGKw@f*pvH6E=l^ta_NUARp}E1~Bd==0l{AJ_<*| z%u5v$V7T1BPuhk7b_Ed{K3&ttKNtsAICjkl#=drOeOnw8R=IHml}rf7e+lnUqwmp@ zp8pvy7!U&yCgg9!mIX$Qeu>2|&HG)k5*LA4b9z{GQM0IcFM!t!yvI+g)~59rv-R_2 ztYUV{<_@yyzCU5fp>Cz%V#zH}LQ5XnLig@RM+byS17NZ6L}g&#n+@klp3$xilqYL0 z(W6UNnp4DJY1j}T3%INjbq8G}>+3d1*@VHL0D!t4SsU89STi-hiSp~+RpF>R23xgi z&b#VP+uJ>}&%2>N_k5R#;|Gj2vEeBQ(co~b&Sxx&sUa)M5Lm@kchO7djE@A&O)nn0 z@exbp$d4Tyd_-t4gwALUxFrJ&=Cjzput@xuTkF3+@k?(V@`-pC^>~n1%2I=eT~P-> zWm+`pXGy}U29)p{7+$DpQ^=p(t>FO43G;<}MkJP9kF2SQAs?_?x4-3urhv@qp|-$7 z?4g7qqEK}d9x*hW0B;@FSZP3sd}7wCx|RMvkcole$9qS;RTDl(n|bfHw_J1!kIpM! zO;;TTXGcmfaPFIx%zj2X1)9{txt?j%=|^uNONl=p3P>H{A0!DiJAxhcK*`te`2#26 zA_PvZ>tD|B6O?AH3pIME!CeFgIqc0}u6jRRvmYZk{MUJGfx5N<wX<k?849cY*=5rf zm!RxWq`39s?*Mb91?H_aGzWUUbpcG?y3fTOxUrm5=Lps|e*6|_@0E35m)0224I9l0 z6U&Hr=Y$M}Xb3TUH|}sRVus{4KodF@ICC%O<$Snztc(Q@dZ&s6bl1(Q?((gp$r4`@ zI|!9l(>!MCe{q@ZpYW|2uN_Z<Ec^16B5sso3id=M@+e{oVUa)fZA>AF?ftpv^QNLE zy5Zhn6_hhbYa$WR`>4OD8s-fF-Ai!+SEc@bvItsvHd^TyvLa?9B3sTD%@{!7zxF6f zfB(O<CfzpceTC%5-Ypj(xcp^blt%H6O=QeaQ08*t{}z(V$d=gviySs}<RpEeAXOeb z8MVs9FU^rnCHC*i$R$gzM`fXQc@FVpBxPbf=^xu6soZ^aT;?9GH>4HOlWZcjU|0h_ zv(5=Cz8|gZN?fPAA7qe3BZNPZ4?o>;B_ut$NrYA;Y;06UAJ1^{IM5^O1K&{-6~}<$ zs-cT~h5|9=u-~AxfY0CiW1GMW)rHq-*$59aT&r2)rQO;n2K*Y<e2C#={^8|HFjIic z|BO6e`@AoN*Bv^lh48i!tQRl#J+)t7O1Cy+RP*SlUSdREkJJulp!AQBc|Q*IyP1t! znWV^rRB8&6`E9!>L@1A{MCQQCu~mS7eHd1G0Z^R7`11n%l|2oWi#48NF=|l%m^V9g z^G_6OaEsnFhSTvfAc+$E@9zpE37b>*HKSD9^%D$evwBZTwf)Fu3WPEifwmu61@Y<s zy=slug0HA!Xl~^-^#Bitp>-u{*DW?aEw(Bv;AVnFzHN0MLYlp8^*nA{)wgqQTRl&= zt*QoM_{kOYSP6S_8IcVi-bf?6Gv{?BvV9Tuv}Ss3>K@HhKrC26Fi5sa$_j{Q=2#v| z+DHbek$f(JSjj~y?1>>!l3`Qz5rfaway~p@r0}Ksy*$@L?vgU=GivippxWSaVj+P# zePt@vB;)W|o)3Bl%Ss>h4(&4V%&0J+#IrW^tbh1<FMXI-LEM2BY<f62JU&bhP0xIJ zAbIgz4~K_O^OT^~cTjVA2cYWV=#VaJ0nb4yc6jUh2|e68q?KDdR3QSogMYYiLB}BV zAGglp6~ekYjxd6HC#4Gvx1;nHRF*0icw2{ofpEB%+<%ziC{-y$64Ppn7hgxJ_{d!; z@3_CrM&Z|&LS%$jFgIZ_#ZM4|vUZt%<{`k|$_(QHWW`%o^>I;jEbY{#UX?x+oiDo+ zspRp{V|+I0(RW-quMyH~v309L7<bgP`xwZ8Y%mr%bBB!k)6v%4x67k#ibneLF53dM zK^(YE8B+b>3gy86Cx0OhWHONc`&lZcJ7Ds$npmOnW+A49ginT=hbV}?^CudE^D`pj z5oP!pX|3p?XJr(Msg<4e#OtPr@N-2>aD#^!95Vy}n=|rRXkaMAS+?MPMR?@W-ISA9 z7>vml^Yb{0yXU_`8~|J#_f)ptEbfMXK&Vfgmblu`I+|zKHd`)~cdI++K3tpGSxEg+ zB2~JXajZ*smdhtM{DXBFW&UwMgb!HlD4bXHFGLiErQ3A1gO()2%Gr_}(S{Vies#~o zq5>Pf<CUhPxuVq~i_u96v<dLL?y7KUe-x3#wG_!1*ZOJm;1~}ejk7=K{ah8rb&+jw zSggWAF$H#RQ$}0U-gWn1F|D)8ty$NfCqy)}o~tmWi;OBK<WDJnZRD7U_5}AQ?NXpp zs556?^CxgJ*^!-9=-%>+ch0N0JfW5N0cC6%i*E+;;%DUqMJf!G*(fd#4C^P6xr43| zLn`jst2-G}nxMF!fdmDsIJZ%kuTElJDb#-I^jNW4!dkIdenxDaOb}}gi@B_6@bxDV z3y=zEBKVTp3Lfx(30oLV0``;*rl>|*veyevjjTZ=Ax9SuS)_ifeEQMb(7HNEynOR+ zB9m52CRz71<{s3k4Hh9HZs#yTTsc7Xv&Q;mJ=0_u(k5t;qBaIV@-u=r5z5fy3-9&6 zbZ=uJ@$Z;BZu{}vQPlliC&Q=a4q_xF!Hnenn9-~^===q;<D{&xlf<gfGex)BiCF0G z=x)jFpeHfCkEmN;7Z3P@Z@U`UM3c%@n00<iL?WLEuilTO@VN{0zyl8!>jl@wJqeEk z=-M|72lOI7(U*xVg}b>nnw|K&iWh8X*cWuZ9!iB(Csu|I^_=iWq->h;ad3NTf^lmP zC4AQPDq2Xy0^O%2RjuK|vXas9i%G&G`W;8>$%3n|od<fa&4Mlf1t#O?LiHnMj6~Qo zFD+XdNswbYJt<k^%rV4?uo`ngAmf>Uxm#>+qOX!Jv%A<N`!4Psi&ifz%VS+tWkfP` zpKH3@qASUB&TyF)B+rYM86tc`m>WC@S6r8fZRn0J{kRIzy-$ZHF8Pcz_RmV_)`R3H zOWpouu@m>op0&&_t59O*OdJ<-g;pFLc|kLR2nr05;Yda>(b78y-7Mw4Ro^fwIZJHY zxA(0&=bzN6`=9-9)v4MTZ1OMW)9HT(V}HYbp>~?(4$5UA4q3WoN7J-MBIxHE_YHy3 zt%pq*0SrT{$(8Nft9p$$z%xY0-|Rs4Izm;j6n_gvHjOYYRRLi*8L~j@1C{`1hptiM z#MCglZ(}DSoRmvJO98?YrN1|1!}nGy-@&y($`2c~A9rwVYSjKsg(E=W^`^UO43sf= zrHsK=WDMrqyaMy*G}k*9>vbM+8VWrdD3{d$Le~<?Q@P4zZIn;NqzgnB^6LSZ>1+pP zf|T0VY2@%M+lr3XHgVhOSVoSmmawQ=2oG8K3q<htq(bJhx^zz0ilDw|@#Zatr7Gv; zmi25WZJ?*vNeZNxI8@ZY*=w&X7hrs5dZ-I}Yj*vJKLOr^O^&NoZ+kL3)>=m&V|A{E zZFD?P4>Bif*i$G4@#qd$Kn0ZnAwS8ULgjcP>`!i|cEY;>5HAEGNWT<cL-?_yRH*ZH zT#6L&C|mp8@44q^v!X@o&&h&5oSBOqDLZf7h#RY+>=v8_#}CRjowlXDA@CFMu@n5{ zBLkvk<TiHMzD93HmN2^a=5JX9-|~JssuwCQ;HUZpo?%BC&RO#`=G`49`^t+iiUYIP zE@Sf?CqxxMBgg~`OReODMO)N2m=unTyl1Je2=g{Dx5m5lB{wnPRYjkT7Vi@^6v}J| zB;yg4(~Pv_dTbYET~*(lTnvhjtqByxOHRsrudXTxghhm@wa}8!#A%>WE-her2o^AT z=EUR|UsN<A#RG~%H+(5MY=#t~H@8WF6E%f*Mtp_2Eupka%oE}gxzup7qPomuG&U#m zpjDhowYo}j*nA!>e`jOSw?Jo5MXdyn6;+0p`PXq>Mx)o9r6mQ<lYRY2V*3}yM(~RU z(1ZGfAvOJk;K8{s4au0CO;r9Ww-1tstV>FGIQ0sc0Tsyn&uG~bS$wjI$AJ8`Wv%_| zHOVQ0*Q&O9^@uD21ywY~V0LP(*wm)s4#XBkYWH+Z8eO?9a>OFJ{h>jKILXLxbwt!z zup;x9WH9H;VBqjfFJ9{J4$XW(G9k)L8}6qR;ybh%g?YU9+x*j_o0mHOWb4Gt85yVV zZ_~!zJ2yzUOudR+THmmkgsd4X`T-S{p6qgoI_UBLy<SE0QcS;w_obM`b&JC?h4iD4 zBbdU_RzvZ1|5nNFFjPim3aO6~(v=ZXuT({b9NB|igH+@JK`4;B&4qvLjIH>H7d@sW z3y6h`n;kpy<$Z2$NuhU+or<PReNPX~&))valx+z&Zjl=FS^C7ZW&$$jFhJ_)&RagZ zHY(BwrLy)HvniG%7umGIh?K;i=UAc%Th6h3FHLIf0swAL&maDY9Lo|?aT>7-)lgKD zb1WCH3M7d=r*bT)qjt80NW$-PEYL#xD=R)eos(lJyBz)LvDfKD3MO(;+gP@uj?<o1 zKh#H)E)~*1pKfz1#exi|=(y-qitk~V&9t0Fre#yvlEJ6k5@_<V3Ra)%+u^61JhUkt z335iJg(oi@LM##}KKL7FP<TA2VUQf6u0G{nh;@rg_{VdyI6d6ZLynL>o%e8456Pdb zv-yDxn-u)2^ucr6hmHqwdzSW_;ta4=p5$H3SY*Re+a?O-4bW+IWfhh5k|vM~9RQtH zU-LubfQRxxHa(>`Af0I?eVfV1$2a$nEixE%G9$i`D|`3nOh_AkJ?rn!pU*PR(S|hN zw@;Ez;eqm9eMrS%poVSoraH4C-!U>P&&$lp_Gk%drSGCW<jyh{9XP$~P-u-vVjbmi z&~~CFiad*>n}`G<%&OBSYy0SC1Ww|sqdf`jc2q^6#nXYdGFSf^W>q6l57b%p3DenZ z4yS`40x&<3tODhC(JbUG7zp+62=U`=;sIThjb0T;O3&Ql46_TYuQ+Om0SfmG=_Tjo zF#F!3?<v_ABsW!<&R8`3Yo%p6+ZN9$b(Wr@>32jKB>zOYb@(0DLt%|PEwWdwsiSBp zre0`Q4M7$x8^bS9j>;(pT!rEObTPK5Sd7-u`Ic?S)?Ng(f3hLzQuMqdwtCpq80fpZ zf1Aq2x4Qy3wq?oN!rJ*uu_$__K_7{vK%;71-q~fLnVP8l^v}_F<Umt{MU4_YDGk*_ z>EJjvBaoLIPqWd_U2RgVa4zA2kkRUH>26^DS-uMKxT!_h$0JfK4pzua@;vzvKj!Y$ zG~d+yRb{c#`O4|QPPVBYez|)4DxiA<JFd2MHhW0*_?{2~^V#D{@l#wLRuxp?Wu`9H zb9TW#WpKoCT~_UxegiQc|Jsi6H~&nIEmZyQN|<~jd$5V2KL4OKS>5E*qZTN(1A|;y zQyKmC<8SFi08-&-{$(D-SIq(NcA#c4f_!OA>JV=w#(IR1B`BezhS)e<%anGaNYbO9 zjD{3wqkIm!D+BE3Ip|^~B+~PUTt@`}_NG+AktDnQz!|Zh5?KCjS(lXs*|%BfA)9AJ zUK!pCr*wx-W6dFjyQQOPq2&}mc<Z^)n;k(Afdy{yweJ<mC9Xh9OvjzsQ>66p^OP1= z^HUNb$j+0#GHGa@cD}-=RQ~Gm!m@JDn>8!W5j)IjS-c^aida5`HQQAe+k^LV-(lPL zvu6@FDNP5J3X6{vg9)thGe{ao{2)l>@9sf=9({z0E2xvO+5hemga;TJX0M=yx>vfP zCWWq!N%nddE;<f>5Mz!bX}aQ}FRPF##$hI>)qZhs(4=f-=0d(EW03AqjH+pdLK{tr zrW5e402zH%=~A*H_1c_-sttlha@=WQ+-=;1YRo!~vyB?DG|rmAXDO(i=PoU@$k}3| zAx`2vfg~w;VyWI$w}bvmoUZXA(_*6jt;P4hUh)2Go7mj)=x>V6S#XEfvK+w?F}1nb zQ5$=4Y=8{BA~yHd)=Kb(Uv_wSFCud`uOmqoUyh1a=MnR|ztwr9_R6px0bL}E)&G5E z<+tJGIIxrW5N5^Gu?CI!ZAAG#=lg8TZd&r3W$^7y3i370<n0Uy8}miye<;Y;`%Ob~ zZR%Jk+%<pdhpg-`lh))XO-cFF!F};Qm6W%df3LNhf6tVh`&e~TkuITdH7LV{rQVts zw*u(fY5_xBrjUtKX)nd&L)iRz;Oso8BuCD^m5GRX5I_cH<P7D3HD!nIX~hMIQU`_j zoHqh%7!MsQGX5<Tw-)EEDfWkDMtSn%9A5-S+fd2;8|6FZr89cy-%v2eH6EsRN( zNG59Y2e+>!j?=M=6RZ%k>ZGqdelEg)w2*pj^FsgUUD#PEt}y39adyW+s7S70L4X#b zzd(!?%kR*I-oYp5Pb82SJC4TW$b%+6=DUgh<HZykHB=4<q$7<yD!(hFn1*kEb<cp) zkH9igNBZxD**g%<h?a%Epoa#q*i5@Z=S@}Ia-~;`w|s>macf>X#x;|fH9Z*EI56P0 zT4?cc=UX0(920|G-7y&G9NX`pfef!54W7>(jYoTGTh=+XHNN7y(I-A#5fq~1r2v*B a=sFwMm@=d|EH>)SA#T^)|NhVa_x}T7>U4Gh literal 0 HcmV?d00001 diff --git a/docs/4.3/dist/js/bootstrap.bundle.min.js b/docs/4.3/dist/js/bootstrap.bundle.min.js new file mode 100644 index 0000000000..0fe9cbcd25 --- /dev/null +++ b/docs/4.3/dist/js/bootstrap.bundle.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap v4.3.0 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("jquery")):"function"==typeof define&&define.amd?define(["exports","jquery"],e):e((t=t||self).bootstrap={},t.jQuery)}(this,function(t,p){"use strict";function i(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function s(t,e,n){return e&&i(t.prototype,e),n&&i(t,n),t}function l(o){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},e=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(e=e.concat(Object.getOwnPropertySymbols(r).filter(function(t){return Object.getOwnPropertyDescriptor(r,t).enumerable}))),e.forEach(function(t){var e,n,i;e=o,i=r[n=t],n in e?Object.defineProperty(e,n,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[n]=i})}return o}p=p&&p.hasOwnProperty("default")?p.default:p;var e="transitionend";function n(t){var e=this,n=!1;return p(this).one(m.TRANSITION_END,function(){n=!0}),setTimeout(function(){n||m.triggerTransitionEnd(e)},t),this}var m={TRANSITION_END:"bsTransitionEnd",getUID:function(t){for(;t+=~~(1e6*Math.random()),document.getElementById(t););return t},getSelectorFromElement:function(t){var e=t.getAttribute("data-target");if(!e||"#"===e){var n=t.getAttribute("href");e=n&&"#"!==n?n.trim():""}try{return document.querySelector(e)?e:null}catch(t){return null}},getTransitionDurationFromElement:function(t){if(!t)return 0;var e=p(t).css("transition-duration"),n=p(t).css("transition-delay"),i=parseFloat(e),o=parseFloat(n);return i||o?(e=e.split(",")[0],n=n.split(",")[0],1e3*(parseFloat(e)+parseFloat(n))):0},reflow:function(t){return t.offsetHeight},triggerTransitionEnd:function(t){p(t).trigger(e)},supportsTransitionEnd:function(){return Boolean(e)},isElement:function(t){return(t[0]||t).nodeType},typeCheckConfig:function(t,e,n){for(var i in n)if(Object.prototype.hasOwnProperty.call(n,i)){var o=n[i],r=e[i],s=r&&m.isElement(r)?"element":(a=r,{}.toString.call(a).match(/\s([a-z]+)/i)[1].toLowerCase());if(!new RegExp(o).test(s))throw new Error(t.toUpperCase()+': Option "'+i+'" provided type "'+s+'" but expected type "'+o+'".')}var a},findShadowRoot:function(t){if(!document.documentElement.attachShadow)return null;if("function"!=typeof t.getRootNode)return t instanceof ShadowRoot?t:t.parentNode?m.findShadowRoot(t.parentNode):null;var e=t.getRootNode();return e instanceof ShadowRoot?e:null}};p.fn.emulateTransitionEnd=n,p.event.special[m.TRANSITION_END]={bindType:e,delegateType:e,handle:function(t){if(p(t.target).is(this))return t.handleObj.handler.apply(this,arguments)}};var o="alert",r="bs.alert",a="."+r,c=p.fn[o],h={CLOSE:"close"+a,CLOSED:"closed"+a,CLICK_DATA_API:"click"+a+".data-api"},u="alert",f="fade",d="show",g=function(){function i(t){this._element=t}var t=i.prototype;return t.close=function(t){var e=this._element;t&&(e=this._getRootElement(t)),this._triggerCloseEvent(e).isDefaultPrevented()||this._removeElement(e)},t.dispose=function(){p.removeData(this._element,r),this._element=null},t._getRootElement=function(t){var e=m.getSelectorFromElement(t),n=!1;return e&&(n=document.querySelector(e)),n||(n=p(t).closest("."+u)[0]),n},t._triggerCloseEvent=function(t){var e=p.Event(h.CLOSE);return p(t).trigger(e),e},t._removeElement=function(e){var n=this;if(p(e).removeClass(d),p(e).hasClass(f)){var t=m.getTransitionDurationFromElement(e);p(e).one(m.TRANSITION_END,function(t){return n._destroyElement(e,t)}).emulateTransitionEnd(t)}else this._destroyElement(e)},t._destroyElement=function(t){p(t).detach().trigger(h.CLOSED).remove()},i._jQueryInterface=function(n){return this.each(function(){var t=p(this),e=t.data(r);e||(e=new i(this),t.data(r,e)),"close"===n&&e[n](this)})},i._handleDismiss=function(e){return function(t){t&&t.preventDefault(),e.close(this)}},s(i,null,[{key:"VERSION",get:function(){return"4.3.0"}}]),i}();p(document).on(h.CLICK_DATA_API,'[data-dismiss="alert"]',g._handleDismiss(new g)),p.fn[o]=g._jQueryInterface,p.fn[o].Constructor=g,p.fn[o].noConflict=function(){return p.fn[o]=c,g._jQueryInterface};var _="button",v="bs.button",y="."+v,E=".data-api",b=p.fn[_],w="active",T="btn",C="focus",S='[data-toggle^="button"]',D='[data-toggle="buttons"]',I='input:not([type="hidden"])',A=".active",O=".btn",N={CLICK_DATA_API:"click"+y+E,FOCUS_BLUR_DATA_API:"focus"+y+E+" blur"+y+E},k=function(){function n(t){this._element=t}var t=n.prototype;return t.toggle=function(){var t=!0,e=!0,n=p(this._element).closest(D)[0];if(n){var i=this._element.querySelector(I);if(i){if("radio"===i.type)if(i.checked&&this._element.classList.contains(w))t=!1;else{var o=n.querySelector(A);o&&p(o).removeClass(w)}if(t){if(i.hasAttribute("disabled")||n.hasAttribute("disabled")||i.classList.contains("disabled")||n.classList.contains("disabled"))return;i.checked=!this._element.classList.contains(w),p(i).trigger("change")}i.focus(),e=!1}}e&&this._element.setAttribute("aria-pressed",!this._element.classList.contains(w)),t&&p(this._element).toggleClass(w)},t.dispose=function(){p.removeData(this._element,v),this._element=null},n._jQueryInterface=function(e){return this.each(function(){var t=p(this).data(v);t||(t=new n(this),p(this).data(v,t)),"toggle"===e&&t[e]()})},s(n,null,[{key:"VERSION",get:function(){return"4.3.0"}}]),n}();p(document).on(N.CLICK_DATA_API,S,function(t){t.preventDefault();var e=t.target;p(e).hasClass(T)||(e=p(e).closest(O)),k._jQueryInterface.call(p(e),"toggle")}).on(N.FOCUS_BLUR_DATA_API,S,function(t){var e=p(t.target).closest(O)[0];p(e).toggleClass(C,/^focus(in)?$/.test(t.type))}),p.fn[_]=k._jQueryInterface,p.fn[_].Constructor=k,p.fn[_].noConflict=function(){return p.fn[_]=b,k._jQueryInterface};var L="carousel",P="bs.carousel",x="."+P,H=".data-api",j=p.fn[L],R={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},F={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},M="next",W="prev",U="left",B="right",q={SLIDE:"slide"+x,SLID:"slid"+x,KEYDOWN:"keydown"+x,MOUSEENTER:"mouseenter"+x,MOUSELEAVE:"mouseleave"+x,TOUCHSTART:"touchstart"+x,TOUCHMOVE:"touchmove"+x,TOUCHEND:"touchend"+x,POINTERDOWN:"pointerdown"+x,POINTERUP:"pointerup"+x,DRAG_START:"dragstart"+x,LOAD_DATA_API:"load"+x+H,CLICK_DATA_API:"click"+x+H},K="carousel",Q="active",Y="slide",V="carousel-item-right",X="carousel-item-left",z="carousel-item-next",G="carousel-item-prev",J="pointer-event",Z=".active",$=".active.carousel-item",tt=".carousel-item",et=".carousel-item img",nt=".carousel-item-next, .carousel-item-prev",it=".carousel-indicators",ot="[data-slide], [data-slide-to]",rt='[data-ride="carousel"]',st={TOUCH:"touch",PEN:"pen"},at=function(){function r(t,e){this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(e),this._element=t,this._indicatorsElement=this._element.querySelector(it),this._touchSupported="ontouchstart"in document.documentElement||0<navigator.maxTouchPoints,this._pointerEvent=Boolean(window.PointerEvent||window.MSPointerEvent),this._addEventListeners()}var t=r.prototype;return t.next=function(){this._isSliding||this._slide(M)},t.nextWhenVisible=function(){!document.hidden&&p(this._element).is(":visible")&&"hidden"!==p(this._element).css("visibility")&&this.next()},t.prev=function(){this._isSliding||this._slide(W)},t.pause=function(t){t||(this._isPaused=!0),this._element.querySelector(nt)&&(m.triggerTransitionEnd(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null},t.cycle=function(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config.interval&&!this._isPaused&&(this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))},t.to=function(t){var e=this;this._activeElement=this._element.querySelector($);var n=this._getItemIndex(this._activeElement);if(!(t>this._items.length-1||t<0))if(this._isSliding)p(this._element).one(q.SLID,function(){return e.to(t)});else{if(n===t)return this.pause(),void this.cycle();var i=n<t?M:W;this._slide(i,this._items[t])}},t.dispose=function(){p(this._element).off(x),p.removeData(this._element,P),this._items=null,this._config=null,this._element=null,this._interval=null,this._isPaused=null,this._isSliding=null,this._activeElement=null,this._indicatorsElement=null},t._getConfig=function(t){return t=l({},R,t),m.typeCheckConfig(L,t,F),t},t._handleSwipe=function(){var t=Math.abs(this.touchDeltaX);if(!(t<=40)){var e=t/this.touchDeltaX;0<e&&this.prev(),e<0&&this.next()}},t._addEventListeners=function(){var e=this;this._config.keyboard&&p(this._element).on(q.KEYDOWN,function(t){return e._keydown(t)}),"hover"===this._config.pause&&p(this._element).on(q.MOUSEENTER,function(t){return e.pause(t)}).on(q.MOUSELEAVE,function(t){return e.cycle(t)}),this._config.touch&&this._addTouchEventListeners()},t._addTouchEventListeners=function(){var n=this;if(this._touchSupported){var e=function(t){n._pointerEvent&&st[t.originalEvent.pointerType.toUpperCase()]?n.touchStartX=t.originalEvent.clientX:n._pointerEvent||(n.touchStartX=t.originalEvent.touches[0].clientX)},i=function(t){n._pointerEvent&&st[t.originalEvent.pointerType.toUpperCase()]&&(n.touchDeltaX=t.originalEvent.clientX-n.touchStartX),n._handleSwipe(),"hover"===n._config.pause&&(n.pause(),n.touchTimeout&&clearTimeout(n.touchTimeout),n.touchTimeout=setTimeout(function(t){return n.cycle(t)},500+n._config.interval))};p(this._element.querySelectorAll(et)).on(q.DRAG_START,function(t){return t.preventDefault()}),this._pointerEvent?(p(this._element).on(q.POINTERDOWN,function(t){return e(t)}),p(this._element).on(q.POINTERUP,function(t){return i(t)}),this._element.classList.add(J)):(p(this._element).on(q.TOUCHSTART,function(t){return e(t)}),p(this._element).on(q.TOUCHMOVE,function(t){var e;(e=t).originalEvent.touches&&1<e.originalEvent.touches.length?n.touchDeltaX=0:n.touchDeltaX=e.originalEvent.touches[0].clientX-n.touchStartX}),p(this._element).on(q.TOUCHEND,function(t){return i(t)}))}},t._keydown=function(t){if(!/input|textarea/i.test(t.target.tagName))switch(t.which){case 37:t.preventDefault(),this.prev();break;case 39:t.preventDefault(),this.next()}},t._getItemIndex=function(t){return this._items=t&&t.parentNode?[].slice.call(t.parentNode.querySelectorAll(tt)):[],this._items.indexOf(t)},t._getItemByDirection=function(t,e){var n=t===M,i=t===W,o=this._getItemIndex(e),r=this._items.length-1;if((i&&0===o||n&&o===r)&&!this._config.wrap)return e;var s=(o+(t===W?-1:1))%this._items.length;return-1===s?this._items[this._items.length-1]:this._items[s]},t._triggerSlideEvent=function(t,e){var n=this._getItemIndex(t),i=this._getItemIndex(this._element.querySelector($)),o=p.Event(q.SLIDE,{relatedTarget:t,direction:e,from:i,to:n});return p(this._element).trigger(o),o},t._setActiveIndicatorElement=function(t){if(this._indicatorsElement){var e=[].slice.call(this._indicatorsElement.querySelectorAll(Z));p(e).removeClass(Q);var n=this._indicatorsElement.children[this._getItemIndex(t)];n&&p(n).addClass(Q)}},t._slide=function(t,e){var n,i,o,r=this,s=this._element.querySelector($),a=this._getItemIndex(s),l=e||s&&this._getItemByDirection(t,s),c=this._getItemIndex(l),h=Boolean(this._interval);if(o=t===M?(n=X,i=z,U):(n=V,i=G,B),l&&p(l).hasClass(Q))this._isSliding=!1;else if(!this._triggerSlideEvent(l,o).isDefaultPrevented()&&s&&l){this._isSliding=!0,h&&this.pause(),this._setActiveIndicatorElement(l);var u=p.Event(q.SLID,{relatedTarget:l,direction:o,from:a,to:c});if(p(this._element).hasClass(Y)){p(l).addClass(i),m.reflow(l),p(s).addClass(n),p(l).addClass(n);var f=parseInt(l.getAttribute("data-interval"),10);this._config.interval=f?(this._config.defaultInterval=this._config.defaultInterval||this._config.interval,f):this._config.defaultInterval||this._config.interval;var d=m.getTransitionDurationFromElement(s);p(s).one(m.TRANSITION_END,function(){p(l).removeClass(n+" "+i).addClass(Q),p(s).removeClass(Q+" "+i+" "+n),r._isSliding=!1,setTimeout(function(){return p(r._element).trigger(u)},0)}).emulateTransitionEnd(d)}else p(s).removeClass(Q),p(l).addClass(Q),this._isSliding=!1,p(this._element).trigger(u);h&&this.cycle()}},r._jQueryInterface=function(i){return this.each(function(){var t=p(this).data(P),e=l({},R,p(this).data());"object"==typeof i&&(e=l({},e,i));var n="string"==typeof i?i:e.slide;if(t||(t=new r(this,e),p(this).data(P,t)),"number"==typeof i)t.to(i);else if("string"==typeof n){if("undefined"==typeof t[n])throw new TypeError('No method named "'+n+'"');t[n]()}else e.interval&&e.ride&&(t.pause(),t.cycle())})},r._dataApiClickHandler=function(t){var e=m.getSelectorFromElement(this);if(e){var n=p(e)[0];if(n&&p(n).hasClass(K)){var i=l({},p(n).data(),p(this).data()),o=this.getAttribute("data-slide-to");o&&(i.interval=!1),r._jQueryInterface.call(p(n),i),o&&p(n).data(P).to(o),t.preventDefault()}}},s(r,null,[{key:"VERSION",get:function(){return"4.3.0"}},{key:"Default",get:function(){return R}}]),r}();p(document).on(q.CLICK_DATA_API,ot,at._dataApiClickHandler),p(window).on(q.LOAD_DATA_API,function(){for(var t=[].slice.call(document.querySelectorAll(rt)),e=0,n=t.length;e<n;e++){var i=p(t[e]);at._jQueryInterface.call(i,i.data())}}),p.fn[L]=at._jQueryInterface,p.fn[L].Constructor=at,p.fn[L].noConflict=function(){return p.fn[L]=j,at._jQueryInterface};var lt="collapse",ct="bs.collapse",ht="."+ct,ut=p.fn[lt],ft={toggle:!0,parent:""},dt={toggle:"boolean",parent:"(string|element)"},pt={SHOW:"show"+ht,SHOWN:"shown"+ht,HIDE:"hide"+ht,HIDDEN:"hidden"+ht,CLICK_DATA_API:"click"+ht+".data-api"},mt="show",gt="collapse",_t="collapsing",vt="collapsed",yt="width",Et="height",bt=".show, .collapsing",wt='[data-toggle="collapse"]',Tt=function(){function a(e,t){this._isTransitioning=!1,this._element=e,this._config=this._getConfig(t),this._triggerArray=[].slice.call(document.querySelectorAll('[data-toggle="collapse"][href="#'+e.id+'"],[data-toggle="collapse"][data-target="#'+e.id+'"]'));for(var n=[].slice.call(document.querySelectorAll(wt)),i=0,o=n.length;i<o;i++){var r=n[i],s=m.getSelectorFromElement(r),a=[].slice.call(document.querySelectorAll(s)).filter(function(t){return t===e});null!==s&&0<a.length&&(this._selector=s,this._triggerArray.push(r))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}var t=a.prototype;return t.toggle=function(){p(this._element).hasClass(mt)?this.hide():this.show()},t.show=function(){var t,e,n=this;if(!this._isTransitioning&&!p(this._element).hasClass(mt)&&(this._parent&&0===(t=[].slice.call(this._parent.querySelectorAll(bt)).filter(function(t){return"string"==typeof n._config.parent?t.getAttribute("data-parent")===n._config.parent:t.classList.contains(gt)})).length&&(t=null),!(t&&(e=p(t).not(this._selector).data(ct))&&e._isTransitioning))){var i=p.Event(pt.SHOW);if(p(this._element).trigger(i),!i.isDefaultPrevented()){t&&(a._jQueryInterface.call(p(t).not(this._selector),"hide"),e||p(t).data(ct,null));var o=this._getDimension();p(this._element).removeClass(gt).addClass(_t),this._element.style[o]=0,this._triggerArray.length&&p(this._triggerArray).removeClass(vt).attr("aria-expanded",!0),this.setTransitioning(!0);var r="scroll"+(o[0].toUpperCase()+o.slice(1)),s=m.getTransitionDurationFromElement(this._element);p(this._element).one(m.TRANSITION_END,function(){p(n._element).removeClass(_t).addClass(gt).addClass(mt),n._element.style[o]="",n.setTransitioning(!1),p(n._element).trigger(pt.SHOWN)}).emulateTransitionEnd(s),this._element.style[o]=this._element[r]+"px"}}},t.hide=function(){var t=this;if(!this._isTransitioning&&p(this._element).hasClass(mt)){var e=p.Event(pt.HIDE);if(p(this._element).trigger(e),!e.isDefaultPrevented()){var n=this._getDimension();this._element.style[n]=this._element.getBoundingClientRect()[n]+"px",m.reflow(this._element),p(this._element).addClass(_t).removeClass(gt).removeClass(mt);var i=this._triggerArray.length;if(0<i)for(var o=0;o<i;o++){var r=this._triggerArray[o],s=m.getSelectorFromElement(r);if(null!==s)p([].slice.call(document.querySelectorAll(s))).hasClass(mt)||p(r).addClass(vt).attr("aria-expanded",!1)}this.setTransitioning(!0);this._element.style[n]="";var a=m.getTransitionDurationFromElement(this._element);p(this._element).one(m.TRANSITION_END,function(){t.setTransitioning(!1),p(t._element).removeClass(_t).addClass(gt).trigger(pt.HIDDEN)}).emulateTransitionEnd(a)}}},t.setTransitioning=function(t){this._isTransitioning=t},t.dispose=function(){p.removeData(this._element,ct),this._config=null,this._parent=null,this._element=null,this._triggerArray=null,this._isTransitioning=null},t._getConfig=function(t){return(t=l({},ft,t)).toggle=Boolean(t.toggle),m.typeCheckConfig(lt,t,dt),t},t._getDimension=function(){return p(this._element).hasClass(yt)?yt:Et},t._getParent=function(){var t,n=this;m.isElement(this._config.parent)?(t=this._config.parent,"undefined"!=typeof this._config.parent.jquery&&(t=this._config.parent[0])):t=document.querySelector(this._config.parent);var e='[data-toggle="collapse"][data-parent="'+this._config.parent+'"]',i=[].slice.call(t.querySelectorAll(e));return p(i).each(function(t,e){n._addAriaAndCollapsedClass(a._getTargetFromElement(e),[e])}),t},t._addAriaAndCollapsedClass=function(t,e){var n=p(t).hasClass(mt);e.length&&p(e).toggleClass(vt,!n).attr("aria-expanded",n)},a._getTargetFromElement=function(t){var e=m.getSelectorFromElement(t);return e?document.querySelector(e):null},a._jQueryInterface=function(i){return this.each(function(){var t=p(this),e=t.data(ct),n=l({},ft,t.data(),"object"==typeof i&&i?i:{});if(!e&&n.toggle&&/show|hide/.test(i)&&(n.toggle=!1),e||(e=new a(this,n),t.data(ct,e)),"string"==typeof i){if("undefined"==typeof e[i])throw new TypeError('No method named "'+i+'"');e[i]()}})},s(a,null,[{key:"VERSION",get:function(){return"4.3.0"}},{key:"Default",get:function(){return ft}}]),a}();p(document).on(pt.CLICK_DATA_API,wt,function(t){"A"===t.currentTarget.tagName&&t.preventDefault();var n=p(this),e=m.getSelectorFromElement(this),i=[].slice.call(document.querySelectorAll(e));p(i).each(function(){var t=p(this),e=t.data(ct)?"toggle":n.data();Tt._jQueryInterface.call(t,e)})}),p.fn[lt]=Tt._jQueryInterface,p.fn[lt].Constructor=Tt,p.fn[lt].noConflict=function(){return p.fn[lt]=ut,Tt._jQueryInterface};for(var Ct="undefined"!=typeof window&&"undefined"!=typeof document,St=["Edge","Trident","Firefox"],Dt=0,It=0;It<St.length;It+=1)if(Ct&&0<=navigator.userAgent.indexOf(St[It])){Dt=1;break}var At=Ct&&window.Promise?function(t){var e=!1;return function(){e||(e=!0,window.Promise.resolve().then(function(){e=!1,t()}))}}:function(t){var e=!1;return function(){e||(e=!0,setTimeout(function(){e=!1,t()},Dt))}};function Ot(t){return t&&"[object Function]"==={}.toString.call(t)}function Nt(t,e){if(1!==t.nodeType)return[];var n=t.ownerDocument.defaultView.getComputedStyle(t,null);return e?n[e]:n}function kt(t){return"HTML"===t.nodeName?t:t.parentNode||t.host}function Lt(t){if(!t)return document.body;switch(t.nodeName){case"HTML":case"BODY":return t.ownerDocument.body;case"#document":return t.body}var e=Nt(t),n=e.overflow,i=e.overflowX,o=e.overflowY;return/(auto|scroll|overlay)/.test(n+o+i)?t:Lt(kt(t))}var Pt=Ct&&!(!window.MSInputMethodContext||!document.documentMode),xt=Ct&&/MSIE 10/.test(navigator.userAgent);function Ht(t){return 11===t?Pt:10===t?xt:Pt||xt}function jt(t){if(!t)return document.documentElement;for(var e=Ht(10)?document.body:null,n=t.offsetParent||null;n===e&&t.nextElementSibling;)n=(t=t.nextElementSibling).offsetParent;var i=n&&n.nodeName;return i&&"BODY"!==i&&"HTML"!==i?-1!==["TH","TD","TABLE"].indexOf(n.nodeName)&&"static"===Nt(n,"position")?jt(n):n:t?t.ownerDocument.documentElement:document.documentElement}function Rt(t){return null!==t.parentNode?Rt(t.parentNode):t}function Ft(t,e){if(!(t&&t.nodeType&&e&&e.nodeType))return document.documentElement;var n=t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING,i=n?t:e,o=n?e:t,r=document.createRange();r.setStart(i,0),r.setEnd(o,0);var s,a,l=r.commonAncestorContainer;if(t!==l&&e!==l||i.contains(o))return"BODY"===(a=(s=l).nodeName)||"HTML"!==a&&jt(s.firstElementChild)!==s?jt(l):l;var c=Rt(t);return c.host?Ft(c.host,e):Ft(t,Rt(e).host)}function Mt(t){var e="top"===(1<arguments.length&&void 0!==arguments[1]?arguments[1]:"top")?"scrollTop":"scrollLeft",n=t.nodeName;if("BODY"!==n&&"HTML"!==n)return t[e];var i=t.ownerDocument.documentElement;return(t.ownerDocument.scrollingElement||i)[e]}function Wt(t,e){var n="x"===e?"Left":"Top",i="Left"===n?"Right":"Bottom";return parseFloat(t["border"+n+"Width"],10)+parseFloat(t["border"+i+"Width"],10)}function Ut(t,e,n,i){return Math.max(e["offset"+t],e["scroll"+t],n["client"+t],n["offset"+t],n["scroll"+t],Ht(10)?parseInt(n["offset"+t])+parseInt(i["margin"+("Height"===t?"Top":"Left")])+parseInt(i["margin"+("Height"===t?"Bottom":"Right")]):0)}function Bt(t){var e=t.body,n=t.documentElement,i=Ht(10)&&getComputedStyle(n);return{height:Ut("Height",e,n,i),width:Ut("Width",e,n,i)}}var qt=function(){function i(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}return function(t,e,n){return e&&i(t.prototype,e),n&&i(t,n),t}}(),Kt=function(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t},Qt=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t};function Yt(t){return Qt({},t,{right:t.left+t.width,bottom:t.top+t.height})}function Vt(t){var e={};try{if(Ht(10)){e=t.getBoundingClientRect();var n=Mt(t,"top"),i=Mt(t,"left");e.top+=n,e.left+=i,e.bottom+=n,e.right+=i}else e=t.getBoundingClientRect()}catch(t){}var o={left:e.left,top:e.top,width:e.right-e.left,height:e.bottom-e.top},r="HTML"===t.nodeName?Bt(t.ownerDocument):{},s=r.width||t.clientWidth||o.right-o.left,a=r.height||t.clientHeight||o.bottom-o.top,l=t.offsetWidth-s,c=t.offsetHeight-a;if(l||c){var h=Nt(t);l-=Wt(h,"x"),c-=Wt(h,"y"),o.width-=l,o.height-=c}return Yt(o)}function Xt(t,e){var n=2<arguments.length&&void 0!==arguments[2]&&arguments[2],i=Ht(10),o="HTML"===e.nodeName,r=Vt(t),s=Vt(e),a=Lt(t),l=Nt(e),c=parseFloat(l.borderTopWidth,10),h=parseFloat(l.borderLeftWidth,10);n&&o&&(s.top=Math.max(s.top,0),s.left=Math.max(s.left,0));var u=Yt({top:r.top-s.top-c,left:r.left-s.left-h,width:r.width,height:r.height});if(u.marginTop=0,u.marginLeft=0,!i&&o){var f=parseFloat(l.marginTop,10),d=parseFloat(l.marginLeft,10);u.top-=c-f,u.bottom-=c-f,u.left-=h-d,u.right-=h-d,u.marginTop=f,u.marginLeft=d}return(i&&!n?e.contains(a):e===a&&"BODY"!==a.nodeName)&&(u=function(t,e){var n=2<arguments.length&&void 0!==arguments[2]&&arguments[2],i=Mt(e,"top"),o=Mt(e,"left"),r=n?-1:1;return t.top+=i*r,t.bottom+=i*r,t.left+=o*r,t.right+=o*r,t}(u,e)),u}function zt(t){if(!t||!t.parentElement||Ht())return document.documentElement;for(var e=t.parentElement;e&&"none"===Nt(e,"transform");)e=e.parentElement;return e||document.documentElement}function Gt(t,e,n,i){var o=4<arguments.length&&void 0!==arguments[4]&&arguments[4],r={top:0,left:0},s=o?zt(t):Ft(t,e);if("viewport"===i)r=function(t){var e=1<arguments.length&&void 0!==arguments[1]&&arguments[1],n=t.ownerDocument.documentElement,i=Xt(t,n),o=Math.max(n.clientWidth,window.innerWidth||0),r=Math.max(n.clientHeight,window.innerHeight||0),s=e?0:Mt(n),a=e?0:Mt(n,"left");return Yt({top:s-i.top+i.marginTop,left:a-i.left+i.marginLeft,width:o,height:r})}(s,o);else{var a=void 0;"scrollParent"===i?"BODY"===(a=Lt(kt(e))).nodeName&&(a=t.ownerDocument.documentElement):a="window"===i?t.ownerDocument.documentElement:i;var l=Xt(a,s,o);if("HTML"!==a.nodeName||function t(e){var n=e.nodeName;if("BODY"===n||"HTML"===n)return!1;if("fixed"===Nt(e,"position"))return!0;var i=kt(e);return!!i&&t(i)}(s))r=l;else{var c=Bt(t.ownerDocument),h=c.height,u=c.width;r.top+=l.top-l.marginTop,r.bottom=h+l.top,r.left+=l.left-l.marginLeft,r.right=u+l.left}}var f="number"==typeof(n=n||0);return r.left+=f?n:n.left||0,r.top+=f?n:n.top||0,r.right-=f?n:n.right||0,r.bottom-=f?n:n.bottom||0,r}function Jt(t,e,i,n,o){var r=5<arguments.length&&void 0!==arguments[5]?arguments[5]:0;if(-1===t.indexOf("auto"))return t;var s=Gt(i,n,r,o),a={top:{width:s.width,height:e.top-s.top},right:{width:s.right-e.right,height:s.height},bottom:{width:s.width,height:s.bottom-e.bottom},left:{width:e.left-s.left,height:s.height}},l=Object.keys(a).map(function(t){return Qt({key:t},a[t],{area:(e=a[t],e.width*e.height)});var e}).sort(function(t,e){return e.area-t.area}),c=l.filter(function(t){var e=t.width,n=t.height;return e>=i.clientWidth&&n>=i.clientHeight}),h=0<c.length?c[0].key:l[0].key,u=t.split("-")[1];return h+(u?"-"+u:"")}function Zt(t,e,n){var i=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return Xt(n,i?zt(e):Ft(e,n),i)}function $t(t){var e=t.ownerDocument.defaultView.getComputedStyle(t),n=parseFloat(e.marginTop||0)+parseFloat(e.marginBottom||0),i=parseFloat(e.marginLeft||0)+parseFloat(e.marginRight||0);return{width:t.offsetWidth+i,height:t.offsetHeight+n}}function te(t){var e={left:"right",right:"left",bottom:"top",top:"bottom"};return t.replace(/left|right|bottom|top/g,function(t){return e[t]})}function ee(t,e,n){n=n.split("-")[0];var i=$t(t),o={width:i.width,height:i.height},r=-1!==["right","left"].indexOf(n),s=r?"top":"left",a=r?"left":"top",l=r?"height":"width",c=r?"width":"height";return o[s]=e[s]+e[l]/2-i[l]/2,o[a]=n===a?e[a]-i[c]:e[te(a)],o}function ne(t,e){return Array.prototype.find?t.find(e):t.filter(e)[0]}function ie(t,n,e){return(void 0===e?t:t.slice(0,function(t,e,n){if(Array.prototype.findIndex)return t.findIndex(function(t){return t[e]===n});var i=ne(t,function(t){return t[e]===n});return t.indexOf(i)}(t,"name",e))).forEach(function(t){t.function&&console.warn("`modifier.function` is deprecated, use `modifier.fn`!");var e=t.function||t.fn;t.enabled&&Ot(e)&&(n.offsets.popper=Yt(n.offsets.popper),n.offsets.reference=Yt(n.offsets.reference),n=e(n,t))}),n}function oe(t,n){return t.some(function(t){var e=t.name;return t.enabled&&e===n})}function re(t){for(var e=[!1,"ms","Webkit","Moz","O"],n=t.charAt(0).toUpperCase()+t.slice(1),i=0;i<e.length;i++){var o=e[i],r=o?""+o+n:t;if("undefined"!=typeof document.body.style[r])return r}return null}function se(t){var e=t.ownerDocument;return e?e.defaultView:window}function ae(t,e,n,i){n.updateBound=i,se(t).addEventListener("resize",n.updateBound,{passive:!0});var o=Lt(t);return function t(e,n,i,o){var r="BODY"===e.nodeName,s=r?e.ownerDocument.defaultView:e;s.addEventListener(n,i,{passive:!0}),r||t(Lt(s.parentNode),n,i,o),o.push(s)}(o,"scroll",n.updateBound,n.scrollParents),n.scrollElement=o,n.eventsEnabled=!0,n}function le(){var t,e;this.state.eventsEnabled&&(cancelAnimationFrame(this.scheduleUpdate),this.state=(t=this.reference,e=this.state,se(t).removeEventListener("resize",e.updateBound),e.scrollParents.forEach(function(t){t.removeEventListener("scroll",e.updateBound)}),e.updateBound=null,e.scrollParents=[],e.scrollElement=null,e.eventsEnabled=!1,e))}function ce(t){return""!==t&&!isNaN(parseFloat(t))&&isFinite(t)}function he(n,i){Object.keys(i).forEach(function(t){var e="";-1!==["width","height","top","right","bottom","left"].indexOf(t)&&ce(i[t])&&(e="px"),n.style[t]=i[t]+e})}var ue=Ct&&/Firefox/i.test(navigator.userAgent);function fe(t,e,n){var i=ne(t,function(t){return t.name===e}),o=!!i&&t.some(function(t){return t.name===n&&t.enabled&&t.order<i.order});if(!o){var r="`"+e+"`",s="`"+n+"`";console.warn(s+" modifier is required by "+r+" modifier in order to work, be sure to include it before "+r+"!")}return o}var de=["auto-start","auto","auto-end","top-start","top","top-end","right-start","right","right-end","bottom-end","bottom","bottom-start","left-end","left","left-start"],pe=de.slice(3);function me(t){var e=1<arguments.length&&void 0!==arguments[1]&&arguments[1],n=pe.indexOf(t),i=pe.slice(n+1).concat(pe.slice(0,n));return e?i.reverse():i}var ge="flip",_e="clockwise",ve="counterclockwise";function ye(t,o,r,e){var s=[0,0],a=-1!==["right","left"].indexOf(e),n=t.split(/(\+|\-)/).map(function(t){return t.trim()}),i=n.indexOf(ne(n,function(t){return-1!==t.search(/,|\s/)}));n[i]&&-1===n[i].indexOf(",")&&console.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");var l=/\s*,\s*|\s+/,c=-1!==i?[n.slice(0,i).concat([n[i].split(l)[0]]),[n[i].split(l)[1]].concat(n.slice(i+1))]:[n];return(c=c.map(function(t,e){var n=(1===e?!a:a)?"height":"width",i=!1;return t.reduce(function(t,e){return""===t[t.length-1]&&-1!==["+","-"].indexOf(e)?(t[t.length-1]=e,i=!0,t):i?(t[t.length-1]+=e,i=!1,t):t.concat(e)},[]).map(function(t){return function(t,e,n,i){var o=t.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),r=+o[1],s=o[2];if(!r)return t;if(0!==s.indexOf("%"))return"vh"!==s&&"vw"!==s?r:("vh"===s?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0))/100*r;var a=void 0;switch(s){case"%p":a=n;break;case"%":case"%r":default:a=i}return Yt(a)[e]/100*r}(t,n,o,r)})})).forEach(function(n,i){n.forEach(function(t,e){ce(t)&&(s[i]+=t*("-"===n[e-1]?-1:1))})}),s}var Ee={placement:"bottom",positionFixed:!1,eventsEnabled:!0,removeOnDestroy:!1,onCreate:function(){},onUpdate:function(){},modifiers:{shift:{order:100,enabled:!0,fn:function(t){var e=t.placement,n=e.split("-")[0],i=e.split("-")[1];if(i){var o=t.offsets,r=o.reference,s=o.popper,a=-1!==["bottom","top"].indexOf(n),l=a?"left":"top",c=a?"width":"height",h={start:Kt({},l,r[l]),end:Kt({},l,r[l]+r[c]-s[c])};t.offsets.popper=Qt({},s,h[i])}return t}},offset:{order:200,enabled:!0,fn:function(t,e){var n=e.offset,i=t.placement,o=t.offsets,r=o.popper,s=o.reference,a=i.split("-")[0],l=void 0;return l=ce(+n)?[+n,0]:ye(n,r,s,a),"left"===a?(r.top+=l[0],r.left-=l[1]):"right"===a?(r.top+=l[0],r.left+=l[1]):"top"===a?(r.left+=l[0],r.top-=l[1]):"bottom"===a&&(r.left+=l[0],r.top+=l[1]),t.popper=r,t},offset:0},preventOverflow:{order:300,enabled:!0,fn:function(t,i){var e=i.boundariesElement||jt(t.instance.popper);t.instance.reference===e&&(e=jt(e));var n=re("transform"),o=t.instance.popper.style,r=o.top,s=o.left,a=o[n];o.top="",o.left="",o[n]="";var l=Gt(t.instance.popper,t.instance.reference,i.padding,e,t.positionFixed);o.top=r,o.left=s,o[n]=a,i.boundaries=l;var c=i.priority,h=t.offsets.popper,u={primary:function(t){var e=h[t];return h[t]<l[t]&&!i.escapeWithReference&&(e=Math.max(h[t],l[t])),Kt({},t,e)},secondary:function(t){var e="right"===t?"left":"top",n=h[e];return h[t]>l[t]&&!i.escapeWithReference&&(n=Math.min(h[e],l[t]-("right"===t?h.width:h.height))),Kt({},e,n)}};return c.forEach(function(t){var e=-1!==["left","top"].indexOf(t)?"primary":"secondary";h=Qt({},h,u[e](t))}),t.offsets.popper=h,t},priority:["left","right","top","bottom"],padding:5,boundariesElement:"scrollParent"},keepTogether:{order:400,enabled:!0,fn:function(t){var e=t.offsets,n=e.popper,i=e.reference,o=t.placement.split("-")[0],r=Math.floor,s=-1!==["top","bottom"].indexOf(o),a=s?"right":"bottom",l=s?"left":"top",c=s?"width":"height";return n[a]<r(i[l])&&(t.offsets.popper[l]=r(i[l])-n[c]),n[l]>r(i[a])&&(t.offsets.popper[l]=r(i[a])),t}},arrow:{order:500,enabled:!0,fn:function(t,e){var n;if(!fe(t.instance.modifiers,"arrow","keepTogether"))return t;var i=e.element;if("string"==typeof i){if(!(i=t.instance.popper.querySelector(i)))return t}else if(!t.instance.popper.contains(i))return console.warn("WARNING: `arrow.element` must be child of its popper element!"),t;var o=t.placement.split("-")[0],r=t.offsets,s=r.popper,a=r.reference,l=-1!==["left","right"].indexOf(o),c=l?"height":"width",h=l?"Top":"Left",u=h.toLowerCase(),f=l?"left":"top",d=l?"bottom":"right",p=$t(i)[c];a[d]-p<s[u]&&(t.offsets.popper[u]-=s[u]-(a[d]-p)),a[u]+p>s[d]&&(t.offsets.popper[u]+=a[u]+p-s[d]),t.offsets.popper=Yt(t.offsets.popper);var m=a[u]+a[c]/2-p/2,g=Nt(t.instance.popper),_=parseFloat(g["margin"+h],10),v=parseFloat(g["border"+h+"Width"],10),y=m-t.offsets.popper[u]-_-v;return y=Math.max(Math.min(s[c]-p,y),0),t.arrowElement=i,t.offsets.arrow=(Kt(n={},u,Math.round(y)),Kt(n,f,""),n),t},element:"[x-arrow]"},flip:{order:600,enabled:!0,fn:function(p,m){if(oe(p.instance.modifiers,"inner"))return p;if(p.flipped&&p.placement===p.originalPlacement)return p;var g=Gt(p.instance.popper,p.instance.reference,m.padding,m.boundariesElement,p.positionFixed),_=p.placement.split("-")[0],v=te(_),y=p.placement.split("-")[1]||"",E=[];switch(m.behavior){case ge:E=[_,v];break;case _e:E=me(_);break;case ve:E=me(_,!0);break;default:E=m.behavior}return E.forEach(function(t,e){if(_!==t||E.length===e+1)return p;_=p.placement.split("-")[0],v=te(_);var n,i=p.offsets.popper,o=p.offsets.reference,r=Math.floor,s="left"===_&&r(i.right)>r(o.left)||"right"===_&&r(i.left)<r(o.right)||"top"===_&&r(i.bottom)>r(o.top)||"bottom"===_&&r(i.top)<r(o.bottom),a=r(i.left)<r(g.left),l=r(i.right)>r(g.right),c=r(i.top)<r(g.top),h=r(i.bottom)>r(g.bottom),u="left"===_&&a||"right"===_&&l||"top"===_&&c||"bottom"===_&&h,f=-1!==["top","bottom"].indexOf(_),d=!!m.flipVariations&&(f&&"start"===y&&a||f&&"end"===y&&l||!f&&"start"===y&&c||!f&&"end"===y&&h);(s||u||d)&&(p.flipped=!0,(s||u)&&(_=E[e+1]),d&&(y="end"===(n=y)?"start":"start"===n?"end":n),p.placement=_+(y?"-"+y:""),p.offsets.popper=Qt({},p.offsets.popper,ee(p.instance.popper,p.offsets.reference,p.placement)),p=ie(p.instance.modifiers,p,"flip"))}),p},behavior:"flip",padding:5,boundariesElement:"viewport"},inner:{order:700,enabled:!1,fn:function(t){var e=t.placement,n=e.split("-")[0],i=t.offsets,o=i.popper,r=i.reference,s=-1!==["left","right"].indexOf(n),a=-1===["top","left"].indexOf(n);return o[s?"left":"top"]=r[n]-(a?o[s?"width":"height"]:0),t.placement=te(e),t.offsets.popper=Yt(o),t}},hide:{order:800,enabled:!0,fn:function(t){if(!fe(t.instance.modifiers,"hide","preventOverflow"))return t;var e=t.offsets.reference,n=ne(t.instance.modifiers,function(t){return"preventOverflow"===t.name}).boundaries;if(e.bottom<n.top||e.left>n.right||e.top>n.bottom||e.right<n.left){if(!0===t.hide)return t;t.hide=!0,t.attributes["x-out-of-boundaries"]=""}else{if(!1===t.hide)return t;t.hide=!1,t.attributes["x-out-of-boundaries"]=!1}return t}},computeStyle:{order:850,enabled:!0,fn:function(t,e){var n=e.x,i=e.y,o=t.offsets.popper,r=ne(t.instance.modifiers,function(t){return"applyStyle"===t.name}).gpuAcceleration;void 0!==r&&console.warn("WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!");var s,a,l,c,h,u,f,d,p,m,g,_,v,y,E=void 0!==r?r:e.gpuAcceleration,b=jt(t.instance.popper),w=Vt(b),T={position:o.position},C=(s=t,a=window.devicePixelRatio<2||!ue,l=s.offsets,c=l.popper,h=l.reference,u=Math.round,f=Math.floor,d=function(t){return t},p=u(h.width),m=u(c.width),g=-1!==["left","right"].indexOf(s.placement),_=-1!==s.placement.indexOf("-"),y=a?u:d,{left:(v=a?g||_||p%2==m%2?u:f:d)(p%2==1&&m%2==1&&!_&&a?c.left-1:c.left),top:y(c.top),bottom:y(c.bottom),right:v(c.right)}),S="bottom"===n?"top":"bottom",D="right"===i?"left":"right",I=re("transform"),A=void 0,O=void 0;if(O="bottom"===S?"HTML"===b.nodeName?-b.clientHeight+C.bottom:-w.height+C.bottom:C.top,A="right"===D?"HTML"===b.nodeName?-b.clientWidth+C.right:-w.width+C.right:C.left,E&&I)T[I]="translate3d("+A+"px, "+O+"px, 0)",T[S]=0,T[D]=0,T.willChange="transform";else{var N="bottom"===S?-1:1,k="right"===D?-1:1;T[S]=O*N,T[D]=A*k,T.willChange=S+", "+D}var L={"x-placement":t.placement};return t.attributes=Qt({},L,t.attributes),t.styles=Qt({},T,t.styles),t.arrowStyles=Qt({},t.offsets.arrow,t.arrowStyles),t},gpuAcceleration:!0,x:"bottom",y:"right"},applyStyle:{order:900,enabled:!0,fn:function(t){var e,n;return he(t.instance.popper,t.styles),e=t.instance.popper,n=t.attributes,Object.keys(n).forEach(function(t){!1!==n[t]?e.setAttribute(t,n[t]):e.removeAttribute(t)}),t.arrowElement&&Object.keys(t.arrowStyles).length&&he(t.arrowElement,t.arrowStyles),t},onLoad:function(t,e,n,i,o){var r=Zt(o,e,t,n.positionFixed),s=Jt(n.placement,r,e,t,n.modifiers.flip.boundariesElement,n.modifiers.flip.padding);return e.setAttribute("x-placement",s),he(e,{position:n.positionFixed?"fixed":"absolute"}),n},gpuAcceleration:void 0}}},be=function(){function r(t,e){var n=this,i=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,r),this.scheduleUpdate=function(){return requestAnimationFrame(n.update)},this.update=At(this.update.bind(this)),this.options=Qt({},r.Defaults,i),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=t&&t.jquery?t[0]:t,this.popper=e&&e.jquery?e[0]:e,this.options.modifiers={},Object.keys(Qt({},r.Defaults.modifiers,i.modifiers)).forEach(function(t){n.options.modifiers[t]=Qt({},r.Defaults.modifiers[t]||{},i.modifiers?i.modifiers[t]:{})}),this.modifiers=Object.keys(this.options.modifiers).map(function(t){return Qt({name:t},n.options.modifiers[t])}).sort(function(t,e){return t.order-e.order}),this.modifiers.forEach(function(t){t.enabled&&Ot(t.onLoad)&&t.onLoad(n.reference,n.popper,n.options,t,n.state)}),this.update();var o=this.options.eventsEnabled;o&&this.enableEventListeners(),this.state.eventsEnabled=o}return qt(r,[{key:"update",value:function(){return function(){if(!this.state.isDestroyed){var t={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};t.offsets.reference=Zt(this.state,this.popper,this.reference,this.options.positionFixed),t.placement=Jt(this.options.placement,t.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),t.originalPlacement=t.placement,t.positionFixed=this.options.positionFixed,t.offsets.popper=ee(this.popper,t.offsets.reference,t.placement),t.offsets.popper.position=this.options.positionFixed?"fixed":"absolute",t=ie(this.modifiers,t),this.state.isCreated?this.options.onUpdate(t):(this.state.isCreated=!0,this.options.onCreate(t))}}.call(this)}},{key:"destroy",value:function(){return function(){return this.state.isDestroyed=!0,oe(this.modifiers,"applyStyle")&&(this.popper.removeAttribute("x-placement"),this.popper.style.position="",this.popper.style.top="",this.popper.style.left="",this.popper.style.right="",this.popper.style.bottom="",this.popper.style.willChange="",this.popper.style[re("transform")]=""),this.disableEventListeners(),this.options.removeOnDestroy&&this.popper.parentNode.removeChild(this.popper),this}.call(this)}},{key:"enableEventListeners",value:function(){return function(){this.state.eventsEnabled||(this.state=ae(this.reference,this.options,this.state,this.scheduleUpdate))}.call(this)}},{key:"disableEventListeners",value:function(){return le.call(this)}}]),r}();be.Utils=("undefined"!=typeof window?window:global).PopperUtils,be.placements=de,be.Defaults=Ee;var we="dropdown",Te="bs.dropdown",Ce="."+Te,Se=".data-api",De=p.fn[we],Ie=new RegExp("38|40|27"),Ae={HIDE:"hide"+Ce,HIDDEN:"hidden"+Ce,SHOW:"show"+Ce,SHOWN:"shown"+Ce,CLICK:"click"+Ce,CLICK_DATA_API:"click"+Ce+Se,KEYDOWN_DATA_API:"keydown"+Ce+Se,KEYUP_DATA_API:"keyup"+Ce+Se},Oe="disabled",Ne="show",ke="dropup",Le="dropright",Pe="dropleft",xe="dropdown-menu-right",He="position-static",je='[data-toggle="dropdown"]',Re=".dropdown form",Fe=".dropdown-menu",Me=".navbar-nav",We=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",Ue="top-start",Be="top-end",qe="bottom-start",Ke="bottom-end",Qe="right-start",Ye="left-start",Ve={offset:0,flip:!0,boundary:"scrollParent",reference:"toggle",display:"dynamic"},Xe={offset:"(number|string|function)",flip:"boolean",boundary:"(string|element)",reference:"(string|element)",display:"string"},ze=function(){function c(t,e){this._element=t,this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}var t=c.prototype;return t.toggle=function(){if(!this._element.disabled&&!p(this._element).hasClass(Oe)){var t=c._getParentFromElement(this._element),e=p(this._menu).hasClass(Ne);if(c._clearMenus(),!e){var n={relatedTarget:this._element},i=p.Event(Ae.SHOW,n);if(p(t).trigger(i),!i.isDefaultPrevented()){if(!this._inNavbar){if("undefined"==typeof be)throw new TypeError("Bootstrap's dropdowns require Popper.js (https://popper.js.org/)");var o=this._element;"parent"===this._config.reference?o=t:m.isElement(this._config.reference)&&(o=this._config.reference,"undefined"!=typeof this._config.reference.jquery&&(o=this._config.reference[0])),"scrollParent"!==this._config.boundary&&p(t).addClass(He),this._popper=new be(o,this._menu,this._getPopperConfig())}"ontouchstart"in document.documentElement&&0===p(t).closest(Me).length&&p(document.body).children().on("mouseover",null,p.noop),this._element.focus(),this._element.setAttribute("aria-expanded",!0),p(this._menu).toggleClass(Ne),p(t).toggleClass(Ne).trigger(p.Event(Ae.SHOWN,n))}}}},t.show=function(){if(!(this._element.disabled||p(this._element).hasClass(Oe)||p(this._menu).hasClass(Ne))){var t={relatedTarget:this._element},e=p.Event(Ae.SHOW,t),n=c._getParentFromElement(this._element);p(n).trigger(e),e.isDefaultPrevented()||(p(this._menu).toggleClass(Ne),p(n).toggleClass(Ne).trigger(p.Event(Ae.SHOWN,t)))}},t.hide=function(){if(!this._element.disabled&&!p(this._element).hasClass(Oe)&&p(this._menu).hasClass(Ne)){var t={relatedTarget:this._element},e=p.Event(Ae.HIDE,t),n=c._getParentFromElement(this._element);p(n).trigger(e),e.isDefaultPrevented()||(p(this._menu).toggleClass(Ne),p(n).toggleClass(Ne).trigger(p.Event(Ae.HIDDEN,t)))}},t.dispose=function(){p.removeData(this._element,Te),p(this._element).off(Ce),this._element=null,(this._menu=null)!==this._popper&&(this._popper.destroy(),this._popper=null)},t.update=function(){this._inNavbar=this._detectNavbar(),null!==this._popper&&this._popper.scheduleUpdate()},t._addEventListeners=function(){var e=this;p(this._element).on(Ae.CLICK,function(t){t.preventDefault(),t.stopPropagation(),e.toggle()})},t._getConfig=function(t){return t=l({},this.constructor.Default,p(this._element).data(),t),m.typeCheckConfig(we,t,this.constructor.DefaultType),t},t._getMenuElement=function(){if(!this._menu){var t=c._getParentFromElement(this._element);t&&(this._menu=t.querySelector(Fe))}return this._menu},t._getPlacement=function(){var t=p(this._element.parentNode),e=qe;return t.hasClass(ke)?(e=Ue,p(this._menu).hasClass(xe)&&(e=Be)):t.hasClass(Le)?e=Qe:t.hasClass(Pe)?e=Ye:p(this._menu).hasClass(xe)&&(e=Ke),e},t._detectNavbar=function(){return 0<p(this._element).closest(".navbar").length},t._getOffset=function(){var e=this,t={};return"function"==typeof this._config.offset?t.fn=function(t){return t.offsets=l({},t.offsets,e._config.offset(t.offsets,e._element)||{}),t}:t.offset=this._config.offset,t},t._getPopperConfig=function(){var t={placement:this._getPlacement(),modifiers:{offset:this._getOffset(),flip:{enabled:this._config.flip},preventOverflow:{boundariesElement:this._config.boundary}}};return"static"===this._config.display&&(t.modifiers.applyStyle={enabled:!1}),t},c._jQueryInterface=function(e){return this.each(function(){var t=p(this).data(Te);if(t||(t=new c(this,"object"==typeof e?e:null),p(this).data(Te,t)),"string"==typeof e){if("undefined"==typeof t[e])throw new TypeError('No method named "'+e+'"');t[e]()}})},c._clearMenus=function(t){if(!t||3!==t.which&&("keyup"!==t.type||9===t.which))for(var e=[].slice.call(document.querySelectorAll(je)),n=0,i=e.length;n<i;n++){var o=c._getParentFromElement(e[n]),r=p(e[n]).data(Te),s={relatedTarget:e[n]};if(t&&"click"===t.type&&(s.clickEvent=t),r){var a=r._menu;if(p(o).hasClass(Ne)&&!(t&&("click"===t.type&&/input|textarea/i.test(t.target.tagName)||"keyup"===t.type&&9===t.which)&&p.contains(o,t.target))){var l=p.Event(Ae.HIDE,s);p(o).trigger(l),l.isDefaultPrevented()||("ontouchstart"in document.documentElement&&p(document.body).children().off("mouseover",null,p.noop),e[n].setAttribute("aria-expanded","false"),p(a).removeClass(Ne),p(o).removeClass(Ne).trigger(p.Event(Ae.HIDDEN,s)))}}}},c._getParentFromElement=function(t){var e,n=m.getSelectorFromElement(t);return n&&(e=document.querySelector(n)),e||t.parentNode},c._dataApiKeydownHandler=function(t){if((/input|textarea/i.test(t.target.tagName)?!(32===t.which||27!==t.which&&(40!==t.which&&38!==t.which||p(t.target).closest(Fe).length)):Ie.test(t.which))&&(t.preventDefault(),t.stopPropagation(),!this.disabled&&!p(this).hasClass(Oe))){var e=c._getParentFromElement(this),n=p(e).hasClass(Ne);if(n&&(!n||27!==t.which&&32!==t.which)){var i=[].slice.call(e.querySelectorAll(We));if(0!==i.length){var o=i.indexOf(t.target);38===t.which&&0<o&&o--,40===t.which&&o<i.length-1&&o++,o<0&&(o=0),i[o].focus()}}else{if(27===t.which){var r=e.querySelector(je);p(r).trigger("focus")}p(this).trigger("click")}}},s(c,null,[{key:"VERSION",get:function(){return"4.3.0"}},{key:"Default",get:function(){return Ve}},{key:"DefaultType",get:function(){return Xe}}]),c}();p(document).on(Ae.KEYDOWN_DATA_API,je,ze._dataApiKeydownHandler).on(Ae.KEYDOWN_DATA_API,Fe,ze._dataApiKeydownHandler).on(Ae.CLICK_DATA_API+" "+Ae.KEYUP_DATA_API,ze._clearMenus).on(Ae.CLICK_DATA_API,je,function(t){t.preventDefault(),t.stopPropagation(),ze._jQueryInterface.call(p(this),"toggle")}).on(Ae.CLICK_DATA_API,Re,function(t){t.stopPropagation()}),p.fn[we]=ze._jQueryInterface,p.fn[we].Constructor=ze,p.fn[we].noConflict=function(){return p.fn[we]=De,ze._jQueryInterface};var Ge="modal",Je="bs.modal",Ze="."+Je,$e=p.fn[Ge],tn={backdrop:!0,keyboard:!0,focus:!0,show:!0},en={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean",show:"boolean"},nn={HIDE:"hide"+Ze,HIDDEN:"hidden"+Ze,SHOW:"show"+Ze,SHOWN:"shown"+Ze,FOCUSIN:"focusin"+Ze,RESIZE:"resize"+Ze,CLICK_DISMISS:"click.dismiss"+Ze,KEYDOWN_DISMISS:"keydown.dismiss"+Ze,MOUSEUP_DISMISS:"mouseup.dismiss"+Ze,MOUSEDOWN_DISMISS:"mousedown.dismiss"+Ze,CLICK_DATA_API:"click"+Ze+".data-api"},on="modal-dialog-scrollable",rn="modal-scrollbar-measure",sn="modal-backdrop",an="modal-open",ln="fade",cn="show",hn=".modal-dialog",un=".modal-body",fn='[data-toggle="modal"]',dn='[data-dismiss="modal"]',pn=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",mn=".sticky-top",gn=function(){function o(t,e){this._config=this._getConfig(e),this._element=t,this._dialog=t.querySelector(hn),this._backdrop=null,this._isShown=!1,this._isBodyOverflowing=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollbarWidth=0}var t=o.prototype;return t.toggle=function(t){return this._isShown?this.hide():this.show(t)},t.show=function(t){var e=this;if(!this._isShown&&!this._isTransitioning){p(this._element).hasClass(ln)&&(this._isTransitioning=!0);var n=p.Event(nn.SHOW,{relatedTarget:t});p(this._element).trigger(n),this._isShown||n.isDefaultPrevented()||(this._isShown=!0,this._checkScrollbar(),this._setScrollbar(),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),p(this._element).on(nn.CLICK_DISMISS,dn,function(t){return e.hide(t)}),p(this._dialog).on(nn.MOUSEDOWN_DISMISS,function(){p(e._element).one(nn.MOUSEUP_DISMISS,function(t){p(t.target).is(e._element)&&(e._ignoreBackdropClick=!0)})}),this._showBackdrop(function(){return e._showElement(t)}))}},t.hide=function(t){var e=this;if(t&&t.preventDefault(),this._isShown&&!this._isTransitioning){var n=p.Event(nn.HIDE);if(p(this._element).trigger(n),this._isShown&&!n.isDefaultPrevented()){this._isShown=!1;var i=p(this._element).hasClass(ln);if(i&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),p(document).off(nn.FOCUSIN),p(this._element).removeClass(cn),p(this._element).off(nn.CLICK_DISMISS),p(this._dialog).off(nn.MOUSEDOWN_DISMISS),i){var o=m.getTransitionDurationFromElement(this._element);p(this._element).one(m.TRANSITION_END,function(t){return e._hideModal(t)}).emulateTransitionEnd(o)}else this._hideModal()}}},t.dispose=function(){[window,this._element,this._dialog].forEach(function(t){return p(t).off(Ze)}),p(document).off(nn.FOCUSIN),p.removeData(this._element,Je),this._config=null,this._element=null,this._dialog=null,this._backdrop=null,this._isShown=null,this._isBodyOverflowing=null,this._ignoreBackdropClick=null,this._isTransitioning=null,this._scrollbarWidth=null},t.handleUpdate=function(){this._adjustDialog()},t._getConfig=function(t){return t=l({},tn,t),m.typeCheckConfig(Ge,t,en),t},t._showElement=function(t){var e=this,n=p(this._element).hasClass(ln);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),p(this._dialog).hasClass(on)?this._dialog.querySelector(un).scrollTop=0:this._element.scrollTop=0,n&&m.reflow(this._element),p(this._element).addClass(cn),this._config.focus&&this._enforceFocus();var i=p.Event(nn.SHOWN,{relatedTarget:t}),o=function(){e._config.focus&&e._element.focus(),e._isTransitioning=!1,p(e._element).trigger(i)};if(n){var r=m.getTransitionDurationFromElement(this._dialog);p(this._dialog).one(m.TRANSITION_END,o).emulateTransitionEnd(r)}else o()},t._enforceFocus=function(){var e=this;p(document).off(nn.FOCUSIN).on(nn.FOCUSIN,function(t){document!==t.target&&e._element!==t.target&&0===p(e._element).has(t.target).length&&e._element.focus()})},t._setEscapeEvent=function(){var e=this;this._isShown&&this._config.keyboard?p(this._element).on(nn.KEYDOWN_DISMISS,function(t){27===t.which&&(t.preventDefault(),e.hide())}):this._isShown||p(this._element).off(nn.KEYDOWN_DISMISS)},t._setResizeEvent=function(){var e=this;this._isShown?p(window).on(nn.RESIZE,function(t){return e.handleUpdate(t)}):p(window).off(nn.RESIZE)},t._hideModal=function(){var t=this;this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._isTransitioning=!1,this._showBackdrop(function(){p(document.body).removeClass(an),t._resetAdjustments(),t._resetScrollbar(),p(t._element).trigger(nn.HIDDEN)})},t._removeBackdrop=function(){this._backdrop&&(p(this._backdrop).remove(),this._backdrop=null)},t._showBackdrop=function(t){var e=this,n=p(this._element).hasClass(ln)?ln:"";if(this._isShown&&this._config.backdrop){if(this._backdrop=document.createElement("div"),this._backdrop.className=sn,n&&this._backdrop.classList.add(n),p(this._backdrop).appendTo(document.body),p(this._element).on(nn.CLICK_DISMISS,function(t){e._ignoreBackdropClick?e._ignoreBackdropClick=!1:t.target===t.currentTarget&&("static"===e._config.backdrop?e._element.focus():e.hide())}),n&&m.reflow(this._backdrop),p(this._backdrop).addClass(cn),!t)return;if(!n)return void t();var i=m.getTransitionDurationFromElement(this._backdrop);p(this._backdrop).one(m.TRANSITION_END,t).emulateTransitionEnd(i)}else if(!this._isShown&&this._backdrop){p(this._backdrop).removeClass(cn);var o=function(){e._removeBackdrop(),t&&t()};if(p(this._element).hasClass(ln)){var r=m.getTransitionDurationFromElement(this._backdrop);p(this._backdrop).one(m.TRANSITION_END,o).emulateTransitionEnd(r)}else o()}else t&&t()},t._adjustDialog=function(){var t=this._element.scrollHeight>document.documentElement.clientHeight;!this._isBodyOverflowing&&t&&(this._element.style.paddingLeft=this._scrollbarWidth+"px"),this._isBodyOverflowing&&!t&&(this._element.style.paddingRight=this._scrollbarWidth+"px")},t._resetAdjustments=function(){this._element.style.paddingLeft="",this._element.style.paddingRight=""},t._checkScrollbar=function(){var t=document.body.getBoundingClientRect();this._isBodyOverflowing=t.left+t.right<window.innerWidth,this._scrollbarWidth=this._getScrollbarWidth()},t._setScrollbar=function(){var o=this;if(this._isBodyOverflowing){var t=[].slice.call(document.querySelectorAll(pn)),e=[].slice.call(document.querySelectorAll(mn));p(t).each(function(t,e){var n=e.style.paddingRight,i=p(e).css("padding-right");p(e).data("padding-right",n).css("padding-right",parseFloat(i)+o._scrollbarWidth+"px")}),p(e).each(function(t,e){var n=e.style.marginRight,i=p(e).css("margin-right");p(e).data("margin-right",n).css("margin-right",parseFloat(i)-o._scrollbarWidth+"px")});var n=document.body.style.paddingRight,i=p(document.body).css("padding-right");p(document.body).data("padding-right",n).css("padding-right",parseFloat(i)+this._scrollbarWidth+"px")}p(document.body).addClass(an)},t._resetScrollbar=function(){var t=[].slice.call(document.querySelectorAll(pn));p(t).each(function(t,e){var n=p(e).data("padding-right");p(e).removeData("padding-right"),e.style.paddingRight=n||""});var e=[].slice.call(document.querySelectorAll(""+mn));p(e).each(function(t,e){var n=p(e).data("margin-right");"undefined"!=typeof n&&p(e).css("margin-right",n).removeData("margin-right")});var n=p(document.body).data("padding-right");p(document.body).removeData("padding-right"),document.body.style.paddingRight=n||""},t._getScrollbarWidth=function(){var t=document.createElement("div");t.className=rn,document.body.appendChild(t);var e=t.getBoundingClientRect().width-t.clientWidth;return document.body.removeChild(t),e},o._jQueryInterface=function(n,i){return this.each(function(){var t=p(this).data(Je),e=l({},tn,p(this).data(),"object"==typeof n&&n?n:{});if(t||(t=new o(this,e),p(this).data(Je,t)),"string"==typeof n){if("undefined"==typeof t[n])throw new TypeError('No method named "'+n+'"');t[n](i)}else e.show&&t.show(i)})},s(o,null,[{key:"VERSION",get:function(){return"4.3.0"}},{key:"Default",get:function(){return tn}}]),o}();p(document).on(nn.CLICK_DATA_API,fn,function(t){var e,n=this,i=m.getSelectorFromElement(this);i&&(e=document.querySelector(i));var o=p(e).data(Je)?"toggle":l({},p(e).data(),p(this).data());"A"!==this.tagName&&"AREA"!==this.tagName||t.preventDefault();var r=p(e).one(nn.SHOW,function(t){t.isDefaultPrevented()||r.one(nn.HIDDEN,function(){p(n).is(":visible")&&n.focus()})});gn._jQueryInterface.call(p(e),o,this)}),p.fn[Ge]=gn._jQueryInterface,p.fn[Ge].Constructor=gn,p.fn[Ge].noConflict=function(){return p.fn[Ge]=$e,gn._jQueryInterface};var _n="tooltip",vn="bs.tooltip",yn="."+vn,En=p.fn[_n],bn="bs-tooltip",wn=new RegExp("(^|\\s)"+bn+"\\S+","g"),Tn={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(number|string|function)",container:"(string|element|boolean)",fallbackPlacement:"(string|array)",boundary:"(string|element)"},Cn={AUTO:"auto",TOP:"top",RIGHT:"right",BOTTOM:"bottom",LEFT:"left"},Sn={animation:!0,template:'<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:0,container:!1,fallbackPlacement:"flip",boundary:"scrollParent"},Dn="show",In="out",An={HIDE:"hide"+yn,HIDDEN:"hidden"+yn,SHOW:"show"+yn,SHOWN:"shown"+yn,INSERTED:"inserted"+yn,CLICK:"click"+yn,FOCUSIN:"focusin"+yn,FOCUSOUT:"focusout"+yn,MOUSEENTER:"mouseenter"+yn,MOUSELEAVE:"mouseleave"+yn},On="fade",Nn="show",kn=".tooltip-inner",Ln=".arrow",Pn="hover",xn="focus",Hn="click",jn="manual",Rn=function(){function i(t,e){if("undefined"==typeof be)throw new TypeError("Bootstrap's tooltips require Popper.js (https://popper.js.org/)");this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=t,this.config=this._getConfig(e),this.tip=null,this._setListeners()}var t=i.prototype;return t.enable=function(){this._isEnabled=!0},t.disable=function(){this._isEnabled=!1},t.toggleEnabled=function(){this._isEnabled=!this._isEnabled},t.toggle=function(t){if(this._isEnabled)if(t){var e=this.constructor.DATA_KEY,n=p(t.currentTarget).data(e);n||(n=new this.constructor(t.currentTarget,this._getDelegateConfig()),p(t.currentTarget).data(e,n)),n._activeTrigger.click=!n._activeTrigger.click,n._isWithActiveTrigger()?n._enter(null,n):n._leave(null,n)}else{if(p(this.getTipElement()).hasClass(Nn))return void this._leave(null,this);this._enter(null,this)}},t.dispose=function(){clearTimeout(this._timeout),p.removeData(this.element,this.constructor.DATA_KEY),p(this.element).off(this.constructor.EVENT_KEY),p(this.element).closest(".modal").off("hide.bs.modal"),this.tip&&p(this.tip).remove(),this._isEnabled=null,this._timeout=null,this._hoverState=null,(this._activeTrigger=null)!==this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null},t.show=function(){var e=this;if("none"===p(this.element).css("display"))throw new Error("Please use show on visible elements");var t=p.Event(this.constructor.Event.SHOW);if(this.isWithContent()&&this._isEnabled){p(this.element).trigger(t);var n=m.findShadowRoot(this.element),i=p.contains(null!==n?n:this.element.ownerDocument.documentElement,this.element);if(t.isDefaultPrevented()||!i)return;var o=this.getTipElement(),r=m.getUID(this.constructor.NAME);o.setAttribute("id",r),this.element.setAttribute("aria-describedby",r),this.setContent(),this.config.animation&&p(o).addClass(On);var s="function"==typeof this.config.placement?this.config.placement.call(this,o,this.element):this.config.placement,a=this._getAttachment(s);this.addAttachmentClass(a);var l=this._getContainer();p(o).data(this.constructor.DATA_KEY,this),p.contains(this.element.ownerDocument.documentElement,this.tip)||p(o).appendTo(l),p(this.element).trigger(this.constructor.Event.INSERTED),this._popper=new be(this.element,o,{placement:a,modifiers:{offset:this._getOffset(),flip:{behavior:this.config.fallbackPlacement},arrow:{element:Ln},preventOverflow:{boundariesElement:this.config.boundary}},onCreate:function(t){t.originalPlacement!==t.placement&&e._handlePopperPlacementChange(t)},onUpdate:function(t){return e._handlePopperPlacementChange(t)}}),p(o).addClass(Nn),"ontouchstart"in document.documentElement&&p(document.body).children().on("mouseover",null,p.noop);var c=function(){e.config.animation&&e._fixTransition();var t=e._hoverState;e._hoverState=null,p(e.element).trigger(e.constructor.Event.SHOWN),t===In&&e._leave(null,e)};if(p(this.tip).hasClass(On)){var h=m.getTransitionDurationFromElement(this.tip);p(this.tip).one(m.TRANSITION_END,c).emulateTransitionEnd(h)}else c()}},t.hide=function(t){var e=this,n=this.getTipElement(),i=p.Event(this.constructor.Event.HIDE),o=function(){e._hoverState!==Dn&&n.parentNode&&n.parentNode.removeChild(n),e._cleanTipClass(),e.element.removeAttribute("aria-describedby"),p(e.element).trigger(e.constructor.Event.HIDDEN),null!==e._popper&&e._popper.destroy(),t&&t()};if(p(this.element).trigger(i),!i.isDefaultPrevented()){if(p(n).removeClass(Nn),"ontouchstart"in document.documentElement&&p(document.body).children().off("mouseover",null,p.noop),this._activeTrigger[Hn]=!1,this._activeTrigger[xn]=!1,this._activeTrigger[Pn]=!1,p(this.tip).hasClass(On)){var r=m.getTransitionDurationFromElement(n);p(n).one(m.TRANSITION_END,o).emulateTransitionEnd(r)}else o();this._hoverState=""}},t.update=function(){null!==this._popper&&this._popper.scheduleUpdate()},t.isWithContent=function(){return Boolean(this.getTitle())},t.addAttachmentClass=function(t){p(this.getTipElement()).addClass(bn+"-"+t)},t.getTipElement=function(){return this.tip=this.tip||p(this.config.template)[0],this.tip},t.setContent=function(){var t=this.getTipElement();this.setElementContent(p(t.querySelectorAll(kn)),this.getTitle()),p(t).removeClass(On+" "+Nn)},t.setElementContent=function(t,e){var n=this.config.html;"object"==typeof e&&(e.nodeType||e.jquery)?n?p(e).parent().is(t)||t.empty().append(e):t.text(p(e).text()):t[n?"html":"text"](e)},t.getTitle=function(){var t=this.element.getAttribute("data-original-title");return t||(t="function"==typeof this.config.title?this.config.title.call(this.element):this.config.title),t},t._getOffset=function(){var e=this,t={};return"function"==typeof this.config.offset?t.fn=function(t){return t.offsets=l({},t.offsets,e.config.offset(t.offsets,e.element)||{}),t}:t.offset=this.config.offset,t},t._getContainer=function(){return!1===this.config.container?document.body:m.isElement(this.config.container)?p(this.config.container):p(document).find(this.config.container)},t._getAttachment=function(t){return Cn[t.toUpperCase()]},t._setListeners=function(){var i=this;this.config.trigger.split(" ").forEach(function(t){if("click"===t)p(i.element).on(i.constructor.Event.CLICK,i.config.selector,function(t){return i.toggle(t)});else if(t!==jn){var e=t===Pn?i.constructor.Event.MOUSEENTER:i.constructor.Event.FOCUSIN,n=t===Pn?i.constructor.Event.MOUSELEAVE:i.constructor.Event.FOCUSOUT;p(i.element).on(e,i.config.selector,function(t){return i._enter(t)}).on(n,i.config.selector,function(t){return i._leave(t)})}}),p(this.element).closest(".modal").on("hide.bs.modal",function(){i.element&&i.hide()}),this.config.selector?this.config=l({},this.config,{trigger:"manual",selector:""}):this._fixTitle()},t._fixTitle=function(){var t=typeof this.element.getAttribute("data-original-title");(this.element.getAttribute("title")||"string"!==t)&&(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},t._enter=function(t,e){var n=this.constructor.DATA_KEY;(e=e||p(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),p(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusin"===t.type?xn:Pn]=!0),p(e.getTipElement()).hasClass(Nn)||e._hoverState===Dn?e._hoverState=Dn:(clearTimeout(e._timeout),e._hoverState=Dn,e.config.delay&&e.config.delay.show?e._timeout=setTimeout(function(){e._hoverState===Dn&&e.show()},e.config.delay.show):e.show())},t._leave=function(t,e){var n=this.constructor.DATA_KEY;(e=e||p(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),p(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusout"===t.type?xn:Pn]=!1),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState=In,e.config.delay&&e.config.delay.hide?e._timeout=setTimeout(function(){e._hoverState===In&&e.hide()},e.config.delay.hide):e.hide())},t._isWithActiveTrigger=function(){for(var t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1},t._getConfig=function(t){return"number"==typeof(t=l({},this.constructor.Default,p(this.element).data(),"object"==typeof t&&t?t:{})).delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),m.typeCheckConfig(_n,t,this.constructor.DefaultType),t},t._getDelegateConfig=function(){var t={};if(this.config)for(var e in this.config)this.constructor.Default[e]!==this.config[e]&&(t[e]=this.config[e]);return t},t._cleanTipClass=function(){var t=p(this.getTipElement()),e=t.attr("class").match(wn);null!==e&&e.length&&t.removeClass(e.join(""))},t._handlePopperPlacementChange=function(t){var e=t.instance;this.tip=e.popper,this._cleanTipClass(),this.addAttachmentClass(this._getAttachment(t.placement))},t._fixTransition=function(){var t=this.getTipElement(),e=this.config.animation;null===t.getAttribute("x-placement")&&(p(t).removeClass(On),this.config.animation=!1,this.hide(),this.show(),this.config.animation=e)},i._jQueryInterface=function(n){return this.each(function(){var t=p(this).data(vn),e="object"==typeof n&&n;if((t||!/dispose|hide/.test(n))&&(t||(t=new i(this,e),p(this).data(vn,t)),"string"==typeof n)){if("undefined"==typeof t[n])throw new TypeError('No method named "'+n+'"');t[n]()}})},s(i,null,[{key:"VERSION",get:function(){return"4.3.0"}},{key:"Default",get:function(){return Sn}},{key:"NAME",get:function(){return _n}},{key:"DATA_KEY",get:function(){return vn}},{key:"Event",get:function(){return An}},{key:"EVENT_KEY",get:function(){return yn}},{key:"DefaultType",get:function(){return Tn}}]),i}();p.fn[_n]=Rn._jQueryInterface,p.fn[_n].Constructor=Rn,p.fn[_n].noConflict=function(){return p.fn[_n]=En,Rn._jQueryInterface};var Fn="popover",Mn="bs.popover",Wn="."+Mn,Un=p.fn[Fn],Bn="bs-popover",qn=new RegExp("(^|\\s)"+Bn+"\\S+","g"),Kn=l({},Rn.Default,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'}),Qn=l({},Rn.DefaultType,{content:"(string|element|function)"}),Yn="fade",Vn="show",Xn=".popover-header",zn=".popover-body",Gn={HIDE:"hide"+Wn,HIDDEN:"hidden"+Wn,SHOW:"show"+Wn,SHOWN:"shown"+Wn,INSERTED:"inserted"+Wn,CLICK:"click"+Wn,FOCUSIN:"focusin"+Wn,FOCUSOUT:"focusout"+Wn,MOUSEENTER:"mouseenter"+Wn,MOUSELEAVE:"mouseleave"+Wn},Jn=function(t){var e,n;function i(){return t.apply(this,arguments)||this}n=t,(e=i).prototype=Object.create(n.prototype),(e.prototype.constructor=e).__proto__=n;var o=i.prototype;return o.isWithContent=function(){return this.getTitle()||this._getContent()},o.addAttachmentClass=function(t){p(this.getTipElement()).addClass(Bn+"-"+t)},o.getTipElement=function(){return this.tip=this.tip||p(this.config.template)[0],this.tip},o.setContent=function(){var t=p(this.getTipElement());this.setElementContent(t.find(Xn),this.getTitle());var e=this._getContent();"function"==typeof e&&(e=e.call(this.element)),this.setElementContent(t.find(zn),e),t.removeClass(Yn+" "+Vn)},o._getContent=function(){return this.element.getAttribute("data-content")||this.config.content},o._cleanTipClass=function(){var t=p(this.getTipElement()),e=t.attr("class").match(qn);null!==e&&0<e.length&&t.removeClass(e.join(""))},i._jQueryInterface=function(n){return this.each(function(){var t=p(this).data(Mn),e="object"==typeof n?n:null;if((t||!/dispose|hide/.test(n))&&(t||(t=new i(this,e),p(this).data(Mn,t)),"string"==typeof n)){if("undefined"==typeof t[n])throw new TypeError('No method named "'+n+'"');t[n]()}})},s(i,null,[{key:"VERSION",get:function(){return"4.3.0"}},{key:"Default",get:function(){return Kn}},{key:"NAME",get:function(){return Fn}},{key:"DATA_KEY",get:function(){return Mn}},{key:"Event",get:function(){return Gn}},{key:"EVENT_KEY",get:function(){return Wn}},{key:"DefaultType",get:function(){return Qn}}]),i}(Rn);p.fn[Fn]=Jn._jQueryInterface,p.fn[Fn].Constructor=Jn,p.fn[Fn].noConflict=function(){return p.fn[Fn]=Un,Jn._jQueryInterface};var Zn="scrollspy",$n="bs.scrollspy",ti="."+$n,ei=p.fn[Zn],ni={offset:10,method:"auto",target:""},ii={offset:"number",method:"string",target:"(string|element)"},oi={ACTIVATE:"activate"+ti,SCROLL:"scroll"+ti,LOAD_DATA_API:"load"+ti+".data-api"},ri="dropdown-item",si="active",ai='[data-spy="scroll"]',li=".nav, .list-group",ci=".nav-link",hi=".nav-item",ui=".list-group-item",fi=".dropdown",di=".dropdown-item",pi=".dropdown-toggle",mi="offset",gi="position",_i=function(){function n(t,e){var n=this;this._element=t,this._scrollElement="BODY"===t.tagName?window:t,this._config=this._getConfig(e),this._selector=this._config.target+" "+ci+","+this._config.target+" "+ui+","+this._config.target+" "+di,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,p(this._scrollElement).on(oi.SCROLL,function(t){return n._process(t)}),this.refresh(),this._process()}var t=n.prototype;return t.refresh=function(){var e=this,t=this._scrollElement===this._scrollElement.window?mi:gi,o="auto"===this._config.method?t:this._config.method,r=o===gi?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),[].slice.call(document.querySelectorAll(this._selector)).map(function(t){var e,n=m.getSelectorFromElement(t);if(n&&(e=document.querySelector(n)),e){var i=e.getBoundingClientRect();if(i.width||i.height)return[p(e)[o]().top+r,n]}return null}).filter(function(t){return t}).sort(function(t,e){return t[0]-e[0]}).forEach(function(t){e._offsets.push(t[0]),e._targets.push(t[1])})},t.dispose=function(){p.removeData(this._element,$n),p(this._scrollElement).off(ti),this._element=null,this._scrollElement=null,this._config=null,this._selector=null,this._offsets=null,this._targets=null,this._activeTarget=null,this._scrollHeight=null},t._getConfig=function(t){if("string"!=typeof(t=l({},ni,"object"==typeof t&&t?t:{})).target){var e=p(t.target).attr("id");e||(e=m.getUID(Zn),p(t.target).attr("id",e)),t.target="#"+e}return m.typeCheckConfig(Zn,t,ii),t},t._getScrollTop=function(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop},t._getScrollHeight=function(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)},t._getOffsetHeight=function(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height},t._process=function(){var t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),n=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),n<=t){var i=this._targets[this._targets.length-1];this._activeTarget!==i&&this._activate(i)}else{if(this._activeTarget&&t<this._offsets[0]&&0<this._offsets[0])return this._activeTarget=null,void this._clear();for(var o=this._offsets.length;o--;){this._activeTarget!==this._targets[o]&&t>=this._offsets[o]&&("undefined"==typeof this._offsets[o+1]||t<this._offsets[o+1])&&this._activate(this._targets[o])}}},t._activate=function(e){this._activeTarget=e,this._clear();var t=this._selector.split(",").map(function(t){return t+'[data-target="'+e+'"],'+t+'[href="'+e+'"]'}),n=p([].slice.call(document.querySelectorAll(t.join(","))));n.hasClass(ri)?(n.closest(fi).find(pi).addClass(si),n.addClass(si)):(n.addClass(si),n.parents(li).prev(ci+", "+ui).addClass(si),n.parents(li).prev(hi).children(ci).addClass(si)),p(this._scrollElement).trigger(oi.ACTIVATE,{relatedTarget:e})},t._clear=function(){[].slice.call(document.querySelectorAll(this._selector)).filter(function(t){return t.classList.contains(si)}).forEach(function(t){return t.classList.remove(si)})},n._jQueryInterface=function(e){return this.each(function(){var t=p(this).data($n);if(t||(t=new n(this,"object"==typeof e&&e),p(this).data($n,t)),"string"==typeof e){if("undefined"==typeof t[e])throw new TypeError('No method named "'+e+'"');t[e]()}})},s(n,null,[{key:"VERSION",get:function(){return"4.3.0"}},{key:"Default",get:function(){return ni}}]),n}();p(window).on(oi.LOAD_DATA_API,function(){for(var t=[].slice.call(document.querySelectorAll(ai)),e=t.length;e--;){var n=p(t[e]);_i._jQueryInterface.call(n,n.data())}}),p.fn[Zn]=_i._jQueryInterface,p.fn[Zn].Constructor=_i,p.fn[Zn].noConflict=function(){return p.fn[Zn]=ei,_i._jQueryInterface};var vi="bs.tab",yi="."+vi,Ei=p.fn.tab,bi={HIDE:"hide"+yi,HIDDEN:"hidden"+yi,SHOW:"show"+yi,SHOWN:"shown"+yi,CLICK_DATA_API:"click"+yi+".data-api"},wi="dropdown-menu",Ti="active",Ci="disabled",Si="fade",Di="show",Ii=".dropdown",Ai=".nav, .list-group",Oi=".active",Ni="> li > .active",ki='[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',Li=".dropdown-toggle",Pi="> .dropdown-menu .active",xi=function(){function i(t){this._element=t}var t=i.prototype;return t.show=function(){var n=this;if(!(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&p(this._element).hasClass(Ti)||p(this._element).hasClass(Ci))){var t,i,e=p(this._element).closest(Ai)[0],o=m.getSelectorFromElement(this._element);if(e){var r="UL"===e.nodeName||"OL"===e.nodeName?Ni:Oi;i=(i=p.makeArray(p(e).find(r)))[i.length-1]}var s=p.Event(bi.HIDE,{relatedTarget:this._element}),a=p.Event(bi.SHOW,{relatedTarget:i});if(i&&p(i).trigger(s),p(this._element).trigger(a),!a.isDefaultPrevented()&&!s.isDefaultPrevented()){o&&(t=document.querySelector(o)),this._activate(this._element,e);var l=function(){var t=p.Event(bi.HIDDEN,{relatedTarget:n._element}),e=p.Event(bi.SHOWN,{relatedTarget:i});p(i).trigger(t),p(n._element).trigger(e)};t?this._activate(t,t.parentNode,l):l()}}},t.dispose=function(){p.removeData(this._element,vi),this._element=null},t._activate=function(t,e,n){var i=this,o=(!e||"UL"!==e.nodeName&&"OL"!==e.nodeName?p(e).children(Oi):p(e).find(Ni))[0],r=n&&o&&p(o).hasClass(Si),s=function(){return i._transitionComplete(t,o,n)};if(o&&r){var a=m.getTransitionDurationFromElement(o);p(o).removeClass(Di).one(m.TRANSITION_END,s).emulateTransitionEnd(a)}else s()},t._transitionComplete=function(t,e,n){if(e){p(e).removeClass(Ti);var i=p(e.parentNode).find(Pi)[0];i&&p(i).removeClass(Ti),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!1)}if(p(t).addClass(Ti),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),m.reflow(t),t.classList.contains(Si)&&t.classList.add(Di),t.parentNode&&p(t.parentNode).hasClass(wi)){var o=p(t).closest(Ii)[0];if(o){var r=[].slice.call(o.querySelectorAll(Li));p(r).addClass(Ti)}t.setAttribute("aria-expanded",!0)}n&&n()},i._jQueryInterface=function(n){return this.each(function(){var t=p(this),e=t.data(vi);if(e||(e=new i(this),t.data(vi,e)),"string"==typeof n){if("undefined"==typeof e[n])throw new TypeError('No method named "'+n+'"');e[n]()}})},s(i,null,[{key:"VERSION",get:function(){return"4.3.0"}}]),i}();p(document).on(bi.CLICK_DATA_API,ki,function(t){t.preventDefault(),xi._jQueryInterface.call(p(this),"show")}),p.fn.tab=xi._jQueryInterface,p.fn.tab.Constructor=xi,p.fn.tab.noConflict=function(){return p.fn.tab=Ei,xi._jQueryInterface};var Hi="toast",ji="bs.toast",Ri="."+ji,Fi=p.fn[Hi],Mi={CLICK_DISMISS:"click.dismiss"+Ri,HIDE:"hide"+Ri,HIDDEN:"hidden"+Ri,SHOW:"show"+Ri,SHOWN:"shown"+Ri},Wi="fade",Ui="hide",Bi="show",qi="showing",Ki={animation:"boolean",autohide:"boolean",delay:"number"},Qi={animation:!0,autohide:!0,delay:500},Yi='[data-dismiss="toast"]',Vi=function(){function i(t,e){this._element=t,this._config=this._getConfig(e),this._timeout=null,this._setListeners()}var t=i.prototype;return t.show=function(){var t=this;p(this._element).trigger(Mi.SHOW),this._config.animation&&this._element.classList.add(Wi);var e=function(){t._element.classList.remove(qi),t._element.classList.add(Bi),p(t._element).trigger(Mi.SHOWN),t._config.autohide&&t.hide()};if(this._element.classList.remove(Ui),this._element.classList.add(qi),this._config.animation){var n=m.getTransitionDurationFromElement(this._element);p(this._element).one(m.TRANSITION_END,e).emulateTransitionEnd(n)}else e()},t.hide=function(t){var e=this;this._element.classList.contains(Bi)&&(p(this._element).trigger(Mi.HIDE),t?this._close():this._timeout=setTimeout(function(){e._close()},this._config.delay))},t.dispose=function(){clearTimeout(this._timeout),this._timeout=null,this._element.classList.contains(Bi)&&this._element.classList.remove(Bi),p(this._element).off(Mi.CLICK_DISMISS),p.removeData(this._element,ji),this._element=null,this._config=null},t._getConfig=function(t){return t=l({},Qi,p(this._element).data(),"object"==typeof t&&t?t:{}),m.typeCheckConfig(Hi,t,this.constructor.DefaultType),t},t._setListeners=function(){var t=this;p(this._element).on(Mi.CLICK_DISMISS,Yi,function(){return t.hide(!0)})},t._close=function(){var t=this,e=function(){t._element.classList.add(Ui),p(t._element).trigger(Mi.HIDDEN)};if(this._element.classList.remove(Bi),this._config.animation){var n=m.getTransitionDurationFromElement(this._element);p(this._element).one(m.TRANSITION_END,e).emulateTransitionEnd(n)}else e()},i._jQueryInterface=function(n){return this.each(function(){var t=p(this),e=t.data(ji);if(e||(e=new i(this,"object"==typeof n&&n),t.data(ji,e)),"string"==typeof n){if("undefined"==typeof e[n])throw new TypeError('No method named "'+n+'"');e[n](this)}})},s(i,null,[{key:"VERSION",get:function(){return"4.3.0"}},{key:"DefaultType",get:function(){return Ki}},{key:"Default",get:function(){return Qi}}]),i}();p.fn[Hi]=Vi._jQueryInterface,p.fn[Hi].Constructor=Vi,p.fn[Hi].noConflict=function(){return p.fn[Hi]=Fi,Vi._jQueryInterface},function(){if("undefined"==typeof p)throw new TypeError("Bootstrap's JavaScript requires jQuery. jQuery must be included before Bootstrap's JavaScript.");var t=p.fn.jquery.split(" ")[0].split(".");if(t[0]<2&&t[1]<9||1===t[0]&&9===t[1]&&t[2]<1||4<=t[0])throw new Error("Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0")}(),t.Util=m,t.Alert=g,t.Button=k,t.Carousel=at,t.Collapse=Tt,t.Dropdown=ze,t.Modal=gn,t.Popover=Jn,t.Scrollspy=_i,t.Tab=xi,t.Toast=Vi,t.Tooltip=Rn,Object.defineProperty(t,"__esModule",{value:!0})}); +//# sourceMappingURL=bootstrap.bundle.min.js.map \ No newline at end of file diff --git a/docs/4.3/dist/js/bootstrap.bundle.min.js.map b/docs/4.3/dist/js/bootstrap.bundle.min.js.map new file mode 100644 index 0000000000000000000000000000000000000000..cc268fabbc7557bdd7a809ef84ea58f9e264054c GIT binary patch literal 304915 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/dist/js/bootstrap.js b/docs/4.3/dist/js/bootstrap.js new file mode 100644 index 0000000000..7f93fa2613 --- /dev/null +++ b/docs/4.3/dist/js/bootstrap.js @@ -0,0 +1,4288 @@ +/*! + * Bootstrap v4.3.0 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('jquery'), require('popper.js')) : + typeof define === 'function' && define.amd ? define(['exports', 'jquery', 'popper.js'], factory) : + (global = global || self, factory(global.bootstrap = {}, global.jQuery, global.Popper)); +}(this, function (exports, $, Popper) { 'use strict'; + + $ = $ && $.hasOwnProperty('default') ? $['default'] : $; + Popper = Popper && Popper.hasOwnProperty('default') ? Popper['default'] : Popper; + + function _defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) descriptor.writable = true; + Object.defineProperty(target, descriptor.key, descriptor); + } + } + + function _createClass(Constructor, protoProps, staticProps) { + if (protoProps) _defineProperties(Constructor.prototype, protoProps); + if (staticProps) _defineProperties(Constructor, staticProps); + return Constructor; + } + + function _defineProperty(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; + } + + function _objectSpread(target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i] != null ? arguments[i] : {}; + var ownKeys = Object.keys(source); + + if (typeof Object.getOwnPropertySymbols === 'function') { + ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { + return Object.getOwnPropertyDescriptor(source, sym).enumerable; + })); + } + + ownKeys.forEach(function (key) { + _defineProperty(target, key, source[key]); + }); + } + + return target; + } + + function _inheritsLoose(subClass, superClass) { + subClass.prototype = Object.create(superClass.prototype); + subClass.prototype.constructor = subClass; + subClass.__proto__ = superClass; + } + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v4.3.0): util.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Private TransitionEnd Helpers + * ------------------------------------------------------------------------ + */ + + var TRANSITION_END = 'transitionend'; + var MAX_UID = 1000000; + var MILLISECONDS_MULTIPLIER = 1000; // Shoutout AngusCroll (https://goo.gl/pxwQGp) + + function toType(obj) { + return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase(); + } + + function getSpecialTransitionEndEvent() { + return { + bindType: TRANSITION_END, + delegateType: TRANSITION_END, + handle: function handle(event) { + if ($(event.target).is(this)) { + return event.handleObj.handler.apply(this, arguments); // eslint-disable-line prefer-rest-params + } + + return undefined; // eslint-disable-line no-undefined + } + }; + } + + function transitionEndEmulator(duration) { + var _this = this; + + var called = false; + $(this).one(Util.TRANSITION_END, function () { + called = true; + }); + setTimeout(function () { + if (!called) { + Util.triggerTransitionEnd(_this); + } + }, duration); + return this; + } + + function setTransitionEndSupport() { + $.fn.emulateTransitionEnd = transitionEndEmulator; + $.event.special[Util.TRANSITION_END] = getSpecialTransitionEndEvent(); + } + /** + * -------------------------------------------------------------------------- + * Public Util Api + * -------------------------------------------------------------------------- + */ + + + var Util = { + TRANSITION_END: 'bsTransitionEnd', + getUID: function getUID(prefix) { + do { + // eslint-disable-next-line no-bitwise + prefix += ~~(Math.random() * MAX_UID); // "~~" acts like a faster Math.floor() here + } while (document.getElementById(prefix)); + + return prefix; + }, + getSelectorFromElement: function getSelectorFromElement(element) { + var selector = element.getAttribute('data-target'); + + if (!selector || selector === '#') { + var hrefAttr = element.getAttribute('href'); + selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : ''; + } + + try { + return document.querySelector(selector) ? selector : null; + } catch (err) { + return null; + } + }, + getTransitionDurationFromElement: function getTransitionDurationFromElement(element) { + if (!element) { + return 0; + } // Get transition-duration of the element + + + var transitionDuration = $(element).css('transition-duration'); + var transitionDelay = $(element).css('transition-delay'); + var floatTransitionDuration = parseFloat(transitionDuration); + var floatTransitionDelay = parseFloat(transitionDelay); // Return 0 if element or transition duration is not found + + if (!floatTransitionDuration && !floatTransitionDelay) { + return 0; + } // If multiple durations are defined, take the first + + + transitionDuration = transitionDuration.split(',')[0]; + transitionDelay = transitionDelay.split(',')[0]; + return (parseFloat(transitionDuration) + parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; + }, + reflow: function reflow(element) { + return element.offsetHeight; + }, + triggerTransitionEnd: function triggerTransitionEnd(element) { + $(element).trigger(TRANSITION_END); + }, + // TODO: Remove in v5 + supportsTransitionEnd: function supportsTransitionEnd() { + return Boolean(TRANSITION_END); + }, + isElement: function isElement(obj) { + return (obj[0] || obj).nodeType; + }, + typeCheckConfig: function typeCheckConfig(componentName, config, configTypes) { + for (var property in configTypes) { + if (Object.prototype.hasOwnProperty.call(configTypes, property)) { + var expectedTypes = configTypes[property]; + var value = config[property]; + var valueType = value && Util.isElement(value) ? 'element' : toType(value); + + if (!new RegExp(expectedTypes).test(valueType)) { + throw new Error(componentName.toUpperCase() + ": " + ("Option \"" + property + "\" provided type \"" + valueType + "\" ") + ("but expected type \"" + expectedTypes + "\".")); + } + } + } + }, + findShadowRoot: function findShadowRoot(element) { + if (!document.documentElement.attachShadow) { + return null; + } // Can find the shadow root otherwise it'll return the document + + + if (typeof element.getRootNode === 'function') { + var root = element.getRootNode(); + return root instanceof ShadowRoot ? root : null; + } + + if (element instanceof ShadowRoot) { + return element; + } // when we don't find a shadow root + + + if (!element.parentNode) { + return null; + } + + return Util.findShadowRoot(element.parentNode); + } + }; + setTransitionEndSupport(); + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME = 'alert'; + var VERSION = '4.3.0'; + var DATA_KEY = 'bs.alert'; + var EVENT_KEY = "." + DATA_KEY; + var DATA_API_KEY = '.data-api'; + var JQUERY_NO_CONFLICT = $.fn[NAME]; + var Selector = { + DISMISS: '[data-dismiss="alert"]' + }; + var Event = { + CLOSE: "close" + EVENT_KEY, + CLOSED: "closed" + EVENT_KEY, + CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY + }; + var ClassName = { + ALERT: 'alert', + FADE: 'fade', + SHOW: 'show' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Alert = + /*#__PURE__*/ + function () { + function Alert(element) { + this._element = element; + } // Getters + + + var _proto = Alert.prototype; + + // Public + _proto.close = function close(element) { + var rootElement = this._element; + + if (element) { + rootElement = this._getRootElement(element); + } + + var customEvent = this._triggerCloseEvent(rootElement); + + if (customEvent.isDefaultPrevented()) { + return; + } + + this._removeElement(rootElement); + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY); + this._element = null; + } // Private + ; + + _proto._getRootElement = function _getRootElement(element) { + var selector = Util.getSelectorFromElement(element); + var parent = false; + + if (selector) { + parent = document.querySelector(selector); + } + + if (!parent) { + parent = $(element).closest("." + ClassName.ALERT)[0]; + } + + return parent; + }; + + _proto._triggerCloseEvent = function _triggerCloseEvent(element) { + var closeEvent = $.Event(Event.CLOSE); + $(element).trigger(closeEvent); + return closeEvent; + }; + + _proto._removeElement = function _removeElement(element) { + var _this = this; + + $(element).removeClass(ClassName.SHOW); + + if (!$(element).hasClass(ClassName.FADE)) { + this._destroyElement(element); + + return; + } + + var transitionDuration = Util.getTransitionDurationFromElement(element); + $(element).one(Util.TRANSITION_END, function (event) { + return _this._destroyElement(element, event); + }).emulateTransitionEnd(transitionDuration); + }; + + _proto._destroyElement = function _destroyElement(element) { + $(element).detach().trigger(Event.CLOSED).remove(); + } // Static + ; + + Alert._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var $element = $(this); + var data = $element.data(DATA_KEY); + + if (!data) { + data = new Alert(this); + $element.data(DATA_KEY, data); + } + + if (config === 'close') { + data[config](this); + } + }); + }; + + Alert._handleDismiss = function _handleDismiss(alertInstance) { + return function (event) { + if (event) { + event.preventDefault(); + } + + alertInstance.close(this); + }; + }; + + _createClass(Alert, null, [{ + key: "VERSION", + get: function get() { + return VERSION; + } + }]); + + return Alert; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(Event.CLICK_DATA_API, Selector.DISMISS, Alert._handleDismiss(new Alert())); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME] = Alert._jQueryInterface; + $.fn[NAME].Constructor = Alert; + + $.fn[NAME].noConflict = function () { + $.fn[NAME] = JQUERY_NO_CONFLICT; + return Alert._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$1 = 'button'; + var VERSION$1 = '4.3.0'; + var DATA_KEY$1 = 'bs.button'; + var EVENT_KEY$1 = "." + DATA_KEY$1; + var DATA_API_KEY$1 = '.data-api'; + var JQUERY_NO_CONFLICT$1 = $.fn[NAME$1]; + var ClassName$1 = { + ACTIVE: 'active', + BUTTON: 'btn', + FOCUS: 'focus' + }; + var Selector$1 = { + DATA_TOGGLE_CARROT: '[data-toggle^="button"]', + DATA_TOGGLE: '[data-toggle="buttons"]', + INPUT: 'input:not([type="hidden"])', + ACTIVE: '.active', + BUTTON: '.btn' + }; + var Event$1 = { + CLICK_DATA_API: "click" + EVENT_KEY$1 + DATA_API_KEY$1, + FOCUS_BLUR_DATA_API: "focus" + EVENT_KEY$1 + DATA_API_KEY$1 + " " + ("blur" + EVENT_KEY$1 + DATA_API_KEY$1) + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Button = + /*#__PURE__*/ + function () { + function Button(element) { + this._element = element; + } // Getters + + + var _proto = Button.prototype; + + // Public + _proto.toggle = function toggle() { + var triggerChangeEvent = true; + var addAriaPressed = true; + var rootElement = $(this._element).closest(Selector$1.DATA_TOGGLE)[0]; + + if (rootElement) { + var input = this._element.querySelector(Selector$1.INPUT); + + if (input) { + if (input.type === 'radio') { + if (input.checked && this._element.classList.contains(ClassName$1.ACTIVE)) { + triggerChangeEvent = false; + } else { + var activeElement = rootElement.querySelector(Selector$1.ACTIVE); + + if (activeElement) { + $(activeElement).removeClass(ClassName$1.ACTIVE); + } + } + } + + if (triggerChangeEvent) { + if (input.hasAttribute('disabled') || rootElement.hasAttribute('disabled') || input.classList.contains('disabled') || rootElement.classList.contains('disabled')) { + return; + } + + input.checked = !this._element.classList.contains(ClassName$1.ACTIVE); + $(input).trigger('change'); + } + + input.focus(); + addAriaPressed = false; + } + } + + if (addAriaPressed) { + this._element.setAttribute('aria-pressed', !this._element.classList.contains(ClassName$1.ACTIVE)); + } + + if (triggerChangeEvent) { + $(this._element).toggleClass(ClassName$1.ACTIVE); + } + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY$1); + this._element = null; + } // Static + ; + + Button._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$1); + + if (!data) { + data = new Button(this); + $(this).data(DATA_KEY$1, data); + } + + if (config === 'toggle') { + data[config](); + } + }); + }; + + _createClass(Button, null, [{ + key: "VERSION", + get: function get() { + return VERSION$1; + } + }]); + + return Button; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(Event$1.CLICK_DATA_API, Selector$1.DATA_TOGGLE_CARROT, function (event) { + event.preventDefault(); + var button = event.target; + + if (!$(button).hasClass(ClassName$1.BUTTON)) { + button = $(button).closest(Selector$1.BUTTON); + } + + Button._jQueryInterface.call($(button), 'toggle'); + }).on(Event$1.FOCUS_BLUR_DATA_API, Selector$1.DATA_TOGGLE_CARROT, function (event) { + var button = $(event.target).closest(Selector$1.BUTTON)[0]; + $(button).toggleClass(ClassName$1.FOCUS, /^focus(in)?$/.test(event.type)); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$1] = Button._jQueryInterface; + $.fn[NAME$1].Constructor = Button; + + $.fn[NAME$1].noConflict = function () { + $.fn[NAME$1] = JQUERY_NO_CONFLICT$1; + return Button._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$2 = 'carousel'; + var VERSION$2 = '4.3.0'; + var DATA_KEY$2 = 'bs.carousel'; + var EVENT_KEY$2 = "." + DATA_KEY$2; + var DATA_API_KEY$2 = '.data-api'; + var JQUERY_NO_CONFLICT$2 = $.fn[NAME$2]; + var ARROW_LEFT_KEYCODE = 37; // KeyboardEvent.which value for left arrow key + + var ARROW_RIGHT_KEYCODE = 39; // KeyboardEvent.which value for right arrow key + + var TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch + + var SWIPE_THRESHOLD = 40; + var Default = { + interval: 5000, + keyboard: true, + slide: false, + pause: 'hover', + wrap: true, + touch: true + }; + var DefaultType = { + interval: '(number|boolean)', + keyboard: 'boolean', + slide: '(boolean|string)', + pause: '(string|boolean)', + wrap: 'boolean', + touch: 'boolean' + }; + var Direction = { + NEXT: 'next', + PREV: 'prev', + LEFT: 'left', + RIGHT: 'right' + }; + var Event$2 = { + SLIDE: "slide" + EVENT_KEY$2, + SLID: "slid" + EVENT_KEY$2, + KEYDOWN: "keydown" + EVENT_KEY$2, + MOUSEENTER: "mouseenter" + EVENT_KEY$2, + MOUSELEAVE: "mouseleave" + EVENT_KEY$2, + TOUCHSTART: "touchstart" + EVENT_KEY$2, + TOUCHMOVE: "touchmove" + EVENT_KEY$2, + TOUCHEND: "touchend" + EVENT_KEY$2, + POINTERDOWN: "pointerdown" + EVENT_KEY$2, + POINTERUP: "pointerup" + EVENT_KEY$2, + DRAG_START: "dragstart" + EVENT_KEY$2, + LOAD_DATA_API: "load" + EVENT_KEY$2 + DATA_API_KEY$2, + CLICK_DATA_API: "click" + EVENT_KEY$2 + DATA_API_KEY$2 + }; + var ClassName$2 = { + CAROUSEL: 'carousel', + ACTIVE: 'active', + SLIDE: 'slide', + RIGHT: 'carousel-item-right', + LEFT: 'carousel-item-left', + NEXT: 'carousel-item-next', + PREV: 'carousel-item-prev', + ITEM: 'carousel-item', + POINTER_EVENT: 'pointer-event' + }; + var Selector$2 = { + ACTIVE: '.active', + ACTIVE_ITEM: '.active.carousel-item', + ITEM: '.carousel-item', + ITEM_IMG: '.carousel-item img', + NEXT_PREV: '.carousel-item-next, .carousel-item-prev', + INDICATORS: '.carousel-indicators', + DATA_SLIDE: '[data-slide], [data-slide-to]', + DATA_RIDE: '[data-ride="carousel"]' + }; + var PointerType = { + TOUCH: 'touch', + PEN: 'pen' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Carousel = + /*#__PURE__*/ + function () { + function Carousel(element, config) { + this._items = null; + this._interval = null; + this._activeElement = null; + this._isPaused = false; + this._isSliding = false; + this.touchTimeout = null; + this.touchStartX = 0; + this.touchDeltaX = 0; + this._config = this._getConfig(config); + this._element = element; + this._indicatorsElement = this._element.querySelector(Selector$2.INDICATORS); + this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0; + this._pointerEvent = Boolean(window.PointerEvent || window.MSPointerEvent); + + this._addEventListeners(); + } // Getters + + + var _proto = Carousel.prototype; + + // Public + _proto.next = function next() { + if (!this._isSliding) { + this._slide(Direction.NEXT); + } + }; + + _proto.nextWhenVisible = function nextWhenVisible() { + // Don't call next when the page isn't visible + // or the carousel or its parent isn't visible + if (!document.hidden && $(this._element).is(':visible') && $(this._element).css('visibility') !== 'hidden') { + this.next(); + } + }; + + _proto.prev = function prev() { + if (!this._isSliding) { + this._slide(Direction.PREV); + } + }; + + _proto.pause = function pause(event) { + if (!event) { + this._isPaused = true; + } + + if (this._element.querySelector(Selector$2.NEXT_PREV)) { + Util.triggerTransitionEnd(this._element); + this.cycle(true); + } + + clearInterval(this._interval); + this._interval = null; + }; + + _proto.cycle = function cycle(event) { + if (!event) { + this._isPaused = false; + } + + if (this._interval) { + clearInterval(this._interval); + this._interval = null; + } + + if (this._config.interval && !this._isPaused) { + this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval); + } + }; + + _proto.to = function to(index) { + var _this = this; + + this._activeElement = this._element.querySelector(Selector$2.ACTIVE_ITEM); + + var activeIndex = this._getItemIndex(this._activeElement); + + if (index > this._items.length - 1 || index < 0) { + return; + } + + if (this._isSliding) { + $(this._element).one(Event$2.SLID, function () { + return _this.to(index); + }); + return; + } + + if (activeIndex === index) { + this.pause(); + this.cycle(); + return; + } + + var direction = index > activeIndex ? Direction.NEXT : Direction.PREV; + + this._slide(direction, this._items[index]); + }; + + _proto.dispose = function dispose() { + $(this._element).off(EVENT_KEY$2); + $.removeData(this._element, DATA_KEY$2); + this._items = null; + this._config = null; + this._element = null; + this._interval = null; + this._isPaused = null; + this._isSliding = null; + this._activeElement = null; + this._indicatorsElement = null; + } // Private + ; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, Default, config); + Util.typeCheckConfig(NAME$2, config, DefaultType); + return config; + }; + + _proto._handleSwipe = function _handleSwipe() { + var absDeltax = Math.abs(this.touchDeltaX); + + if (absDeltax <= SWIPE_THRESHOLD) { + return; + } + + var direction = absDeltax / this.touchDeltaX; // swipe left + + if (direction > 0) { + this.prev(); + } // swipe right + + + if (direction < 0) { + this.next(); + } + }; + + _proto._addEventListeners = function _addEventListeners() { + var _this2 = this; + + if (this._config.keyboard) { + $(this._element).on(Event$2.KEYDOWN, function (event) { + return _this2._keydown(event); + }); + } + + if (this._config.pause === 'hover') { + $(this._element).on(Event$2.MOUSEENTER, function (event) { + return _this2.pause(event); + }).on(Event$2.MOUSELEAVE, function (event) { + return _this2.cycle(event); + }); + } + + if (this._config.touch) { + this._addTouchEventListeners(); + } + }; + + _proto._addTouchEventListeners = function _addTouchEventListeners() { + var _this3 = this; + + if (!this._touchSupported) { + return; + } + + var start = function start(event) { + if (_this3._pointerEvent && PointerType[event.originalEvent.pointerType.toUpperCase()]) { + _this3.touchStartX = event.originalEvent.clientX; + } else if (!_this3._pointerEvent) { + _this3.touchStartX = event.originalEvent.touches[0].clientX; + } + }; + + var move = function move(event) { + // ensure swiping with one touch and not pinching + if (event.originalEvent.touches && event.originalEvent.touches.length > 1) { + _this3.touchDeltaX = 0; + } else { + _this3.touchDeltaX = event.originalEvent.touches[0].clientX - _this3.touchStartX; + } + }; + + var end = function end(event) { + if (_this3._pointerEvent && PointerType[event.originalEvent.pointerType.toUpperCase()]) { + _this3.touchDeltaX = event.originalEvent.clientX - _this3.touchStartX; + } + + _this3._handleSwipe(); + + if (_this3._config.pause === 'hover') { + // If it's a touch-enabled device, mouseenter/leave are fired as + // part of the mouse compatibility events on first tap - the carousel + // would stop cycling until user tapped out of it; + // here, we listen for touchend, explicitly pause the carousel + // (as if it's the second time we tap on it, mouseenter compat event + // is NOT fired) and after a timeout (to allow for mouse compatibility + // events to fire) we explicitly restart cycling + _this3.pause(); + + if (_this3.touchTimeout) { + clearTimeout(_this3.touchTimeout); + } + + _this3.touchTimeout = setTimeout(function (event) { + return _this3.cycle(event); + }, TOUCHEVENT_COMPAT_WAIT + _this3._config.interval); + } + }; + + $(this._element.querySelectorAll(Selector$2.ITEM_IMG)).on(Event$2.DRAG_START, function (e) { + return e.preventDefault(); + }); + + if (this._pointerEvent) { + $(this._element).on(Event$2.POINTERDOWN, function (event) { + return start(event); + }); + $(this._element).on(Event$2.POINTERUP, function (event) { + return end(event); + }); + + this._element.classList.add(ClassName$2.POINTER_EVENT); + } else { + $(this._element).on(Event$2.TOUCHSTART, function (event) { + return start(event); + }); + $(this._element).on(Event$2.TOUCHMOVE, function (event) { + return move(event); + }); + $(this._element).on(Event$2.TOUCHEND, function (event) { + return end(event); + }); + } + }; + + _proto._keydown = function _keydown(event) { + if (/input|textarea/i.test(event.target.tagName)) { + return; + } + + switch (event.which) { + case ARROW_LEFT_KEYCODE: + event.preventDefault(); + this.prev(); + break; + + case ARROW_RIGHT_KEYCODE: + event.preventDefault(); + this.next(); + break; + + default: + } + }; + + _proto._getItemIndex = function _getItemIndex(element) { + this._items = element && element.parentNode ? [].slice.call(element.parentNode.querySelectorAll(Selector$2.ITEM)) : []; + return this._items.indexOf(element); + }; + + _proto._getItemByDirection = function _getItemByDirection(direction, activeElement) { + var isNextDirection = direction === Direction.NEXT; + var isPrevDirection = direction === Direction.PREV; + + var activeIndex = this._getItemIndex(activeElement); + + var lastItemIndex = this._items.length - 1; + var isGoingToWrap = isPrevDirection && activeIndex === 0 || isNextDirection && activeIndex === lastItemIndex; + + if (isGoingToWrap && !this._config.wrap) { + return activeElement; + } + + var delta = direction === Direction.PREV ? -1 : 1; + var itemIndex = (activeIndex + delta) % this._items.length; + return itemIndex === -1 ? this._items[this._items.length - 1] : this._items[itemIndex]; + }; + + _proto._triggerSlideEvent = function _triggerSlideEvent(relatedTarget, eventDirectionName) { + var targetIndex = this._getItemIndex(relatedTarget); + + var fromIndex = this._getItemIndex(this._element.querySelector(Selector$2.ACTIVE_ITEM)); + + var slideEvent = $.Event(Event$2.SLIDE, { + relatedTarget: relatedTarget, + direction: eventDirectionName, + from: fromIndex, + to: targetIndex + }); + $(this._element).trigger(slideEvent); + return slideEvent; + }; + + _proto._setActiveIndicatorElement = function _setActiveIndicatorElement(element) { + if (this._indicatorsElement) { + var indicators = [].slice.call(this._indicatorsElement.querySelectorAll(Selector$2.ACTIVE)); + $(indicators).removeClass(ClassName$2.ACTIVE); + + var nextIndicator = this._indicatorsElement.children[this._getItemIndex(element)]; + + if (nextIndicator) { + $(nextIndicator).addClass(ClassName$2.ACTIVE); + } + } + }; + + _proto._slide = function _slide(direction, element) { + var _this4 = this; + + var activeElement = this._element.querySelector(Selector$2.ACTIVE_ITEM); + + var activeElementIndex = this._getItemIndex(activeElement); + + var nextElement = element || activeElement && this._getItemByDirection(direction, activeElement); + + var nextElementIndex = this._getItemIndex(nextElement); + + var isCycling = Boolean(this._interval); + var directionalClassName; + var orderClassName; + var eventDirectionName; + + if (direction === Direction.NEXT) { + directionalClassName = ClassName$2.LEFT; + orderClassName = ClassName$2.NEXT; + eventDirectionName = Direction.LEFT; + } else { + directionalClassName = ClassName$2.RIGHT; + orderClassName = ClassName$2.PREV; + eventDirectionName = Direction.RIGHT; + } + + if (nextElement && $(nextElement).hasClass(ClassName$2.ACTIVE)) { + this._isSliding = false; + return; + } + + var slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName); + + if (slideEvent.isDefaultPrevented()) { + return; + } + + if (!activeElement || !nextElement) { + // Some weirdness is happening, so we bail + return; + } + + this._isSliding = true; + + if (isCycling) { + this.pause(); + } + + this._setActiveIndicatorElement(nextElement); + + var slidEvent = $.Event(Event$2.SLID, { + relatedTarget: nextElement, + direction: eventDirectionName, + from: activeElementIndex, + to: nextElementIndex + }); + + if ($(this._element).hasClass(ClassName$2.SLIDE)) { + $(nextElement).addClass(orderClassName); + Util.reflow(nextElement); + $(activeElement).addClass(directionalClassName); + $(nextElement).addClass(directionalClassName); + var nextElementInterval = parseInt(nextElement.getAttribute('data-interval'), 10); + + if (nextElementInterval) { + this._config.defaultInterval = this._config.defaultInterval || this._config.interval; + this._config.interval = nextElementInterval; + } else { + this._config.interval = this._config.defaultInterval || this._config.interval; + } + + var transitionDuration = Util.getTransitionDurationFromElement(activeElement); + $(activeElement).one(Util.TRANSITION_END, function () { + $(nextElement).removeClass(directionalClassName + " " + orderClassName).addClass(ClassName$2.ACTIVE); + $(activeElement).removeClass(ClassName$2.ACTIVE + " " + orderClassName + " " + directionalClassName); + _this4._isSliding = false; + setTimeout(function () { + return $(_this4._element).trigger(slidEvent); + }, 0); + }).emulateTransitionEnd(transitionDuration); + } else { + $(activeElement).removeClass(ClassName$2.ACTIVE); + $(nextElement).addClass(ClassName$2.ACTIVE); + this._isSliding = false; + $(this._element).trigger(slidEvent); + } + + if (isCycling) { + this.cycle(); + } + } // Static + ; + + Carousel._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$2); + + var _config = _objectSpread({}, Default, $(this).data()); + + if (typeof config === 'object') { + _config = _objectSpread({}, _config, config); + } + + var action = typeof config === 'string' ? config : _config.slide; + + if (!data) { + data = new Carousel(this, _config); + $(this).data(DATA_KEY$2, data); + } + + if (typeof config === 'number') { + data.to(config); + } else if (typeof action === 'string') { + if (typeof data[action] === 'undefined') { + throw new TypeError("No method named \"" + action + "\""); + } + + data[action](); + } else if (_config.interval && _config.ride) { + data.pause(); + data.cycle(); + } + }); + }; + + Carousel._dataApiClickHandler = function _dataApiClickHandler(event) { + var selector = Util.getSelectorFromElement(this); + + if (!selector) { + return; + } + + var target = $(selector)[0]; + + if (!target || !$(target).hasClass(ClassName$2.CAROUSEL)) { + return; + } + + var config = _objectSpread({}, $(target).data(), $(this).data()); + + var slideIndex = this.getAttribute('data-slide-to'); + + if (slideIndex) { + config.interval = false; + } + + Carousel._jQueryInterface.call($(target), config); + + if (slideIndex) { + $(target).data(DATA_KEY$2).to(slideIndex); + } + + event.preventDefault(); + }; + + _createClass(Carousel, null, [{ + key: "VERSION", + get: function get() { + return VERSION$2; + } + }, { + key: "Default", + get: function get() { + return Default; + } + }]); + + return Carousel; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(Event$2.CLICK_DATA_API, Selector$2.DATA_SLIDE, Carousel._dataApiClickHandler); + $(window).on(Event$2.LOAD_DATA_API, function () { + var carousels = [].slice.call(document.querySelectorAll(Selector$2.DATA_RIDE)); + + for (var i = 0, len = carousels.length; i < len; i++) { + var $carousel = $(carousels[i]); + + Carousel._jQueryInterface.call($carousel, $carousel.data()); + } + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$2] = Carousel._jQueryInterface; + $.fn[NAME$2].Constructor = Carousel; + + $.fn[NAME$2].noConflict = function () { + $.fn[NAME$2] = JQUERY_NO_CONFLICT$2; + return Carousel._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$3 = 'collapse'; + var VERSION$3 = '4.3.0'; + var DATA_KEY$3 = 'bs.collapse'; + var EVENT_KEY$3 = "." + DATA_KEY$3; + var DATA_API_KEY$3 = '.data-api'; + var JQUERY_NO_CONFLICT$3 = $.fn[NAME$3]; + var Default$1 = { + toggle: true, + parent: '' + }; + var DefaultType$1 = { + toggle: 'boolean', + parent: '(string|element)' + }; + var Event$3 = { + SHOW: "show" + EVENT_KEY$3, + SHOWN: "shown" + EVENT_KEY$3, + HIDE: "hide" + EVENT_KEY$3, + HIDDEN: "hidden" + EVENT_KEY$3, + CLICK_DATA_API: "click" + EVENT_KEY$3 + DATA_API_KEY$3 + }; + var ClassName$3 = { + SHOW: 'show', + COLLAPSE: 'collapse', + COLLAPSING: 'collapsing', + COLLAPSED: 'collapsed' + }; + var Dimension = { + WIDTH: 'width', + HEIGHT: 'height' + }; + var Selector$3 = { + ACTIVES: '.show, .collapsing', + DATA_TOGGLE: '[data-toggle="collapse"]' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Collapse = + /*#__PURE__*/ + function () { + function Collapse(element, config) { + this._isTransitioning = false; + this._element = element; + this._config = this._getConfig(config); + this._triggerArray = [].slice.call(document.querySelectorAll("[data-toggle=\"collapse\"][href=\"#" + element.id + "\"]," + ("[data-toggle=\"collapse\"][data-target=\"#" + element.id + "\"]"))); + var toggleList = [].slice.call(document.querySelectorAll(Selector$3.DATA_TOGGLE)); + + for (var i = 0, len = toggleList.length; i < len; i++) { + var elem = toggleList[i]; + var selector = Util.getSelectorFromElement(elem); + var filterElement = [].slice.call(document.querySelectorAll(selector)).filter(function (foundElem) { + return foundElem === element; + }); + + if (selector !== null && filterElement.length > 0) { + this._selector = selector; + + this._triggerArray.push(elem); + } + } + + this._parent = this._config.parent ? this._getParent() : null; + + if (!this._config.parent) { + this._addAriaAndCollapsedClass(this._element, this._triggerArray); + } + + if (this._config.toggle) { + this.toggle(); + } + } // Getters + + + var _proto = Collapse.prototype; + + // Public + _proto.toggle = function toggle() { + if ($(this._element).hasClass(ClassName$3.SHOW)) { + this.hide(); + } else { + this.show(); + } + }; + + _proto.show = function show() { + var _this = this; + + if (this._isTransitioning || $(this._element).hasClass(ClassName$3.SHOW)) { + return; + } + + var actives; + var activesData; + + if (this._parent) { + actives = [].slice.call(this._parent.querySelectorAll(Selector$3.ACTIVES)).filter(function (elem) { + if (typeof _this._config.parent === 'string') { + return elem.getAttribute('data-parent') === _this._config.parent; + } + + return elem.classList.contains(ClassName$3.COLLAPSE); + }); + + if (actives.length === 0) { + actives = null; + } + } + + if (actives) { + activesData = $(actives).not(this._selector).data(DATA_KEY$3); + + if (activesData && activesData._isTransitioning) { + return; + } + } + + var startEvent = $.Event(Event$3.SHOW); + $(this._element).trigger(startEvent); + + if (startEvent.isDefaultPrevented()) { + return; + } + + if (actives) { + Collapse._jQueryInterface.call($(actives).not(this._selector), 'hide'); + + if (!activesData) { + $(actives).data(DATA_KEY$3, null); + } + } + + var dimension = this._getDimension(); + + $(this._element).removeClass(ClassName$3.COLLAPSE).addClass(ClassName$3.COLLAPSING); + this._element.style[dimension] = 0; + + if (this._triggerArray.length) { + $(this._triggerArray).removeClass(ClassName$3.COLLAPSED).attr('aria-expanded', true); + } + + this.setTransitioning(true); + + var complete = function complete() { + $(_this._element).removeClass(ClassName$3.COLLAPSING).addClass(ClassName$3.COLLAPSE).addClass(ClassName$3.SHOW); + _this._element.style[dimension] = ''; + + _this.setTransitioning(false); + + $(_this._element).trigger(Event$3.SHOWN); + }; + + var capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1); + var scrollSize = "scroll" + capitalizedDimension; + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + this._element.style[dimension] = this._element[scrollSize] + "px"; + }; + + _proto.hide = function hide() { + var _this2 = this; + + if (this._isTransitioning || !$(this._element).hasClass(ClassName$3.SHOW)) { + return; + } + + var startEvent = $.Event(Event$3.HIDE); + $(this._element).trigger(startEvent); + + if (startEvent.isDefaultPrevented()) { + return; + } + + var dimension = this._getDimension(); + + this._element.style[dimension] = this._element.getBoundingClientRect()[dimension] + "px"; + Util.reflow(this._element); + $(this._element).addClass(ClassName$3.COLLAPSING).removeClass(ClassName$3.COLLAPSE).removeClass(ClassName$3.SHOW); + var triggerArrayLength = this._triggerArray.length; + + if (triggerArrayLength > 0) { + for (var i = 0; i < triggerArrayLength; i++) { + var trigger = this._triggerArray[i]; + var selector = Util.getSelectorFromElement(trigger); + + if (selector !== null) { + var $elem = $([].slice.call(document.querySelectorAll(selector))); + + if (!$elem.hasClass(ClassName$3.SHOW)) { + $(trigger).addClass(ClassName$3.COLLAPSED).attr('aria-expanded', false); + } + } + } + } + + this.setTransitioning(true); + + var complete = function complete() { + _this2.setTransitioning(false); + + $(_this2._element).removeClass(ClassName$3.COLLAPSING).addClass(ClassName$3.COLLAPSE).trigger(Event$3.HIDDEN); + }; + + this._element.style[dimension] = ''; + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + }; + + _proto.setTransitioning = function setTransitioning(isTransitioning) { + this._isTransitioning = isTransitioning; + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY$3); + this._config = null; + this._parent = null; + this._element = null; + this._triggerArray = null; + this._isTransitioning = null; + } // Private + ; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, Default$1, config); + config.toggle = Boolean(config.toggle); // Coerce string values + + Util.typeCheckConfig(NAME$3, config, DefaultType$1); + return config; + }; + + _proto._getDimension = function _getDimension() { + var hasWidth = $(this._element).hasClass(Dimension.WIDTH); + return hasWidth ? Dimension.WIDTH : Dimension.HEIGHT; + }; + + _proto._getParent = function _getParent() { + var _this3 = this; + + var parent; + + if (Util.isElement(this._config.parent)) { + parent = this._config.parent; // It's a jQuery object + + if (typeof this._config.parent.jquery !== 'undefined') { + parent = this._config.parent[0]; + } + } else { + parent = document.querySelector(this._config.parent); + } + + var selector = "[data-toggle=\"collapse\"][data-parent=\"" + this._config.parent + "\"]"; + var children = [].slice.call(parent.querySelectorAll(selector)); + $(children).each(function (i, element) { + _this3._addAriaAndCollapsedClass(Collapse._getTargetFromElement(element), [element]); + }); + return parent; + }; + + _proto._addAriaAndCollapsedClass = function _addAriaAndCollapsedClass(element, triggerArray) { + var isOpen = $(element).hasClass(ClassName$3.SHOW); + + if (triggerArray.length) { + $(triggerArray).toggleClass(ClassName$3.COLLAPSED, !isOpen).attr('aria-expanded', isOpen); + } + } // Static + ; + + Collapse._getTargetFromElement = function _getTargetFromElement(element) { + var selector = Util.getSelectorFromElement(element); + return selector ? document.querySelector(selector) : null; + }; + + Collapse._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var $this = $(this); + var data = $this.data(DATA_KEY$3); + + var _config = _objectSpread({}, Default$1, $this.data(), typeof config === 'object' && config ? config : {}); + + if (!data && _config.toggle && /show|hide/.test(config)) { + _config.toggle = false; + } + + if (!data) { + data = new Collapse(this, _config); + $this.data(DATA_KEY$3, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + _createClass(Collapse, null, [{ + key: "VERSION", + get: function get() { + return VERSION$3; + } + }, { + key: "Default", + get: function get() { + return Default$1; + } + }]); + + return Collapse; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(Event$3.CLICK_DATA_API, Selector$3.DATA_TOGGLE, function (event) { + // preventDefault only for <a> elements (which change the URL) not inside the collapsible element + if (event.currentTarget.tagName === 'A') { + event.preventDefault(); + } + + var $trigger = $(this); + var selector = Util.getSelectorFromElement(this); + var selectors = [].slice.call(document.querySelectorAll(selector)); + $(selectors).each(function () { + var $target = $(this); + var data = $target.data(DATA_KEY$3); + var config = data ? 'toggle' : $trigger.data(); + + Collapse._jQueryInterface.call($target, config); + }); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$3] = Collapse._jQueryInterface; + $.fn[NAME$3].Constructor = Collapse; + + $.fn[NAME$3].noConflict = function () { + $.fn[NAME$3] = JQUERY_NO_CONFLICT$3; + return Collapse._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$4 = 'dropdown'; + var VERSION$4 = '4.3.0'; + var DATA_KEY$4 = 'bs.dropdown'; + var EVENT_KEY$4 = "." + DATA_KEY$4; + var DATA_API_KEY$4 = '.data-api'; + var JQUERY_NO_CONFLICT$4 = $.fn[NAME$4]; + var ESCAPE_KEYCODE = 27; // KeyboardEvent.which value for Escape (Esc) key + + var SPACE_KEYCODE = 32; // KeyboardEvent.which value for space key + + var TAB_KEYCODE = 9; // KeyboardEvent.which value for tab key + + var ARROW_UP_KEYCODE = 38; // KeyboardEvent.which value for up arrow key + + var ARROW_DOWN_KEYCODE = 40; // KeyboardEvent.which value for down arrow key + + var RIGHT_MOUSE_BUTTON_WHICH = 3; // MouseEvent.which value for the right button (assuming a right-handed mouse) + + var REGEXP_KEYDOWN = new RegExp(ARROW_UP_KEYCODE + "|" + ARROW_DOWN_KEYCODE + "|" + ESCAPE_KEYCODE); + var Event$4 = { + HIDE: "hide" + EVENT_KEY$4, + HIDDEN: "hidden" + EVENT_KEY$4, + SHOW: "show" + EVENT_KEY$4, + SHOWN: "shown" + EVENT_KEY$4, + CLICK: "click" + EVENT_KEY$4, + CLICK_DATA_API: "click" + EVENT_KEY$4 + DATA_API_KEY$4, + KEYDOWN_DATA_API: "keydown" + EVENT_KEY$4 + DATA_API_KEY$4, + KEYUP_DATA_API: "keyup" + EVENT_KEY$4 + DATA_API_KEY$4 + }; + var ClassName$4 = { + DISABLED: 'disabled', + SHOW: 'show', + DROPUP: 'dropup', + DROPRIGHT: 'dropright', + DROPLEFT: 'dropleft', + MENURIGHT: 'dropdown-menu-right', + MENULEFT: 'dropdown-menu-left', + POSITION_STATIC: 'position-static' + }; + var Selector$4 = { + DATA_TOGGLE: '[data-toggle="dropdown"]', + FORM_CHILD: '.dropdown form', + MENU: '.dropdown-menu', + NAVBAR_NAV: '.navbar-nav', + VISIBLE_ITEMS: '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)' + }; + var AttachmentMap = { + TOP: 'top-start', + TOPEND: 'top-end', + BOTTOM: 'bottom-start', + BOTTOMEND: 'bottom-end', + RIGHT: 'right-start', + RIGHTEND: 'right-end', + LEFT: 'left-start', + LEFTEND: 'left-end' + }; + var Default$2 = { + offset: 0, + flip: true, + boundary: 'scrollParent', + reference: 'toggle', + display: 'dynamic' + }; + var DefaultType$2 = { + offset: '(number|string|function)', + flip: 'boolean', + boundary: '(string|element)', + reference: '(string|element)', + display: 'string' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Dropdown = + /*#__PURE__*/ + function () { + function Dropdown(element, config) { + this._element = element; + this._popper = null; + this._config = this._getConfig(config); + this._menu = this._getMenuElement(); + this._inNavbar = this._detectNavbar(); + + this._addEventListeners(); + } // Getters + + + var _proto = Dropdown.prototype; + + // Public + _proto.toggle = function toggle() { + if (this._element.disabled || $(this._element).hasClass(ClassName$4.DISABLED)) { + return; + } + + var parent = Dropdown._getParentFromElement(this._element); + + var isActive = $(this._menu).hasClass(ClassName$4.SHOW); + + Dropdown._clearMenus(); + + if (isActive) { + return; + } + + var relatedTarget = { + relatedTarget: this._element + }; + var showEvent = $.Event(Event$4.SHOW, relatedTarget); + $(parent).trigger(showEvent); + + if (showEvent.isDefaultPrevented()) { + return; + } // Disable totally Popper.js for Dropdown in Navbar + + + if (!this._inNavbar) { + /** + * Check for Popper dependency + * Popper - https://popper.js.org + */ + if (typeof Popper === 'undefined') { + throw new TypeError('Bootstrap\'s dropdowns require Popper.js (https://popper.js.org/)'); + } + + var referenceElement = this._element; + + if (this._config.reference === 'parent') { + referenceElement = parent; + } else if (Util.isElement(this._config.reference)) { + referenceElement = this._config.reference; // Check if it's jQuery element + + if (typeof this._config.reference.jquery !== 'undefined') { + referenceElement = this._config.reference[0]; + } + } // If boundary is not `scrollParent`, then set position to `static` + // to allow the menu to "escape" the scroll parent's boundaries + // https://github.com/twbs/bootstrap/issues/24251 + + + if (this._config.boundary !== 'scrollParent') { + $(parent).addClass(ClassName$4.POSITION_STATIC); + } + + this._popper = new Popper(referenceElement, this._menu, this._getPopperConfig()); + } // If this is a touch-enabled device we add extra + // empty mouseover listeners to the body's immediate children; + // only needed because of broken event delegation on iOS + // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html + + + if ('ontouchstart' in document.documentElement && $(parent).closest(Selector$4.NAVBAR_NAV).length === 0) { + $(document.body).children().on('mouseover', null, $.noop); + } + + this._element.focus(); + + this._element.setAttribute('aria-expanded', true); + + $(this._menu).toggleClass(ClassName$4.SHOW); + $(parent).toggleClass(ClassName$4.SHOW).trigger($.Event(Event$4.SHOWN, relatedTarget)); + }; + + _proto.show = function show() { + if (this._element.disabled || $(this._element).hasClass(ClassName$4.DISABLED) || $(this._menu).hasClass(ClassName$4.SHOW)) { + return; + } + + var relatedTarget = { + relatedTarget: this._element + }; + var showEvent = $.Event(Event$4.SHOW, relatedTarget); + + var parent = Dropdown._getParentFromElement(this._element); + + $(parent).trigger(showEvent); + + if (showEvent.isDefaultPrevented()) { + return; + } + + $(this._menu).toggleClass(ClassName$4.SHOW); + $(parent).toggleClass(ClassName$4.SHOW).trigger($.Event(Event$4.SHOWN, relatedTarget)); + }; + + _proto.hide = function hide() { + if (this._element.disabled || $(this._element).hasClass(ClassName$4.DISABLED) || !$(this._menu).hasClass(ClassName$4.SHOW)) { + return; + } + + var relatedTarget = { + relatedTarget: this._element + }; + var hideEvent = $.Event(Event$4.HIDE, relatedTarget); + + var parent = Dropdown._getParentFromElement(this._element); + + $(parent).trigger(hideEvent); + + if (hideEvent.isDefaultPrevented()) { + return; + } + + $(this._menu).toggleClass(ClassName$4.SHOW); + $(parent).toggleClass(ClassName$4.SHOW).trigger($.Event(Event$4.HIDDEN, relatedTarget)); + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY$4); + $(this._element).off(EVENT_KEY$4); + this._element = null; + this._menu = null; + + if (this._popper !== null) { + this._popper.destroy(); + + this._popper = null; + } + }; + + _proto.update = function update() { + this._inNavbar = this._detectNavbar(); + + if (this._popper !== null) { + this._popper.scheduleUpdate(); + } + } // Private + ; + + _proto._addEventListeners = function _addEventListeners() { + var _this = this; + + $(this._element).on(Event$4.CLICK, function (event) { + event.preventDefault(); + event.stopPropagation(); + + _this.toggle(); + }); + }; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, this.constructor.Default, $(this._element).data(), config); + Util.typeCheckConfig(NAME$4, config, this.constructor.DefaultType); + return config; + }; + + _proto._getMenuElement = function _getMenuElement() { + if (!this._menu) { + var parent = Dropdown._getParentFromElement(this._element); + + if (parent) { + this._menu = parent.querySelector(Selector$4.MENU); + } + } + + return this._menu; + }; + + _proto._getPlacement = function _getPlacement() { + var $parentDropdown = $(this._element.parentNode); + var placement = AttachmentMap.BOTTOM; // Handle dropup + + if ($parentDropdown.hasClass(ClassName$4.DROPUP)) { + placement = AttachmentMap.TOP; + + if ($(this._menu).hasClass(ClassName$4.MENURIGHT)) { + placement = AttachmentMap.TOPEND; + } + } else if ($parentDropdown.hasClass(ClassName$4.DROPRIGHT)) { + placement = AttachmentMap.RIGHT; + } else if ($parentDropdown.hasClass(ClassName$4.DROPLEFT)) { + placement = AttachmentMap.LEFT; + } else if ($(this._menu).hasClass(ClassName$4.MENURIGHT)) { + placement = AttachmentMap.BOTTOMEND; + } + + return placement; + }; + + _proto._detectNavbar = function _detectNavbar() { + return $(this._element).closest('.navbar').length > 0; + }; + + _proto._getOffset = function _getOffset() { + var _this2 = this; + + var offset = {}; + + if (typeof this._config.offset === 'function') { + offset.fn = function (data) { + data.offsets = _objectSpread({}, data.offsets, _this2._config.offset(data.offsets, _this2._element) || {}); + return data; + }; + } else { + offset.offset = this._config.offset; + } + + return offset; + }; + + _proto._getPopperConfig = function _getPopperConfig() { + var popperConfig = { + placement: this._getPlacement(), + modifiers: { + offset: this._getOffset(), + flip: { + enabled: this._config.flip + }, + preventOverflow: { + boundariesElement: this._config.boundary + } + } // Disable Popper.js if we have a static display + + }; + + if (this._config.display === 'static') { + popperConfig.modifiers.applyStyle = { + enabled: false + }; + } + + return popperConfig; + } // Static + ; + + Dropdown._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$4); + + var _config = typeof config === 'object' ? config : null; + + if (!data) { + data = new Dropdown(this, _config); + $(this).data(DATA_KEY$4, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + Dropdown._clearMenus = function _clearMenus(event) { + if (event && (event.which === RIGHT_MOUSE_BUTTON_WHICH || event.type === 'keyup' && event.which !== TAB_KEYCODE)) { + return; + } + + var toggles = [].slice.call(document.querySelectorAll(Selector$4.DATA_TOGGLE)); + + for (var i = 0, len = toggles.length; i < len; i++) { + var parent = Dropdown._getParentFromElement(toggles[i]); + + var context = $(toggles[i]).data(DATA_KEY$4); + var relatedTarget = { + relatedTarget: toggles[i] + }; + + if (event && event.type === 'click') { + relatedTarget.clickEvent = event; + } + + if (!context) { + continue; + } + + var dropdownMenu = context._menu; + + if (!$(parent).hasClass(ClassName$4.SHOW)) { + continue; + } + + if (event && (event.type === 'click' && /input|textarea/i.test(event.target.tagName) || event.type === 'keyup' && event.which === TAB_KEYCODE) && $.contains(parent, event.target)) { + continue; + } + + var hideEvent = $.Event(Event$4.HIDE, relatedTarget); + $(parent).trigger(hideEvent); + + if (hideEvent.isDefaultPrevented()) { + continue; + } // If this is a touch-enabled device we remove the extra + // empty mouseover listeners we added for iOS support + + + if ('ontouchstart' in document.documentElement) { + $(document.body).children().off('mouseover', null, $.noop); + } + + toggles[i].setAttribute('aria-expanded', 'false'); + $(dropdownMenu).removeClass(ClassName$4.SHOW); + $(parent).removeClass(ClassName$4.SHOW).trigger($.Event(Event$4.HIDDEN, relatedTarget)); + } + }; + + Dropdown._getParentFromElement = function _getParentFromElement(element) { + var parent; + var selector = Util.getSelectorFromElement(element); + + if (selector) { + parent = document.querySelector(selector); + } + + return parent || element.parentNode; + } // eslint-disable-next-line complexity + ; + + Dropdown._dataApiKeydownHandler = function _dataApiKeydownHandler(event) { + // If not input/textarea: + // - And not a key in REGEXP_KEYDOWN => not a dropdown command + // If input/textarea: + // - If space key => not a dropdown command + // - If key is other than escape + // - If key is not up or down => not a dropdown command + // - If trigger inside the menu => not a dropdown command + if (/input|textarea/i.test(event.target.tagName) ? event.which === SPACE_KEYCODE || event.which !== ESCAPE_KEYCODE && (event.which !== ARROW_DOWN_KEYCODE && event.which !== ARROW_UP_KEYCODE || $(event.target).closest(Selector$4.MENU).length) : !REGEXP_KEYDOWN.test(event.which)) { + return; + } + + event.preventDefault(); + event.stopPropagation(); + + if (this.disabled || $(this).hasClass(ClassName$4.DISABLED)) { + return; + } + + var parent = Dropdown._getParentFromElement(this); + + var isActive = $(parent).hasClass(ClassName$4.SHOW); + + if (!isActive || isActive && (event.which === ESCAPE_KEYCODE || event.which === SPACE_KEYCODE)) { + if (event.which === ESCAPE_KEYCODE) { + var toggle = parent.querySelector(Selector$4.DATA_TOGGLE); + $(toggle).trigger('focus'); + } + + $(this).trigger('click'); + return; + } + + var items = [].slice.call(parent.querySelectorAll(Selector$4.VISIBLE_ITEMS)); + + if (items.length === 0) { + return; + } + + var index = items.indexOf(event.target); + + if (event.which === ARROW_UP_KEYCODE && index > 0) { + // Up + index--; + } + + if (event.which === ARROW_DOWN_KEYCODE && index < items.length - 1) { + // Down + index++; + } + + if (index < 0) { + index = 0; + } + + items[index].focus(); + }; + + _createClass(Dropdown, null, [{ + key: "VERSION", + get: function get() { + return VERSION$4; + } + }, { + key: "Default", + get: function get() { + return Default$2; + } + }, { + key: "DefaultType", + get: function get() { + return DefaultType$2; + } + }]); + + return Dropdown; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(Event$4.KEYDOWN_DATA_API, Selector$4.DATA_TOGGLE, Dropdown._dataApiKeydownHandler).on(Event$4.KEYDOWN_DATA_API, Selector$4.MENU, Dropdown._dataApiKeydownHandler).on(Event$4.CLICK_DATA_API + " " + Event$4.KEYUP_DATA_API, Dropdown._clearMenus).on(Event$4.CLICK_DATA_API, Selector$4.DATA_TOGGLE, function (event) { + event.preventDefault(); + event.stopPropagation(); + + Dropdown._jQueryInterface.call($(this), 'toggle'); + }).on(Event$4.CLICK_DATA_API, Selector$4.FORM_CHILD, function (e) { + e.stopPropagation(); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$4] = Dropdown._jQueryInterface; + $.fn[NAME$4].Constructor = Dropdown; + + $.fn[NAME$4].noConflict = function () { + $.fn[NAME$4] = JQUERY_NO_CONFLICT$4; + return Dropdown._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$5 = 'modal'; + var VERSION$5 = '4.3.0'; + var DATA_KEY$5 = 'bs.modal'; + var EVENT_KEY$5 = "." + DATA_KEY$5; + var DATA_API_KEY$5 = '.data-api'; + var JQUERY_NO_CONFLICT$5 = $.fn[NAME$5]; + var ESCAPE_KEYCODE$1 = 27; // KeyboardEvent.which value for Escape (Esc) key + + var Default$3 = { + backdrop: true, + keyboard: true, + focus: true, + show: true + }; + var DefaultType$3 = { + backdrop: '(boolean|string)', + keyboard: 'boolean', + focus: 'boolean', + show: 'boolean' + }; + var Event$5 = { + HIDE: "hide" + EVENT_KEY$5, + HIDDEN: "hidden" + EVENT_KEY$5, + SHOW: "show" + EVENT_KEY$5, + SHOWN: "shown" + EVENT_KEY$5, + FOCUSIN: "focusin" + EVENT_KEY$5, + RESIZE: "resize" + EVENT_KEY$5, + CLICK_DISMISS: "click.dismiss" + EVENT_KEY$5, + KEYDOWN_DISMISS: "keydown.dismiss" + EVENT_KEY$5, + MOUSEUP_DISMISS: "mouseup.dismiss" + EVENT_KEY$5, + MOUSEDOWN_DISMISS: "mousedown.dismiss" + EVENT_KEY$5, + CLICK_DATA_API: "click" + EVENT_KEY$5 + DATA_API_KEY$5 + }; + var ClassName$5 = { + SCROLLABLE: 'modal-dialog-scrollable', + SCROLLBAR_MEASURER: 'modal-scrollbar-measure', + BACKDROP: 'modal-backdrop', + OPEN: 'modal-open', + FADE: 'fade', + SHOW: 'show' + }; + var Selector$5 = { + DIALOG: '.modal-dialog', + MODAL_BODY: '.modal-body', + DATA_TOGGLE: '[data-toggle="modal"]', + DATA_DISMISS: '[data-dismiss="modal"]', + FIXED_CONTENT: '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top', + STICKY_CONTENT: '.sticky-top' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Modal = + /*#__PURE__*/ + function () { + function Modal(element, config) { + this._config = this._getConfig(config); + this._element = element; + this._dialog = element.querySelector(Selector$5.DIALOG); + this._backdrop = null; + this._isShown = false; + this._isBodyOverflowing = false; + this._ignoreBackdropClick = false; + this._isTransitioning = false; + this._scrollbarWidth = 0; + } // Getters + + + var _proto = Modal.prototype; + + // Public + _proto.toggle = function toggle(relatedTarget) { + return this._isShown ? this.hide() : this.show(relatedTarget); + }; + + _proto.show = function show(relatedTarget) { + var _this = this; + + if (this._isShown || this._isTransitioning) { + return; + } + + if ($(this._element).hasClass(ClassName$5.FADE)) { + this._isTransitioning = true; + } + + var showEvent = $.Event(Event$5.SHOW, { + relatedTarget: relatedTarget + }); + $(this._element).trigger(showEvent); + + if (this._isShown || showEvent.isDefaultPrevented()) { + return; + } + + this._isShown = true; + + this._checkScrollbar(); + + this._setScrollbar(); + + this._adjustDialog(); + + this._setEscapeEvent(); + + this._setResizeEvent(); + + $(this._element).on(Event$5.CLICK_DISMISS, Selector$5.DATA_DISMISS, function (event) { + return _this.hide(event); + }); + $(this._dialog).on(Event$5.MOUSEDOWN_DISMISS, function () { + $(_this._element).one(Event$5.MOUSEUP_DISMISS, function (event) { + if ($(event.target).is(_this._element)) { + _this._ignoreBackdropClick = true; + } + }); + }); + + this._showBackdrop(function () { + return _this._showElement(relatedTarget); + }); + }; + + _proto.hide = function hide(event) { + var _this2 = this; + + if (event) { + event.preventDefault(); + } + + if (!this._isShown || this._isTransitioning) { + return; + } + + var hideEvent = $.Event(Event$5.HIDE); + $(this._element).trigger(hideEvent); + + if (!this._isShown || hideEvent.isDefaultPrevented()) { + return; + } + + this._isShown = false; + var transition = $(this._element).hasClass(ClassName$5.FADE); + + if (transition) { + this._isTransitioning = true; + } + + this._setEscapeEvent(); + + this._setResizeEvent(); + + $(document).off(Event$5.FOCUSIN); + $(this._element).removeClass(ClassName$5.SHOW); + $(this._element).off(Event$5.CLICK_DISMISS); + $(this._dialog).off(Event$5.MOUSEDOWN_DISMISS); + + if (transition) { + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $(this._element).one(Util.TRANSITION_END, function (event) { + return _this2._hideModal(event); + }).emulateTransitionEnd(transitionDuration); + } else { + this._hideModal(); + } + }; + + _proto.dispose = function dispose() { + [window, this._element, this._dialog].forEach(function (htmlElement) { + return $(htmlElement).off(EVENT_KEY$5); + }); + /** + * `document` has 2 events `Event.FOCUSIN` and `Event.CLICK_DATA_API` + * Do not move `document` in `htmlElements` array + * It will remove `Event.CLICK_DATA_API` event that should remain + */ + + $(document).off(Event$5.FOCUSIN); + $.removeData(this._element, DATA_KEY$5); + this._config = null; + this._element = null; + this._dialog = null; + this._backdrop = null; + this._isShown = null; + this._isBodyOverflowing = null; + this._ignoreBackdropClick = null; + this._isTransitioning = null; + this._scrollbarWidth = null; + }; + + _proto.handleUpdate = function handleUpdate() { + this._adjustDialog(); + } // Private + ; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, Default$3, config); + Util.typeCheckConfig(NAME$5, config, DefaultType$3); + return config; + }; + + _proto._showElement = function _showElement(relatedTarget) { + var _this3 = this; + + var transition = $(this._element).hasClass(ClassName$5.FADE); + + if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) { + // Don't move modal's DOM position + document.body.appendChild(this._element); + } + + this._element.style.display = 'block'; + + this._element.removeAttribute('aria-hidden'); + + this._element.setAttribute('aria-modal', true); + + if ($(this._dialog).hasClass(ClassName$5.SCROLLABLE)) { + this._dialog.querySelector(Selector$5.MODAL_BODY).scrollTop = 0; + } else { + this._element.scrollTop = 0; + } + + if (transition) { + Util.reflow(this._element); + } + + $(this._element).addClass(ClassName$5.SHOW); + + if (this._config.focus) { + this._enforceFocus(); + } + + var shownEvent = $.Event(Event$5.SHOWN, { + relatedTarget: relatedTarget + }); + + var transitionComplete = function transitionComplete() { + if (_this3._config.focus) { + _this3._element.focus(); + } + + _this3._isTransitioning = false; + $(_this3._element).trigger(shownEvent); + }; + + if (transition) { + var transitionDuration = Util.getTransitionDurationFromElement(this._dialog); + $(this._dialog).one(Util.TRANSITION_END, transitionComplete).emulateTransitionEnd(transitionDuration); + } else { + transitionComplete(); + } + }; + + _proto._enforceFocus = function _enforceFocus() { + var _this4 = this; + + $(document).off(Event$5.FOCUSIN) // Guard against infinite focus loop + .on(Event$5.FOCUSIN, function (event) { + if (document !== event.target && _this4._element !== event.target && $(_this4._element).has(event.target).length === 0) { + _this4._element.focus(); + } + }); + }; + + _proto._setEscapeEvent = function _setEscapeEvent() { + var _this5 = this; + + if (this._isShown && this._config.keyboard) { + $(this._element).on(Event$5.KEYDOWN_DISMISS, function (event) { + if (event.which === ESCAPE_KEYCODE$1) { + event.preventDefault(); + + _this5.hide(); + } + }); + } else if (!this._isShown) { + $(this._element).off(Event$5.KEYDOWN_DISMISS); + } + }; + + _proto._setResizeEvent = function _setResizeEvent() { + var _this6 = this; + + if (this._isShown) { + $(window).on(Event$5.RESIZE, function (event) { + return _this6.handleUpdate(event); + }); + } else { + $(window).off(Event$5.RESIZE); + } + }; + + _proto._hideModal = function _hideModal() { + var _this7 = this; + + this._element.style.display = 'none'; + + this._element.setAttribute('aria-hidden', true); + + this._element.removeAttribute('aria-modal'); + + this._isTransitioning = false; + + this._showBackdrop(function () { + $(document.body).removeClass(ClassName$5.OPEN); + + _this7._resetAdjustments(); + + _this7._resetScrollbar(); + + $(_this7._element).trigger(Event$5.HIDDEN); + }); + }; + + _proto._removeBackdrop = function _removeBackdrop() { + if (this._backdrop) { + $(this._backdrop).remove(); + this._backdrop = null; + } + }; + + _proto._showBackdrop = function _showBackdrop(callback) { + var _this8 = this; + + var animate = $(this._element).hasClass(ClassName$5.FADE) ? ClassName$5.FADE : ''; + + if (this._isShown && this._config.backdrop) { + this._backdrop = document.createElement('div'); + this._backdrop.className = ClassName$5.BACKDROP; + + if (animate) { + this._backdrop.classList.add(animate); + } + + $(this._backdrop).appendTo(document.body); + $(this._element).on(Event$5.CLICK_DISMISS, function (event) { + if (_this8._ignoreBackdropClick) { + _this8._ignoreBackdropClick = false; + return; + } + + if (event.target !== event.currentTarget) { + return; + } + + if (_this8._config.backdrop === 'static') { + _this8._element.focus(); + } else { + _this8.hide(); + } + }); + + if (animate) { + Util.reflow(this._backdrop); + } + + $(this._backdrop).addClass(ClassName$5.SHOW); + + if (!callback) { + return; + } + + if (!animate) { + callback(); + return; + } + + var backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop); + $(this._backdrop).one(Util.TRANSITION_END, callback).emulateTransitionEnd(backdropTransitionDuration); + } else if (!this._isShown && this._backdrop) { + $(this._backdrop).removeClass(ClassName$5.SHOW); + + var callbackRemove = function callbackRemove() { + _this8._removeBackdrop(); + + if (callback) { + callback(); + } + }; + + if ($(this._element).hasClass(ClassName$5.FADE)) { + var _backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop); + + $(this._backdrop).one(Util.TRANSITION_END, callbackRemove).emulateTransitionEnd(_backdropTransitionDuration); + } else { + callbackRemove(); + } + } else if (callback) { + callback(); + } + } // ---------------------------------------------------------------------- + // the following methods are used to handle overflowing modals + // todo (fat): these should probably be refactored out of modal.js + // ---------------------------------------------------------------------- + ; + + _proto._adjustDialog = function _adjustDialog() { + var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight; + + if (!this._isBodyOverflowing && isModalOverflowing) { + this._element.style.paddingLeft = this._scrollbarWidth + "px"; + } + + if (this._isBodyOverflowing && !isModalOverflowing) { + this._element.style.paddingRight = this._scrollbarWidth + "px"; + } + }; + + _proto._resetAdjustments = function _resetAdjustments() { + this._element.style.paddingLeft = ''; + this._element.style.paddingRight = ''; + }; + + _proto._checkScrollbar = function _checkScrollbar() { + var rect = document.body.getBoundingClientRect(); + this._isBodyOverflowing = rect.left + rect.right < window.innerWidth; + this._scrollbarWidth = this._getScrollbarWidth(); + }; + + _proto._setScrollbar = function _setScrollbar() { + var _this9 = this; + + if (this._isBodyOverflowing) { + // Note: DOMNode.style.paddingRight returns the actual value or '' if not set + // while $(DOMNode).css('padding-right') returns the calculated value or 0 if not set + var fixedContent = [].slice.call(document.querySelectorAll(Selector$5.FIXED_CONTENT)); + var stickyContent = [].slice.call(document.querySelectorAll(Selector$5.STICKY_CONTENT)); // Adjust fixed content padding + + $(fixedContent).each(function (index, element) { + var actualPadding = element.style.paddingRight; + var calculatedPadding = $(element).css('padding-right'); + $(element).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + _this9._scrollbarWidth + "px"); + }); // Adjust sticky content margin + + $(stickyContent).each(function (index, element) { + var actualMargin = element.style.marginRight; + var calculatedMargin = $(element).css('margin-right'); + $(element).data('margin-right', actualMargin).css('margin-right', parseFloat(calculatedMargin) - _this9._scrollbarWidth + "px"); + }); // Adjust body padding + + var actualPadding = document.body.style.paddingRight; + var calculatedPadding = $(document.body).css('padding-right'); + $(document.body).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + this._scrollbarWidth + "px"); + } + + $(document.body).addClass(ClassName$5.OPEN); + }; + + _proto._resetScrollbar = function _resetScrollbar() { + // Restore fixed content padding + var fixedContent = [].slice.call(document.querySelectorAll(Selector$5.FIXED_CONTENT)); + $(fixedContent).each(function (index, element) { + var padding = $(element).data('padding-right'); + $(element).removeData('padding-right'); + element.style.paddingRight = padding ? padding : ''; + }); // Restore sticky content + + var elements = [].slice.call(document.querySelectorAll("" + Selector$5.STICKY_CONTENT)); + $(elements).each(function (index, element) { + var margin = $(element).data('margin-right'); + + if (typeof margin !== 'undefined') { + $(element).css('margin-right', margin).removeData('margin-right'); + } + }); // Restore body padding + + var padding = $(document.body).data('padding-right'); + $(document.body).removeData('padding-right'); + document.body.style.paddingRight = padding ? padding : ''; + }; + + _proto._getScrollbarWidth = function _getScrollbarWidth() { + // thx d.walsh + var scrollDiv = document.createElement('div'); + scrollDiv.className = ClassName$5.SCROLLBAR_MEASURER; + document.body.appendChild(scrollDiv); + var scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth; + document.body.removeChild(scrollDiv); + return scrollbarWidth; + } // Static + ; + + Modal._jQueryInterface = function _jQueryInterface(config, relatedTarget) { + return this.each(function () { + var data = $(this).data(DATA_KEY$5); + + var _config = _objectSpread({}, Default$3, $(this).data(), typeof config === 'object' && config ? config : {}); + + if (!data) { + data = new Modal(this, _config); + $(this).data(DATA_KEY$5, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](relatedTarget); + } else if (_config.show) { + data.show(relatedTarget); + } + }); + }; + + _createClass(Modal, null, [{ + key: "VERSION", + get: function get() { + return VERSION$5; + } + }, { + key: "Default", + get: function get() { + return Default$3; + } + }]); + + return Modal; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(Event$5.CLICK_DATA_API, Selector$5.DATA_TOGGLE, function (event) { + var _this10 = this; + + var target; + var selector = Util.getSelectorFromElement(this); + + if (selector) { + target = document.querySelector(selector); + } + + var config = $(target).data(DATA_KEY$5) ? 'toggle' : _objectSpread({}, $(target).data(), $(this).data()); + + if (this.tagName === 'A' || this.tagName === 'AREA') { + event.preventDefault(); + } + + var $target = $(target).one(Event$5.SHOW, function (showEvent) { + if (showEvent.isDefaultPrevented()) { + // Only register focus restorer if modal will actually get shown + return; + } + + $target.one(Event$5.HIDDEN, function () { + if ($(_this10).is(':visible')) { + _this10.focus(); + } + }); + }); + + Modal._jQueryInterface.call($(target), config, this); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$5] = Modal._jQueryInterface; + $.fn[NAME$5].Constructor = Modal; + + $.fn[NAME$5].noConflict = function () { + $.fn[NAME$5] = JQUERY_NO_CONFLICT$5; + return Modal._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$6 = 'tooltip'; + var VERSION$6 = '4.3.0'; + var DATA_KEY$6 = 'bs.tooltip'; + var EVENT_KEY$6 = "." + DATA_KEY$6; + var JQUERY_NO_CONFLICT$6 = $.fn[NAME$6]; + var CLASS_PREFIX = 'bs-tooltip'; + var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g'); + var DefaultType$4 = { + animation: 'boolean', + template: 'string', + title: '(string|element|function)', + trigger: 'string', + delay: '(number|object)', + html: 'boolean', + selector: '(string|boolean)', + placement: '(string|function)', + offset: '(number|string|function)', + container: '(string|element|boolean)', + fallbackPlacement: '(string|array)', + boundary: '(string|element)' + }; + var AttachmentMap$1 = { + AUTO: 'auto', + TOP: 'top', + RIGHT: 'right', + BOTTOM: 'bottom', + LEFT: 'left' + }; + var Default$4 = { + animation: true, + template: '<div class="tooltip" role="tooltip">' + '<div class="arrow"></div>' + '<div class="tooltip-inner"></div></div>', + trigger: 'hover focus', + title: '', + delay: 0, + html: false, + selector: false, + placement: 'top', + offset: 0, + container: false, + fallbackPlacement: 'flip', + boundary: 'scrollParent' + }; + var HoverState = { + SHOW: 'show', + OUT: 'out' + }; + var Event$6 = { + HIDE: "hide" + EVENT_KEY$6, + HIDDEN: "hidden" + EVENT_KEY$6, + SHOW: "show" + EVENT_KEY$6, + SHOWN: "shown" + EVENT_KEY$6, + INSERTED: "inserted" + EVENT_KEY$6, + CLICK: "click" + EVENT_KEY$6, + FOCUSIN: "focusin" + EVENT_KEY$6, + FOCUSOUT: "focusout" + EVENT_KEY$6, + MOUSEENTER: "mouseenter" + EVENT_KEY$6, + MOUSELEAVE: "mouseleave" + EVENT_KEY$6 + }; + var ClassName$6 = { + FADE: 'fade', + SHOW: 'show' + }; + var Selector$6 = { + TOOLTIP: '.tooltip', + TOOLTIP_INNER: '.tooltip-inner', + ARROW: '.arrow' + }; + var Trigger = { + HOVER: 'hover', + FOCUS: 'focus', + CLICK: 'click', + MANUAL: 'manual' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Tooltip = + /*#__PURE__*/ + function () { + function Tooltip(element, config) { + /** + * Check for Popper dependency + * Popper - https://popper.js.org + */ + if (typeof Popper === 'undefined') { + throw new TypeError('Bootstrap\'s tooltips require Popper.js (https://popper.js.org/)'); + } // private + + + this._isEnabled = true; + this._timeout = 0; + this._hoverState = ''; + this._activeTrigger = {}; + this._popper = null; // Protected + + this.element = element; + this.config = this._getConfig(config); + this.tip = null; + + this._setListeners(); + } // Getters + + + var _proto = Tooltip.prototype; + + // Public + _proto.enable = function enable() { + this._isEnabled = true; + }; + + _proto.disable = function disable() { + this._isEnabled = false; + }; + + _proto.toggleEnabled = function toggleEnabled() { + this._isEnabled = !this._isEnabled; + }; + + _proto.toggle = function toggle(event) { + if (!this._isEnabled) { + return; + } + + if (event) { + var dataKey = this.constructor.DATA_KEY; + var context = $(event.currentTarget).data(dataKey); + + if (!context) { + context = new this.constructor(event.currentTarget, this._getDelegateConfig()); + $(event.currentTarget).data(dataKey, context); + } + + context._activeTrigger.click = !context._activeTrigger.click; + + if (context._isWithActiveTrigger()) { + context._enter(null, context); + } else { + context._leave(null, context); + } + } else { + if ($(this.getTipElement()).hasClass(ClassName$6.SHOW)) { + this._leave(null, this); + + return; + } + + this._enter(null, this); + } + }; + + _proto.dispose = function dispose() { + clearTimeout(this._timeout); + $.removeData(this.element, this.constructor.DATA_KEY); + $(this.element).off(this.constructor.EVENT_KEY); + $(this.element).closest('.modal').off('hide.bs.modal'); + + if (this.tip) { + $(this.tip).remove(); + } + + this._isEnabled = null; + this._timeout = null; + this._hoverState = null; + this._activeTrigger = null; + + if (this._popper !== null) { + this._popper.destroy(); + } + + this._popper = null; + this.element = null; + this.config = null; + this.tip = null; + }; + + _proto.show = function show() { + var _this = this; + + if ($(this.element).css('display') === 'none') { + throw new Error('Please use show on visible elements'); + } + + var showEvent = $.Event(this.constructor.Event.SHOW); + + if (this.isWithContent() && this._isEnabled) { + $(this.element).trigger(showEvent); + var shadowRoot = Util.findShadowRoot(this.element); + var isInTheDom = $.contains(shadowRoot !== null ? shadowRoot : this.element.ownerDocument.documentElement, this.element); + + if (showEvent.isDefaultPrevented() || !isInTheDom) { + return; + } + + var tip = this.getTipElement(); + var tipId = Util.getUID(this.constructor.NAME); + tip.setAttribute('id', tipId); + this.element.setAttribute('aria-describedby', tipId); + this.setContent(); + + if (this.config.animation) { + $(tip).addClass(ClassName$6.FADE); + } + + var placement = typeof this.config.placement === 'function' ? this.config.placement.call(this, tip, this.element) : this.config.placement; + + var attachment = this._getAttachment(placement); + + this.addAttachmentClass(attachment); + + var container = this._getContainer(); + + $(tip).data(this.constructor.DATA_KEY, this); + + if (!$.contains(this.element.ownerDocument.documentElement, this.tip)) { + $(tip).appendTo(container); + } + + $(this.element).trigger(this.constructor.Event.INSERTED); + this._popper = new Popper(this.element, tip, { + placement: attachment, + modifiers: { + offset: this._getOffset(), + flip: { + behavior: this.config.fallbackPlacement + }, + arrow: { + element: Selector$6.ARROW + }, + preventOverflow: { + boundariesElement: this.config.boundary + } + }, + onCreate: function onCreate(data) { + if (data.originalPlacement !== data.placement) { + _this._handlePopperPlacementChange(data); + } + }, + onUpdate: function onUpdate(data) { + return _this._handlePopperPlacementChange(data); + } + }); + $(tip).addClass(ClassName$6.SHOW); // If this is a touch-enabled device we add extra + // empty mouseover listeners to the body's immediate children; + // only needed because of broken event delegation on iOS + // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html + + if ('ontouchstart' in document.documentElement) { + $(document.body).children().on('mouseover', null, $.noop); + } + + var complete = function complete() { + if (_this.config.animation) { + _this._fixTransition(); + } + + var prevHoverState = _this._hoverState; + _this._hoverState = null; + $(_this.element).trigger(_this.constructor.Event.SHOWN); + + if (prevHoverState === HoverState.OUT) { + _this._leave(null, _this); + } + }; + + if ($(this.tip).hasClass(ClassName$6.FADE)) { + var transitionDuration = Util.getTransitionDurationFromElement(this.tip); + $(this.tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + } else { + complete(); + } + } + }; + + _proto.hide = function hide(callback) { + var _this2 = this; + + var tip = this.getTipElement(); + var hideEvent = $.Event(this.constructor.Event.HIDE); + + var complete = function complete() { + if (_this2._hoverState !== HoverState.SHOW && tip.parentNode) { + tip.parentNode.removeChild(tip); + } + + _this2._cleanTipClass(); + + _this2.element.removeAttribute('aria-describedby'); + + $(_this2.element).trigger(_this2.constructor.Event.HIDDEN); + + if (_this2._popper !== null) { + _this2._popper.destroy(); + } + + if (callback) { + callback(); + } + }; + + $(this.element).trigger(hideEvent); + + if (hideEvent.isDefaultPrevented()) { + return; + } + + $(tip).removeClass(ClassName$6.SHOW); // If this is a touch-enabled device we remove the extra + // empty mouseover listeners we added for iOS support + + if ('ontouchstart' in document.documentElement) { + $(document.body).children().off('mouseover', null, $.noop); + } + + this._activeTrigger[Trigger.CLICK] = false; + this._activeTrigger[Trigger.FOCUS] = false; + this._activeTrigger[Trigger.HOVER] = false; + + if ($(this.tip).hasClass(ClassName$6.FADE)) { + var transitionDuration = Util.getTransitionDurationFromElement(tip); + $(tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + } else { + complete(); + } + + this._hoverState = ''; + }; + + _proto.update = function update() { + if (this._popper !== null) { + this._popper.scheduleUpdate(); + } + } // Protected + ; + + _proto.isWithContent = function isWithContent() { + return Boolean(this.getTitle()); + }; + + _proto.addAttachmentClass = function addAttachmentClass(attachment) { + $(this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment); + }; + + _proto.getTipElement = function getTipElement() { + this.tip = this.tip || $(this.config.template)[0]; + return this.tip; + }; + + _proto.setContent = function setContent() { + var tip = this.getTipElement(); + this.setElementContent($(tip.querySelectorAll(Selector$6.TOOLTIP_INNER)), this.getTitle()); + $(tip).removeClass(ClassName$6.FADE + " " + ClassName$6.SHOW); + }; + + _proto.setElementContent = function setElementContent($element, content) { + var html = this.config.html; + + if (typeof content === 'object' && (content.nodeType || content.jquery)) { + // Content is a DOM node or a jQuery + if (html) { + if (!$(content).parent().is($element)) { + $element.empty().append(content); + } + } else { + $element.text($(content).text()); + } + } else { + $element[html ? 'html' : 'text'](content); + } + }; + + _proto.getTitle = function getTitle() { + var title = this.element.getAttribute('data-original-title'); + + if (!title) { + title = typeof this.config.title === 'function' ? this.config.title.call(this.element) : this.config.title; + } + + return title; + } // Private + ; + + _proto._getOffset = function _getOffset() { + var _this3 = this; + + var offset = {}; + + if (typeof this.config.offset === 'function') { + offset.fn = function (data) { + data.offsets = _objectSpread({}, data.offsets, _this3.config.offset(data.offsets, _this3.element) || {}); + return data; + }; + } else { + offset.offset = this.config.offset; + } + + return offset; + }; + + _proto._getContainer = function _getContainer() { + if (this.config.container === false) { + return document.body; + } + + if (Util.isElement(this.config.container)) { + return $(this.config.container); + } + + return $(document).find(this.config.container); + }; + + _proto._getAttachment = function _getAttachment(placement) { + return AttachmentMap$1[placement.toUpperCase()]; + }; + + _proto._setListeners = function _setListeners() { + var _this4 = this; + + var triggers = this.config.trigger.split(' '); + triggers.forEach(function (trigger) { + if (trigger === 'click') { + $(_this4.element).on(_this4.constructor.Event.CLICK, _this4.config.selector, function (event) { + return _this4.toggle(event); + }); + } else if (trigger !== Trigger.MANUAL) { + var eventIn = trigger === Trigger.HOVER ? _this4.constructor.Event.MOUSEENTER : _this4.constructor.Event.FOCUSIN; + var eventOut = trigger === Trigger.HOVER ? _this4.constructor.Event.MOUSELEAVE : _this4.constructor.Event.FOCUSOUT; + $(_this4.element).on(eventIn, _this4.config.selector, function (event) { + return _this4._enter(event); + }).on(eventOut, _this4.config.selector, function (event) { + return _this4._leave(event); + }); + } + }); + $(this.element).closest('.modal').on('hide.bs.modal', function () { + if (_this4.element) { + _this4.hide(); + } + }); + + if (this.config.selector) { + this.config = _objectSpread({}, this.config, { + trigger: 'manual', + selector: '' + }); + } else { + this._fixTitle(); + } + }; + + _proto._fixTitle = function _fixTitle() { + var titleType = typeof this.element.getAttribute('data-original-title'); + + if (this.element.getAttribute('title') || titleType !== 'string') { + this.element.setAttribute('data-original-title', this.element.getAttribute('title') || ''); + this.element.setAttribute('title', ''); + } + }; + + _proto._enter = function _enter(event, context) { + var dataKey = this.constructor.DATA_KEY; + context = context || $(event.currentTarget).data(dataKey); + + if (!context) { + context = new this.constructor(event.currentTarget, this._getDelegateConfig()); + $(event.currentTarget).data(dataKey, context); + } + + if (event) { + context._activeTrigger[event.type === 'focusin' ? Trigger.FOCUS : Trigger.HOVER] = true; + } + + if ($(context.getTipElement()).hasClass(ClassName$6.SHOW) || context._hoverState === HoverState.SHOW) { + context._hoverState = HoverState.SHOW; + return; + } + + clearTimeout(context._timeout); + context._hoverState = HoverState.SHOW; + + if (!context.config.delay || !context.config.delay.show) { + context.show(); + return; + } + + context._timeout = setTimeout(function () { + if (context._hoverState === HoverState.SHOW) { + context.show(); + } + }, context.config.delay.show); + }; + + _proto._leave = function _leave(event, context) { + var dataKey = this.constructor.DATA_KEY; + context = context || $(event.currentTarget).data(dataKey); + + if (!context) { + context = new this.constructor(event.currentTarget, this._getDelegateConfig()); + $(event.currentTarget).data(dataKey, context); + } + + if (event) { + context._activeTrigger[event.type === 'focusout' ? Trigger.FOCUS : Trigger.HOVER] = false; + } + + if (context._isWithActiveTrigger()) { + return; + } + + clearTimeout(context._timeout); + context._hoverState = HoverState.OUT; + + if (!context.config.delay || !context.config.delay.hide) { + context.hide(); + return; + } + + context._timeout = setTimeout(function () { + if (context._hoverState === HoverState.OUT) { + context.hide(); + } + }, context.config.delay.hide); + }; + + _proto._isWithActiveTrigger = function _isWithActiveTrigger() { + for (var trigger in this._activeTrigger) { + if (this._activeTrigger[trigger]) { + return true; + } + } + + return false; + }; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, this.constructor.Default, $(this.element).data(), typeof config === 'object' && config ? config : {}); + + if (typeof config.delay === 'number') { + config.delay = { + show: config.delay, + hide: config.delay + }; + } + + if (typeof config.title === 'number') { + config.title = config.title.toString(); + } + + if (typeof config.content === 'number') { + config.content = config.content.toString(); + } + + Util.typeCheckConfig(NAME$6, config, this.constructor.DefaultType); + return config; + }; + + _proto._getDelegateConfig = function _getDelegateConfig() { + var config = {}; + + if (this.config) { + for (var key in this.config) { + if (this.constructor.Default[key] !== this.config[key]) { + config[key] = this.config[key]; + } + } + } + + return config; + }; + + _proto._cleanTipClass = function _cleanTipClass() { + var $tip = $(this.getTipElement()); + var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX); + + if (tabClass !== null && tabClass.length) { + $tip.removeClass(tabClass.join('')); + } + }; + + _proto._handlePopperPlacementChange = function _handlePopperPlacementChange(popperData) { + var popperInstance = popperData.instance; + this.tip = popperInstance.popper; + + this._cleanTipClass(); + + this.addAttachmentClass(this._getAttachment(popperData.placement)); + }; + + _proto._fixTransition = function _fixTransition() { + var tip = this.getTipElement(); + var initConfigAnimation = this.config.animation; + + if (tip.getAttribute('x-placement') !== null) { + return; + } + + $(tip).removeClass(ClassName$6.FADE); + this.config.animation = false; + this.hide(); + this.show(); + this.config.animation = initConfigAnimation; + } // Static + ; + + Tooltip._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$6); + + var _config = typeof config === 'object' && config; + + if (!data && /dispose|hide/.test(config)) { + return; + } + + if (!data) { + data = new Tooltip(this, _config); + $(this).data(DATA_KEY$6, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + _createClass(Tooltip, null, [{ + key: "VERSION", + get: function get() { + return VERSION$6; + } + }, { + key: "Default", + get: function get() { + return Default$4; + } + }, { + key: "NAME", + get: function get() { + return NAME$6; + } + }, { + key: "DATA_KEY", + get: function get() { + return DATA_KEY$6; + } + }, { + key: "Event", + get: function get() { + return Event$6; + } + }, { + key: "EVENT_KEY", + get: function get() { + return EVENT_KEY$6; + } + }, { + key: "DefaultType", + get: function get() { + return DefaultType$4; + } + }]); + + return Tooltip; + }(); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + + $.fn[NAME$6] = Tooltip._jQueryInterface; + $.fn[NAME$6].Constructor = Tooltip; + + $.fn[NAME$6].noConflict = function () { + $.fn[NAME$6] = JQUERY_NO_CONFLICT$6; + return Tooltip._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$7 = 'popover'; + var VERSION$7 = '4.3.0'; + var DATA_KEY$7 = 'bs.popover'; + var EVENT_KEY$7 = "." + DATA_KEY$7; + var JQUERY_NO_CONFLICT$7 = $.fn[NAME$7]; + var CLASS_PREFIX$1 = 'bs-popover'; + var BSCLS_PREFIX_REGEX$1 = new RegExp("(^|\\s)" + CLASS_PREFIX$1 + "\\S+", 'g'); + + var Default$5 = _objectSpread({}, Tooltip.Default, { + placement: 'right', + trigger: 'click', + content: '', + template: '<div class="popover" role="tooltip">' + '<div class="arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div></div>' + }); + + var DefaultType$5 = _objectSpread({}, Tooltip.DefaultType, { + content: '(string|element|function)' + }); + + var ClassName$7 = { + FADE: 'fade', + SHOW: 'show' + }; + var Selector$7 = { + TITLE: '.popover-header', + CONTENT: '.popover-body' + }; + var Event$7 = { + HIDE: "hide" + EVENT_KEY$7, + HIDDEN: "hidden" + EVENT_KEY$7, + SHOW: "show" + EVENT_KEY$7, + SHOWN: "shown" + EVENT_KEY$7, + INSERTED: "inserted" + EVENT_KEY$7, + CLICK: "click" + EVENT_KEY$7, + FOCUSIN: "focusin" + EVENT_KEY$7, + FOCUSOUT: "focusout" + EVENT_KEY$7, + MOUSEENTER: "mouseenter" + EVENT_KEY$7, + MOUSELEAVE: "mouseleave" + EVENT_KEY$7 + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Popover = + /*#__PURE__*/ + function (_Tooltip) { + _inheritsLoose(Popover, _Tooltip); + + function Popover() { + return _Tooltip.apply(this, arguments) || this; + } + + var _proto = Popover.prototype; + + // Overrides + _proto.isWithContent = function isWithContent() { + return this.getTitle() || this._getContent(); + }; + + _proto.addAttachmentClass = function addAttachmentClass(attachment) { + $(this.getTipElement()).addClass(CLASS_PREFIX$1 + "-" + attachment); + }; + + _proto.getTipElement = function getTipElement() { + this.tip = this.tip || $(this.config.template)[0]; + return this.tip; + }; + + _proto.setContent = function setContent() { + var $tip = $(this.getTipElement()); // We use append for html objects to maintain js events + + this.setElementContent($tip.find(Selector$7.TITLE), this.getTitle()); + + var content = this._getContent(); + + if (typeof content === 'function') { + content = content.call(this.element); + } + + this.setElementContent($tip.find(Selector$7.CONTENT), content); + $tip.removeClass(ClassName$7.FADE + " " + ClassName$7.SHOW); + } // Private + ; + + _proto._getContent = function _getContent() { + return this.element.getAttribute('data-content') || this.config.content; + }; + + _proto._cleanTipClass = function _cleanTipClass() { + var $tip = $(this.getTipElement()); + var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX$1); + + if (tabClass !== null && tabClass.length > 0) { + $tip.removeClass(tabClass.join('')); + } + } // Static + ; + + Popover._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$7); + + var _config = typeof config === 'object' ? config : null; + + if (!data && /dispose|hide/.test(config)) { + return; + } + + if (!data) { + data = new Popover(this, _config); + $(this).data(DATA_KEY$7, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + _createClass(Popover, null, [{ + key: "VERSION", + // Getters + get: function get() { + return VERSION$7; + } + }, { + key: "Default", + get: function get() { + return Default$5; + } + }, { + key: "NAME", + get: function get() { + return NAME$7; + } + }, { + key: "DATA_KEY", + get: function get() { + return DATA_KEY$7; + } + }, { + key: "Event", + get: function get() { + return Event$7; + } + }, { + key: "EVENT_KEY", + get: function get() { + return EVENT_KEY$7; + } + }, { + key: "DefaultType", + get: function get() { + return DefaultType$5; + } + }]); + + return Popover; + }(Tooltip); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + + $.fn[NAME$7] = Popover._jQueryInterface; + $.fn[NAME$7].Constructor = Popover; + + $.fn[NAME$7].noConflict = function () { + $.fn[NAME$7] = JQUERY_NO_CONFLICT$7; + return Popover._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$8 = 'scrollspy'; + var VERSION$8 = '4.3.0'; + var DATA_KEY$8 = 'bs.scrollspy'; + var EVENT_KEY$8 = "." + DATA_KEY$8; + var DATA_API_KEY$6 = '.data-api'; + var JQUERY_NO_CONFLICT$8 = $.fn[NAME$8]; + var Default$6 = { + offset: 10, + method: 'auto', + target: '' + }; + var DefaultType$6 = { + offset: 'number', + method: 'string', + target: '(string|element)' + }; + var Event$8 = { + ACTIVATE: "activate" + EVENT_KEY$8, + SCROLL: "scroll" + EVENT_KEY$8, + LOAD_DATA_API: "load" + EVENT_KEY$8 + DATA_API_KEY$6 + }; + var ClassName$8 = { + DROPDOWN_ITEM: 'dropdown-item', + DROPDOWN_MENU: 'dropdown-menu', + ACTIVE: 'active' + }; + var Selector$8 = { + DATA_SPY: '[data-spy="scroll"]', + ACTIVE: '.active', + NAV_LIST_GROUP: '.nav, .list-group', + NAV_LINKS: '.nav-link', + NAV_ITEMS: '.nav-item', + LIST_ITEMS: '.list-group-item', + DROPDOWN: '.dropdown', + DROPDOWN_ITEMS: '.dropdown-item', + DROPDOWN_TOGGLE: '.dropdown-toggle' + }; + var OffsetMethod = { + OFFSET: 'offset', + POSITION: 'position' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var ScrollSpy = + /*#__PURE__*/ + function () { + function ScrollSpy(element, config) { + var _this = this; + + this._element = element; + this._scrollElement = element.tagName === 'BODY' ? window : element; + this._config = this._getConfig(config); + this._selector = this._config.target + " " + Selector$8.NAV_LINKS + "," + (this._config.target + " " + Selector$8.LIST_ITEMS + ",") + (this._config.target + " " + Selector$8.DROPDOWN_ITEMS); + this._offsets = []; + this._targets = []; + this._activeTarget = null; + this._scrollHeight = 0; + $(this._scrollElement).on(Event$8.SCROLL, function (event) { + return _this._process(event); + }); + this.refresh(); + + this._process(); + } // Getters + + + var _proto = ScrollSpy.prototype; + + // Public + _proto.refresh = function refresh() { + var _this2 = this; + + var autoMethod = this._scrollElement === this._scrollElement.window ? OffsetMethod.OFFSET : OffsetMethod.POSITION; + var offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method; + var offsetBase = offsetMethod === OffsetMethod.POSITION ? this._getScrollTop() : 0; + this._offsets = []; + this._targets = []; + this._scrollHeight = this._getScrollHeight(); + var targets = [].slice.call(document.querySelectorAll(this._selector)); + targets.map(function (element) { + var target; + var targetSelector = Util.getSelectorFromElement(element); + + if (targetSelector) { + target = document.querySelector(targetSelector); + } + + if (target) { + var targetBCR = target.getBoundingClientRect(); + + if (targetBCR.width || targetBCR.height) { + // TODO (fat): remove sketch reliance on jQuery position/offset + return [$(target)[offsetMethod]().top + offsetBase, targetSelector]; + } + } + + return null; + }).filter(function (item) { + return item; + }).sort(function (a, b) { + return a[0] - b[0]; + }).forEach(function (item) { + _this2._offsets.push(item[0]); + + _this2._targets.push(item[1]); + }); + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY$8); + $(this._scrollElement).off(EVENT_KEY$8); + this._element = null; + this._scrollElement = null; + this._config = null; + this._selector = null; + this._offsets = null; + this._targets = null; + this._activeTarget = null; + this._scrollHeight = null; + } // Private + ; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, Default$6, typeof config === 'object' && config ? config : {}); + + if (typeof config.target !== 'string') { + var id = $(config.target).attr('id'); + + if (!id) { + id = Util.getUID(NAME$8); + $(config.target).attr('id', id); + } + + config.target = "#" + id; + } + + Util.typeCheckConfig(NAME$8, config, DefaultType$6); + return config; + }; + + _proto._getScrollTop = function _getScrollTop() { + return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop; + }; + + _proto._getScrollHeight = function _getScrollHeight() { + return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight); + }; + + _proto._getOffsetHeight = function _getOffsetHeight() { + return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height; + }; + + _proto._process = function _process() { + var scrollTop = this._getScrollTop() + this._config.offset; + + var scrollHeight = this._getScrollHeight(); + + var maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight(); + + if (this._scrollHeight !== scrollHeight) { + this.refresh(); + } + + if (scrollTop >= maxScroll) { + var target = this._targets[this._targets.length - 1]; + + if (this._activeTarget !== target) { + this._activate(target); + } + + return; + } + + if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) { + this._activeTarget = null; + + this._clear(); + + return; + } + + var offsetLength = this._offsets.length; + + for (var i = offsetLength; i--;) { + var isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]); + + if (isActiveTarget) { + this._activate(this._targets[i]); + } + } + }; + + _proto._activate = function _activate(target) { + this._activeTarget = target; + + this._clear(); + + var queries = this._selector.split(',').map(function (selector) { + return selector + "[data-target=\"" + target + "\"]," + selector + "[href=\"" + target + "\"]"; + }); + + var $link = $([].slice.call(document.querySelectorAll(queries.join(',')))); + + if ($link.hasClass(ClassName$8.DROPDOWN_ITEM)) { + $link.closest(Selector$8.DROPDOWN).find(Selector$8.DROPDOWN_TOGGLE).addClass(ClassName$8.ACTIVE); + $link.addClass(ClassName$8.ACTIVE); + } else { + // Set triggered link as active + $link.addClass(ClassName$8.ACTIVE); // Set triggered links parents as active + // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor + + $link.parents(Selector$8.NAV_LIST_GROUP).prev(Selector$8.NAV_LINKS + ", " + Selector$8.LIST_ITEMS).addClass(ClassName$8.ACTIVE); // Handle special case when .nav-link is inside .nav-item + + $link.parents(Selector$8.NAV_LIST_GROUP).prev(Selector$8.NAV_ITEMS).children(Selector$8.NAV_LINKS).addClass(ClassName$8.ACTIVE); + } + + $(this._scrollElement).trigger(Event$8.ACTIVATE, { + relatedTarget: target + }); + }; + + _proto._clear = function _clear() { + [].slice.call(document.querySelectorAll(this._selector)).filter(function (node) { + return node.classList.contains(ClassName$8.ACTIVE); + }).forEach(function (node) { + return node.classList.remove(ClassName$8.ACTIVE); + }); + } // Static + ; + + ScrollSpy._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$8); + + var _config = typeof config === 'object' && config; + + if (!data) { + data = new ScrollSpy(this, _config); + $(this).data(DATA_KEY$8, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + _createClass(ScrollSpy, null, [{ + key: "VERSION", + get: function get() { + return VERSION$8; + } + }, { + key: "Default", + get: function get() { + return Default$6; + } + }]); + + return ScrollSpy; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(window).on(Event$8.LOAD_DATA_API, function () { + var scrollSpys = [].slice.call(document.querySelectorAll(Selector$8.DATA_SPY)); + var scrollSpysLength = scrollSpys.length; + + for (var i = scrollSpysLength; i--;) { + var $spy = $(scrollSpys[i]); + + ScrollSpy._jQueryInterface.call($spy, $spy.data()); + } + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$8] = ScrollSpy._jQueryInterface; + $.fn[NAME$8].Constructor = ScrollSpy; + + $.fn[NAME$8].noConflict = function () { + $.fn[NAME$8] = JQUERY_NO_CONFLICT$8; + return ScrollSpy._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$9 = 'tab'; + var VERSION$9 = '4.3.0'; + var DATA_KEY$9 = 'bs.tab'; + var EVENT_KEY$9 = "." + DATA_KEY$9; + var DATA_API_KEY$7 = '.data-api'; + var JQUERY_NO_CONFLICT$9 = $.fn[NAME$9]; + var Event$9 = { + HIDE: "hide" + EVENT_KEY$9, + HIDDEN: "hidden" + EVENT_KEY$9, + SHOW: "show" + EVENT_KEY$9, + SHOWN: "shown" + EVENT_KEY$9, + CLICK_DATA_API: "click" + EVENT_KEY$9 + DATA_API_KEY$7 + }; + var ClassName$9 = { + DROPDOWN_MENU: 'dropdown-menu', + ACTIVE: 'active', + DISABLED: 'disabled', + FADE: 'fade', + SHOW: 'show' + }; + var Selector$9 = { + DROPDOWN: '.dropdown', + NAV_LIST_GROUP: '.nav, .list-group', + ACTIVE: '.active', + ACTIVE_UL: '> li > .active', + DATA_TOGGLE: '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]', + DROPDOWN_TOGGLE: '.dropdown-toggle', + DROPDOWN_ACTIVE_CHILD: '> .dropdown-menu .active' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Tab = + /*#__PURE__*/ + function () { + function Tab(element) { + this._element = element; + } // Getters + + + var _proto = Tab.prototype; + + // Public + _proto.show = function show() { + var _this = this; + + if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && $(this._element).hasClass(ClassName$9.ACTIVE) || $(this._element).hasClass(ClassName$9.DISABLED)) { + return; + } + + var target; + var previous; + var listElement = $(this._element).closest(Selector$9.NAV_LIST_GROUP)[0]; + var selector = Util.getSelectorFromElement(this._element); + + if (listElement) { + var itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? Selector$9.ACTIVE_UL : Selector$9.ACTIVE; + previous = $.makeArray($(listElement).find(itemSelector)); + previous = previous[previous.length - 1]; + } + + var hideEvent = $.Event(Event$9.HIDE, { + relatedTarget: this._element + }); + var showEvent = $.Event(Event$9.SHOW, { + relatedTarget: previous + }); + + if (previous) { + $(previous).trigger(hideEvent); + } + + $(this._element).trigger(showEvent); + + if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) { + return; + } + + if (selector) { + target = document.querySelector(selector); + } + + this._activate(this._element, listElement); + + var complete = function complete() { + var hiddenEvent = $.Event(Event$9.HIDDEN, { + relatedTarget: _this._element + }); + var shownEvent = $.Event(Event$9.SHOWN, { + relatedTarget: previous + }); + $(previous).trigger(hiddenEvent); + $(_this._element).trigger(shownEvent); + }; + + if (target) { + this._activate(target, target.parentNode, complete); + } else { + complete(); + } + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY$9); + this._element = null; + } // Private + ; + + _proto._activate = function _activate(element, container, callback) { + var _this2 = this; + + var activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? $(container).find(Selector$9.ACTIVE_UL) : $(container).children(Selector$9.ACTIVE); + var active = activeElements[0]; + var isTransitioning = callback && active && $(active).hasClass(ClassName$9.FADE); + + var complete = function complete() { + return _this2._transitionComplete(element, active, callback); + }; + + if (active && isTransitioning) { + var transitionDuration = Util.getTransitionDurationFromElement(active); + $(active).removeClass(ClassName$9.SHOW).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + } else { + complete(); + } + }; + + _proto._transitionComplete = function _transitionComplete(element, active, callback) { + if (active) { + $(active).removeClass(ClassName$9.ACTIVE); + var dropdownChild = $(active.parentNode).find(Selector$9.DROPDOWN_ACTIVE_CHILD)[0]; + + if (dropdownChild) { + $(dropdownChild).removeClass(ClassName$9.ACTIVE); + } + + if (active.getAttribute('role') === 'tab') { + active.setAttribute('aria-selected', false); + } + } + + $(element).addClass(ClassName$9.ACTIVE); + + if (element.getAttribute('role') === 'tab') { + element.setAttribute('aria-selected', true); + } + + Util.reflow(element); + + if (element.classList.contains(ClassName$9.FADE)) { + element.classList.add(ClassName$9.SHOW); + } + + if (element.parentNode && $(element.parentNode).hasClass(ClassName$9.DROPDOWN_MENU)) { + var dropdownElement = $(element).closest(Selector$9.DROPDOWN)[0]; + + if (dropdownElement) { + var dropdownToggleList = [].slice.call(dropdownElement.querySelectorAll(Selector$9.DROPDOWN_TOGGLE)); + $(dropdownToggleList).addClass(ClassName$9.ACTIVE); + } + + element.setAttribute('aria-expanded', true); + } + + if (callback) { + callback(); + } + } // Static + ; + + Tab._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var $this = $(this); + var data = $this.data(DATA_KEY$9); + + if (!data) { + data = new Tab(this); + $this.data(DATA_KEY$9, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + _createClass(Tab, null, [{ + key: "VERSION", + get: function get() { + return VERSION$9; + } + }]); + + return Tab; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(Event$9.CLICK_DATA_API, Selector$9.DATA_TOGGLE, function (event) { + event.preventDefault(); + + Tab._jQueryInterface.call($(this), 'show'); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$9] = Tab._jQueryInterface; + $.fn[NAME$9].Constructor = Tab; + + $.fn[NAME$9].noConflict = function () { + $.fn[NAME$9] = JQUERY_NO_CONFLICT$9; + return Tab._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$a = 'toast'; + var VERSION$a = '4.3.0'; + var DATA_KEY$a = 'bs.toast'; + var EVENT_KEY$a = "." + DATA_KEY$a; + var JQUERY_NO_CONFLICT$a = $.fn[NAME$a]; + var Event$a = { + CLICK_DISMISS: "click.dismiss" + EVENT_KEY$a, + HIDE: "hide" + EVENT_KEY$a, + HIDDEN: "hidden" + EVENT_KEY$a, + SHOW: "show" + EVENT_KEY$a, + SHOWN: "shown" + EVENT_KEY$a + }; + var ClassName$a = { + FADE: 'fade', + HIDE: 'hide', + SHOW: 'show', + SHOWING: 'showing' + }; + var DefaultType$7 = { + animation: 'boolean', + autohide: 'boolean', + delay: 'number' + }; + var Default$7 = { + animation: true, + autohide: true, + delay: 500 + }; + var Selector$a = { + DATA_DISMISS: '[data-dismiss="toast"]' + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + }; + + var Toast = + /*#__PURE__*/ + function () { + function Toast(element, config) { + this._element = element; + this._config = this._getConfig(config); + this._timeout = null; + + this._setListeners(); + } // Getters + + + var _proto = Toast.prototype; + + // Public + _proto.show = function show() { + var _this = this; + + $(this._element).trigger(Event$a.SHOW); + + if (this._config.animation) { + this._element.classList.add(ClassName$a.FADE); + } + + var complete = function complete() { + _this._element.classList.remove(ClassName$a.SHOWING); + + _this._element.classList.add(ClassName$a.SHOW); + + $(_this._element).trigger(Event$a.SHOWN); + + if (_this._config.autohide) { + _this.hide(); + } + }; + + this._element.classList.remove(ClassName$a.HIDE); + + this._element.classList.add(ClassName$a.SHOWING); + + if (this._config.animation) { + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + } else { + complete(); + } + }; + + _proto.hide = function hide(withoutTimeout) { + var _this2 = this; + + if (!this._element.classList.contains(ClassName$a.SHOW)) { + return; + } + + $(this._element).trigger(Event$a.HIDE); + + if (withoutTimeout) { + this._close(); + } else { + this._timeout = setTimeout(function () { + _this2._close(); + }, this._config.delay); + } + }; + + _proto.dispose = function dispose() { + clearTimeout(this._timeout); + this._timeout = null; + + if (this._element.classList.contains(ClassName$a.SHOW)) { + this._element.classList.remove(ClassName$a.SHOW); + } + + $(this._element).off(Event$a.CLICK_DISMISS); + $.removeData(this._element, DATA_KEY$a); + this._element = null; + this._config = null; + } // Private + ; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread({}, Default$7, $(this._element).data(), typeof config === 'object' && config ? config : {}); + Util.typeCheckConfig(NAME$a, config, this.constructor.DefaultType); + return config; + }; + + _proto._setListeners = function _setListeners() { + var _this3 = this; + + $(this._element).on(Event$a.CLICK_DISMISS, Selector$a.DATA_DISMISS, function () { + return _this3.hide(true); + }); + }; + + _proto._close = function _close() { + var _this4 = this; + + var complete = function complete() { + _this4._element.classList.add(ClassName$a.HIDE); + + $(_this4._element).trigger(Event$a.HIDDEN); + }; + + this._element.classList.remove(ClassName$a.SHOW); + + if (this._config.animation) { + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + } else { + complete(); + } + } // Static + ; + + Toast._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var $element = $(this); + var data = $element.data(DATA_KEY$a); + + var _config = typeof config === 'object' && config; + + if (!data) { + data = new Toast(this, _config); + $element.data(DATA_KEY$a, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](this); + } + }); + }; + + _createClass(Toast, null, [{ + key: "VERSION", + get: function get() { + return VERSION$a; + } + }, { + key: "DefaultType", + get: function get() { + return DefaultType$7; + } + }, { + key: "Default", + get: function get() { + return Default$7; + } + }]); + + return Toast; + }(); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + + $.fn[NAME$a] = Toast._jQueryInterface; + $.fn[NAME$a].Constructor = Toast; + + $.fn[NAME$a].noConflict = function () { + $.fn[NAME$a] = JQUERY_NO_CONFLICT$a; + return Toast._jQueryInterface; + }; + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v4.3.0): index.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ + + (function () { + if (typeof $ === 'undefined') { + throw new TypeError('Bootstrap\'s JavaScript requires jQuery. jQuery must be included before Bootstrap\'s JavaScript.'); + } + + var version = $.fn.jquery.split(' ')[0].split('.'); + var minMajor = 1; + var ltMajor = 2; + var minMinor = 9; + var minPatch = 1; + var maxMajor = 4; + + if (version[0] < ltMajor && version[1] < minMinor || version[0] === minMajor && version[1] === minMinor && version[2] < minPatch || version[0] >= maxMajor) { + throw new Error('Bootstrap\'s JavaScript requires at least jQuery v1.9.1 but less than v4.0.0'); + } + })(); + + exports.Util = Util; + exports.Alert = Alert; + exports.Button = Button; + exports.Carousel = Carousel; + exports.Collapse = Collapse; + exports.Dropdown = Dropdown; + exports.Modal = Modal; + exports.Popover = Popover; + exports.Scrollspy = ScrollSpy; + exports.Tab = Tab; + exports.Toast = Toast; + exports.Tooltip = Tooltip; + + Object.defineProperty(exports, '__esModule', { value: true }); + +})); +//# sourceMappingURL=bootstrap.js.map diff --git a/docs/4.3/dist/js/bootstrap.js.map b/docs/4.3/dist/js/bootstrap.js.map new file mode 100644 index 0000000000000000000000000000000000000000..717dc5173fff08e8728c8b585d8a8e4e235745e4 GIT binary patch literal 240942 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 literal 0 HcmV?d00001 diff --git a/docs/4.3/dist/js/bootstrap.min.js b/docs/4.3/dist/js/bootstrap.min.js new file mode 100644 index 0000000000..33bf17b03f --- /dev/null +++ b/docs/4.3/dist/js/bootstrap.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap v4.3.0 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("jquery"),require("popper.js")):"function"==typeof define&&define.amd?define(["exports","jquery","popper.js"],e):e((t=t||self).bootstrap={},t.jQuery,t.Popper)}(this,function(t,g,u){"use strict";function i(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function s(t,e,n){return e&&i(t.prototype,e),n&&i(t,n),t}function l(o){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},e=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(e=e.concat(Object.getOwnPropertySymbols(r).filter(function(t){return Object.getOwnPropertyDescriptor(r,t).enumerable}))),e.forEach(function(t){var e,n,i;e=o,i=r[n=t],n in e?Object.defineProperty(e,n,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[n]=i})}return o}g=g&&g.hasOwnProperty("default")?g.default:g,u=u&&u.hasOwnProperty("default")?u.default:u;var e="transitionend";function n(t){var e=this,n=!1;return g(this).one(_.TRANSITION_END,function(){n=!0}),setTimeout(function(){n||_.triggerTransitionEnd(e)},t),this}var _={TRANSITION_END:"bsTransitionEnd",getUID:function(t){for(;t+=~~(1e6*Math.random()),document.getElementById(t););return t},getSelectorFromElement:function(t){var e=t.getAttribute("data-target");if(!e||"#"===e){var n=t.getAttribute("href");e=n&&"#"!==n?n.trim():""}try{return document.querySelector(e)?e:null}catch(t){return null}},getTransitionDurationFromElement:function(t){if(!t)return 0;var e=g(t).css("transition-duration"),n=g(t).css("transition-delay"),i=parseFloat(e),o=parseFloat(n);return i||o?(e=e.split(",")[0],n=n.split(",")[0],1e3*(parseFloat(e)+parseFloat(n))):0},reflow:function(t){return t.offsetHeight},triggerTransitionEnd:function(t){g(t).trigger(e)},supportsTransitionEnd:function(){return Boolean(e)},isElement:function(t){return(t[0]||t).nodeType},typeCheckConfig:function(t,e,n){for(var i in n)if(Object.prototype.hasOwnProperty.call(n,i)){var o=n[i],r=e[i],s=r&&_.isElement(r)?"element":(a=r,{}.toString.call(a).match(/\s([a-z]+)/i)[1].toLowerCase());if(!new RegExp(o).test(s))throw new Error(t.toUpperCase()+': Option "'+i+'" provided type "'+s+'" but expected type "'+o+'".')}var a},findShadowRoot:function(t){if(!document.documentElement.attachShadow)return null;if("function"!=typeof t.getRootNode)return t instanceof ShadowRoot?t:t.parentNode?_.findShadowRoot(t.parentNode):null;var e=t.getRootNode();return e instanceof ShadowRoot?e:null}};g.fn.emulateTransitionEnd=n,g.event.special[_.TRANSITION_END]={bindType:e,delegateType:e,handle:function(t){if(g(t.target).is(this))return t.handleObj.handler.apply(this,arguments)}};var o="alert",r="bs.alert",a="."+r,c=g.fn[o],h={CLOSE:"close"+a,CLOSED:"closed"+a,CLICK_DATA_API:"click"+a+".data-api"},f="alert",d="fade",m="show",p=function(){function i(t){this._element=t}var t=i.prototype;return t.close=function(t){var e=this._element;t&&(e=this._getRootElement(t)),this._triggerCloseEvent(e).isDefaultPrevented()||this._removeElement(e)},t.dispose=function(){g.removeData(this._element,r),this._element=null},t._getRootElement=function(t){var e=_.getSelectorFromElement(t),n=!1;return e&&(n=document.querySelector(e)),n||(n=g(t).closest("."+f)[0]),n},t._triggerCloseEvent=function(t){var e=g.Event(h.CLOSE);return g(t).trigger(e),e},t._removeElement=function(e){var n=this;if(g(e).removeClass(m),g(e).hasClass(d)){var t=_.getTransitionDurationFromElement(e);g(e).one(_.TRANSITION_END,function(t){return n._destroyElement(e,t)}).emulateTransitionEnd(t)}else this._destroyElement(e)},t._destroyElement=function(t){g(t).detach().trigger(h.CLOSED).remove()},i._jQueryInterface=function(n){return this.each(function(){var t=g(this),e=t.data(r);e||(e=new i(this),t.data(r,e)),"close"===n&&e[n](this)})},i._handleDismiss=function(e){return function(t){t&&t.preventDefault(),e.close(this)}},s(i,null,[{key:"VERSION",get:function(){return"4.3.0"}}]),i}();g(document).on(h.CLICK_DATA_API,'[data-dismiss="alert"]',p._handleDismiss(new p)),g.fn[o]=p._jQueryInterface,g.fn[o].Constructor=p,g.fn[o].noConflict=function(){return g.fn[o]=c,p._jQueryInterface};var v="button",y="bs.button",E="."+y,C=".data-api",T=g.fn[v],S="active",b="btn",I="focus",D='[data-toggle^="button"]',w='[data-toggle="buttons"]',A='input:not([type="hidden"])',N=".active",O=".btn",k={CLICK_DATA_API:"click"+E+C,FOCUS_BLUR_DATA_API:"focus"+E+C+" blur"+E+C},P=function(){function n(t){this._element=t}var t=n.prototype;return t.toggle=function(){var t=!0,e=!0,n=g(this._element).closest(w)[0];if(n){var i=this._element.querySelector(A);if(i){if("radio"===i.type)if(i.checked&&this._element.classList.contains(S))t=!1;else{var o=n.querySelector(N);o&&g(o).removeClass(S)}if(t){if(i.hasAttribute("disabled")||n.hasAttribute("disabled")||i.classList.contains("disabled")||n.classList.contains("disabled"))return;i.checked=!this._element.classList.contains(S),g(i).trigger("change")}i.focus(),e=!1}}e&&this._element.setAttribute("aria-pressed",!this._element.classList.contains(S)),t&&g(this._element).toggleClass(S)},t.dispose=function(){g.removeData(this._element,y),this._element=null},n._jQueryInterface=function(e){return this.each(function(){var t=g(this).data(y);t||(t=new n(this),g(this).data(y,t)),"toggle"===e&&t[e]()})},s(n,null,[{key:"VERSION",get:function(){return"4.3.0"}}]),n}();g(document).on(k.CLICK_DATA_API,D,function(t){t.preventDefault();var e=t.target;g(e).hasClass(b)||(e=g(e).closest(O)),P._jQueryInterface.call(g(e),"toggle")}).on(k.FOCUS_BLUR_DATA_API,D,function(t){var e=g(t.target).closest(O)[0];g(e).toggleClass(I,/^focus(in)?$/.test(t.type))}),g.fn[v]=P._jQueryInterface,g.fn[v].Constructor=P,g.fn[v].noConflict=function(){return g.fn[v]=T,P._jQueryInterface};var L="carousel",j="bs.carousel",H="."+j,R=".data-api",U=g.fn[L],W={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},x={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},F="next",q="prev",M="left",K="right",Q={SLIDE:"slide"+H,SLID:"slid"+H,KEYDOWN:"keydown"+H,MOUSEENTER:"mouseenter"+H,MOUSELEAVE:"mouseleave"+H,TOUCHSTART:"touchstart"+H,TOUCHMOVE:"touchmove"+H,TOUCHEND:"touchend"+H,POINTERDOWN:"pointerdown"+H,POINTERUP:"pointerup"+H,DRAG_START:"dragstart"+H,LOAD_DATA_API:"load"+H+R,CLICK_DATA_API:"click"+H+R},B="carousel",V="active",Y="slide",X="carousel-item-right",z="carousel-item-left",G="carousel-item-next",J="carousel-item-prev",Z="pointer-event",$=".active",tt=".active.carousel-item",et=".carousel-item",nt=".carousel-item img",it=".carousel-item-next, .carousel-item-prev",ot=".carousel-indicators",rt="[data-slide], [data-slide-to]",st='[data-ride="carousel"]',at={TOUCH:"touch",PEN:"pen"},lt=function(){function r(t,e){this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(e),this._element=t,this._indicatorsElement=this._element.querySelector(ot),this._touchSupported="ontouchstart"in document.documentElement||0<navigator.maxTouchPoints,this._pointerEvent=Boolean(window.PointerEvent||window.MSPointerEvent),this._addEventListeners()}var t=r.prototype;return t.next=function(){this._isSliding||this._slide(F)},t.nextWhenVisible=function(){!document.hidden&&g(this._element).is(":visible")&&"hidden"!==g(this._element).css("visibility")&&this.next()},t.prev=function(){this._isSliding||this._slide(q)},t.pause=function(t){t||(this._isPaused=!0),this._element.querySelector(it)&&(_.triggerTransitionEnd(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null},t.cycle=function(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config.interval&&!this._isPaused&&(this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))},t.to=function(t){var e=this;this._activeElement=this._element.querySelector(tt);var n=this._getItemIndex(this._activeElement);if(!(t>this._items.length-1||t<0))if(this._isSliding)g(this._element).one(Q.SLID,function(){return e.to(t)});else{if(n===t)return this.pause(),void this.cycle();var i=n<t?F:q;this._slide(i,this._items[t])}},t.dispose=function(){g(this._element).off(H),g.removeData(this._element,j),this._items=null,this._config=null,this._element=null,this._interval=null,this._isPaused=null,this._isSliding=null,this._activeElement=null,this._indicatorsElement=null},t._getConfig=function(t){return t=l({},W,t),_.typeCheckConfig(L,t,x),t},t._handleSwipe=function(){var t=Math.abs(this.touchDeltaX);if(!(t<=40)){var e=t/this.touchDeltaX;0<e&&this.prev(),e<0&&this.next()}},t._addEventListeners=function(){var e=this;this._config.keyboard&&g(this._element).on(Q.KEYDOWN,function(t){return e._keydown(t)}),"hover"===this._config.pause&&g(this._element).on(Q.MOUSEENTER,function(t){return e.pause(t)}).on(Q.MOUSELEAVE,function(t){return e.cycle(t)}),this._config.touch&&this._addTouchEventListeners()},t._addTouchEventListeners=function(){var n=this;if(this._touchSupported){var e=function(t){n._pointerEvent&&at[t.originalEvent.pointerType.toUpperCase()]?n.touchStartX=t.originalEvent.clientX:n._pointerEvent||(n.touchStartX=t.originalEvent.touches[0].clientX)},i=function(t){n._pointerEvent&&at[t.originalEvent.pointerType.toUpperCase()]&&(n.touchDeltaX=t.originalEvent.clientX-n.touchStartX),n._handleSwipe(),"hover"===n._config.pause&&(n.pause(),n.touchTimeout&&clearTimeout(n.touchTimeout),n.touchTimeout=setTimeout(function(t){return n.cycle(t)},500+n._config.interval))};g(this._element.querySelectorAll(nt)).on(Q.DRAG_START,function(t){return t.preventDefault()}),this._pointerEvent?(g(this._element).on(Q.POINTERDOWN,function(t){return e(t)}),g(this._element).on(Q.POINTERUP,function(t){return i(t)}),this._element.classList.add(Z)):(g(this._element).on(Q.TOUCHSTART,function(t){return e(t)}),g(this._element).on(Q.TOUCHMOVE,function(t){var e;(e=t).originalEvent.touches&&1<e.originalEvent.touches.length?n.touchDeltaX=0:n.touchDeltaX=e.originalEvent.touches[0].clientX-n.touchStartX}),g(this._element).on(Q.TOUCHEND,function(t){return i(t)}))}},t._keydown=function(t){if(!/input|textarea/i.test(t.target.tagName))switch(t.which){case 37:t.preventDefault(),this.prev();break;case 39:t.preventDefault(),this.next()}},t._getItemIndex=function(t){return this._items=t&&t.parentNode?[].slice.call(t.parentNode.querySelectorAll(et)):[],this._items.indexOf(t)},t._getItemByDirection=function(t,e){var n=t===F,i=t===q,o=this._getItemIndex(e),r=this._items.length-1;if((i&&0===o||n&&o===r)&&!this._config.wrap)return e;var s=(o+(t===q?-1:1))%this._items.length;return-1===s?this._items[this._items.length-1]:this._items[s]},t._triggerSlideEvent=function(t,e){var n=this._getItemIndex(t),i=this._getItemIndex(this._element.querySelector(tt)),o=g.Event(Q.SLIDE,{relatedTarget:t,direction:e,from:i,to:n});return g(this._element).trigger(o),o},t._setActiveIndicatorElement=function(t){if(this._indicatorsElement){var e=[].slice.call(this._indicatorsElement.querySelectorAll($));g(e).removeClass(V);var n=this._indicatorsElement.children[this._getItemIndex(t)];n&&g(n).addClass(V)}},t._slide=function(t,e){var n,i,o,r=this,s=this._element.querySelector(tt),a=this._getItemIndex(s),l=e||s&&this._getItemByDirection(t,s),c=this._getItemIndex(l),h=Boolean(this._interval);if(o=t===F?(n=z,i=G,M):(n=X,i=J,K),l&&g(l).hasClass(V))this._isSliding=!1;else if(!this._triggerSlideEvent(l,o).isDefaultPrevented()&&s&&l){this._isSliding=!0,h&&this.pause(),this._setActiveIndicatorElement(l);var u=g.Event(Q.SLID,{relatedTarget:l,direction:o,from:a,to:c});if(g(this._element).hasClass(Y)){g(l).addClass(i),_.reflow(l),g(s).addClass(n),g(l).addClass(n);var f=parseInt(l.getAttribute("data-interval"),10);this._config.interval=f?(this._config.defaultInterval=this._config.defaultInterval||this._config.interval,f):this._config.defaultInterval||this._config.interval;var d=_.getTransitionDurationFromElement(s);g(s).one(_.TRANSITION_END,function(){g(l).removeClass(n+" "+i).addClass(V),g(s).removeClass(V+" "+i+" "+n),r._isSliding=!1,setTimeout(function(){return g(r._element).trigger(u)},0)}).emulateTransitionEnd(d)}else g(s).removeClass(V),g(l).addClass(V),this._isSliding=!1,g(this._element).trigger(u);h&&this.cycle()}},r._jQueryInterface=function(i){return this.each(function(){var t=g(this).data(j),e=l({},W,g(this).data());"object"==typeof i&&(e=l({},e,i));var n="string"==typeof i?i:e.slide;if(t||(t=new r(this,e),g(this).data(j,t)),"number"==typeof i)t.to(i);else if("string"==typeof n){if("undefined"==typeof t[n])throw new TypeError('No method named "'+n+'"');t[n]()}else e.interval&&e.ride&&(t.pause(),t.cycle())})},r._dataApiClickHandler=function(t){var e=_.getSelectorFromElement(this);if(e){var n=g(e)[0];if(n&&g(n).hasClass(B)){var i=l({},g(n).data(),g(this).data()),o=this.getAttribute("data-slide-to");o&&(i.interval=!1),r._jQueryInterface.call(g(n),i),o&&g(n).data(j).to(o),t.preventDefault()}}},s(r,null,[{key:"VERSION",get:function(){return"4.3.0"}},{key:"Default",get:function(){return W}}]),r}();g(document).on(Q.CLICK_DATA_API,rt,lt._dataApiClickHandler),g(window).on(Q.LOAD_DATA_API,function(){for(var t=[].slice.call(document.querySelectorAll(st)),e=0,n=t.length;e<n;e++){var i=g(t[e]);lt._jQueryInterface.call(i,i.data())}}),g.fn[L]=lt._jQueryInterface,g.fn[L].Constructor=lt,g.fn[L].noConflict=function(){return g.fn[L]=U,lt._jQueryInterface};var ct="collapse",ht="bs.collapse",ut="."+ht,ft=g.fn[ct],dt={toggle:!0,parent:""},gt={toggle:"boolean",parent:"(string|element)"},_t={SHOW:"show"+ut,SHOWN:"shown"+ut,HIDE:"hide"+ut,HIDDEN:"hidden"+ut,CLICK_DATA_API:"click"+ut+".data-api"},mt="show",pt="collapse",vt="collapsing",yt="collapsed",Et="width",Ct="height",Tt=".show, .collapsing",St='[data-toggle="collapse"]',bt=function(){function a(e,t){this._isTransitioning=!1,this._element=e,this._config=this._getConfig(t),this._triggerArray=[].slice.call(document.querySelectorAll('[data-toggle="collapse"][href="#'+e.id+'"],[data-toggle="collapse"][data-target="#'+e.id+'"]'));for(var n=[].slice.call(document.querySelectorAll(St)),i=0,o=n.length;i<o;i++){var r=n[i],s=_.getSelectorFromElement(r),a=[].slice.call(document.querySelectorAll(s)).filter(function(t){return t===e});null!==s&&0<a.length&&(this._selector=s,this._triggerArray.push(r))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}var t=a.prototype;return t.toggle=function(){g(this._element).hasClass(mt)?this.hide():this.show()},t.show=function(){var t,e,n=this;if(!this._isTransitioning&&!g(this._element).hasClass(mt)&&(this._parent&&0===(t=[].slice.call(this._parent.querySelectorAll(Tt)).filter(function(t){return"string"==typeof n._config.parent?t.getAttribute("data-parent")===n._config.parent:t.classList.contains(pt)})).length&&(t=null),!(t&&(e=g(t).not(this._selector).data(ht))&&e._isTransitioning))){var i=g.Event(_t.SHOW);if(g(this._element).trigger(i),!i.isDefaultPrevented()){t&&(a._jQueryInterface.call(g(t).not(this._selector),"hide"),e||g(t).data(ht,null));var o=this._getDimension();g(this._element).removeClass(pt).addClass(vt),this._element.style[o]=0,this._triggerArray.length&&g(this._triggerArray).removeClass(yt).attr("aria-expanded",!0),this.setTransitioning(!0);var r="scroll"+(o[0].toUpperCase()+o.slice(1)),s=_.getTransitionDurationFromElement(this._element);g(this._element).one(_.TRANSITION_END,function(){g(n._element).removeClass(vt).addClass(pt).addClass(mt),n._element.style[o]="",n.setTransitioning(!1),g(n._element).trigger(_t.SHOWN)}).emulateTransitionEnd(s),this._element.style[o]=this._element[r]+"px"}}},t.hide=function(){var t=this;if(!this._isTransitioning&&g(this._element).hasClass(mt)){var e=g.Event(_t.HIDE);if(g(this._element).trigger(e),!e.isDefaultPrevented()){var n=this._getDimension();this._element.style[n]=this._element.getBoundingClientRect()[n]+"px",_.reflow(this._element),g(this._element).addClass(vt).removeClass(pt).removeClass(mt);var i=this._triggerArray.length;if(0<i)for(var o=0;o<i;o++){var r=this._triggerArray[o],s=_.getSelectorFromElement(r);if(null!==s)g([].slice.call(document.querySelectorAll(s))).hasClass(mt)||g(r).addClass(yt).attr("aria-expanded",!1)}this.setTransitioning(!0);this._element.style[n]="";var a=_.getTransitionDurationFromElement(this._element);g(this._element).one(_.TRANSITION_END,function(){t.setTransitioning(!1),g(t._element).removeClass(vt).addClass(pt).trigger(_t.HIDDEN)}).emulateTransitionEnd(a)}}},t.setTransitioning=function(t){this._isTransitioning=t},t.dispose=function(){g.removeData(this._element,ht),this._config=null,this._parent=null,this._element=null,this._triggerArray=null,this._isTransitioning=null},t._getConfig=function(t){return(t=l({},dt,t)).toggle=Boolean(t.toggle),_.typeCheckConfig(ct,t,gt),t},t._getDimension=function(){return g(this._element).hasClass(Et)?Et:Ct},t._getParent=function(){var t,n=this;_.isElement(this._config.parent)?(t=this._config.parent,"undefined"!=typeof this._config.parent.jquery&&(t=this._config.parent[0])):t=document.querySelector(this._config.parent);var e='[data-toggle="collapse"][data-parent="'+this._config.parent+'"]',i=[].slice.call(t.querySelectorAll(e));return g(i).each(function(t,e){n._addAriaAndCollapsedClass(a._getTargetFromElement(e),[e])}),t},t._addAriaAndCollapsedClass=function(t,e){var n=g(t).hasClass(mt);e.length&&g(e).toggleClass(yt,!n).attr("aria-expanded",n)},a._getTargetFromElement=function(t){var e=_.getSelectorFromElement(t);return e?document.querySelector(e):null},a._jQueryInterface=function(i){return this.each(function(){var t=g(this),e=t.data(ht),n=l({},dt,t.data(),"object"==typeof i&&i?i:{});if(!e&&n.toggle&&/show|hide/.test(i)&&(n.toggle=!1),e||(e=new a(this,n),t.data(ht,e)),"string"==typeof i){if("undefined"==typeof e[i])throw new TypeError('No method named "'+i+'"');e[i]()}})},s(a,null,[{key:"VERSION",get:function(){return"4.3.0"}},{key:"Default",get:function(){return dt}}]),a}();g(document).on(_t.CLICK_DATA_API,St,function(t){"A"===t.currentTarget.tagName&&t.preventDefault();var n=g(this),e=_.getSelectorFromElement(this),i=[].slice.call(document.querySelectorAll(e));g(i).each(function(){var t=g(this),e=t.data(ht)?"toggle":n.data();bt._jQueryInterface.call(t,e)})}),g.fn[ct]=bt._jQueryInterface,g.fn[ct].Constructor=bt,g.fn[ct].noConflict=function(){return g.fn[ct]=ft,bt._jQueryInterface};var It="dropdown",Dt="bs.dropdown",wt="."+Dt,At=".data-api",Nt=g.fn[It],Ot=new RegExp("38|40|27"),kt={HIDE:"hide"+wt,HIDDEN:"hidden"+wt,SHOW:"show"+wt,SHOWN:"shown"+wt,CLICK:"click"+wt,CLICK_DATA_API:"click"+wt+At,KEYDOWN_DATA_API:"keydown"+wt+At,KEYUP_DATA_API:"keyup"+wt+At},Pt="disabled",Lt="show",jt="dropup",Ht="dropright",Rt="dropleft",Ut="dropdown-menu-right",Wt="position-static",xt='[data-toggle="dropdown"]',Ft=".dropdown form",qt=".dropdown-menu",Mt=".navbar-nav",Kt=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",Qt="top-start",Bt="top-end",Vt="bottom-start",Yt="bottom-end",Xt="right-start",zt="left-start",Gt={offset:0,flip:!0,boundary:"scrollParent",reference:"toggle",display:"dynamic"},Jt={offset:"(number|string|function)",flip:"boolean",boundary:"(string|element)",reference:"(string|element)",display:"string"},Zt=function(){function c(t,e){this._element=t,this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}var t=c.prototype;return t.toggle=function(){if(!this._element.disabled&&!g(this._element).hasClass(Pt)){var t=c._getParentFromElement(this._element),e=g(this._menu).hasClass(Lt);if(c._clearMenus(),!e){var n={relatedTarget:this._element},i=g.Event(kt.SHOW,n);if(g(t).trigger(i),!i.isDefaultPrevented()){if(!this._inNavbar){if("undefined"==typeof u)throw new TypeError("Bootstrap's dropdowns require Popper.js (https://popper.js.org/)");var o=this._element;"parent"===this._config.reference?o=t:_.isElement(this._config.reference)&&(o=this._config.reference,"undefined"!=typeof this._config.reference.jquery&&(o=this._config.reference[0])),"scrollParent"!==this._config.boundary&&g(t).addClass(Wt),this._popper=new u(o,this._menu,this._getPopperConfig())}"ontouchstart"in document.documentElement&&0===g(t).closest(Mt).length&&g(document.body).children().on("mouseover",null,g.noop),this._element.focus(),this._element.setAttribute("aria-expanded",!0),g(this._menu).toggleClass(Lt),g(t).toggleClass(Lt).trigger(g.Event(kt.SHOWN,n))}}}},t.show=function(){if(!(this._element.disabled||g(this._element).hasClass(Pt)||g(this._menu).hasClass(Lt))){var t={relatedTarget:this._element},e=g.Event(kt.SHOW,t),n=c._getParentFromElement(this._element);g(n).trigger(e),e.isDefaultPrevented()||(g(this._menu).toggleClass(Lt),g(n).toggleClass(Lt).trigger(g.Event(kt.SHOWN,t)))}},t.hide=function(){if(!this._element.disabled&&!g(this._element).hasClass(Pt)&&g(this._menu).hasClass(Lt)){var t={relatedTarget:this._element},e=g.Event(kt.HIDE,t),n=c._getParentFromElement(this._element);g(n).trigger(e),e.isDefaultPrevented()||(g(this._menu).toggleClass(Lt),g(n).toggleClass(Lt).trigger(g.Event(kt.HIDDEN,t)))}},t.dispose=function(){g.removeData(this._element,Dt),g(this._element).off(wt),this._element=null,(this._menu=null)!==this._popper&&(this._popper.destroy(),this._popper=null)},t.update=function(){this._inNavbar=this._detectNavbar(),null!==this._popper&&this._popper.scheduleUpdate()},t._addEventListeners=function(){var e=this;g(this._element).on(kt.CLICK,function(t){t.preventDefault(),t.stopPropagation(),e.toggle()})},t._getConfig=function(t){return t=l({},this.constructor.Default,g(this._element).data(),t),_.typeCheckConfig(It,t,this.constructor.DefaultType),t},t._getMenuElement=function(){if(!this._menu){var t=c._getParentFromElement(this._element);t&&(this._menu=t.querySelector(qt))}return this._menu},t._getPlacement=function(){var t=g(this._element.parentNode),e=Vt;return t.hasClass(jt)?(e=Qt,g(this._menu).hasClass(Ut)&&(e=Bt)):t.hasClass(Ht)?e=Xt:t.hasClass(Rt)?e=zt:g(this._menu).hasClass(Ut)&&(e=Yt),e},t._detectNavbar=function(){return 0<g(this._element).closest(".navbar").length},t._getOffset=function(){var e=this,t={};return"function"==typeof this._config.offset?t.fn=function(t){return t.offsets=l({},t.offsets,e._config.offset(t.offsets,e._element)||{}),t}:t.offset=this._config.offset,t},t._getPopperConfig=function(){var t={placement:this._getPlacement(),modifiers:{offset:this._getOffset(),flip:{enabled:this._config.flip},preventOverflow:{boundariesElement:this._config.boundary}}};return"static"===this._config.display&&(t.modifiers.applyStyle={enabled:!1}),t},c._jQueryInterface=function(e){return this.each(function(){var t=g(this).data(Dt);if(t||(t=new c(this,"object"==typeof e?e:null),g(this).data(Dt,t)),"string"==typeof e){if("undefined"==typeof t[e])throw new TypeError('No method named "'+e+'"');t[e]()}})},c._clearMenus=function(t){if(!t||3!==t.which&&("keyup"!==t.type||9===t.which))for(var e=[].slice.call(document.querySelectorAll(xt)),n=0,i=e.length;n<i;n++){var o=c._getParentFromElement(e[n]),r=g(e[n]).data(Dt),s={relatedTarget:e[n]};if(t&&"click"===t.type&&(s.clickEvent=t),r){var a=r._menu;if(g(o).hasClass(Lt)&&!(t&&("click"===t.type&&/input|textarea/i.test(t.target.tagName)||"keyup"===t.type&&9===t.which)&&g.contains(o,t.target))){var l=g.Event(kt.HIDE,s);g(o).trigger(l),l.isDefaultPrevented()||("ontouchstart"in document.documentElement&&g(document.body).children().off("mouseover",null,g.noop),e[n].setAttribute("aria-expanded","false"),g(a).removeClass(Lt),g(o).removeClass(Lt).trigger(g.Event(kt.HIDDEN,s)))}}}},c._getParentFromElement=function(t){var e,n=_.getSelectorFromElement(t);return n&&(e=document.querySelector(n)),e||t.parentNode},c._dataApiKeydownHandler=function(t){if((/input|textarea/i.test(t.target.tagName)?!(32===t.which||27!==t.which&&(40!==t.which&&38!==t.which||g(t.target).closest(qt).length)):Ot.test(t.which))&&(t.preventDefault(),t.stopPropagation(),!this.disabled&&!g(this).hasClass(Pt))){var e=c._getParentFromElement(this),n=g(e).hasClass(Lt);if(n&&(!n||27!==t.which&&32!==t.which)){var i=[].slice.call(e.querySelectorAll(Kt));if(0!==i.length){var o=i.indexOf(t.target);38===t.which&&0<o&&o--,40===t.which&&o<i.length-1&&o++,o<0&&(o=0),i[o].focus()}}else{if(27===t.which){var r=e.querySelector(xt);g(r).trigger("focus")}g(this).trigger("click")}}},s(c,null,[{key:"VERSION",get:function(){return"4.3.0"}},{key:"Default",get:function(){return Gt}},{key:"DefaultType",get:function(){return Jt}}]),c}();g(document).on(kt.KEYDOWN_DATA_API,xt,Zt._dataApiKeydownHandler).on(kt.KEYDOWN_DATA_API,qt,Zt._dataApiKeydownHandler).on(kt.CLICK_DATA_API+" "+kt.KEYUP_DATA_API,Zt._clearMenus).on(kt.CLICK_DATA_API,xt,function(t){t.preventDefault(),t.stopPropagation(),Zt._jQueryInterface.call(g(this),"toggle")}).on(kt.CLICK_DATA_API,Ft,function(t){t.stopPropagation()}),g.fn[It]=Zt._jQueryInterface,g.fn[It].Constructor=Zt,g.fn[It].noConflict=function(){return g.fn[It]=Nt,Zt._jQueryInterface};var $t="modal",te="bs.modal",ee="."+te,ne=g.fn[$t],ie={backdrop:!0,keyboard:!0,focus:!0,show:!0},oe={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean",show:"boolean"},re={HIDE:"hide"+ee,HIDDEN:"hidden"+ee,SHOW:"show"+ee,SHOWN:"shown"+ee,FOCUSIN:"focusin"+ee,RESIZE:"resize"+ee,CLICK_DISMISS:"click.dismiss"+ee,KEYDOWN_DISMISS:"keydown.dismiss"+ee,MOUSEUP_DISMISS:"mouseup.dismiss"+ee,MOUSEDOWN_DISMISS:"mousedown.dismiss"+ee,CLICK_DATA_API:"click"+ee+".data-api"},se="modal-dialog-scrollable",ae="modal-scrollbar-measure",le="modal-backdrop",ce="modal-open",he="fade",ue="show",fe=".modal-dialog",de=".modal-body",ge='[data-toggle="modal"]',_e='[data-dismiss="modal"]',me=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",pe=".sticky-top",ve=function(){function o(t,e){this._config=this._getConfig(e),this._element=t,this._dialog=t.querySelector(fe),this._backdrop=null,this._isShown=!1,this._isBodyOverflowing=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollbarWidth=0}var t=o.prototype;return t.toggle=function(t){return this._isShown?this.hide():this.show(t)},t.show=function(t){var e=this;if(!this._isShown&&!this._isTransitioning){g(this._element).hasClass(he)&&(this._isTransitioning=!0);var n=g.Event(re.SHOW,{relatedTarget:t});g(this._element).trigger(n),this._isShown||n.isDefaultPrevented()||(this._isShown=!0,this._checkScrollbar(),this._setScrollbar(),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),g(this._element).on(re.CLICK_DISMISS,_e,function(t){return e.hide(t)}),g(this._dialog).on(re.MOUSEDOWN_DISMISS,function(){g(e._element).one(re.MOUSEUP_DISMISS,function(t){g(t.target).is(e._element)&&(e._ignoreBackdropClick=!0)})}),this._showBackdrop(function(){return e._showElement(t)}))}},t.hide=function(t){var e=this;if(t&&t.preventDefault(),this._isShown&&!this._isTransitioning){var n=g.Event(re.HIDE);if(g(this._element).trigger(n),this._isShown&&!n.isDefaultPrevented()){this._isShown=!1;var i=g(this._element).hasClass(he);if(i&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),g(document).off(re.FOCUSIN),g(this._element).removeClass(ue),g(this._element).off(re.CLICK_DISMISS),g(this._dialog).off(re.MOUSEDOWN_DISMISS),i){var o=_.getTransitionDurationFromElement(this._element);g(this._element).one(_.TRANSITION_END,function(t){return e._hideModal(t)}).emulateTransitionEnd(o)}else this._hideModal()}}},t.dispose=function(){[window,this._element,this._dialog].forEach(function(t){return g(t).off(ee)}),g(document).off(re.FOCUSIN),g.removeData(this._element,te),this._config=null,this._element=null,this._dialog=null,this._backdrop=null,this._isShown=null,this._isBodyOverflowing=null,this._ignoreBackdropClick=null,this._isTransitioning=null,this._scrollbarWidth=null},t.handleUpdate=function(){this._adjustDialog()},t._getConfig=function(t){return t=l({},ie,t),_.typeCheckConfig($t,t,oe),t},t._showElement=function(t){var e=this,n=g(this._element).hasClass(he);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),g(this._dialog).hasClass(se)?this._dialog.querySelector(de).scrollTop=0:this._element.scrollTop=0,n&&_.reflow(this._element),g(this._element).addClass(ue),this._config.focus&&this._enforceFocus();var i=g.Event(re.SHOWN,{relatedTarget:t}),o=function(){e._config.focus&&e._element.focus(),e._isTransitioning=!1,g(e._element).trigger(i)};if(n){var r=_.getTransitionDurationFromElement(this._dialog);g(this._dialog).one(_.TRANSITION_END,o).emulateTransitionEnd(r)}else o()},t._enforceFocus=function(){var e=this;g(document).off(re.FOCUSIN).on(re.FOCUSIN,function(t){document!==t.target&&e._element!==t.target&&0===g(e._element).has(t.target).length&&e._element.focus()})},t._setEscapeEvent=function(){var e=this;this._isShown&&this._config.keyboard?g(this._element).on(re.KEYDOWN_DISMISS,function(t){27===t.which&&(t.preventDefault(),e.hide())}):this._isShown||g(this._element).off(re.KEYDOWN_DISMISS)},t._setResizeEvent=function(){var e=this;this._isShown?g(window).on(re.RESIZE,function(t){return e.handleUpdate(t)}):g(window).off(re.RESIZE)},t._hideModal=function(){var t=this;this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._isTransitioning=!1,this._showBackdrop(function(){g(document.body).removeClass(ce),t._resetAdjustments(),t._resetScrollbar(),g(t._element).trigger(re.HIDDEN)})},t._removeBackdrop=function(){this._backdrop&&(g(this._backdrop).remove(),this._backdrop=null)},t._showBackdrop=function(t){var e=this,n=g(this._element).hasClass(he)?he:"";if(this._isShown&&this._config.backdrop){if(this._backdrop=document.createElement("div"),this._backdrop.className=le,n&&this._backdrop.classList.add(n),g(this._backdrop).appendTo(document.body),g(this._element).on(re.CLICK_DISMISS,function(t){e._ignoreBackdropClick?e._ignoreBackdropClick=!1:t.target===t.currentTarget&&("static"===e._config.backdrop?e._element.focus():e.hide())}),n&&_.reflow(this._backdrop),g(this._backdrop).addClass(ue),!t)return;if(!n)return void t();var i=_.getTransitionDurationFromElement(this._backdrop);g(this._backdrop).one(_.TRANSITION_END,t).emulateTransitionEnd(i)}else if(!this._isShown&&this._backdrop){g(this._backdrop).removeClass(ue);var o=function(){e._removeBackdrop(),t&&t()};if(g(this._element).hasClass(he)){var r=_.getTransitionDurationFromElement(this._backdrop);g(this._backdrop).one(_.TRANSITION_END,o).emulateTransitionEnd(r)}else o()}else t&&t()},t._adjustDialog=function(){var t=this._element.scrollHeight>document.documentElement.clientHeight;!this._isBodyOverflowing&&t&&(this._element.style.paddingLeft=this._scrollbarWidth+"px"),this._isBodyOverflowing&&!t&&(this._element.style.paddingRight=this._scrollbarWidth+"px")},t._resetAdjustments=function(){this._element.style.paddingLeft="",this._element.style.paddingRight=""},t._checkScrollbar=function(){var t=document.body.getBoundingClientRect();this._isBodyOverflowing=t.left+t.right<window.innerWidth,this._scrollbarWidth=this._getScrollbarWidth()},t._setScrollbar=function(){var o=this;if(this._isBodyOverflowing){var t=[].slice.call(document.querySelectorAll(me)),e=[].slice.call(document.querySelectorAll(pe));g(t).each(function(t,e){var n=e.style.paddingRight,i=g(e).css("padding-right");g(e).data("padding-right",n).css("padding-right",parseFloat(i)+o._scrollbarWidth+"px")}),g(e).each(function(t,e){var n=e.style.marginRight,i=g(e).css("margin-right");g(e).data("margin-right",n).css("margin-right",parseFloat(i)-o._scrollbarWidth+"px")});var n=document.body.style.paddingRight,i=g(document.body).css("padding-right");g(document.body).data("padding-right",n).css("padding-right",parseFloat(i)+this._scrollbarWidth+"px")}g(document.body).addClass(ce)},t._resetScrollbar=function(){var t=[].slice.call(document.querySelectorAll(me));g(t).each(function(t,e){var n=g(e).data("padding-right");g(e).removeData("padding-right"),e.style.paddingRight=n||""});var e=[].slice.call(document.querySelectorAll(""+pe));g(e).each(function(t,e){var n=g(e).data("margin-right");"undefined"!=typeof n&&g(e).css("margin-right",n).removeData("margin-right")});var n=g(document.body).data("padding-right");g(document.body).removeData("padding-right"),document.body.style.paddingRight=n||""},t._getScrollbarWidth=function(){var t=document.createElement("div");t.className=ae,document.body.appendChild(t);var e=t.getBoundingClientRect().width-t.clientWidth;return document.body.removeChild(t),e},o._jQueryInterface=function(n,i){return this.each(function(){var t=g(this).data(te),e=l({},ie,g(this).data(),"object"==typeof n&&n?n:{});if(t||(t=new o(this,e),g(this).data(te,t)),"string"==typeof n){if("undefined"==typeof t[n])throw new TypeError('No method named "'+n+'"');t[n](i)}else e.show&&t.show(i)})},s(o,null,[{key:"VERSION",get:function(){return"4.3.0"}},{key:"Default",get:function(){return ie}}]),o}();g(document).on(re.CLICK_DATA_API,ge,function(t){var e,n=this,i=_.getSelectorFromElement(this);i&&(e=document.querySelector(i));var o=g(e).data(te)?"toggle":l({},g(e).data(),g(this).data());"A"!==this.tagName&&"AREA"!==this.tagName||t.preventDefault();var r=g(e).one(re.SHOW,function(t){t.isDefaultPrevented()||r.one(re.HIDDEN,function(){g(n).is(":visible")&&n.focus()})});ve._jQueryInterface.call(g(e),o,this)}),g.fn[$t]=ve._jQueryInterface,g.fn[$t].Constructor=ve,g.fn[$t].noConflict=function(){return g.fn[$t]=ne,ve._jQueryInterface};var ye="tooltip",Ee="bs.tooltip",Ce="."+Ee,Te=g.fn[ye],Se="bs-tooltip",be=new RegExp("(^|\\s)"+Se+"\\S+","g"),Ie={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(number|string|function)",container:"(string|element|boolean)",fallbackPlacement:"(string|array)",boundary:"(string|element)"},De={AUTO:"auto",TOP:"top",RIGHT:"right",BOTTOM:"bottom",LEFT:"left"},we={animation:!0,template:'<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:0,container:!1,fallbackPlacement:"flip",boundary:"scrollParent"},Ae="show",Ne="out",Oe={HIDE:"hide"+Ce,HIDDEN:"hidden"+Ce,SHOW:"show"+Ce,SHOWN:"shown"+Ce,INSERTED:"inserted"+Ce,CLICK:"click"+Ce,FOCUSIN:"focusin"+Ce,FOCUSOUT:"focusout"+Ce,MOUSEENTER:"mouseenter"+Ce,MOUSELEAVE:"mouseleave"+Ce},ke="fade",Pe="show",Le=".tooltip-inner",je=".arrow",He="hover",Re="focus",Ue="click",We="manual",xe=function(){function i(t,e){if("undefined"==typeof u)throw new TypeError("Bootstrap's tooltips require Popper.js (https://popper.js.org/)");this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=t,this.config=this._getConfig(e),this.tip=null,this._setListeners()}var t=i.prototype;return t.enable=function(){this._isEnabled=!0},t.disable=function(){this._isEnabled=!1},t.toggleEnabled=function(){this._isEnabled=!this._isEnabled},t.toggle=function(t){if(this._isEnabled)if(t){var e=this.constructor.DATA_KEY,n=g(t.currentTarget).data(e);n||(n=new this.constructor(t.currentTarget,this._getDelegateConfig()),g(t.currentTarget).data(e,n)),n._activeTrigger.click=!n._activeTrigger.click,n._isWithActiveTrigger()?n._enter(null,n):n._leave(null,n)}else{if(g(this.getTipElement()).hasClass(Pe))return void this._leave(null,this);this._enter(null,this)}},t.dispose=function(){clearTimeout(this._timeout),g.removeData(this.element,this.constructor.DATA_KEY),g(this.element).off(this.constructor.EVENT_KEY),g(this.element).closest(".modal").off("hide.bs.modal"),this.tip&&g(this.tip).remove(),this._isEnabled=null,this._timeout=null,this._hoverState=null,(this._activeTrigger=null)!==this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null},t.show=function(){var e=this;if("none"===g(this.element).css("display"))throw new Error("Please use show on visible elements");var t=g.Event(this.constructor.Event.SHOW);if(this.isWithContent()&&this._isEnabled){g(this.element).trigger(t);var n=_.findShadowRoot(this.element),i=g.contains(null!==n?n:this.element.ownerDocument.documentElement,this.element);if(t.isDefaultPrevented()||!i)return;var o=this.getTipElement(),r=_.getUID(this.constructor.NAME);o.setAttribute("id",r),this.element.setAttribute("aria-describedby",r),this.setContent(),this.config.animation&&g(o).addClass(ke);var s="function"==typeof this.config.placement?this.config.placement.call(this,o,this.element):this.config.placement,a=this._getAttachment(s);this.addAttachmentClass(a);var l=this._getContainer();g(o).data(this.constructor.DATA_KEY,this),g.contains(this.element.ownerDocument.documentElement,this.tip)||g(o).appendTo(l),g(this.element).trigger(this.constructor.Event.INSERTED),this._popper=new u(this.element,o,{placement:a,modifiers:{offset:this._getOffset(),flip:{behavior:this.config.fallbackPlacement},arrow:{element:je},preventOverflow:{boundariesElement:this.config.boundary}},onCreate:function(t){t.originalPlacement!==t.placement&&e._handlePopperPlacementChange(t)},onUpdate:function(t){return e._handlePopperPlacementChange(t)}}),g(o).addClass(Pe),"ontouchstart"in document.documentElement&&g(document.body).children().on("mouseover",null,g.noop);var c=function(){e.config.animation&&e._fixTransition();var t=e._hoverState;e._hoverState=null,g(e.element).trigger(e.constructor.Event.SHOWN),t===Ne&&e._leave(null,e)};if(g(this.tip).hasClass(ke)){var h=_.getTransitionDurationFromElement(this.tip);g(this.tip).one(_.TRANSITION_END,c).emulateTransitionEnd(h)}else c()}},t.hide=function(t){var e=this,n=this.getTipElement(),i=g.Event(this.constructor.Event.HIDE),o=function(){e._hoverState!==Ae&&n.parentNode&&n.parentNode.removeChild(n),e._cleanTipClass(),e.element.removeAttribute("aria-describedby"),g(e.element).trigger(e.constructor.Event.HIDDEN),null!==e._popper&&e._popper.destroy(),t&&t()};if(g(this.element).trigger(i),!i.isDefaultPrevented()){if(g(n).removeClass(Pe),"ontouchstart"in document.documentElement&&g(document.body).children().off("mouseover",null,g.noop),this._activeTrigger[Ue]=!1,this._activeTrigger[Re]=!1,this._activeTrigger[He]=!1,g(this.tip).hasClass(ke)){var r=_.getTransitionDurationFromElement(n);g(n).one(_.TRANSITION_END,o).emulateTransitionEnd(r)}else o();this._hoverState=""}},t.update=function(){null!==this._popper&&this._popper.scheduleUpdate()},t.isWithContent=function(){return Boolean(this.getTitle())},t.addAttachmentClass=function(t){g(this.getTipElement()).addClass(Se+"-"+t)},t.getTipElement=function(){return this.tip=this.tip||g(this.config.template)[0],this.tip},t.setContent=function(){var t=this.getTipElement();this.setElementContent(g(t.querySelectorAll(Le)),this.getTitle()),g(t).removeClass(ke+" "+Pe)},t.setElementContent=function(t,e){var n=this.config.html;"object"==typeof e&&(e.nodeType||e.jquery)?n?g(e).parent().is(t)||t.empty().append(e):t.text(g(e).text()):t[n?"html":"text"](e)},t.getTitle=function(){var t=this.element.getAttribute("data-original-title");return t||(t="function"==typeof this.config.title?this.config.title.call(this.element):this.config.title),t},t._getOffset=function(){var e=this,t={};return"function"==typeof this.config.offset?t.fn=function(t){return t.offsets=l({},t.offsets,e.config.offset(t.offsets,e.element)||{}),t}:t.offset=this.config.offset,t},t._getContainer=function(){return!1===this.config.container?document.body:_.isElement(this.config.container)?g(this.config.container):g(document).find(this.config.container)},t._getAttachment=function(t){return De[t.toUpperCase()]},t._setListeners=function(){var i=this;this.config.trigger.split(" ").forEach(function(t){if("click"===t)g(i.element).on(i.constructor.Event.CLICK,i.config.selector,function(t){return i.toggle(t)});else if(t!==We){var e=t===He?i.constructor.Event.MOUSEENTER:i.constructor.Event.FOCUSIN,n=t===He?i.constructor.Event.MOUSELEAVE:i.constructor.Event.FOCUSOUT;g(i.element).on(e,i.config.selector,function(t){return i._enter(t)}).on(n,i.config.selector,function(t){return i._leave(t)})}}),g(this.element).closest(".modal").on("hide.bs.modal",function(){i.element&&i.hide()}),this.config.selector?this.config=l({},this.config,{trigger:"manual",selector:""}):this._fixTitle()},t._fixTitle=function(){var t=typeof this.element.getAttribute("data-original-title");(this.element.getAttribute("title")||"string"!==t)&&(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},t._enter=function(t,e){var n=this.constructor.DATA_KEY;(e=e||g(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),g(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusin"===t.type?Re:He]=!0),g(e.getTipElement()).hasClass(Pe)||e._hoverState===Ae?e._hoverState=Ae:(clearTimeout(e._timeout),e._hoverState=Ae,e.config.delay&&e.config.delay.show?e._timeout=setTimeout(function(){e._hoverState===Ae&&e.show()},e.config.delay.show):e.show())},t._leave=function(t,e){var n=this.constructor.DATA_KEY;(e=e||g(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),g(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusout"===t.type?Re:He]=!1),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState=Ne,e.config.delay&&e.config.delay.hide?e._timeout=setTimeout(function(){e._hoverState===Ne&&e.hide()},e.config.delay.hide):e.hide())},t._isWithActiveTrigger=function(){for(var t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1},t._getConfig=function(t){return"number"==typeof(t=l({},this.constructor.Default,g(this.element).data(),"object"==typeof t&&t?t:{})).delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),_.typeCheckConfig(ye,t,this.constructor.DefaultType),t},t._getDelegateConfig=function(){var t={};if(this.config)for(var e in this.config)this.constructor.Default[e]!==this.config[e]&&(t[e]=this.config[e]);return t},t._cleanTipClass=function(){var t=g(this.getTipElement()),e=t.attr("class").match(be);null!==e&&e.length&&t.removeClass(e.join(""))},t._handlePopperPlacementChange=function(t){var e=t.instance;this.tip=e.popper,this._cleanTipClass(),this.addAttachmentClass(this._getAttachment(t.placement))},t._fixTransition=function(){var t=this.getTipElement(),e=this.config.animation;null===t.getAttribute("x-placement")&&(g(t).removeClass(ke),this.config.animation=!1,this.hide(),this.show(),this.config.animation=e)},i._jQueryInterface=function(n){return this.each(function(){var t=g(this).data(Ee),e="object"==typeof n&&n;if((t||!/dispose|hide/.test(n))&&(t||(t=new i(this,e),g(this).data(Ee,t)),"string"==typeof n)){if("undefined"==typeof t[n])throw new TypeError('No method named "'+n+'"');t[n]()}})},s(i,null,[{key:"VERSION",get:function(){return"4.3.0"}},{key:"Default",get:function(){return we}},{key:"NAME",get:function(){return ye}},{key:"DATA_KEY",get:function(){return Ee}},{key:"Event",get:function(){return Oe}},{key:"EVENT_KEY",get:function(){return Ce}},{key:"DefaultType",get:function(){return Ie}}]),i}();g.fn[ye]=xe._jQueryInterface,g.fn[ye].Constructor=xe,g.fn[ye].noConflict=function(){return g.fn[ye]=Te,xe._jQueryInterface};var Fe="popover",qe="bs.popover",Me="."+qe,Ke=g.fn[Fe],Qe="bs-popover",Be=new RegExp("(^|\\s)"+Qe+"\\S+","g"),Ve=l({},xe.Default,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'}),Ye=l({},xe.DefaultType,{content:"(string|element|function)"}),Xe="fade",ze="show",Ge=".popover-header",Je=".popover-body",Ze={HIDE:"hide"+Me,HIDDEN:"hidden"+Me,SHOW:"show"+Me,SHOWN:"shown"+Me,INSERTED:"inserted"+Me,CLICK:"click"+Me,FOCUSIN:"focusin"+Me,FOCUSOUT:"focusout"+Me,MOUSEENTER:"mouseenter"+Me,MOUSELEAVE:"mouseleave"+Me},$e=function(t){var e,n;function i(){return t.apply(this,arguments)||this}n=t,(e=i).prototype=Object.create(n.prototype),(e.prototype.constructor=e).__proto__=n;var o=i.prototype;return o.isWithContent=function(){return this.getTitle()||this._getContent()},o.addAttachmentClass=function(t){g(this.getTipElement()).addClass(Qe+"-"+t)},o.getTipElement=function(){return this.tip=this.tip||g(this.config.template)[0],this.tip},o.setContent=function(){var t=g(this.getTipElement());this.setElementContent(t.find(Ge),this.getTitle());var e=this._getContent();"function"==typeof e&&(e=e.call(this.element)),this.setElementContent(t.find(Je),e),t.removeClass(Xe+" "+ze)},o._getContent=function(){return this.element.getAttribute("data-content")||this.config.content},o._cleanTipClass=function(){var t=g(this.getTipElement()),e=t.attr("class").match(Be);null!==e&&0<e.length&&t.removeClass(e.join(""))},i._jQueryInterface=function(n){return this.each(function(){var t=g(this).data(qe),e="object"==typeof n?n:null;if((t||!/dispose|hide/.test(n))&&(t||(t=new i(this,e),g(this).data(qe,t)),"string"==typeof n)){if("undefined"==typeof t[n])throw new TypeError('No method named "'+n+'"');t[n]()}})},s(i,null,[{key:"VERSION",get:function(){return"4.3.0"}},{key:"Default",get:function(){return Ve}},{key:"NAME",get:function(){return Fe}},{key:"DATA_KEY",get:function(){return qe}},{key:"Event",get:function(){return Ze}},{key:"EVENT_KEY",get:function(){return Me}},{key:"DefaultType",get:function(){return Ye}}]),i}(xe);g.fn[Fe]=$e._jQueryInterface,g.fn[Fe].Constructor=$e,g.fn[Fe].noConflict=function(){return g.fn[Fe]=Ke,$e._jQueryInterface};var tn="scrollspy",en="bs.scrollspy",nn="."+en,on=g.fn[tn],rn={offset:10,method:"auto",target:""},sn={offset:"number",method:"string",target:"(string|element)"},an={ACTIVATE:"activate"+nn,SCROLL:"scroll"+nn,LOAD_DATA_API:"load"+nn+".data-api"},ln="dropdown-item",cn="active",hn='[data-spy="scroll"]',un=".nav, .list-group",fn=".nav-link",dn=".nav-item",gn=".list-group-item",_n=".dropdown",mn=".dropdown-item",pn=".dropdown-toggle",vn="offset",yn="position",En=function(){function n(t,e){var n=this;this._element=t,this._scrollElement="BODY"===t.tagName?window:t,this._config=this._getConfig(e),this._selector=this._config.target+" "+fn+","+this._config.target+" "+gn+","+this._config.target+" "+mn,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,g(this._scrollElement).on(an.SCROLL,function(t){return n._process(t)}),this.refresh(),this._process()}var t=n.prototype;return t.refresh=function(){var e=this,t=this._scrollElement===this._scrollElement.window?vn:yn,o="auto"===this._config.method?t:this._config.method,r=o===yn?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),[].slice.call(document.querySelectorAll(this._selector)).map(function(t){var e,n=_.getSelectorFromElement(t);if(n&&(e=document.querySelector(n)),e){var i=e.getBoundingClientRect();if(i.width||i.height)return[g(e)[o]().top+r,n]}return null}).filter(function(t){return t}).sort(function(t,e){return t[0]-e[0]}).forEach(function(t){e._offsets.push(t[0]),e._targets.push(t[1])})},t.dispose=function(){g.removeData(this._element,en),g(this._scrollElement).off(nn),this._element=null,this._scrollElement=null,this._config=null,this._selector=null,this._offsets=null,this._targets=null,this._activeTarget=null,this._scrollHeight=null},t._getConfig=function(t){if("string"!=typeof(t=l({},rn,"object"==typeof t&&t?t:{})).target){var e=g(t.target).attr("id");e||(e=_.getUID(tn),g(t.target).attr("id",e)),t.target="#"+e}return _.typeCheckConfig(tn,t,sn),t},t._getScrollTop=function(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop},t._getScrollHeight=function(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)},t._getOffsetHeight=function(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height},t._process=function(){var t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),n=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),n<=t){var i=this._targets[this._targets.length-1];this._activeTarget!==i&&this._activate(i)}else{if(this._activeTarget&&t<this._offsets[0]&&0<this._offsets[0])return this._activeTarget=null,void this._clear();for(var o=this._offsets.length;o--;){this._activeTarget!==this._targets[o]&&t>=this._offsets[o]&&("undefined"==typeof this._offsets[o+1]||t<this._offsets[o+1])&&this._activate(this._targets[o])}}},t._activate=function(e){this._activeTarget=e,this._clear();var t=this._selector.split(",").map(function(t){return t+'[data-target="'+e+'"],'+t+'[href="'+e+'"]'}),n=g([].slice.call(document.querySelectorAll(t.join(","))));n.hasClass(ln)?(n.closest(_n).find(pn).addClass(cn),n.addClass(cn)):(n.addClass(cn),n.parents(un).prev(fn+", "+gn).addClass(cn),n.parents(un).prev(dn).children(fn).addClass(cn)),g(this._scrollElement).trigger(an.ACTIVATE,{relatedTarget:e})},t._clear=function(){[].slice.call(document.querySelectorAll(this._selector)).filter(function(t){return t.classList.contains(cn)}).forEach(function(t){return t.classList.remove(cn)})},n._jQueryInterface=function(e){return this.each(function(){var t=g(this).data(en);if(t||(t=new n(this,"object"==typeof e&&e),g(this).data(en,t)),"string"==typeof e){if("undefined"==typeof t[e])throw new TypeError('No method named "'+e+'"');t[e]()}})},s(n,null,[{key:"VERSION",get:function(){return"4.3.0"}},{key:"Default",get:function(){return rn}}]),n}();g(window).on(an.LOAD_DATA_API,function(){for(var t=[].slice.call(document.querySelectorAll(hn)),e=t.length;e--;){var n=g(t[e]);En._jQueryInterface.call(n,n.data())}}),g.fn[tn]=En._jQueryInterface,g.fn[tn].Constructor=En,g.fn[tn].noConflict=function(){return g.fn[tn]=on,En._jQueryInterface};var Cn="bs.tab",Tn="."+Cn,Sn=g.fn.tab,bn={HIDE:"hide"+Tn,HIDDEN:"hidden"+Tn,SHOW:"show"+Tn,SHOWN:"shown"+Tn,CLICK_DATA_API:"click"+Tn+".data-api"},In="dropdown-menu",Dn="active",wn="disabled",An="fade",Nn="show",On=".dropdown",kn=".nav, .list-group",Pn=".active",Ln="> li > .active",jn='[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',Hn=".dropdown-toggle",Rn="> .dropdown-menu .active",Un=function(){function i(t){this._element=t}var t=i.prototype;return t.show=function(){var n=this;if(!(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&g(this._element).hasClass(Dn)||g(this._element).hasClass(wn))){var t,i,e=g(this._element).closest(kn)[0],o=_.getSelectorFromElement(this._element);if(e){var r="UL"===e.nodeName||"OL"===e.nodeName?Ln:Pn;i=(i=g.makeArray(g(e).find(r)))[i.length-1]}var s=g.Event(bn.HIDE,{relatedTarget:this._element}),a=g.Event(bn.SHOW,{relatedTarget:i});if(i&&g(i).trigger(s),g(this._element).trigger(a),!a.isDefaultPrevented()&&!s.isDefaultPrevented()){o&&(t=document.querySelector(o)),this._activate(this._element,e);var l=function(){var t=g.Event(bn.HIDDEN,{relatedTarget:n._element}),e=g.Event(bn.SHOWN,{relatedTarget:i});g(i).trigger(t),g(n._element).trigger(e)};t?this._activate(t,t.parentNode,l):l()}}},t.dispose=function(){g.removeData(this._element,Cn),this._element=null},t._activate=function(t,e,n){var i=this,o=(!e||"UL"!==e.nodeName&&"OL"!==e.nodeName?g(e).children(Pn):g(e).find(Ln))[0],r=n&&o&&g(o).hasClass(An),s=function(){return i._transitionComplete(t,o,n)};if(o&&r){var a=_.getTransitionDurationFromElement(o);g(o).removeClass(Nn).one(_.TRANSITION_END,s).emulateTransitionEnd(a)}else s()},t._transitionComplete=function(t,e,n){if(e){g(e).removeClass(Dn);var i=g(e.parentNode).find(Rn)[0];i&&g(i).removeClass(Dn),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!1)}if(g(t).addClass(Dn),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),_.reflow(t),t.classList.contains(An)&&t.classList.add(Nn),t.parentNode&&g(t.parentNode).hasClass(In)){var o=g(t).closest(On)[0];if(o){var r=[].slice.call(o.querySelectorAll(Hn));g(r).addClass(Dn)}t.setAttribute("aria-expanded",!0)}n&&n()},i._jQueryInterface=function(n){return this.each(function(){var t=g(this),e=t.data(Cn);if(e||(e=new i(this),t.data(Cn,e)),"string"==typeof n){if("undefined"==typeof e[n])throw new TypeError('No method named "'+n+'"');e[n]()}})},s(i,null,[{key:"VERSION",get:function(){return"4.3.0"}}]),i}();g(document).on(bn.CLICK_DATA_API,jn,function(t){t.preventDefault(),Un._jQueryInterface.call(g(this),"show")}),g.fn.tab=Un._jQueryInterface,g.fn.tab.Constructor=Un,g.fn.tab.noConflict=function(){return g.fn.tab=Sn,Un._jQueryInterface};var Wn="toast",xn="bs.toast",Fn="."+xn,qn=g.fn[Wn],Mn={CLICK_DISMISS:"click.dismiss"+Fn,HIDE:"hide"+Fn,HIDDEN:"hidden"+Fn,SHOW:"show"+Fn,SHOWN:"shown"+Fn},Kn="fade",Qn="hide",Bn="show",Vn="showing",Yn={animation:"boolean",autohide:"boolean",delay:"number"},Xn={animation:!0,autohide:!0,delay:500},zn='[data-dismiss="toast"]',Gn=function(){function i(t,e){this._element=t,this._config=this._getConfig(e),this._timeout=null,this._setListeners()}var t=i.prototype;return t.show=function(){var t=this;g(this._element).trigger(Mn.SHOW),this._config.animation&&this._element.classList.add(Kn);var e=function(){t._element.classList.remove(Vn),t._element.classList.add(Bn),g(t._element).trigger(Mn.SHOWN),t._config.autohide&&t.hide()};if(this._element.classList.remove(Qn),this._element.classList.add(Vn),this._config.animation){var n=_.getTransitionDurationFromElement(this._element);g(this._element).one(_.TRANSITION_END,e).emulateTransitionEnd(n)}else e()},t.hide=function(t){var e=this;this._element.classList.contains(Bn)&&(g(this._element).trigger(Mn.HIDE),t?this._close():this._timeout=setTimeout(function(){e._close()},this._config.delay))},t.dispose=function(){clearTimeout(this._timeout),this._timeout=null,this._element.classList.contains(Bn)&&this._element.classList.remove(Bn),g(this._element).off(Mn.CLICK_DISMISS),g.removeData(this._element,xn),this._element=null,this._config=null},t._getConfig=function(t){return t=l({},Xn,g(this._element).data(),"object"==typeof t&&t?t:{}),_.typeCheckConfig(Wn,t,this.constructor.DefaultType),t},t._setListeners=function(){var t=this;g(this._element).on(Mn.CLICK_DISMISS,zn,function(){return t.hide(!0)})},t._close=function(){var t=this,e=function(){t._element.classList.add(Qn),g(t._element).trigger(Mn.HIDDEN)};if(this._element.classList.remove(Bn),this._config.animation){var n=_.getTransitionDurationFromElement(this._element);g(this._element).one(_.TRANSITION_END,e).emulateTransitionEnd(n)}else e()},i._jQueryInterface=function(n){return this.each(function(){var t=g(this),e=t.data(xn);if(e||(e=new i(this,"object"==typeof n&&n),t.data(xn,e)),"string"==typeof n){if("undefined"==typeof e[n])throw new TypeError('No method named "'+n+'"');e[n](this)}})},s(i,null,[{key:"VERSION",get:function(){return"4.3.0"}},{key:"DefaultType",get:function(){return Yn}},{key:"Default",get:function(){return Xn}}]),i}();g.fn[Wn]=Gn._jQueryInterface,g.fn[Wn].Constructor=Gn,g.fn[Wn].noConflict=function(){return g.fn[Wn]=qn,Gn._jQueryInterface},function(){if("undefined"==typeof g)throw new TypeError("Bootstrap's JavaScript requires jQuery. jQuery must be included before Bootstrap's JavaScript.");var t=g.fn.jquery.split(" ")[0].split(".");if(t[0]<2&&t[1]<9||1===t[0]&&9===t[1]&&t[2]<1||4<=t[0])throw new Error("Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0")}(),t.Util=_,t.Alert=p,t.Button=P,t.Carousel=lt,t.Collapse=bt,t.Dropdown=Zt,t.Modal=ve,t.Popover=$e,t.Scrollspy=En,t.Tab=Un,t.Toast=Gn,t.Tooltip=xe,Object.defineProperty(t,"__esModule",{value:!0})}); +//# sourceMappingURL=bootstrap.min.js.map \ No newline at end of file diff --git a/docs/4.3/dist/js/bootstrap.min.js.map b/docs/4.3/dist/js/bootstrap.min.js.map new file mode 100644 index 0000000000000000000000000000000000000000..31f330858eba4221aade478370f7fb8d0146ac5c GIT binary patch literal 183068 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 Yu7LO#G>!ZvRifWmYp{#-vls9Ff7?7?E&u=k literal 0 HcmV?d00001 diff --git a/docs/4.3/examples/album/album.css b/docs/4.3/examples/album/album.css new file mode 100644 index 0000000000..bfc270d52e --- /dev/null +++ b/docs/4.3/examples/album/album.css @@ -0,0 +1,33 @@ +.jumbotron { + padding-top: 3rem; + padding-bottom: 3rem; + margin-bottom: 0; + background-color: #fff; +} +@media (min-width: 768px) { + .jumbotron { + padding-top: 6rem; + padding-bottom: 6rem; + } +} + +.jumbotron p:last-child { + margin-bottom: 0; +} + +.jumbotron-heading { + font-weight: 300; +} + +.jumbotron .container { + max-width: 40rem; +} + +footer { + padding-top: 3rem; + padding-bottom: 3rem; +} + +footer p { + margin-bottom: .25rem; +} diff --git a/docs/4.3/examples/album/index.html b/docs/4.3/examples/album/index.html new file mode 100644 index 0000000000..a08fce0ade --- /dev/null +++ b/docs/4.3/examples/album/index.html @@ -0,0 +1,240 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Album example · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/album/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="album.css" rel="stylesheet"> + </head> + <body> + <header> + <div class="collapse bg-dark" id="navbarHeader"> + <div class="container"> + <div class="row"> + <div class="col-sm-8 col-md-7 py-4"> + <h4 class="text-white">About</h4> + <p class="text-muted">Add some information about the album below, the author, or any other background context. Make it a few sentences long so folks can pick up some informative tidbits. Then, link them off to some social networking sites or contact information.</p> + </div> + <div class="col-sm-4 offset-md-1 py-4"> + <h4 class="text-white">Contact</h4> + <ul class="list-unstyled"> + <li><a href="#" class="text-white">Follow on Twitter</a></li> + <li><a href="#" class="text-white">Like on Facebook</a></li> + <li><a href="#" class="text-white">Email me</a></li> + </ul> + </div> + </div> + </div> + </div> + <div class="navbar navbar-dark bg-dark shadow-sm"> + <div class="container d-flex justify-content-between"> + <a href="#" class="navbar-brand d-flex align-items-center"> + <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" aria-hidden="true" class="mr-2" viewBox="0 0 24 24" focusable="false"><path d="M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z"/><circle cx="12" cy="13" r="4"/></svg> + <strong>Album</strong> + </a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarHeader" aria-controls="navbarHeader" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + </div> + </div> +</header> + +<main role="main"> + + <section class="jumbotron text-center"> + <div class="container"> + <h1 class="jumbotron-heading">Album example</h1> + <p class="lead text-muted">Something short and leading about the collection below—its contents, the creator, etc. Make it short and sweet, but not too short so folks don’t simply skip over it entirely.</p> + <p> + <a href="#" class="btn btn-primary my-2">Main call to action</a> + <a href="#" class="btn btn-secondary my-2">Secondary action</a> + </p> + </div> + </section> + + <div class="album py-5 bg-light"> + <div class="container"> + + <div class="row"> + <div class="col-md-4"> + <div class="card mb-4 shadow-sm"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="225" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Thumbnail"><title>Placeholder</title><rect width="100%" height="100%" fill="#55595c"/><text x="50%" y="50%" fill="#eceeef" dy=".3em">Thumbnail</text></svg> + <div class="card-body"> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + <div class="d-flex justify-content-between align-items-center"> + <div class="btn-group"> + <button type="button" class="btn btn-sm btn-outline-secondary">View</button> + <button type="button" class="btn btn-sm btn-outline-secondary">Edit</button> + </div> + <small class="text-muted">9 mins</small> + </div> + </div> + </div> + </div> + <div class="col-md-4"> + <div class="card mb-4 shadow-sm"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="225" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Thumbnail"><title>Placeholder</title><rect width="100%" height="100%" fill="#55595c"/><text x="50%" y="50%" fill="#eceeef" dy=".3em">Thumbnail</text></svg> + <div class="card-body"> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + <div class="d-flex justify-content-between align-items-center"> + <div class="btn-group"> + <button type="button" class="btn btn-sm btn-outline-secondary">View</button> + <button type="button" class="btn btn-sm btn-outline-secondary">Edit</button> + </div> + <small class="text-muted">9 mins</small> + </div> + </div> + </div> + </div> + <div class="col-md-4"> + <div class="card mb-4 shadow-sm"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="225" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Thumbnail"><title>Placeholder</title><rect width="100%" height="100%" fill="#55595c"/><text x="50%" y="50%" fill="#eceeef" dy=".3em">Thumbnail</text></svg> + <div class="card-body"> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + <div class="d-flex justify-content-between align-items-center"> + <div class="btn-group"> + <button type="button" class="btn btn-sm btn-outline-secondary">View</button> + <button type="button" class="btn btn-sm btn-outline-secondary">Edit</button> + </div> + <small class="text-muted">9 mins</small> + </div> + </div> + </div> + </div> + + <div class="col-md-4"> + <div class="card mb-4 shadow-sm"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="225" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Thumbnail"><title>Placeholder</title><rect width="100%" height="100%" fill="#55595c"/><text x="50%" y="50%" fill="#eceeef" dy=".3em">Thumbnail</text></svg> + <div class="card-body"> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + <div class="d-flex justify-content-between align-items-center"> + <div class="btn-group"> + <button type="button" class="btn btn-sm btn-outline-secondary">View</button> + <button type="button" class="btn btn-sm btn-outline-secondary">Edit</button> + </div> + <small class="text-muted">9 mins</small> + </div> + </div> + </div> + </div> + <div class="col-md-4"> + <div class="card mb-4 shadow-sm"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="225" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Thumbnail"><title>Placeholder</title><rect width="100%" height="100%" fill="#55595c"/><text x="50%" y="50%" fill="#eceeef" dy=".3em">Thumbnail</text></svg> + <div class="card-body"> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + <div class="d-flex justify-content-between align-items-center"> + <div class="btn-group"> + <button type="button" class="btn btn-sm btn-outline-secondary">View</button> + <button type="button" class="btn btn-sm btn-outline-secondary">Edit</button> + </div> + <small class="text-muted">9 mins</small> + </div> + </div> + </div> + </div> + <div class="col-md-4"> + <div class="card mb-4 shadow-sm"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="225" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Thumbnail"><title>Placeholder</title><rect width="100%" height="100%" fill="#55595c"/><text x="50%" y="50%" fill="#eceeef" dy=".3em">Thumbnail</text></svg> + <div class="card-body"> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + <div class="d-flex justify-content-between align-items-center"> + <div class="btn-group"> + <button type="button" class="btn btn-sm btn-outline-secondary">View</button> + <button type="button" class="btn btn-sm btn-outline-secondary">Edit</button> + </div> + <small class="text-muted">9 mins</small> + </div> + </div> + </div> + </div> + + <div class="col-md-4"> + <div class="card mb-4 shadow-sm"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="225" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Thumbnail"><title>Placeholder</title><rect width="100%" height="100%" fill="#55595c"/><text x="50%" y="50%" fill="#eceeef" dy=".3em">Thumbnail</text></svg> + <div class="card-body"> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + <div class="d-flex justify-content-between align-items-center"> + <div class="btn-group"> + <button type="button" class="btn btn-sm btn-outline-secondary">View</button> + <button type="button" class="btn btn-sm btn-outline-secondary">Edit</button> + </div> + <small class="text-muted">9 mins</small> + </div> + </div> + </div> + </div> + <div class="col-md-4"> + <div class="card mb-4 shadow-sm"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="225" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Thumbnail"><title>Placeholder</title><rect width="100%" height="100%" fill="#55595c"/><text x="50%" y="50%" fill="#eceeef" dy=".3em">Thumbnail</text></svg> + <div class="card-body"> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + <div class="d-flex justify-content-between align-items-center"> + <div class="btn-group"> + <button type="button" class="btn btn-sm btn-outline-secondary">View</button> + <button type="button" class="btn btn-sm btn-outline-secondary">Edit</button> + </div> + <small class="text-muted">9 mins</small> + </div> + </div> + </div> + </div> + <div class="col-md-4"> + <div class="card mb-4 shadow-sm"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="225" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Thumbnail"><title>Placeholder</title><rect width="100%" height="100%" fill="#55595c"/><text x="50%" y="50%" fill="#eceeef" dy=".3em">Thumbnail</text></svg> + <div class="card-body"> + <p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p> + <div class="d-flex justify-content-between align-items-center"> + <div class="btn-group"> + <button type="button" class="btn btn-sm btn-outline-secondary">View</button> + <button type="button" class="btn btn-sm btn-outline-secondary">Edit</button> + </div> + <small class="text-muted">9 mins</small> + </div> + </div> + </div> + </div> + </div> + </div> + </div> + +</main> + +<footer class="text-muted"> + <div class="container"> + <p class="float-right"> + <a href="#">Back to top</a> + </p> + <p>Album example is © Bootstrap, but please download and customize it for yourself!</p> + <p>New to Bootstrap? <a href="https://getbootstrap.com/">Visit the homepage</a> or read our <a href="/docs/4.3/getting-started/introduction/">getting started guide</a>.</p> + </div> +</footer> +<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> + <script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script></body> +</html> diff --git a/docs/4.3/examples/blog/blog.css b/docs/4.3/examples/blog/blog.css new file mode 100644 index 0000000000..b60d0d2e90 --- /dev/null +++ b/docs/4.3/examples/blog/blog.css @@ -0,0 +1,125 @@ +/* stylelint-disable selector-list-comma-newline-after */ + +.blog-header { + line-height: 1; + border-bottom: 1px solid #e5e5e5; +} + +.blog-header-logo { + font-family: "Playfair Display", Georgia, "Times New Roman", serif; + font-size: 2.25rem; +} + +.blog-header-logo:hover { + text-decoration: none; +} + +h1, h2, h3, h4, h5, h6 { + font-family: "Playfair Display", Georgia, "Times New Roman", serif; +} + +.display-4 { + font-size: 2.5rem; +} +@media (min-width: 768px) { + .display-4 { + font-size: 3rem; + } +} + +.nav-scroller { + position: relative; + z-index: 2; + height: 2.75rem; + overflow-y: hidden; +} + +.nav-scroller .nav { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + padding-bottom: 1rem; + margin-top: -1px; + overflow-x: auto; + text-align: center; + white-space: nowrap; + -webkit-overflow-scrolling: touch; +} + +.nav-scroller .nav-link { + padding-top: .75rem; + padding-bottom: .75rem; + font-size: .875rem; +} + +.card-img-right { + height: 100%; + border-radius: 0 3px 3px 0; +} + +.flex-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; +} + +.h-250 { height: 250px; } +@media (min-width: 768px) { + .h-md-250 { height: 250px; } +} + +/* + * Blog name and description + */ +.blog-title { + margin-bottom: 0; + font-size: 2rem; + font-weight: 400; +} +.blog-description { + font-size: 1.1rem; + color: #999; +} + +@media (min-width: 40em) { + .blog-title { + font-size: 3.5rem; + } +} + +/* Pagination */ +.blog-pagination { + margin-bottom: 4rem; +} +.blog-pagination > .btn { + border-radius: 2rem; +} + +/* + * Blog posts + */ +.blog-post { + margin-bottom: 4rem; +} +.blog-post-title { + margin-bottom: .25rem; + font-size: 2.5rem; +} +.blog-post-meta { + margin-bottom: 1.25rem; + color: #999; +} + +/* + * Footer + */ +.blog-footer { + padding: 2.5rem 0; + color: #999; + text-align: center; + background-color: #f9f9f9; + border-top: .05rem solid #e5e5e5; +} +.blog-footer p:last-child { + margin-bottom: 0; +} diff --git a/docs/4.3/examples/blog/index.html b/docs/4.3/examples/blog/index.html new file mode 100644 index 0000000000..6dfb25a221 --- /dev/null +++ b/docs/4.3/examples/blog/index.html @@ -0,0 +1,232 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Blog Template · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/blog/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="https://fonts.googleapis.com/css?family=Playfair+Display:700,900" rel="stylesheet"> + <!-- Custom styles for this template --> + <link href="blog.css" rel="stylesheet"> + </head> + <body> + <div class="container"> + <header class="blog-header py-3"> + <div class="row flex-nowrap justify-content-between align-items-center"> + <div class="col-4 pt-1"> + <a class="text-muted" href="#">Subscribe</a> + </div> + <div class="col-4 text-center"> + <a class="blog-header-logo text-dark" href="#">Large</a> + </div> + <div class="col-4 d-flex justify-content-end align-items-center"> + <a class="text-muted" href="#"> + <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" class="mx-3" role="img" viewBox="0 0 24 24" focusable="false"><title>Search</title><circle cx="10.5" cy="10.5" r="7.5"/><path d="M21 21l-5.2-5.2"/></svg> + </a> + <a class="btn btn-sm btn-outline-secondary" href="#">Sign up</a> + </div> + </div> + </header> + + <div class="nav-scroller py-1 mb-2"> + <nav class="nav d-flex justify-content-between"> + <a class="p-2 text-muted" href="#">World</a> + <a class="p-2 text-muted" href="#">U.S.</a> + <a class="p-2 text-muted" href="#">Technology</a> + <a class="p-2 text-muted" href="#">Design</a> + <a class="p-2 text-muted" href="#">Culture</a> + <a class="p-2 text-muted" href="#">Business</a> + <a class="p-2 text-muted" href="#">Politics</a> + <a class="p-2 text-muted" href="#">Opinion</a> + <a class="p-2 text-muted" href="#">Science</a> + <a class="p-2 text-muted" href="#">Health</a> + <a class="p-2 text-muted" href="#">Style</a> + <a class="p-2 text-muted" href="#">Travel</a> + </nav> + </div> + + <div class="jumbotron p-4 p-md-5 text-white rounded bg-dark"> + <div class="col-md-6 px-0"> + <h1 class="display-4 font-italic">Title of a longer featured blog post</h1> + <p class="lead my-3">Multiple lines of text that form the lede, informing new readers quickly and efficiently about what’s most interesting in this post’s contents.</p> + <p class="lead mb-0"><a href="#" class="text-white font-weight-bold">Continue reading...</a></p> + </div> + </div> + + <div class="row mb-2"> + <div class="col-md-6"> + <div class="row no-gutters border rounded overflow-hidden flex-md-row mb-4 shadow-sm h-md-250 position-relative"> + <div class="col p-4 d-flex flex-column position-static"> + <strong class="d-inline-block mb-2 text-primary">World</strong> + <h3 class="mb-0">Featured post</h3> + <div class="mb-1 text-muted">Nov 12</div> + <p class="card-text mb-auto">This is a wider card with supporting text below as a natural lead-in to additional content.</p> + <a href="#" class="stretched-link">Continue reading</a> + </div> + <div class="col-auto d-none d-lg-block"> + <svg class="bd-placeholder-img" width="200" height="250" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Thumbnail"><title>Placeholder</title><rect width="100%" height="100%" fill="#55595c"/><text x="50%" y="50%" fill="#eceeef" dy=".3em">Thumbnail</text></svg> + </div> + </div> + </div> + <div class="col-md-6"> + <div class="row no-gutters border rounded overflow-hidden flex-md-row mb-4 shadow-sm h-md-250 position-relative"> + <div class="col p-4 d-flex flex-column position-static"> + <strong class="d-inline-block mb-2 text-success">Design</strong> + <h3 class="mb-0">Post title</h3> + <div class="mb-1 text-muted">Nov 11</div> + <p class="mb-auto">This is a wider card with supporting text below as a natural lead-in to additional content.</p> + <a href="#" class="stretched-link">Continue reading</a> + </div> + <div class="col-auto d-none d-lg-block"> + <svg class="bd-placeholder-img" width="200" height="250" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Thumbnail"><title>Placeholder</title><rect width="100%" height="100%" fill="#55595c"/><text x="50%" y="50%" fill="#eceeef" dy=".3em">Thumbnail</text></svg> + </div> + </div> + </div> + </div> +</div> + +<main role="main" class="container"> + <div class="row"> + <div class="col-md-8 blog-main"> + <h3 class="pb-4 mb-4 font-italic border-bottom"> + From the Firehose + </h3> + + <div class="blog-post"> + <h2 class="blog-post-title">Sample blog post</h2> + <p class="blog-post-meta">January 1, 2014 by <a href="#">Mark</a></p> + + <p>This blog post shows a few different types of content that’s supported and styled with Bootstrap. Basic typography, images, and code are all supported.</p> + <hr> + <p>Cum sociis natoque penatibus et magnis <a href="#">dis parturient montes</a>, nascetur ridiculus mus. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Sed posuere consectetur est at lobortis. Cras mattis consectetur purus sit amet fermentum.</p> + <blockquote> + <p>Curabitur blandit tempus porttitor. <strong>Nullam quis risus eget urna mollis</strong> ornare vel eu leo. Nullam id dolor id nibh ultricies vehicula ut id elit.</p> + </blockquote> + <p>Etiam porta <em>sem malesuada magna</em> mollis euismod. Cras mattis consectetur purus sit amet fermentum. Aenean lacinia bibendum nulla sed consectetur.</p> + <h2>Heading</h2> + <p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + <h3>Sub-heading</h3> + <p>Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.</p> + <pre><code>Example code block</code></pre> + <p>Aenean lacinia bibendum nulla sed consectetur. Etiam porta sem malesuada magna mollis euismod. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa.</p> + <h3>Sub-heading</h3> + <p>Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aenean lacinia bibendum nulla sed consectetur. Etiam porta sem malesuada magna mollis euismod. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p> + <ul> + <li>Praesent commodo cursus magna, vel scelerisque nisl consectetur et.</li> + <li>Donec id elit non mi porta gravida at eget metus.</li> + <li>Nulla vitae elit libero, a pharetra augue.</li> + </ul> + <p>Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue.</p> + <ol> + <li>Vestibulum id ligula porta felis euismod semper.</li> + <li>Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.</li> + <li>Maecenas sed diam eget risus varius blandit sit amet non magna.</li> + </ol> + <p>Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis.</p> + </div><!-- /.blog-post --> + + <div class="blog-post"> + <h2 class="blog-post-title">Another blog post</h2> + <p class="blog-post-meta">December 23, 2013 by <a href="#">Jacob</a></p> + + <p>Cum sociis natoque penatibus et magnis <a href="#">dis parturient montes</a>, nascetur ridiculus mus. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Sed posuere consectetur est at lobortis. Cras mattis consectetur purus sit amet fermentum.</p> + <blockquote> + <p>Curabitur blandit tempus porttitor. <strong>Nullam quis risus eget urna mollis</strong> ornare vel eu leo. Nullam id dolor id nibh ultricies vehicula ut id elit.</p> + </blockquote> + <p>Etiam porta <em>sem malesuada magna</em> mollis euismod. Cras mattis consectetur purus sit amet fermentum. Aenean lacinia bibendum nulla sed consectetur.</p> + <p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p> + </div><!-- /.blog-post --> + + <div class="blog-post"> + <h2 class="blog-post-title">New feature</h2> + <p class="blog-post-meta">December 14, 2013 by <a href="#">Chris</a></p> + + <p>Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aenean lacinia bibendum nulla sed consectetur. Etiam porta sem malesuada magna mollis euismod. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p> + <ul> + <li>Praesent commodo cursus magna, vel scelerisque nisl consectetur et.</li> + <li>Donec id elit non mi porta gravida at eget metus.</li> + <li>Nulla vitae elit libero, a pharetra augue.</li> + </ul> + <p>Etiam porta <em>sem malesuada magna</em> mollis euismod. Cras mattis consectetur purus sit amet fermentum. Aenean lacinia bibendum nulla sed consectetur.</p> + <p>Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue.</p> + </div><!-- /.blog-post --> + + <nav class="blog-pagination"> + <a class="btn btn-outline-primary" href="#">Older</a> + <a class="btn btn-outline-secondary disabled" href="#" tabindex="-1" aria-disabled="true">Newer</a> + </nav> + + </div><!-- /.blog-main --> + + <aside class="col-md-4 blog-sidebar"> + <div class="p-4 mb-3 bg-light rounded"> + <h4 class="font-italic">About</h4> + <p class="mb-0">Etiam porta <em>sem malesuada magna</em> mollis euismod. Cras mattis consectetur purus sit amet fermentum. Aenean lacinia bibendum nulla sed consectetur.</p> + </div> + + <div class="p-4"> + <h4 class="font-italic">Archives</h4> + <ol class="list-unstyled mb-0"> + <li><a href="#">March 2014</a></li> + <li><a href="#">February 2014</a></li> + <li><a href="#">January 2014</a></li> + <li><a href="#">December 2013</a></li> + <li><a href="#">November 2013</a></li> + <li><a href="#">October 2013</a></li> + <li><a href="#">September 2013</a></li> + <li><a href="#">August 2013</a></li> + <li><a href="#">July 2013</a></li> + <li><a href="#">June 2013</a></li> + <li><a href="#">May 2013</a></li> + <li><a href="#">April 2013</a></li> + </ol> + </div> + + <div class="p-4"> + <h4 class="font-italic">Elsewhere</h4> + <ol class="list-unstyled"> + <li><a href="#">GitHub</a></li> + <li><a href="#">Twitter</a></li> + <li><a href="#">Facebook</a></li> + </ol> + </div> + </aside><!-- /.blog-sidebar --> + + </div><!-- /.row --> + +</main><!-- /.container --> + +<footer class="blog-footer"> + <p>Blog template built for <a href="https://getbootstrap.com/">Bootstrap</a> by <a href="https://twitter.com/mdo">@mdo</a>.</p> + <p> + <a href="#">Back to top</a> + </p> +</footer> +</body> +</html> diff --git a/docs/4.3/examples/carousel/carousel.css b/docs/4.3/examples/carousel/carousel.css new file mode 100644 index 0000000000..20300e90c6 --- /dev/null +++ b/docs/4.3/examples/carousel/carousel.css @@ -0,0 +1,90 @@ +/* GLOBAL STYLES +-------------------------------------------------- */ +/* Padding below the footer and lighter body text */ + +body { + padding-top: 3rem; + padding-bottom: 3rem; + color: #5a5a5a; +} + + +/* CUSTOMIZE THE CAROUSEL +-------------------------------------------------- */ + +/* Carousel base class */ +.carousel { + margin-bottom: 4rem; +} +/* Since positioning the image, we need to help out the caption */ +.carousel-caption { + bottom: 3rem; + z-index: 10; +} + +/* Declare heights because of positioning of img element */ +.carousel-item { + height: 32rem; +} +.carousel-item > img { + position: absolute; + top: 0; + left: 0; + min-width: 100%; + height: 32rem; +} + + +/* MARKETING CONTENT +-------------------------------------------------- */ + +/* Center align the text within the three columns below the carousel */ +.marketing .col-lg-4 { + margin-bottom: 1.5rem; + text-align: center; +} +.marketing h2 { + font-weight: 400; +} +.marketing .col-lg-4 p { + margin-right: .75rem; + margin-left: .75rem; +} + + +/* Featurettes +------------------------- */ + +.featurette-divider { + margin: 5rem 0; /* Space out the Bootstrap <hr> more */ +} + +/* Thin out the marketing headings */ +.featurette-heading { + font-weight: 300; + line-height: 1; + letter-spacing: -.05rem; +} + + +/* RESPONSIVE CSS +-------------------------------------------------- */ + +@media (min-width: 40em) { + /* Bump up size of carousel content */ + .carousel-caption p { + margin-bottom: 1.25rem; + font-size: 1.25rem; + line-height: 1.4; + } + + .featurette-heading { + font-size: 50px; + } +} + +@media (min-width: 62em) { + .featurette-heading { + margin-top: 7rem; + } +} diff --git a/docs/4.3/examples/carousel/index.html b/docs/4.3/examples/carousel/index.html new file mode 100644 index 0000000000..95404b6b90 --- /dev/null +++ b/docs/4.3/examples/carousel/index.html @@ -0,0 +1,196 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Carousel Template · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/carousel/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="carousel.css" rel="stylesheet"> + </head> + <body> + <header> + <nav class="navbar navbar-expand-md navbar-dark fixed-top bg-dark"> + <a class="navbar-brand" href="#">Carousel</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + <div class="collapse navbar-collapse" id="navbarCollapse"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#">Disabled</a> + </li> + </ul> + <form class="form-inline mt-2 mt-md-0"> + <input class="form-control mr-sm-2" type="text" placeholder="Search" aria-label="Search"> + <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button> + </form> + </div> + </nav> +</header> + +<main role="main"> + + <div id="myCarousel" class="carousel slide" data-ride="carousel"> + <ol class="carousel-indicators"> + <li data-target="#myCarousel" data-slide-to="0" class="active"></li> + <li data-target="#myCarousel" data-slide-to="1"></li> + <li data-target="#myCarousel" data-slide-to="2"></li> + </ol> + <div class="carousel-inner"> + <div class="carousel-item active"> + <svg class="bd-placeholder-img" width="100%" height="100%" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img"><rect width="100%" height="100%" fill="#777"/></svg> + <div class="container"> + <div class="carousel-caption text-left"> + <h1>Example headline.</h1> + <p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p> + <p><a class="btn btn-lg btn-primary" href="#" role="button">Sign up today</a></p> + </div> + </div> + </div> + <div class="carousel-item"> + <svg class="bd-placeholder-img" width="100%" height="100%" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img"><rect width="100%" height="100%" fill="#777"/></svg> + <div class="container"> + <div class="carousel-caption"> + <h1>Another example headline.</h1> + <p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p> + <p><a class="btn btn-lg btn-primary" href="#" role="button">Learn more</a></p> + </div> + </div> + </div> + <div class="carousel-item"> + <svg class="bd-placeholder-img" width="100%" height="100%" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img"><rect width="100%" height="100%" fill="#777"/></svg> + <div class="container"> + <div class="carousel-caption text-right"> + <h1>One more for good measure.</h1> + <p>Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p> + <p><a class="btn btn-lg btn-primary" href="#" role="button">Browse gallery</a></p> + </div> + </div> + </div> + </div> + <a class="carousel-control-prev" href="#myCarousel" role="button" data-slide="prev"> + <span class="carousel-control-prev-icon" aria-hidden="true"></span> + <span class="sr-only">Previous</span> + </a> + <a class="carousel-control-next" href="#myCarousel" role="button" data-slide="next"> + <span class="carousel-control-next-icon" aria-hidden="true"></span> + <span class="sr-only">Next</span> + </a> + </div> + + + <!-- Marketing messaging and featurettes + ================================================== --> + <!-- Wrap the rest of the page in another container to center all the content. --> + + <div class="container marketing"> + + <!-- Three columns of text below the carousel --> + <div class="row"> + <div class="col-lg-4"> + <svg class="bd-placeholder-img rounded-circle" width="140" height="140" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 140x140"><title>Placeholder</title><rect width="100%" height="100%" fill="#777"/><text x="50%" y="50%" fill="#777" dy=".3em">140x140</text></svg> + <h2>Heading</h2> + <p>Donec sed odio dui. Etiam porta sem malesuada magna mollis euismod. Nullam id dolor id nibh ultricies vehicula ut id elit. Morbi leo risus, porta ac consectetur ac, vestibulum at eros. Praesent commodo cursus magna.</p> + <p><a class="btn btn-secondary" href="#" role="button">View details »</a></p> + </div><!-- /.col-lg-4 --> + <div class="col-lg-4"> + <svg class="bd-placeholder-img rounded-circle" width="140" height="140" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 140x140"><title>Placeholder</title><rect width="100%" height="100%" fill="#777"/><text x="50%" y="50%" fill="#777" dy=".3em">140x140</text></svg> + <h2>Heading</h2> + <p>Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh.</p> + <p><a class="btn btn-secondary" href="#" role="button">View details »</a></p> + </div><!-- /.col-lg-4 --> + <div class="col-lg-4"> + <svg class="bd-placeholder-img rounded-circle" width="140" height="140" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 140x140"><title>Placeholder</title><rect width="100%" height="100%" fill="#777"/><text x="50%" y="50%" fill="#777" dy=".3em">140x140</text></svg> + <h2>Heading</h2> + <p>Donec sed odio dui. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Vestibulum id ligula porta felis euismod semper. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p> + <p><a class="btn btn-secondary" href="#" role="button">View details »</a></p> + </div><!-- /.col-lg-4 --> + </div><!-- /.row --> + + + <!-- START THE FEATURETTES --> + + <hr class="featurette-divider"> + + <div class="row featurette"> + <div class="col-md-7"> + <h2 class="featurette-heading">First featurette heading. <span class="text-muted">It’ll blow your mind.</span></h2> + <p class="lead">Donec ullamcorper nulla non metus auctor fringilla. Vestibulum id ligula porta felis euismod semper. Praesent commodo cursus magna, vel scelerisque nisl consectetur. Fusce dapibus, tellus ac cursus commodo.</p> + </div> + <div class="col-md-5"> + <svg class="bd-placeholder-img bd-placeholder-img-lg featurette-image img-fluid mx-auto" width="500" height="500" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 500x500"><title>Placeholder</title><rect width="100%" height="100%" fill="#eee"/><text x="50%" y="50%" fill="#aaa" dy=".3em">500x500</text></svg> + </div> + </div> + + <hr class="featurette-divider"> + + <div class="row featurette"> + <div class="col-md-7 order-md-2"> + <h2 class="featurette-heading">Oh yeah, it’s that good. <span class="text-muted">See for yourself.</span></h2> + <p class="lead">Donec ullamcorper nulla non metus auctor fringilla. Vestibulum id ligula porta felis euismod semper. Praesent commodo cursus magna, vel scelerisque nisl consectetur. Fusce dapibus, tellus ac cursus commodo.</p> + </div> + <div class="col-md-5 order-md-1"> + <svg class="bd-placeholder-img bd-placeholder-img-lg featurette-image img-fluid mx-auto" width="500" height="500" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 500x500"><title>Placeholder</title><rect width="100%" height="100%" fill="#eee"/><text x="50%" y="50%" fill="#aaa" dy=".3em">500x500</text></svg> + </div> + </div> + + <hr class="featurette-divider"> + + <div class="row featurette"> + <div class="col-md-7"> + <h2 class="featurette-heading">And lastly, this one. <span class="text-muted">Checkmate.</span></h2> + <p class="lead">Donec ullamcorper nulla non metus auctor fringilla. Vestibulum id ligula porta felis euismod semper. Praesent commodo cursus magna, vel scelerisque nisl consectetur. Fusce dapibus, tellus ac cursus commodo.</p> + </div> + <div class="col-md-5"> + <svg class="bd-placeholder-img bd-placeholder-img-lg featurette-image img-fluid mx-auto" width="500" height="500" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 500x500"><title>Placeholder</title><rect width="100%" height="100%" fill="#eee"/><text x="50%" y="50%" fill="#aaa" dy=".3em">500x500</text></svg> + </div> + </div> + + <hr class="featurette-divider"> + + <!-- /END THE FEATURETTES --> + + </div><!-- /.container --> + + + <!-- FOOTER --> + <footer class="container"> + <p class="float-right"><a href="#">Back to top</a></p> + <p>© 2017-2019 Company, Inc. · <a href="#">Privacy</a> · <a href="#">Terms</a></p> + </footer> +</main> +<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> + <script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script></body> +</html> diff --git a/docs/4.3/examples/checkout/form-validation.css b/docs/4.3/examples/checkout/form-validation.css new file mode 100644 index 0000000000..7a6246faec --- /dev/null +++ b/docs/4.3/examples/checkout/form-validation.css @@ -0,0 +1,5 @@ +.container { + max-width: 960px; +} + +.lh-condensed { line-height: 1.25; } diff --git a/docs/4.3/examples/checkout/form-validation.js b/docs/4.3/examples/checkout/form-validation.js new file mode 100644 index 0000000000..280849408b --- /dev/null +++ b/docs/4.3/examples/checkout/form-validation.js @@ -0,0 +1,20 @@ +// Example starter JavaScript for disabling form submissions if there are invalid fields +(function () { + 'use strict' + + window.addEventListener('load', function () { + // Fetch all the forms we want to apply custom Bootstrap validation styles to + var forms = document.getElementsByClassName('needs-validation') + + // Loop over them and prevent submission + Array.prototype.filter.call(forms, function (form) { + form.addEventListener('submit', function (event) { + if (form.checkValidity() === false) { + event.preventDefault() + event.stopPropagation() + } + form.classList.add('was-validated') + }, false) + }) + }, false) +}()) diff --git a/docs/4.3/examples/checkout/index.html b/docs/4.3/examples/checkout/index.html new file mode 100644 index 0000000000..61f00c7dab --- /dev/null +++ b/docs/4.3/examples/checkout/index.html @@ -0,0 +1,255 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Checkout example · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/checkout/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="form-validation.css" rel="stylesheet"> + </head> + <body class="bg-light"> + <div class="container"> + <div class="py-5 text-center"> + <img class="d-block mx-auto mb-4" src="/docs/4.3/assets/brand/bootstrap-solid.svg" alt="" width="72" height="72"> + <h2>Checkout form</h2> + <p class="lead">Below is an example form built entirely with Bootstrap’s form controls. Each required form group has a validation state that can be triggered by attempting to submit the form without completing it.</p> + </div> + + <div class="row"> + <div class="col-md-4 order-md-2 mb-4"> + <h4 class="d-flex justify-content-between align-items-center mb-3"> + <span class="text-muted">Your cart</span> + <span class="badge badge-secondary badge-pill">3</span> + </h4> + <ul class="list-group mb-3"> + <li class="list-group-item d-flex justify-content-between lh-condensed"> + <div> + <h6 class="my-0">Product name</h6> + <small class="text-muted">Brief description</small> + </div> + <span class="text-muted">$12</span> + </li> + <li class="list-group-item d-flex justify-content-between lh-condensed"> + <div> + <h6 class="my-0">Second product</h6> + <small class="text-muted">Brief description</small> + </div> + <span class="text-muted">$8</span> + </li> + <li class="list-group-item d-flex justify-content-between lh-condensed"> + <div> + <h6 class="my-0">Third item</h6> + <small class="text-muted">Brief description</small> + </div> + <span class="text-muted">$5</span> + </li> + <li class="list-group-item d-flex justify-content-between bg-light"> + <div class="text-success"> + <h6 class="my-0">Promo code</h6> + <small>EXAMPLECODE</small> + </div> + <span class="text-success">-$5</span> + </li> + <li class="list-group-item d-flex justify-content-between"> + <span>Total (USD)</span> + <strong>$20</strong> + </li> + </ul> + + <form class="card p-2"> + <div class="input-group"> + <input type="text" class="form-control" placeholder="Promo code"> + <div class="input-group-append"> + <button type="submit" class="btn btn-secondary">Redeem</button> + </div> + </div> + </form> + </div> + <div class="col-md-8 order-md-1"> + <h4 class="mb-3">Billing address</h4> + <form class="needs-validation" novalidate> + <div class="row"> + <div class="col-md-6 mb-3"> + <label for="firstName">First name</label> + <input type="text" class="form-control" id="firstName" placeholder="" value="" required> + <div class="invalid-feedback"> + Valid first name is required. + </div> + </div> + <div class="col-md-6 mb-3"> + <label for="lastName">Last name</label> + <input type="text" class="form-control" id="lastName" placeholder="" value="" required> + <div class="invalid-feedback"> + Valid last name is required. + </div> + </div> + </div> + + <div class="mb-3"> + <label for="username">Username</label> + <div class="input-group"> + <div class="input-group-prepend"> + <span class="input-group-text">@</span> + </div> + <input type="text" class="form-control" id="username" placeholder="Username" required> + <div class="invalid-feedback" style="width: 100%;"> + Your username is required. + </div> + </div> + </div> + + <div class="mb-3"> + <label for="email">Email <span class="text-muted">(Optional)</span></label> + <input type="email" class="form-control" id="email" placeholder="you@example.com"> + <div class="invalid-feedback"> + Please enter a valid email address for shipping updates. + </div> + </div> + + <div class="mb-3"> + <label for="address">Address</label> + <input type="text" class="form-control" id="address" placeholder="1234 Main St" required> + <div class="invalid-feedback"> + Please enter your shipping address. + </div> + </div> + + <div class="mb-3"> + <label for="address2">Address 2 <span class="text-muted">(Optional)</span></label> + <input type="text" class="form-control" id="address2" placeholder="Apartment or suite"> + </div> + + <div class="row"> + <div class="col-md-5 mb-3"> + <label for="country">Country</label> + <select class="custom-select d-block w-100" id="country" required> + <option value="">Choose...</option> + <option>United States</option> + </select> + <div class="invalid-feedback"> + Please select a valid country. + </div> + </div> + <div class="col-md-4 mb-3"> + <label for="state">State</label> + <select class="custom-select d-block w-100" id="state" required> + <option value="">Choose...</option> + <option>California</option> + </select> + <div class="invalid-feedback"> + Please provide a valid state. + </div> + </div> + <div class="col-md-3 mb-3"> + <label for="zip">Zip</label> + <input type="text" class="form-control" id="zip" placeholder="" required> + <div class="invalid-feedback"> + Zip code required. + </div> + </div> + </div> + <hr class="mb-4"> + <div class="custom-control custom-checkbox"> + <input type="checkbox" class="custom-control-input" id="same-address"> + <label class="custom-control-label" for="same-address">Shipping address is the same as my billing address</label> + </div> + <div class="custom-control custom-checkbox"> + <input type="checkbox" class="custom-control-input" id="save-info"> + <label class="custom-control-label" for="save-info">Save this information for next time</label> + </div> + <hr class="mb-4"> + + <h4 class="mb-3">Payment</h4> + + <div class="d-block my-3"> + <div class="custom-control custom-radio"> + <input id="credit" name="paymentMethod" type="radio" class="custom-control-input" checked required> + <label class="custom-control-label" for="credit">Credit card</label> + </div> + <div class="custom-control custom-radio"> + <input id="debit" name="paymentMethod" type="radio" class="custom-control-input" required> + <label class="custom-control-label" for="debit">Debit card</label> + </div> + <div class="custom-control custom-radio"> + <input id="paypal" name="paymentMethod" type="radio" class="custom-control-input" required> + <label class="custom-control-label" for="paypal">PayPal</label> + </div> + </div> + <div class="row"> + <div class="col-md-6 mb-3"> + <label for="cc-name">Name on card</label> + <input type="text" class="form-control" id="cc-name" placeholder="" required> + <small class="text-muted">Full name as displayed on card</small> + <div class="invalid-feedback"> + Name on card is required + </div> + </div> + <div class="col-md-6 mb-3"> + <label for="cc-number">Credit card number</label> + <input type="text" class="form-control" id="cc-number" placeholder="" required> + <div class="invalid-feedback"> + Credit card number is required + </div> + </div> + </div> + <div class="row"> + <div class="col-md-3 mb-3"> + <label for="cc-expiration">Expiration</label> + <input type="text" class="form-control" id="cc-expiration" placeholder="" required> + <div class="invalid-feedback"> + Expiration date required + </div> + </div> + <div class="col-md-3 mb-3"> + <label for="cc-cvv">CVV</label> + <input type="text" class="form-control" id="cc-cvv" placeholder="" required> + <div class="invalid-feedback"> + Security code required + </div> + </div> + </div> + <hr class="mb-4"> + <button class="btn btn-primary btn-lg btn-block" type="submit">Continue to checkout</button> + </form> + </div> + </div> + + <footer class="my-5 pt-5 text-muted text-center text-small"> + <p class="mb-1">© 2017-2019 Company Name</p> + <ul class="list-inline"> + <li class="list-inline-item"><a href="#">Privacy</a></li> + <li class="list-inline-item"><a href="#">Terms</a></li> + <li class="list-inline-item"><a href="#">Support</a></li> + </ul> + </footer> +</div> +<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> + <script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script> + <script src="form-validation.js"></script></body> +</html> diff --git a/docs/4.3/examples/cover/cover.css b/docs/4.3/examples/cover/cover.css new file mode 100644 index 0000000000..7c6d33cdd5 --- /dev/null +++ b/docs/4.3/examples/cover/cover.css @@ -0,0 +1,106 @@ +/* + * Globals + */ + +/* Links */ +a, +a:focus, +a:hover { + color: #fff; +} + +/* Custom default button */ +.btn-secondary, +.btn-secondary:hover, +.btn-secondary:focus { + color: #333; + text-shadow: none; /* Prevent inheritance from `body` */ + background-color: #fff; + border: .05rem solid #fff; +} + + +/* + * Base structure + */ + +html, +body { + height: 100%; + background-color: #333; +} + +body { + display: -ms-flexbox; + display: flex; + color: #fff; + text-shadow: 0 .05rem .1rem rgba(0, 0, 0, .5); + box-shadow: inset 0 0 5rem rgba(0, 0, 0, .5); +} + +.cover-container { + max-width: 42em; +} + + +/* + * Header + */ +.masthead { + margin-bottom: 2rem; +} + +.masthead-brand { + margin-bottom: 0; +} + +.nav-masthead .nav-link { + padding: .25rem 0; + font-weight: 700; + color: rgba(255, 255, 255, .5); + background-color: transparent; + border-bottom: .25rem solid transparent; +} + +.nav-masthead .nav-link:hover, +.nav-masthead .nav-link:focus { + border-bottom-color: rgba(255, 255, 255, .25); +} + +.nav-masthead .nav-link + .nav-link { + margin-left: 1rem; +} + +.nav-masthead .active { + color: #fff; + border-bottom-color: #fff; +} + +@media (min-width: 48em) { + .masthead-brand { + float: left; + } + .nav-masthead { + float: right; + } +} + + +/* + * Cover + */ +.cover { + padding: 0 1.5rem; +} +.cover .btn-lg { + padding: .75rem 1.25rem; + font-weight: 700; +} + + +/* + * Footer + */ +.mastfoot { + color: rgba(255, 255, 255, .5); +} diff --git a/docs/4.3/examples/cover/index.html b/docs/4.3/examples/cover/index.html new file mode 100644 index 0000000000..c983535b73 --- /dev/null +++ b/docs/4.3/examples/cover/index.html @@ -0,0 +1,64 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Cover Template · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/cover/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="cover.css" rel="stylesheet"> + </head> + <body class="text-center"> + <div class="cover-container d-flex w-100 h-100 p-3 mx-auto flex-column"> + <header class="masthead mb-auto"> + <div class="inner"> + <h3 class="masthead-brand">Cover</h3> + <nav class="nav nav-masthead justify-content-center"> + <a class="nav-link active" href="#">Home</a> + <a class="nav-link" href="#">Features</a> + <a class="nav-link" href="#">Contact</a> + </nav> + </div> + </header> + + <main role="main" class="inner cover"> + <h1 class="cover-heading">Cover your page.</h1> + <p class="lead">Cover is a one-page template for building simple and beautiful home pages. Download, edit the text, and add your own fullscreen background photo to make it your own.</p> + <p class="lead"> + <a href="#" class="btn btn-lg btn-secondary">Learn more</a> + </p> + </main> + + <footer class="mastfoot mt-auto"> + <div class="inner"> + <p>Cover template for <a href="https://getbootstrap.com/">Bootstrap</a>, by <a href="https://twitter.com/mdo">@mdo</a>.</p> + </div> + </footer> +</div> +</body> +</html> diff --git a/docs/4.3/examples/dashboard/dashboard.css b/docs/4.3/examples/dashboard/dashboard.css new file mode 100644 index 0000000000..6b5d7b5a5a --- /dev/null +++ b/docs/4.3/examples/dashboard/dashboard.css @@ -0,0 +1,106 @@ +body { + font-size: .875rem; +} + +.feather { + width: 16px; + height: 16px; + vertical-align: text-bottom; +} + +/* + * Sidebar + */ + +.sidebar { + position: fixed; + top: 0; + bottom: 0; + left: 0; + z-index: 100; /* Behind the navbar */ + padding: 48px 0 0; /* Height of navbar */ + box-shadow: inset -1px 0 0 rgba(0, 0, 0, .1); +} + +.sidebar-sticky { + position: relative; + top: 0; + height: calc(100vh - 48px); + padding-top: .5rem; + overflow-x: hidden; + overflow-y: auto; /* Scrollable contents if viewport is shorter than content. */ +} + +@supports ((position: -webkit-sticky) or (position: sticky)) { + .sidebar-sticky { + position: -webkit-sticky; + position: sticky; + } +} + +.sidebar .nav-link { + font-weight: 500; + color: #333; +} + +.sidebar .nav-link .feather { + margin-right: 4px; + color: #999; +} + +.sidebar .nav-link.active { + color: #007bff; +} + +.sidebar .nav-link:hover .feather, +.sidebar .nav-link.active .feather { + color: inherit; +} + +.sidebar-heading { + font-size: .75rem; + text-transform: uppercase; +} + +/* + * Content + */ + +[role="main"] { + padding-top: 133px; /* Space for fixed navbar */ +} + +@media (min-width: 768px) { + [role="main"] { + padding-top: 48px; /* Space for fixed navbar */ + } +} + +/* + * Navbar + */ + +.navbar-brand { + padding-top: .75rem; + padding-bottom: .75rem; + font-size: 1rem; + background-color: rgba(0, 0, 0, .25); + box-shadow: inset -1px 0 0 rgba(0, 0, 0, .25); +} + +.navbar .form-control { + padding: .75rem 1rem; + border-width: 0; + border-radius: 0; +} + +.form-control-dark { + color: #fff; + background-color: rgba(255, 255, 255, .1); + border-color: rgba(255, 255, 255, .1); +} + +.form-control-dark:focus { + border-color: transparent; + box-shadow: 0 0 0 3px rgba(255, 255, 255, .25); +} diff --git a/docs/4.3/examples/dashboard/dashboard.js b/docs/4.3/examples/dashboard/dashboard.js new file mode 100644 index 0000000000..de4a6347a3 --- /dev/null +++ b/docs/4.3/examples/dashboard/dashboard.js @@ -0,0 +1,53 @@ +/* globals Chart:false, feather:false */ + +(function () { + 'use strict' + + feather.replace() + + // Graphs + var ctx = document.getElementById('myChart') + // eslint-disable-next-line no-unused-vars + var myChart = new Chart(ctx, { + type: 'line', + data: { + labels: [ + 'Sunday', + 'Monday', + 'Tuesday', + 'Wednesday', + 'Thursday', + 'Friday', + 'Saturday' + ], + datasets: [{ + data: [ + 15339, + 21345, + 18483, + 24003, + 23489, + 24092, + 12034 + ], + lineTension: 0, + backgroundColor: 'transparent', + borderColor: '#007bff', + borderWidth: 4, + pointBackgroundColor: '#007bff' + }] + }, + options: { + scales: { + yAxes: [{ + ticks: { + beginAtZero: false + } + }] + }, + legend: { + display: false + } + } + }) +}()) diff --git a/docs/4.3/examples/dashboard/index.html b/docs/4.3/examples/dashboard/index.html new file mode 100644 index 0000000000..aa5c0bbeaa --- /dev/null +++ b/docs/4.3/examples/dashboard/index.html @@ -0,0 +1,278 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Dashboard Template · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/dashboard/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="dashboard.css" rel="stylesheet"> + </head> + <body> + <nav class="navbar navbar-dark fixed-top bg-dark flex-md-nowrap p-0 shadow"> + <a class="navbar-brand col-sm-3 col-md-2 mr-0" href="#">Company name</a> + <input class="form-control form-control-dark w-100" type="text" placeholder="Search" aria-label="Search"> + <ul class="navbar-nav px-3"> + <li class="nav-item text-nowrap"> + <a class="nav-link" href="#">Sign out</a> + </li> + </ul> +</nav> + +<div class="container-fluid"> + <div class="row"> + <nav class="col-md-2 d-none d-md-block bg-light sidebar"> + <div class="sidebar-sticky"> + <ul class="nav flex-column"> + <li class="nav-item"> + <a class="nav-link active" href="#"> + <span data-feather="home"></span> + Dashboard <span class="sr-only">(current)</span> + </a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#"> + <span data-feather="file"></span> + Orders + </a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#"> + <span data-feather="shopping-cart"></span> + Products + </a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#"> + <span data-feather="users"></span> + Customers + </a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#"> + <span data-feather="bar-chart-2"></span> + Reports + </a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#"> + <span data-feather="layers"></span> + Integrations + </a> + </li> + </ul> + + <h6 class="sidebar-heading d-flex justify-content-between align-items-center px-3 mt-4 mb-1 text-muted"> + <span>Saved reports</span> + <a class="d-flex align-items-center text-muted" href="#"> + <span data-feather="plus-circle"></span> + </a> + </h6> + <ul class="nav flex-column mb-2"> + <li class="nav-item"> + <a class="nav-link" href="#"> + <span data-feather="file-text"></span> + Current month + </a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#"> + <span data-feather="file-text"></span> + Last quarter + </a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#"> + <span data-feather="file-text"></span> + Social engagement + </a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#"> + <span data-feather="file-text"></span> + Year-end sale + </a> + </li> + </ul> + </div> + </nav> + + <main role="main" class="col-md-9 ml-sm-auto col-lg-10 px-4"> + <div class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pt-3 pb-2 mb-3 border-bottom"> + <h1 class="h2">Dashboard</h1> + <div class="btn-toolbar mb-2 mb-md-0"> + <div class="btn-group mr-2"> + <button type="button" class="btn btn-sm btn-outline-secondary">Share</button> + <button type="button" class="btn btn-sm btn-outline-secondary">Export</button> + </div> + <button type="button" class="btn btn-sm btn-outline-secondary dropdown-toggle"> + <span data-feather="calendar"></span> + This week + </button> + </div> + </div> + + <canvas class="my-4 w-100" id="myChart" width="900" height="380"></canvas> + + <h2>Section title</h2> + <div class="table-responsive"> + <table class="table table-striped table-sm"> + <thead> + <tr> + <th>#</th> + <th>Header</th> + <th>Header</th> + <th>Header</th> + <th>Header</th> + </tr> + </thead> + <tbody> + <tr> + <td>1,001</td> + <td>Lorem</td> + <td>ipsum</td> + <td>dolor</td> + <td>sit</td> + </tr> + <tr> + <td>1,002</td> + <td>amet</td> + <td>consectetur</td> + <td>adipiscing</td> + <td>elit</td> + </tr> + <tr> + <td>1,003</td> + <td>Integer</td> + <td>nec</td> + <td>odio</td> + <td>Praesent</td> + </tr> + <tr> + <td>1,003</td> + <td>libero</td> + <td>Sed</td> + <td>cursus</td> + <td>ante</td> + </tr> + <tr> + <td>1,004</td> + <td>dapibus</td> + <td>diam</td> + <td>Sed</td> + <td>nisi</td> + </tr> + <tr> + <td>1,005</td> + <td>Nulla</td> + <td>quis</td> + <td>sem</td> + <td>at</td> + </tr> + <tr> + <td>1,006</td> + <td>nibh</td> + <td>elementum</td> + <td>imperdiet</td> + <td>Duis</td> + </tr> + <tr> + <td>1,007</td> + <td>sagittis</td> + <td>ipsum</td> + <td>Praesent</td> + <td>mauris</td> + </tr> + <tr> + <td>1,008</td> + <td>Fusce</td> + <td>nec</td> + <td>tellus</td> + <td>sed</td> + </tr> + <tr> + <td>1,009</td> + <td>augue</td> + <td>semper</td> + <td>porta</td> + <td>Mauris</td> + </tr> + <tr> + <td>1,010</td> + <td>massa</td> + <td>Vestibulum</td> + <td>lacinia</td> + <td>arcu</td> + </tr> + <tr> + <td>1,011</td> + <td>eget</td> + <td>nulla</td> + <td>Class</td> + <td>aptent</td> + </tr> + <tr> + <td>1,012</td> + <td>taciti</td> + <td>sociosqu</td> + <td>ad</td> + <td>litora</td> + </tr> + <tr> + <td>1,013</td> + <td>torquent</td> + <td>per</td> + <td>conubia</td> + <td>nostra</td> + </tr> + <tr> + <td>1,014</td> + <td>per</td> + <td>inceptos</td> + <td>himenaeos</td> + <td>Curabitur</td> + </tr> + <tr> + <td>1,015</td> + <td>sodales</td> + <td>ligula</td> + <td>in</td> + <td>libero</td> + </tr> + </tbody> + </table> + </div> + </main> + </div> +</div> +<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> + <script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script> + <script src="https://cdnjs.cloudflare.com/ajax/libs/feather-icons/4.9.0/feather.min.js"></script> + <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.3/Chart.min.js"></script> + <script src="dashboard.js"></script></body> +</html> diff --git a/docs/4.3/examples/floating-labels/floating-labels.css b/docs/4.3/examples/floating-labels/floating-labels.css new file mode 100644 index 0000000000..d8ad2f3c15 --- /dev/null +++ b/docs/4.3/examples/floating-labels/floating-labels.css @@ -0,0 +1,102 @@ +html, +body { + height: 100%; +} + +body { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + padding-top: 40px; + padding-bottom: 40px; + background-color: #f5f5f5; +} + +.form-signin { + width: 100%; + max-width: 420px; + padding: 15px; + margin: auto; +} + +.form-label-group { + position: relative; + margin-bottom: 1rem; +} + +.form-label-group > input, +.form-label-group > label { + height: 3.125rem; + padding: .75rem; +} + +.form-label-group > label { + position: absolute; + top: 0; + left: 0; + display: block; + width: 100%; + margin-bottom: 0; /* Override default `<label>` margin */ + line-height: 1.5; + color: #495057; + pointer-events: none; + cursor: text; /* Match the input under the label */ + border: 1px solid transparent; + border-radius: .25rem; + transition: all .1s ease-in-out; +} + +.form-label-group input::-webkit-input-placeholder { + color: transparent; +} + +.form-label-group input:-ms-input-placeholder { + color: transparent; +} + +.form-label-group input::-ms-input-placeholder { + color: transparent; +} + +.form-label-group input::-moz-placeholder { + color: transparent; +} + +.form-label-group input::placeholder { + color: transparent; +} + +.form-label-group input:not(:placeholder-shown) { + padding-top: 1.25rem; + padding-bottom: .25rem; +} + +.form-label-group input:not(:placeholder-shown) ~ label { + padding-top: .25rem; + padding-bottom: .25rem; + font-size: 12px; + color: #777; +} + +/* Fallback for Edge +-------------------------------------------------- */ +@supports (-ms-ime-align: auto) { + .form-label-group > label { + display: none; + } + .form-label-group input::-ms-input-placeholder { + color: #777; + } +} + +/* Fallback for IE +-------------------------------------------------- */ +@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { + .form-label-group > label { + display: none; + } + .form-label-group input:-ms-input-placeholder { + color: #777; + } +} diff --git a/docs/4.3/examples/floating-labels/index.html b/docs/4.3/examples/floating-labels/index.html new file mode 100644 index 0000000000..742f1418a8 --- /dev/null +++ b/docs/4.3/examples/floating-labels/index.html @@ -0,0 +1,63 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Floating labels example · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/floating-labels/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="floating-labels.css" rel="stylesheet"> + </head> + <body> + <form class="form-signin"> + <div class="text-center mb-4"> + <img class="mb-4" src="/docs/4.3/assets/brand/bootstrap-solid.svg" alt="" width="72" height="72"> + <h1 class="h3 mb-3 font-weight-normal">Floating labels</h1> + <p>Build form controls with floating labels via the <code>:placeholder-shown</code> pseudo-element. <a href="https://caniuse.com/#feat=css-placeholder-shown">Works in latest Chrome, Safari, and Firefox.</a></p> + </div> + + <div class="form-label-group"> + <input type="email" id="inputEmail" class="form-control" placeholder="Email address" required autofocus> + <label for="inputEmail">Email address</label> + </div> + + <div class="form-label-group"> + <input type="password" id="inputPassword" class="form-control" placeholder="Password" required> + <label for="inputPassword">Password</label> + </div> + + <div class="checkbox mb-3"> + <label> + <input type="checkbox" value="remember-me"> Remember me + </label> + </div> + <button class="btn btn-lg btn-primary btn-block" type="submit">Sign in</button> + <p class="mt-5 mb-3 text-muted text-center">© 2017-2019</p> +</form> +</body> +</html> diff --git a/docs/4.3/examples/grid/grid.css b/docs/4.3/examples/grid/grid.css new file mode 100644 index 0000000000..e726996d31 --- /dev/null +++ b/docs/4.3/examples/grid/grid.css @@ -0,0 +1,6 @@ +.themed-grid-col { + padding-top: 15px; + padding-bottom: 15px; + background-color: rgba(86, 61, 124, .15); + border: 1px solid rgba(86, 61, 124, .2); +} diff --git a/docs/4.3/examples/grid/index.html b/docs/4.3/examples/grid/index.html new file mode 100644 index 0000000000..b83043264e --- /dev/null +++ b/docs/4.3/examples/grid/index.html @@ -0,0 +1,156 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Grid Template · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/grid/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="grid.css" rel="stylesheet"> + </head> + <body class="py-4"> + <div class="container"> + + <h1>Bootstrap grid examples</h1> + <p class="lead">Basic grid layouts to get you familiar with building within the Bootstrap grid system.</p> + <p>In these examples the <code>.themed-grid-col</code> class is added to the columns to add some theming. This is not a class that is available in Bootstrap by default.</p> + + <h2 class="mt-4">Five grid tiers</h2> + <p>There are five tiers to the Bootstrap grid system, one for each range of devices we support. Each tier starts at a minimum viewport size and automatically applies to the larger devices unless overridden.</p> + + <div class="row mb-3"> + <div class="col-4 themed-grid-col">.col-4</div> + <div class="col-4 themed-grid-col">.col-4</div> + <div class="col-4 themed-grid-col">.col-4</div> + </div> + + <div class="row mb-3"> + <div class="col-sm-4 themed-grid-col">.col-sm-4</div> + <div class="col-sm-4 themed-grid-col">.col-sm-4</div> + <div class="col-sm-4 themed-grid-col">.col-sm-4</div> + </div> + + <div class="row mb-3"> + <div class="col-md-4 themed-grid-col">.col-md-4</div> + <div class="col-md-4 themed-grid-col">.col-md-4</div> + <div class="col-md-4 themed-grid-col">.col-md-4</div> + </div> + + <div class="row mb-3"> + <div class="col-lg-4 themed-grid-col">.col-lg-4</div> + <div class="col-lg-4 themed-grid-col">.col-lg-4</div> + <div class="col-lg-4 themed-grid-col">.col-lg-4</div> + </div> + + <div class="row mb-3"> + <div class="col-xl-4 themed-grid-col">.col-xl-4</div> + <div class="col-xl-4 themed-grid-col">.col-xl-4</div> + <div class="col-xl-4 themed-grid-col">.col-xl-4</div> + </div> + + <h2 class="mt-4">Three equal columns</h2> + <p>Get three equal-width columns <strong>starting at desktops and scaling to large desktops</strong>. On mobile devices, tablets and below, the columns will automatically stack.</p> + <div class="row mb-3"> + <div class="col-md-4 themed-grid-col">.col-md-4</div> + <div class="col-md-4 themed-grid-col">.col-md-4</div> + <div class="col-md-4 themed-grid-col">.col-md-4</div> + </div> + + <h2 class="mt-4">Three unequal columns</h2> + <p>Get three columns <strong>starting at desktops and scaling to large desktops</strong> of various widths. Remember, grid columns should add up to twelve for a single horizontal block. More than that, and columns start stacking no matter the viewport.</p> + <div class="row mb-3"> + <div class="col-md-3 themed-grid-col">.col-md-3</div> + <div class="col-md-6 themed-grid-col">.col-md-6</div> + <div class="col-md-3 themed-grid-col">.col-md-3</div> + </div> + + <h2 class="mt-4">Two columns</h2> + <p>Get two columns <strong>starting at desktops and scaling to large desktops</strong>.</p> + <div class="row mb-3"> + <div class="col-md-8 themed-grid-col">.col-md-8</div> + <div class="col-md-4 themed-grid-col">.col-md-4</div> + </div> + + <h2 class="mt-4">Full width, single column</h2> + <p class="text-warning"> + No grid classes are necessary for full-width elements. + </p> + + <hr class="my-4"> + + <h2 class="mt-4">Two columns with two nested columns</h2> + <p>Per the documentation, nesting is easy—just put a row of columns within an existing column. This gives you two columns <strong>starting at desktops and scaling to large desktops</strong>, with another two (equal widths) within the larger column.</p> + <p>At mobile device sizes, tablets and down, these columns and their nested columns will stack.</p> + <div class="row mb-3"> + <div class="col-md-8 themed-grid-col"> + <div class="pb-3"> + .col-md-8 + </div> + <div class="row"> + <div class="col-md-6 themed-grid-col">.col-md-6</div> + <div class="col-md-6 themed-grid-col">.col-md-6</div> + </div> + </div> + <div class="col-md-4 themed-grid-col">.col-md-4</div> + </div> + + <hr class="my-4"> + + <h2 class="mt-4">Mixed: mobile and desktop</h2> + <p>The Bootstrap v4 grid system has five tiers of classes: xs (extra small), sm (small), md (medium), lg (large), and xl (extra large). You can use nearly any combination of these classes to create more dynamic and flexible layouts.</p> + <p>Each tier of classes scales up, meaning if you plan on setting the same widths for xs and sm, you only need to specify xs.</p> + <div class="row mb-3"> + <div class="col-12 col-md-8 themed-grid-col">.col-12 .col-md-8</div> + <div class="col-6 col-md-4 themed-grid-col">.col-6 .col-md-4</div> + </div> + <div class="row mb-3"> + <div class="col-6 col-md-4 themed-grid-col">.col-6 .col-md-4</div> + <div class="col-6 col-md-4 themed-grid-col">.col-6 .col-md-4</div> + <div class="col-6 col-md-4 themed-grid-col">.col-6 .col-md-4</div> + </div> + <div class="row mb-3"> + <div class="col-6 themed-grid-col">.col-6</div> + <div class="col-6 themed-grid-col">.col-6</div> + </div> + + <hr class="my-4"> + + <h2 class="mt-4">Mixed: mobile, tablet, and desktop</h2> + <div class="row mb-3"> + <div class="col-12 col-sm-6 col-lg-8 themed-grid-col">.col-12 .col-sm-6 .col-lg-8</div> + <div class="col-6 col-lg-4 themed-grid-col">.col-6 .col-lg-4</div> + </div> + <div class="row mb-3"> + <div class="col-6 col-sm-4 themed-grid-col">.col-6 .col-sm-4</div> + <div class="col-6 col-sm-4 themed-grid-col">.col-6 .col-sm-4</div> + <div class="col-6 col-sm-4 themed-grid-col">.col-6 .col-sm-4</div> + </div> + +</div> <!-- /container --> +</body> +</html> diff --git a/docs/4.3/examples/index.html b/docs/4.3/examples/index.html new file mode 100644 index 0000000000..c9415081dd --- /dev/null +++ b/docs/4.3/examples/index.html @@ -0,0 +1,419 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Quickly get a project started with any of our examples ranging from using parts of the framework to custom components and layouts."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Examples · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Examples"> +<meta name="twitter:description" content="Quickly get a project started with any of our examples ranging from using parts of the framework to custom components and layouts."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/examples/"> +<meta property="og:title" content="Examples"> +<meta property="og:description" content="Quickly get a project started with any of our examples ranging from using parts of the framework to custom components and layouts."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + + <header class="d-flex flex-column flex-md-row align-items-md-center p-5 bg-light"> + <div class="pt-md-3 pb-md-4"> + <h1 class="bd-title mt-0">Examples</h1> + <p class="bd-lead">Quickly get a project started with any of our examples ranging from using parts of the framework to custom components and layouts.</p><a href="https://github.com/twbs/bootstrap/archive/v4.3.0.zip" class="btn btn-lg btn-bd-primary" onclick="ga('send', 'event', 'Examples', 'Hero', 'Download');">Download source code</a></div> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + +</header> + +<main class="bd-content p-5" id="content" role="main"> + + <h2>Custom components</h2> + <p>Brand new components and templates to help folks quickly get started with Bootstrap and demonstrate best practices for adding onto the framework.</p> + + <div class="row"> + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/album/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/album.png, + /docs/4.3/assets/img/examples/album@2x.png 2x" + src="/docs/4.3/assets/img/examples/album.png" alt="Album screenshot" width="480" height="300"> + <h5 class="mb-1">Album</h5> + </a> + <p class="text-muted">Simple one-page template for photo galleries, portfolios, and more.</p> + </div> + + + + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/pricing/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/pricing.png, + /docs/4.3/assets/img/examples/pricing@2x.png 2x" + src="/docs/4.3/assets/img/examples/pricing.png" alt="Pricing screenshot" width="480" height="300"> + <h5 class="mb-1">Pricing</h5> + </a> + <p class="text-muted">Example pricing page built with Cards and featuring a custom header and footer.</p> + </div> + + + + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/checkout/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/checkout.png, + /docs/4.3/assets/img/examples/checkout@2x.png 2x" + src="/docs/4.3/assets/img/examples/checkout.png" alt="Checkout screenshot" width="480" height="300"> + <h5 class="mb-1">Checkout</h5> + </a> + <p class="text-muted">Custom checkout form showing our form components and their validation features.</p> + </div> + + + + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/product/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/product.png, + /docs/4.3/assets/img/examples/product@2x.png 2x" + src="/docs/4.3/assets/img/examples/product.png" alt="Product screenshot" width="480" height="300"> + <h5 class="mb-1">Product</h5> + </a> + <p class="text-muted">Lean product-focused marketing page with extensive grid and image work.</p> + </div> + + + + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/cover/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/cover.png, + /docs/4.3/assets/img/examples/cover@2x.png 2x" + src="/docs/4.3/assets/img/examples/cover.png" alt="Cover screenshot" width="480" height="300"> + <h5 class="mb-1">Cover</h5> + </a> + <p class="text-muted">A one-page template for building simple and beautiful home pages.</p> + </div> + + + + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/carousel/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/carousel.png, + /docs/4.3/assets/img/examples/carousel@2x.png 2x" + src="/docs/4.3/assets/img/examples/carousel.png" alt="Carousel screenshot" width="480" height="300"> + <h5 class="mb-1">Carousel</h5> + </a> + <p class="text-muted">Customize the navbar and carousel, then add some new components.</p> + </div> + + + + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/blog/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/blog.png, + /docs/4.3/assets/img/examples/blog@2x.png 2x" + src="/docs/4.3/assets/img/examples/blog.png" alt="Blog screenshot" width="480" height="300"> + <h5 class="mb-1">Blog</h5> + </a> + <p class="text-muted">Magazine like blog template with header, navigation, featured content.</p> + </div> + + + + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/dashboard/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/dashboard.png, + /docs/4.3/assets/img/examples/dashboard@2x.png 2x" + src="/docs/4.3/assets/img/examples/dashboard.png" alt="Dashboard screenshot" width="480" height="300"> + <h5 class="mb-1">Dashboard</h5> + </a> + <p class="text-muted">Basic admin dashboard shell with fixed sidebar and navbar.</p> + </div> + + + + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/sign-in/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/sign-in.png, + /docs/4.3/assets/img/examples/sign-in@2x.png 2x" + src="/docs/4.3/assets/img/examples/sign-in.png" alt="Sign-in screenshot" width="480" height="300"> + <h5 class="mb-1">Sign-in</h5> + </a> + <p class="text-muted">Custom form layout and design for a simple sign in form.</p> + </div> + + + + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/sticky-footer/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/sticky-footer.png, + /docs/4.3/assets/img/examples/sticky-footer@2x.png 2x" + src="/docs/4.3/assets/img/examples/sticky-footer.png" alt="Sticky footer screenshot" width="480" height="300"> + <h5 class="mb-1">Sticky footer</h5> + </a> + <p class="text-muted">Attach a footer to the bottom of the viewport when page content is short.</p> + </div> + + + + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/sticky-footer-navbar/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/sticky-footer-navbar.png, + /docs/4.3/assets/img/examples/sticky-footer-navbar@2x.png 2x" + src="/docs/4.3/assets/img/examples/sticky-footer-navbar.png" alt="Sticky footer navbar screenshot" width="480" height="300"> + <h5 class="mb-1">Sticky footer navbar</h5> + </a> + <p class="text-muted">Attach a footer to the bottom of the viewport with a fixed top navbar.</p> + </div> + </div> + + + <h2>Framework</h2> + <p>Examples that focus on implementing uses of built-in components provided by Bootstrap.</p> + + <div class="row"> + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/starter-template/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/starter-template.png, + /docs/4.3/assets/img/examples/starter-template@2x.png 2x" + src="/docs/4.3/assets/img/examples/starter-template.png" alt="Starter template screenshot" width="480" height="300"> + <h5 class="mb-1">Starter template</h5> + </a> + <p class="text-muted">Nothing but the basics: compiled CSS and JavaScript.</p> + </div> + + + + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/grid/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/grid.png, + /docs/4.3/assets/img/examples/grid@2x.png 2x" + src="/docs/4.3/assets/img/examples/grid.png" alt="Grid screenshot" width="480" height="300"> + <h5 class="mb-1">Grid</h5> + </a> + <p class="text-muted">Multiple examples of grid layouts with all four tiers, nesting, and more.</p> + </div> + + + + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/jumbotron/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/jumbotron.png, + /docs/4.3/assets/img/examples/jumbotron@2x.png 2x" + src="/docs/4.3/assets/img/examples/jumbotron.png" alt="Jumbotron screenshot" width="480" height="300"> + <h5 class="mb-1">Jumbotron</h5> + </a> + <p class="text-muted">Build around the jumbotron with a navbar and some basic grid columns.</p> + </div> + </div> + + + <h2>Navbars</h2> + <p>Taking the default navbar component and showing how it can be moved, placed, and extended.</p> + + <div class="row"> + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/navbars/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/navbars.png, + /docs/4.3/assets/img/examples/navbars@2x.png 2x" + src="/docs/4.3/assets/img/examples/navbars.png" alt="Navbars screenshot" width="480" height="300"> + <h5 class="mb-1">Navbars</h5> + </a> + <p class="text-muted">Demonstration of all responsive and container options for the navbar.</p> + </div> + + + + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/navbar-static/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/navbar-static.png, + /docs/4.3/assets/img/examples/navbar-static@2x.png 2x" + src="/docs/4.3/assets/img/examples/navbar-static.png" alt="Navbar static screenshot" width="480" height="300"> + <h5 class="mb-1">Navbar static</h5> + </a> + <p class="text-muted">Single navbar example of a static top navbar along with some additional content.</p> + </div> + + + + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/navbar-fixed/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/navbar-fixed.png, + /docs/4.3/assets/img/examples/navbar-fixed@2x.png 2x" + src="/docs/4.3/assets/img/examples/navbar-fixed.png" alt="Navbar fixed screenshot" width="480" height="300"> + <h5 class="mb-1">Navbar fixed</h5> + </a> + <p class="text-muted">Single navbar example with a fixed top navbar along with some additional content.</p> + </div> + + + + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/navbar-bottom/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/navbar-bottom.png, + /docs/4.3/assets/img/examples/navbar-bottom@2x.png 2x" + src="/docs/4.3/assets/img/examples/navbar-bottom.png" alt="Navbar bottom screenshot" width="480" height="300"> + <h5 class="mb-1">Navbar bottom</h5> + </a> + <p class="text-muted">Single navbar example with a bottom navbar along with some additional content.</p> + </div> + </div> + + + <h2>Experiments</h2> + <p>Examples that focus on future-friendly features or techniques.</p> + + <div class="row"> + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/floating-labels/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/floating-labels.png, + /docs/4.3/assets/img/examples/floating-labels@2x.png 2x" + src="/docs/4.3/assets/img/examples/floating-labels.png" alt="Floating labels screenshot" width="480" height="300"> + <h5 class="mb-1">Floating labels</h5> + </a> + <p class="text-muted">Beautifully simple forms with floating labels over your inputs.</p> + </div> + + + + <div class="col-sm-6 col-md-4 col-xl-3 mb-3"> + <a href="/docs/4.3/examples/offcanvas/"> + <img class="img-thumbnail mb-3" srcset="/docs/4.3/assets/img/examples/offcanvas.png, + /docs/4.3/assets/img/examples/offcanvas@2x.png 2x" + src="/docs/4.3/assets/img/examples/offcanvas.png" alt="Offcanvas screenshot" width="480" height="300"> + <h5 class="mb-1">Offcanvas</h5> + </a> + <p class="text-muted">Turn your expandable navbar into a sliding offcanvas menu.</p> + </div> + </div> + + + +</main> + + + + <footer class="bd-footer text-muted"> + <div class="container-fluid p-3 p-md-5"> + <ul class="bd-footer-links"> + <li><a href="https://github.com/twbs/bootstrap">GitHub</a></li> + <li><a href="https://twitter.com/getbootstrap">Twitter</a></li> + <li><a href="/docs/4.3/examples/">Examples</a></li> + <li><a href="/docs/4.3/about/overview/">About</a></li> + </ul> + <p>Designed and built with all the love in the world by the <a href="/docs/4.3/about/team/">Bootstrap team</a> with the help of <a href="https://github.com/twbs/bootstrap/graphs/contributors">our contributors</a>.</p> + <p>Currently v4.3.0. Code licensed <a href="https://github.com/twbs/bootstrap/blob/master/LICENSE" target="_blank" rel="license noopener">MIT</a>, docs <a href="https://creativecommons.org/licenses/by/3.0/" target="_blank" rel="license noopener">CC BY 3.0</a>.</p> + </div> +</footer> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/examples/jumbotron/index.html b/docs/4.3/examples/jumbotron/index.html new file mode 100644 index 0000000000..9e8d5fec96 --- /dev/null +++ b/docs/4.3/examples/jumbotron/index.html @@ -0,0 +1,112 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Jumbotron Template · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/jumbotron/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="jumbotron.css" rel="stylesheet"> + </head> + <body> + <nav class="navbar navbar-expand-md navbar-dark fixed-top bg-dark"> + <a class="navbar-brand" href="#">Navbar</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExampleDefault" aria-controls="navbarsExampleDefault" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse" id="navbarsExampleDefault"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#">Disabled</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="#" id="dropdown01" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown</a> + <div class="dropdown-menu" aria-labelledby="dropdown01"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> + </li> + </ul> + <form class="form-inline my-2 my-lg-0"> + <input class="form-control mr-sm-2" type="text" placeholder="Search" aria-label="Search"> + <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button> + </form> + </div> +</nav> + +<main role="main"> + + <!-- Main jumbotron for a primary marketing message or call to action --> + <div class="jumbotron"> + <div class="container"> + <h1 class="display-3">Hello, world!</h1> + <p>This is a template for a simple marketing or informational website. It includes a large callout called a jumbotron and three supporting pieces of content. Use it as a starting point to create something more unique.</p> + <p><a class="btn btn-primary btn-lg" href="#" role="button">Learn more »</a></p> + </div> + </div> + + <div class="container"> + <!-- Example row of columns --> + <div class="row"> + <div class="col-md-4"> + <h2>Heading</h2> + <p>Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui. </p> + <p><a class="btn btn-secondary" href="#" role="button">View details »</a></p> + </div> + <div class="col-md-4"> + <h2>Heading</h2> + <p>Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui. </p> + <p><a class="btn btn-secondary" href="#" role="button">View details »</a></p> + </div> + <div class="col-md-4"> + <h2>Heading</h2> + <p>Donec sed odio dui. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Vestibulum id ligula porta felis euismod semper. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p> + <p><a class="btn btn-secondary" href="#" role="button">View details »</a></p> + </div> + </div> + + <hr> + + </div> <!-- /container --> + +</main> + +<footer class="container"> + <p>© Company 2017-2019</p> +</footer> +<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> + <script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script></body> +</html> diff --git a/docs/4.3/examples/jumbotron/jumbotron.css b/docs/4.3/examples/jumbotron/jumbotron.css new file mode 100644 index 0000000000..d751264eff --- /dev/null +++ b/docs/4.3/examples/jumbotron/jumbotron.css @@ -0,0 +1,4 @@ +/* Move down content because we have a fixed navbar that is 3.5rem tall */ +body { + padding-top: 3.5rem; +} diff --git a/docs/4.3/examples/navbar-bottom/index.html b/docs/4.3/examples/navbar-bottom/index.html new file mode 100644 index 0000000000..a4e4fca26c --- /dev/null +++ b/docs/4.3/examples/navbar-bottom/index.html @@ -0,0 +1,71 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Bottom navbar example · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/navbar-bottom/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + </head> + <body> + <div class="container"> + <div class="jumbotron mt-3"> + <h1>Bottom Navbar example</h1> + <p class="lead">This example is a quick exercise to illustrate how the bottom navbar works.</p> + <a class="btn btn-lg btn-primary" href="/docs/4.3/components/navbar/" role="button">View navbar docs »</a> + </div> +</div> +<nav class="navbar fixed-bottom navbar-expand-sm navbar-dark bg-dark"> + <a class="navbar-brand" href="#">Bottom navbar</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + <div class="collapse navbar-collapse" id="navbarCollapse"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#">Disabled</a> + </li> + <li class="nav-item dropup"> + <a class="nav-link dropdown-toggle" href="#" id="dropdown10" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropup</a> + <div class="dropdown-menu" aria-labelledby="dropdown10"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> + </li> + </ul> + </div> +</nav> +<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> + <script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script></body> +</html> diff --git a/docs/4.3/examples/navbar-fixed/index.html b/docs/4.3/examples/navbar-fixed/index.html new file mode 100644 index 0000000000..a6f4bcc9f7 --- /dev/null +++ b/docs/4.3/examples/navbar-fixed/index.html @@ -0,0 +1,70 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Fixed top navbar example · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/navbar-fixed/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="navbar-top-fixed.css" rel="stylesheet"> + </head> + <body> + <nav class="navbar navbar-expand-md navbar-dark fixed-top bg-dark"> + <a class="navbar-brand" href="#">Fixed navbar</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + <div class="collapse navbar-collapse" id="navbarCollapse"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#">Disabled</a> + </li> + </ul> + <form class="form-inline mt-2 mt-md-0"> + <input class="form-control mr-sm-2" type="text" placeholder="Search" aria-label="Search"> + <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button> + </form> + </div> +</nav> + +<main role="main" class="container"> + <div class="jumbotron"> + <h1>Navbar example</h1> + <p class="lead">This example is a quick exercise to illustrate how fixed to top navbar works. As you scroll, it will remain fixed to the top of your browser’s viewport.</p> + <a class="btn btn-lg btn-primary" href="/docs/4.3/components/navbar/" role="button">View navbar docs »</a> + </div> +</main> +<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> + <script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script></body> +</html> diff --git a/docs/4.3/examples/navbar-fixed/navbar-top-fixed.css b/docs/4.3/examples/navbar-fixed/navbar-top-fixed.css new file mode 100644 index 0000000000..c77c0c1475 --- /dev/null +++ b/docs/4.3/examples/navbar-fixed/navbar-top-fixed.css @@ -0,0 +1,5 @@ +/* Show it is fixed to the top */ +body { + min-height: 75rem; + padding-top: 4.5rem; +} diff --git a/docs/4.3/examples/navbar-static/index.html b/docs/4.3/examples/navbar-static/index.html new file mode 100644 index 0000000000..847a2dd1ba --- /dev/null +++ b/docs/4.3/examples/navbar-static/index.html @@ -0,0 +1,70 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Top navbar example · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/navbar-static/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="navbar-top.css" rel="stylesheet"> + </head> + <body> + <nav class="navbar navbar-expand-md navbar-dark bg-dark mb-4"> + <a class="navbar-brand" href="#">Top navbar</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + <div class="collapse navbar-collapse" id="navbarCollapse"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> + </ul> + <form class="form-inline mt-2 mt-md-0"> + <input class="form-control mr-sm-2" type="text" placeholder="Search" aria-label="Search"> + <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button> + </form> + </div> +</nav> + +<main role="main" class="container"> + <div class="jumbotron"> + <h1>Navbar example</h1> + <p class="lead">This example is a quick exercise to illustrate how the top-aligned navbar works. As you scroll, this navbar remains in its original position and moves with the rest of the page.</p> + <a class="btn btn-lg btn-primary" href="/docs/4.3/components/navbar/" role="button">View navbar docs »</a> + </div> +</main> +<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> + <script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script></body> +</html> diff --git a/docs/4.3/examples/navbar-static/navbar-top.css b/docs/4.3/examples/navbar-static/navbar-top.css new file mode 100644 index 0000000000..25bbdde094 --- /dev/null +++ b/docs/4.3/examples/navbar-static/navbar-top.css @@ -0,0 +1,4 @@ +/* Show it's not fixed to the top */ +body { + min-height: 75rem; +} diff --git a/docs/4.3/examples/navbars/index.html b/docs/4.3/examples/navbars/index.html new file mode 100644 index 0000000000..23d9c91c7c --- /dev/null +++ b/docs/4.3/examples/navbars/index.html @@ -0,0 +1,356 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Navbar Template · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/navbars/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="navbar.css" rel="stylesheet"> + </head> + <body> + <nav class="navbar navbar-dark bg-dark"> + <a class="navbar-brand" href="#">Never expand</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExample01" aria-controls="navbarsExample01" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse" id="navbarsExample01"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#">Disabled</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="#" id="dropdown01" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown</a> + <div class="dropdown-menu" aria-labelledby="dropdown01"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> + </li> + </ul> + <form class="form-inline my-2 my-md-0"> + <input class="form-control" type="text" placeholder="Search" aria-label="Search"> + </form> + </div> +</nav> + +<nav class="navbar navbar-expand navbar-dark bg-dark"> + <a class="navbar-brand" href="#">Always expand</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExample02" aria-controls="navbarsExample02" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse" id="navbarsExample02"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + </ul> + <form class="form-inline my-2 my-md-0"> + <input class="form-control" type="text" placeholder="Search"> + </form> + </div> +</nav> + +<nav class="navbar navbar-expand-sm navbar-dark bg-dark"> + <a class="navbar-brand" href="#">Expand at sm</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExample03" aria-controls="navbarsExample03" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse" id="navbarsExample03"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#">Disabled</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="#" id="dropdown03" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown</a> + <div class="dropdown-menu" aria-labelledby="dropdown03"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> + </li> + </ul> + <form class="form-inline my-2 my-md-0"> + <input class="form-control" type="text" placeholder="Search"> + </form> + </div> +</nav> + +<nav class="navbar navbar-expand-md navbar-dark bg-dark"> + <a class="navbar-brand" href="#">Expand at md</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExample04" aria-controls="navbarsExample04" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse" id="navbarsExample04"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#">Disabled</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="#" id="dropdown04" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown</a> + <div class="dropdown-menu" aria-labelledby="dropdown04"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> + </li> + </ul> + <form class="form-inline my-2 my-md-0"> + <input class="form-control" type="text" placeholder="Search"> + </form> + </div> +</nav> + +<nav class="navbar navbar-expand-lg navbar-dark bg-dark"> + <a class="navbar-brand" href="#">Expand at lg</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExample05" aria-controls="navbarsExample05" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse" id="navbarsExample05"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#">Disabled</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="#" id="dropdown05" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown</a> + <div class="dropdown-menu" aria-labelledby="dropdown05"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> + </li> + </ul> + <form class="form-inline my-2 my-md-0"> + <input class="form-control" type="text" placeholder="Search"> + </form> + </div> +</nav> + +<nav class="navbar navbar-expand-xl navbar-dark bg-dark"> + <a class="navbar-brand" href="#">Expand at xl</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExample06" aria-controls="navbarsExample06" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse" id="navbarsExample06"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#">Disabled</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="#" id="dropdown06" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown</a> + <div class="dropdown-menu" aria-labelledby="dropdown06"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> + </li> + </ul> + <form class="form-inline my-2 my-md-0"> + <input class="form-control" type="text" placeholder="Search"> + </form> + </div> +</nav> + +<nav class="navbar navbar-expand-lg navbar-dark bg-dark"> + <div class="container"> + <a class="navbar-brand" href="#">Container</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExample07" aria-controls="navbarsExample07" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse" id="navbarsExample07"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#">Disabled</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="#" id="dropdown07" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown</a> + <div class="dropdown-menu" aria-labelledby="dropdown07"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> + </li> + </ul> + <form class="form-inline my-2 my-md-0"> + <input class="form-control" type="text" placeholder="Search" aria-label="Search"> + </form> + </div> + </div> +</nav> + +<nav class="navbar navbar-expand-lg navbar-dark bg-dark"> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExample08" aria-controls="navbarsExample08" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse justify-content-md-center" id="navbarsExample08"> + <ul class="navbar-nav"> + <li class="nav-item active"> + <a class="nav-link" href="#">Centered nav only <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#">Disabled</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="#" id="dropdown08" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown</a> + <div class="dropdown-menu" aria-labelledby="dropdown08"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> + </li> + </ul> + </div> +</nav> + +<div class="container"> + <nav class="navbar navbar-expand-lg navbar-light bg-light rounded"> + <a class="navbar-brand" href="#">Navbar</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExample09" aria-controls="navbarsExample09" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse" id="navbarsExample09"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="#" id="dropdown09" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown</a> + <div class="dropdown-menu" aria-labelledby="dropdown09"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> + </li> + </ul> + <form class="form-inline my-2 my-md-0"> + <input class="form-control" type="text" placeholder="Search" aria-label="Search"> + </form> + </div> + </nav> + + <nav class="navbar navbar-expand-lg navbar-light bg-light rounded"> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExample10" aria-controls="navbarsExample10" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse justify-content-md-center" id="navbarsExample10"> + <ul class="navbar-nav"> + <li class="nav-item active"> + <a class="nav-link" href="#">Centered nav only <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="#" id="dropdown10" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown</a> + <div class="dropdown-menu" aria-labelledby="dropdown10"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> + </li> + </ul> + </div> + </nav> + + <main role="main"> + <div class="jumbotron"> + <div class="col-sm-8 mx-auto"> + <h1>Navbar examples</h1> + <p>This example is a quick exercise to illustrate how the navbar and its contents work. Some navbars extend the width of the viewport, others are confined within a <code>.container</code>. For positioning of navbars, checkout the <a href="/docs/4.3/examples/navbar-static/">top</a> and <a href="/docs/4.3/examples/navbar-fixed/">fixed top</a> examples.</p> + <p>At the smallest breakpoint, the collapse plugin is used to hide the links and show a menu button to toggle the collapsed content.</p> + <p> + <a class="btn btn-primary" href="/docs/4.3/components/navbar/" role="button">View navbar docs »</a> + </p> + </div> + </div> + </main> +</div> +<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> + <script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script></body> +</html> diff --git a/docs/4.3/examples/navbars/navbar.css b/docs/4.3/examples/navbars/navbar.css new file mode 100644 index 0000000000..70d209409d --- /dev/null +++ b/docs/4.3/examples/navbars/navbar.css @@ -0,0 +1,7 @@ +body { + padding-bottom: 20px; +} + +.navbar { + margin-bottom: 20px; +} diff --git a/docs/4.3/examples/offcanvas/index.html b/docs/4.3/examples/offcanvas/index.html new file mode 100644 index 0000000000..e8868db141 --- /dev/null +++ b/docs/4.3/examples/offcanvas/index.html @@ -0,0 +1,167 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Offcanvas template · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/offcanvas/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="offcanvas.css" rel="stylesheet"> + </head> + <body class="bg-light"> + <nav class="navbar navbar-expand-lg fixed-top navbar-dark bg-dark"> + <a class="navbar-brand mr-auto mr-lg-0" href="#">Offcanvas navbar</a> + <button class="navbar-toggler p-0 border-0" type="button" data-toggle="offcanvas"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="navbar-collapse offcanvas-collapse" id="navbarsExampleDefault"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Dashboard <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Notifications</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Profile</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Switch account</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="#" id="dropdown01" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Settings</a> + <div class="dropdown-menu" aria-labelledby="dropdown01"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> + </li> + </ul> + <form class="form-inline my-2 my-lg-0"> + <input class="form-control mr-sm-2" type="text" placeholder="Search" aria-label="Search"> + <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button> + </form> + </div> +</nav> + +<div class="nav-scroller bg-white shadow-sm"> + <nav class="nav nav-underline"> + <a class="nav-link active" href="#">Dashboard</a> + <a class="nav-link" href="#"> + Friends + <span class="badge badge-pill bg-light align-text-bottom">27</span> + </a> + <a class="nav-link" href="#">Explore</a> + <a class="nav-link" href="#">Suggestions</a> + <a class="nav-link" href="#">Link</a> + <a class="nav-link" href="#">Link</a> + <a class="nav-link" href="#">Link</a> + <a class="nav-link" href="#">Link</a> + <a class="nav-link" href="#">Link</a> + </nav> +</div> + +<main role="main" class="container"> + <div class="d-flex align-items-center p-3 my-3 text-white-50 bg-purple rounded shadow-sm"> + <img class="mr-3" src="/docs/4.3/assets/brand/bootstrap-outline.svg" alt="" width="48" height="48"> + <div class="lh-100"> + <h6 class="mb-0 text-white lh-100">Bootstrap</h6> + <small>Since 2011</small> + </div> + </div> + + <div class="my-3 p-3 bg-white rounded shadow-sm"> + <h6 class="border-bottom border-gray pb-2 mb-0">Recent updates</h6> + <div class="media text-muted pt-3"> + <svg class="bd-placeholder-img mr-2 rounded" width="32" height="32" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 32x32"><title>Placeholder</title><rect width="100%" height="100%" fill="#007bff"/><text x="50%" y="50%" fill="#007bff" dy=".3em">32x32</text></svg> + <p class="media-body pb-3 mb-0 small lh-125 border-bottom border-gray"> + <strong class="d-block text-gray-dark">@username</strong> + Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. + </p> + </div> + <div class="media text-muted pt-3"> + <svg class="bd-placeholder-img mr-2 rounded" width="32" height="32" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 32x32"><title>Placeholder</title><rect width="100%" height="100%" fill="#e83e8c"/><text x="50%" y="50%" fill="#e83e8c" dy=".3em">32x32</text></svg> + <p class="media-body pb-3 mb-0 small lh-125 border-bottom border-gray"> + <strong class="d-block text-gray-dark">@username</strong> + Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. + </p> + </div> + <div class="media text-muted pt-3"> + <svg class="bd-placeholder-img mr-2 rounded" width="32" height="32" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 32x32"><title>Placeholder</title><rect width="100%" height="100%" fill="#6f42c1"/><text x="50%" y="50%" fill="#6f42c1" dy=".3em">32x32</text></svg> + <p class="media-body pb-3 mb-0 small lh-125 border-bottom border-gray"> + <strong class="d-block text-gray-dark">@username</strong> + Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. + </p> + </div> + <small class="d-block text-right mt-3"> + <a href="#">All updates</a> + </small> + </div> + + <div class="my-3 p-3 bg-white rounded shadow-sm"> + <h6 class="border-bottom border-gray pb-2 mb-0">Suggestions</h6> + <div class="media text-muted pt-3"> + <svg class="bd-placeholder-img mr-2 rounded" width="32" height="32" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 32x32"><title>Placeholder</title><rect width="100%" height="100%" fill="#007bff"/><text x="50%" y="50%" fill="#007bff" dy=".3em">32x32</text></svg> + <div class="media-body pb-3 mb-0 small lh-125 border-bottom border-gray"> + <div class="d-flex justify-content-between align-items-center w-100"> + <strong class="text-gray-dark">Full Name</strong> + <a href="#">Follow</a> + </div> + <span class="d-block">@username</span> + </div> + </div> + <div class="media text-muted pt-3"> + <svg class="bd-placeholder-img mr-2 rounded" width="32" height="32" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 32x32"><title>Placeholder</title><rect width="100%" height="100%" fill="#007bff"/><text x="50%" y="50%" fill="#007bff" dy=".3em">32x32</text></svg> + <div class="media-body pb-3 mb-0 small lh-125 border-bottom border-gray"> + <div class="d-flex justify-content-between align-items-center w-100"> + <strong class="text-gray-dark">Full Name</strong> + <a href="#">Follow</a> + </div> + <span class="d-block">@username</span> + </div> + </div> + <div class="media text-muted pt-3"> + <svg class="bd-placeholder-img mr-2 rounded" width="32" height="32" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: 32x32"><title>Placeholder</title><rect width="100%" height="100%" fill="#007bff"/><text x="50%" y="50%" fill="#007bff" dy=".3em">32x32</text></svg> + <div class="media-body pb-3 mb-0 small lh-125 border-bottom border-gray"> + <div class="d-flex justify-content-between align-items-center w-100"> + <strong class="text-gray-dark">Full Name</strong> + <a href="#">Follow</a> + </div> + <span class="d-block">@username</span> + </div> + </div> + <small class="d-block text-right mt-3"> + <a href="#">All suggestions</a> + </small> + </div> +</main> +<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> + <script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script> + <script src="offcanvas.js"></script></body> +</html> diff --git a/docs/4.3/examples/offcanvas/offcanvas.css b/docs/4.3/examples/offcanvas/offcanvas.css new file mode 100644 index 0000000000..9c78f02e5e --- /dev/null +++ b/docs/4.3/examples/offcanvas/offcanvas.css @@ -0,0 +1,76 @@ +html, +body { + overflow-x: hidden; /* Prevent scroll on narrow devices */ +} + +body { + padding-top: 56px; +} + +@media (max-width: 991.98px) { + .offcanvas-collapse { + position: fixed; + top: 56px; /* Height of navbar */ + bottom: 0; + left: 100%; + width: 100%; + padding-right: 1rem; + padding-left: 1rem; + overflow-y: auto; + visibility: hidden; + background-color: #343a40; + transition: visibility .3s ease-in-out, -webkit-transform .3s ease-in-out; + transition: transform .3s ease-in-out, visibility .3s ease-in-out; + transition: transform .3s ease-in-out, visibility .3s ease-in-out, -webkit-transform .3s ease-in-out; + } + .offcanvas-collapse.open { + visibility: visible; + -webkit-transform: translateX(-100%); + transform: translateX(-100%); + } +} + +.nav-scroller { + position: relative; + z-index: 2; + height: 2.75rem; + overflow-y: hidden; +} + +.nav-scroller .nav { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + padding-bottom: 1rem; + margin-top: -1px; + overflow-x: auto; + color: rgba(255, 255, 255, .75); + text-align: center; + white-space: nowrap; + -webkit-overflow-scrolling: touch; +} + +.nav-underline .nav-link { + padding-top: .75rem; + padding-bottom: .75rem; + font-size: .875rem; + color: #6c757d; +} + +.nav-underline .nav-link:hover { + color: #007bff; +} + +.nav-underline .active { + font-weight: 500; + color: #343a40; +} + +.text-white-50 { color: rgba(255, 255, 255, .5); } + +.bg-purple { background-color: #6f42c1; } + +.lh-100 { line-height: 1; } +.lh-125 { line-height: 1.25; } +.lh-150 { line-height: 1.5; } diff --git a/docs/4.3/examples/offcanvas/offcanvas.js b/docs/4.3/examples/offcanvas/offcanvas.js new file mode 100644 index 0000000000..bc3e467118 --- /dev/null +++ b/docs/4.3/examples/offcanvas/offcanvas.js @@ -0,0 +1,7 @@ +$(function () { + 'use strict' + + $('[data-toggle="offcanvas"]').on('click', function () { + $('.offcanvas-collapse').toggleClass('open') + }) +}) diff --git a/docs/4.3/examples/pricing/index.html b/docs/4.3/examples/pricing/index.html new file mode 100644 index 0000000000..76459a92c9 --- /dev/null +++ b/docs/4.3/examples/pricing/index.html @@ -0,0 +1,141 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Pricing example · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/pricing/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="pricing.css" rel="stylesheet"> + </head> + <body> + <div class="d-flex flex-column flex-md-row align-items-center p-3 px-md-4 mb-3 bg-white border-bottom shadow-sm"> + <h5 class="my-0 mr-md-auto font-weight-normal">Company name</h5> + <nav class="my-2 my-md-0 mr-md-3"> + <a class="p-2 text-dark" href="#">Features</a> + <a class="p-2 text-dark" href="#">Enterprise</a> + <a class="p-2 text-dark" href="#">Support</a> + <a class="p-2 text-dark" href="#">Pricing</a> + </nav> + <a class="btn btn-outline-primary" href="#">Sign up</a> +</div> + +<div class="pricing-header px-3 py-3 pt-md-5 pb-md-4 mx-auto text-center"> + <h1 class="display-4">Pricing</h1> + <p class="lead">Quickly build an effective pricing table for your potential customers with this Bootstrap example. It’s built with default Bootstrap components and utilities with little customization.</p> +</div> + +<div class="container"> + <div class="card-deck mb-3 text-center"> + <div class="card mb-4 shadow-sm"> + <div class="card-header"> + <h4 class="my-0 font-weight-normal">Free</h4> + </div> + <div class="card-body"> + <h1 class="card-title pricing-card-title">$0 <small class="text-muted">/ mo</small></h1> + <ul class="list-unstyled mt-3 mb-4"> + <li>10 users included</li> + <li>2 GB of storage</li> + <li>Email support</li> + <li>Help center access</li> + </ul> + <button type="button" class="btn btn-lg btn-block btn-outline-primary">Sign up for free</button> + </div> + </div> + <div class="card mb-4 shadow-sm"> + <div class="card-header"> + <h4 class="my-0 font-weight-normal">Pro</h4> + </div> + <div class="card-body"> + <h1 class="card-title pricing-card-title">$15 <small class="text-muted">/ mo</small></h1> + <ul class="list-unstyled mt-3 mb-4"> + <li>20 users included</li> + <li>10 GB of storage</li> + <li>Priority email support</li> + <li>Help center access</li> + </ul> + <button type="button" class="btn btn-lg btn-block btn-primary">Get started</button> + </div> + </div> + <div class="card mb-4 shadow-sm"> + <div class="card-header"> + <h4 class="my-0 font-weight-normal">Enterprise</h4> + </div> + <div class="card-body"> + <h1 class="card-title pricing-card-title">$29 <small class="text-muted">/ mo</small></h1> + <ul class="list-unstyled mt-3 mb-4"> + <li>30 users included</li> + <li>15 GB of storage</li> + <li>Phone and email support</li> + <li>Help center access</li> + </ul> + <button type="button" class="btn btn-lg btn-block btn-primary">Contact us</button> + </div> + </div> + </div> + + <footer class="pt-4 my-md-5 pt-md-5 border-top"> + <div class="row"> + <div class="col-12 col-md"> + <img class="mb-2" src="/docs/4.3/assets/brand/bootstrap-solid.svg" alt="" width="24" height="24"> + <small class="d-block mb-3 text-muted">© 2017-2019</small> + </div> + <div class="col-6 col-md"> + <h5>Features</h5> + <ul class="list-unstyled text-small"> + <li><a class="text-muted" href="#">Cool stuff</a></li> + <li><a class="text-muted" href="#">Random feature</a></li> + <li><a class="text-muted" href="#">Team feature</a></li> + <li><a class="text-muted" href="#">Stuff for developers</a></li> + <li><a class="text-muted" href="#">Another one</a></li> + <li><a class="text-muted" href="#">Last time</a></li> + </ul> + </div> + <div class="col-6 col-md"> + <h5>Resources</h5> + <ul class="list-unstyled text-small"> + <li><a class="text-muted" href="#">Resource</a></li> + <li><a class="text-muted" href="#">Resource name</a></li> + <li><a class="text-muted" href="#">Another resource</a></li> + <li><a class="text-muted" href="#">Final resource</a></li> + </ul> + </div> + <div class="col-6 col-md"> + <h5>About</h5> + <ul class="list-unstyled text-small"> + <li><a class="text-muted" href="#">Team</a></li> + <li><a class="text-muted" href="#">Locations</a></li> + <li><a class="text-muted" href="#">Privacy</a></li> + <li><a class="text-muted" href="#">Terms</a></li> + </ul> + </div> + </div> + </footer> +</div> +</body> +</html> diff --git a/docs/4.3/examples/pricing/pricing.css b/docs/4.3/examples/pricing/pricing.css new file mode 100644 index 0000000000..cbf0ec013a --- /dev/null +++ b/docs/4.3/examples/pricing/pricing.css @@ -0,0 +1,20 @@ +html { + font-size: 14px; +} +@media (min-width: 768px) { + html { + font-size: 16px; + } +} + +.container { + max-width: 960px; +} + +.pricing-header { + max-width: 700px; +} + +.card-deck .card { + min-width: 220px; +} diff --git a/docs/4.3/examples/product/index.html b/docs/4.3/examples/product/index.html new file mode 100644 index 0000000000..8b32bb3537 --- /dev/null +++ b/docs/4.3/examples/product/index.html @@ -0,0 +1,178 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Product example · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/product/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="product.css" rel="stylesheet"> + </head> + <body> + <nav class="site-header sticky-top py-1"> + <div class="container d-flex flex-column flex-md-row justify-content-between"> + <a class="py-2" href="#"> + <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" class="d-block mx-auto" role="img" viewBox="0 0 24 24" focusable="false"><title>Product</title><circle cx="12" cy="12" r="10"/><path d="M14.31 8l5.74 9.94M9.69 8h11.48M7.38 12l5.74-9.94M9.69 16L3.95 6.06M14.31 16H2.83m13.79-4l-5.74 9.94"/></svg> + </a> + <a class="py-2 d-none d-md-inline-block" href="#">Tour</a> + <a class="py-2 d-none d-md-inline-block" href="#">Product</a> + <a class="py-2 d-none d-md-inline-block" href="#">Features</a> + <a class="py-2 d-none d-md-inline-block" href="#">Enterprise</a> + <a class="py-2 d-none d-md-inline-block" href="#">Support</a> + <a class="py-2 d-none d-md-inline-block" href="#">Pricing</a> + <a class="py-2 d-none d-md-inline-block" href="#">Cart</a> + </div> +</nav> + +<div class="position-relative overflow-hidden p-3 p-md-5 m-md-3 text-center bg-light"> + <div class="col-md-5 p-lg-5 mx-auto my-5"> + <h1 class="display-4 font-weight-normal">Punny headline</h1> + <p class="lead font-weight-normal">And an even wittier subheading to boot. Jumpstart your marketing efforts with this example based on Apple’s marketing pages.</p> + <a class="btn btn-outline-secondary" href="#">Coming soon</a> + </div> + <div class="product-device shadow-sm d-none d-md-block"></div> + <div class="product-device product-device-2 shadow-sm d-none d-md-block"></div> +</div> + +<div class="d-md-flex flex-md-equal w-100 my-md-3 pl-md-3"> + <div class="bg-dark mr-md-3 pt-3 px-3 pt-md-5 px-md-5 text-center text-white overflow-hidden"> + <div class="my-3 py-3"> + <h2 class="display-5">Another headline</h2> + <p class="lead">And an even wittier subheading.</p> + </div> + <div class="bg-light shadow-sm mx-auto" style="width: 80%; height: 300px; border-radius: 21px 21px 0 0;"></div> + </div> + <div class="bg-light mr-md-3 pt-3 px-3 pt-md-5 px-md-5 text-center overflow-hidden"> + <div class="my-3 p-3"> + <h2 class="display-5">Another headline</h2> + <p class="lead">And an even wittier subheading.</p> + </div> + <div class="bg-dark shadow-sm mx-auto" style="width: 80%; height: 300px; border-radius: 21px 21px 0 0;"></div> + </div> +</div> + +<div class="d-md-flex flex-md-equal w-100 my-md-3 pl-md-3"> + <div class="bg-light mr-md-3 pt-3 px-3 pt-md-5 px-md-5 text-center overflow-hidden"> + <div class="my-3 p-3"> + <h2 class="display-5">Another headline</h2> + <p class="lead">And an even wittier subheading.</p> + </div> + <div class="bg-dark shadow-sm mx-auto" style="width: 80%; height: 300px; border-radius: 21px 21px 0 0;"></div> + </div> + <div class="bg-primary mr-md-3 pt-3 px-3 pt-md-5 px-md-5 text-center text-white overflow-hidden"> + <div class="my-3 py-3"> + <h2 class="display-5">Another headline</h2> + <p class="lead">And an even wittier subheading.</p> + </div> + <div class="bg-light shadow-sm mx-auto" style="width: 80%; height: 300px; border-radius: 21px 21px 0 0;"></div> + </div> +</div> + +<div class="d-md-flex flex-md-equal w-100 my-md-3 pl-md-3"> + <div class="bg-light mr-md-3 pt-3 px-3 pt-md-5 px-md-5 text-center overflow-hidden"> + <div class="my-3 p-3"> + <h2 class="display-5">Another headline</h2> + <p class="lead">And an even wittier subheading.</p> + </div> + <div class="bg-white shadow-sm mx-auto" style="width: 80%; height: 300px; border-radius: 21px 21px 0 0;"></div> + </div> + <div class="bg-light mr-md-3 pt-3 px-3 pt-md-5 px-md-5 text-center overflow-hidden"> + <div class="my-3 py-3"> + <h2 class="display-5">Another headline</h2> + <p class="lead">And an even wittier subheading.</p> + </div> + <div class="bg-white shadow-sm mx-auto" style="width: 80%; height: 300px; border-radius: 21px 21px 0 0;"></div> + </div> +</div> + +<div class="d-md-flex flex-md-equal w-100 my-md-3 pl-md-3"> + <div class="bg-light mr-md-3 pt-3 px-3 pt-md-5 px-md-5 text-center overflow-hidden"> + <div class="my-3 p-3"> + <h2 class="display-5">Another headline</h2> + <p class="lead">And an even wittier subheading.</p> + </div> + <div class="bg-white shadow-sm mx-auto" style="width: 80%; height: 300px; border-radius: 21px 21px 0 0;"></div> + </div> + <div class="bg-light mr-md-3 pt-3 px-3 pt-md-5 px-md-5 text-center overflow-hidden"> + <div class="my-3 py-3"> + <h2 class="display-5">Another headline</h2> + <p class="lead">And an even wittier subheading.</p> + </div> + <div class="bg-white shadow-sm mx-auto" style="width: 80%; height: 300px; border-radius: 21px 21px 0 0;"></div> + </div> +</div> + +<footer class="container py-5"> + <div class="row"> + <div class="col-12 col-md"> + <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" class="d-block mb-2" role="img" viewBox="0 0 24 24" focusable="false"><title>Product</title><circle cx="12" cy="12" r="10"/><path d="M14.31 8l5.74 9.94M9.69 8h11.48M7.38 12l5.74-9.94M9.69 16L3.95 6.06M14.31 16H2.83m13.79-4l-5.74 9.94"/></svg> + <small class="d-block mb-3 text-muted">© 2017-2019</small> + </div> + <div class="col-6 col-md"> + <h5>Features</h5> + <ul class="list-unstyled text-small"> + <li><a class="text-muted" href="#">Cool stuff</a></li> + <li><a class="text-muted" href="#">Random feature</a></li> + <li><a class="text-muted" href="#">Team feature</a></li> + <li><a class="text-muted" href="#">Stuff for developers</a></li> + <li><a class="text-muted" href="#">Another one</a></li> + <li><a class="text-muted" href="#">Last time</a></li> + </ul> + </div> + <div class="col-6 col-md"> + <h5>Resources</h5> + <ul class="list-unstyled text-small"> + <li><a class="text-muted" href="#">Resource</a></li> + <li><a class="text-muted" href="#">Resource name</a></li> + <li><a class="text-muted" href="#">Another resource</a></li> + <li><a class="text-muted" href="#">Final resource</a></li> + </ul> + </div> + <div class="col-6 col-md"> + <h5>Resources</h5> + <ul class="list-unstyled text-small"> + <li><a class="text-muted" href="#">Business</a></li> + <li><a class="text-muted" href="#">Education</a></li> + <li><a class="text-muted" href="#">Government</a></li> + <li><a class="text-muted" href="#">Gaming</a></li> + </ul> + </div> + <div class="col-6 col-md"> + <h5>About</h5> + <ul class="list-unstyled text-small"> + <li><a class="text-muted" href="#">Team</a></li> + <li><a class="text-muted" href="#">Locations</a></li> + <li><a class="text-muted" href="#">Privacy</a></li> + <li><a class="text-muted" href="#">Terms</a></li> + </ul> + </div> + </div> +</footer> +<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> + <script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script></body> +</html> diff --git a/docs/4.3/examples/product/product.css b/docs/4.3/examples/product/product.css new file mode 100644 index 0000000000..4db2864fc5 --- /dev/null +++ b/docs/4.3/examples/product/product.css @@ -0,0 +1,74 @@ +.container { + max-width: 960px; +} + +/* + * Custom translucent site header + */ + +.site-header { + background-color: rgba(0, 0, 0, .85); + -webkit-backdrop-filter: saturate(180%) blur(20px); + backdrop-filter: saturate(180%) blur(20px); +} +.site-header a { + color: #999; + transition: ease-in-out color .15s; +} +.site-header a:hover { + color: #fff; + text-decoration: none; +} + +/* + * Dummy devices (replace them with your own or something else entirely!) + */ + +.product-device { + position: absolute; + right: 10%; + bottom: -30%; + width: 300px; + height: 540px; + background-color: #333; + border-radius: 21px; + -webkit-transform: rotate(30deg); + transform: rotate(30deg); +} + +.product-device::before { + position: absolute; + top: 10%; + right: 10px; + bottom: 10%; + left: 10px; + content: ""; + background-color: rgba(255, 255, 255, .1); + border-radius: 5px; +} + +.product-device-2 { + top: -25%; + right: auto; + bottom: 0; + left: 5%; + background-color: #e5e5e5; +} + + +/* + * Extra utilities + */ + +.flex-equal > * { + -ms-flex: 1; + flex: 1; +} +@media (min-width: 768px) { + .flex-md-equal > * { + -ms-flex: 1; + flex: 1; + } +} + +.overflow-hidden { overflow: hidden; } diff --git a/docs/4.3/examples/sign-in/index.html b/docs/4.3/examples/sign-in/index.html new file mode 100644 index 0000000000..8a16b88905 --- /dev/null +++ b/docs/4.3/examples/sign-in/index.html @@ -0,0 +1,53 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Signin Template · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/sign-in/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="signin.css" rel="stylesheet"> + </head> + <body class="text-center"> + <form class="form-signin"> + <img class="mb-4" src="/docs/4.3/assets/brand/bootstrap-solid.svg" alt="" width="72" height="72"> + <h1 class="h3 mb-3 font-weight-normal">Please sign in</h1> + <label for="inputEmail" class="sr-only">Email address</label> + <input type="email" id="inputEmail" class="form-control" placeholder="Email address" required autofocus> + <label for="inputPassword" class="sr-only">Password</label> + <input type="password" id="inputPassword" class="form-control" placeholder="Password" required> + <div class="checkbox mb-3"> + <label> + <input type="checkbox" value="remember-me"> Remember me + </label> + </div> + <button class="btn btn-lg btn-primary btn-block" type="submit">Sign in</button> + <p class="mt-5 mb-3 text-muted">© 2017-2019</p> +</form> +</body> +</html> diff --git a/docs/4.3/examples/sign-in/signin.css b/docs/4.3/examples/sign-in/signin.css new file mode 100644 index 0000000000..90cc93e5b9 --- /dev/null +++ b/docs/4.3/examples/sign-in/signin.css @@ -0,0 +1,44 @@ +html, +body { + height: 100%; +} + +body { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + padding-top: 40px; + padding-bottom: 40px; + background-color: #f5f5f5; +} + +.form-signin { + width: 100%; + max-width: 330px; + padding: 15px; + margin: auto; +} +.form-signin .checkbox { + font-weight: 400; +} +.form-signin .form-control { + position: relative; + box-sizing: border-box; + height: auto; + padding: 10px; + font-size: 16px; +} +.form-signin .form-control:focus { + z-index: 2; +} +.form-signin input[type="email"] { + margin-bottom: -1px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.form-signin input[type="password"] { + margin-bottom: 10px; + border-top-left-radius: 0; + border-top-right-radius: 0; +} diff --git a/docs/4.3/examples/starter-template/index.html b/docs/4.3/examples/starter-template/index.html new file mode 100644 index 0000000000..d33df25be0 --- /dev/null +++ b/docs/4.3/examples/starter-template/index.html @@ -0,0 +1,80 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Starter Template · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/starter-template/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="starter-template.css" rel="stylesheet"> + </head> + <body> + <nav class="navbar navbar-expand-md navbar-dark bg-dark fixed-top"> + <a class="navbar-brand" href="#">Navbar</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExampleDefault" aria-controls="navbarsExampleDefault" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="collapse navbar-collapse" id="navbarsExampleDefault"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="#" id="dropdown01" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown</a> + <div class="dropdown-menu" aria-labelledby="dropdown01"> + <a class="dropdown-item" href="#">Action</a> + <a class="dropdown-item" href="#">Another action</a> + <a class="dropdown-item" href="#">Something else here</a> + </div> + </li> + </ul> + <form class="form-inline my-2 my-lg-0"> + <input class="form-control mr-sm-2" type="text" placeholder="Search" aria-label="Search"> + <button class="btn btn-secondary my-2 my-sm-0" type="submit">Search</button> + </form> + </div> +</nav> + +<main role="main" class="container"> + + <div class="starter-template"> + <h1>Bootstrap starter template</h1> + <p class="lead">Use this document as a way to quickly start any new project.<br> All you get is this text and a mostly barebones HTML document.</p> + </div> + +</main><!-- /.container --> +<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> + <script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script></body> +</html> diff --git a/docs/4.3/examples/starter-template/starter-template.css b/docs/4.3/examples/starter-template/starter-template.css new file mode 100644 index 0000000000..5f64cd294e --- /dev/null +++ b/docs/4.3/examples/starter-template/starter-template.css @@ -0,0 +1,7 @@ +body { + padding-top: 5rem; +} +.starter-template { + padding: 3rem 1.5rem; + text-align: center; +} diff --git a/docs/4.3/examples/sticky-footer-navbar/index.html b/docs/4.3/examples/sticky-footer-navbar/index.html new file mode 100644 index 0000000000..2cf2dedf69 --- /dev/null +++ b/docs/4.3/examples/sticky-footer-navbar/index.html @@ -0,0 +1,80 @@ +<!doctype html> +<html lang="en" class="h-100"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Sticky Footer Navbar Template · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/sticky-footer-navbar/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="sticky-footer-navbar.css" rel="stylesheet"> + </head> + <body class="d-flex flex-column h-100"> + <header> + <!-- Fixed navbar --> + <nav class="navbar navbar-expand-md navbar-dark fixed-top bg-dark"> + <a class="navbar-brand" href="#">Fixed navbar</a> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + <div class="collapse navbar-collapse" id="navbarCollapse"> + <ul class="navbar-nav mr-auto"> + <li class="nav-item active"> + <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#">Link</a> + </li> + <li class="nav-item"> + <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> + </li> + </ul> + <form class="form-inline mt-2 mt-md-0"> + <input class="form-control mr-sm-2" type="text" placeholder="Search" aria-label="Search"> + <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button> + </form> + </div> + </nav> +</header> + +<!-- Begin page content --> +<main role="main" class="flex-shrink-0"> + <div class="container"> + <h1 class="mt-5">Sticky footer with fixed navbar</h1> + <p class="lead">Pin a footer to the bottom of the viewport in desktop browsers with this custom HTML and CSS. A fixed navbar has been added with <code>padding-top: 60px;</code> on the <code>main > .container</code>.</p> + <p>Back to <a href="/docs/4.3/examples/sticky-footer/">the default sticky footer</a> minus the navbar.</p> + </div> +</main> + +<footer class="footer mt-auto py-3"> + <div class="container"> + <span class="text-muted">Place sticky footer content here.</span> + </div> +</footer> +<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> + <script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script></body> +</html> diff --git a/docs/4.3/examples/sticky-footer-navbar/sticky-footer-navbar.css b/docs/4.3/examples/sticky-footer-navbar/sticky-footer-navbar.css new file mode 100644 index 0000000000..b4696dab6e --- /dev/null +++ b/docs/4.3/examples/sticky-footer-navbar/sticky-footer-navbar.css @@ -0,0 +1,20 @@ +/* Custom page CSS +-------------------------------------------------- */ +/* Not required for template or sticky footer method. */ + +main > .container { + padding: 60px 15px 0; +} + +.footer { + background-color: #f5f5f5; +} + +.footer > .container { + padding-right: 15px; + padding-left: 15px; +} + +code { + font-size: 80%; +} diff --git a/docs/4.3/examples/sticky-footer/index.html b/docs/4.3/examples/sticky-footer/index.html new file mode 100644 index 0000000000..1094d19eb0 --- /dev/null +++ b/docs/4.3/examples/sticky-footer/index.html @@ -0,0 +1,52 @@ +<!doctype html> +<html lang="en" class="h-100"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> + <meta name="generator" content="Jekyll v3.8.5"> + <title>Sticky Footer Template · Bootstrap</title> + + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/sticky-footer/"> + + <!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> + + + <style> + .bd-placeholder-img { + font-size: 1.125rem; + text-anchor: middle; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + } + + @media (min-width: 768px) { + .bd-placeholder-img-lg { + font-size: 3.5rem; + } + } + </style> + <!-- Custom styles for this template --> + <link href="sticky-footer.css" rel="stylesheet"> + </head> + <body class="d-flex flex-column h-100"> + <!-- Begin page content --> +<main role="main" class="flex-shrink-0"> + <div class="container"> + <h1 class="mt-5">Sticky footer</h1> + <p class="lead">Pin a footer to the bottom of the viewport in desktop browsers with this custom HTML and CSS.</p> + <p>Use <a href="/docs/4.3/examples/sticky-footer-navbar/">the sticky footer with a fixed navbar</a> if need be, too.</p> + </div> +</main> + +<footer class="footer mt-auto py-3"> + <div class="container"> + <span class="text-muted">Place sticky footer content here.</span> + </div> +</footer> +</body> +</html> diff --git a/docs/4.3/examples/sticky-footer/sticky-footer.css b/docs/4.3/examples/sticky-footer/sticky-footer.css new file mode 100644 index 0000000000..7e85cdd2aa --- /dev/null +++ b/docs/4.3/examples/sticky-footer/sticky-footer.css @@ -0,0 +1,13 @@ +/* Custom page CSS +-------------------------------------------------- */ +/* Not required for template or sticky footer method. */ + +.container { + width: auto; + max-width: 680px; + padding: 0 15px; +} + +.footer { + background-color: #f5f5f5; +} diff --git a/docs/4.3/extend/approach/index.html b/docs/4.3/extend/approach/index.html new file mode 100644 index 0000000000..61c1b552f9 --- /dev/null +++ b/docs/4.3/extend/approach/index.html @@ -0,0 +1,553 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Learn about the guiding principles, strategies, and techniques used to build and maintain Bootstrap so you can more easily customize and extend it yourself."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Approach · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/extend/approach/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Approach"> +<meta name="twitter:description" content="Learn about the guiding principles, strategies, and techniques used to build and maintain Bootstrap so you can more easily customize and extend it yourself."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/extend/approach/"> +<meta property="og:title" content="Approach"> +<meta property="og:description" content="Learn about the guiding principles, strategies, and techniques used to build and maintain Bootstrap so you can more easily customize and extend it yourself."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li class="active bd-sidenav-active"> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Approach</h1> + <p class="bd-lead">Learn about the guiding principles, strategies, and techniques used to build and maintain Bootstrap so you can more easily customize and extend it yourself.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>While the getting started pages provide an introductory tour of the project and what it offers, this document focuses on <em>why</em> we do the things we do in Bootstrap. It explains our philosophy to building on the web so that others can learn from us, contribute with us, and help us improve.</p> + +<p>See something that doesn’t sound right, or perhaps could be done better? <a href="https://github.com/twbs/bootstrap/issues/new">Open an issue</a>—we’d love to discuss it with you.</p> + +<h2 id="summary">Summary</h2> + +<p>We’ll dive into each of these more throughout, but at a high level, here’s what guides our approach.</p> + +<ul> + <li>Components should be responsive and mobile-first</li> + <li>Components should be built with a base class and extended via modifier classes</li> + <li>Component states should obey a common z-index scale</li> + <li>Whenever possible, prefer a HTML and CSS implementation over JavaScript</li> + <li>Whenever possible, use utilities over custom styles</li> + <li>Whenever possible, avoid enforcing strict HTML requirements (children selectors)</li> +</ul> + +<h2 id="responsive">Responsive</h2> + +<p>Bootstrap’s responsive styles are built to be responsive, an approach that’s often referred to as <em>mobile-first</em>. We use this term in our docs and largely agree with it, but at times it can be too broad. While not every component <em>must</em> be entirely responsive in Bootstrap, this responsive approach is about reducing CSS overrides by pushing you to add styles as the viewport becomes larger.</p> + +<p>Across Bootstrap, you’ll see this most clearly in our media queries. In most cases, we use <code class="highlighter-rouge">min-width</code> queries that begin to apply at a specific breakpoint and carry up through the higher breakpoints. For example, a <code class="highlighter-rouge">.d-none</code> applies from <code class="highlighter-rouge">min-width: 0</code> to infinity. On the other hand, a <code class="highlighter-rouge">.d-md-none</code> applies from the medium breakpoint and up.</p> + +<p>At times we’ll use <code class="highlighter-rouge">max-width</code> when a component’s inherent complexity requires it. At times, these overrides are functionally and mentally clearer to implement and support than rewriting core functionality from our components. We strive to limit this approach, but will use it from time to time.</p> + +<h2 id="classes">Classes</h2> + +<p>Aside from our Reboot, a cross-browser normalization stylesheet, all our styles aim to use classes as selectors. This means steering clear of type selectors (e.g., <code class="highlighter-rouge">input[type="text"]</code>) and extraneous parent classes (e.g., <code class="highlighter-rouge">.parent .child</code>) that make styles too specific to easily override.</p> + +<p>As such, components should be built with a base class that houses common, not-to-be overridden property-value pairs. For example, <code class="highlighter-rouge">.btn</code> and <code class="highlighter-rouge">.btn-primary</code>. We use <code class="highlighter-rouge">.btn</code> for all the common styles like <code class="highlighter-rouge">display</code>, <code class="highlighter-rouge">padding</code>, and <code class="highlighter-rouge">border-width</code>. We then use modifiers like <code class="highlighter-rouge">.btn-primary</code> to add the color, background-color, border-color, etc.</p> + +<p>Modifier classes should only be used when there are multiple properties or values to be changed across multiple variants. Modifiers are not always necessary, so be sure you’re actually saving lines of code and preventing unnecessary overrides when creating them. Good examples of modifiers are our theme color classes and size variants.</p> + +<h2 id="z-index-scales">z-index scales</h2> + +<p>There are two <code class="highlighter-rouge">z-index</code> scales in Bootstrap—elements within a component and overlay components.</p> + +<h3 id="component-elements">Component elements</h3> + +<ul> + <li>Some components in Bootstrap are built with overlapping elements to prevent double borders without modifying the <code class="highlighter-rouge">border</code> property. For example, button groups, input groups, and pagination.</li> + <li>These components share a standard <code class="highlighter-rouge">z-index</code> scale of <code class="highlighter-rouge">0</code> through <code class="highlighter-rouge">3</code>.</li> + <li><code class="highlighter-rouge">0</code> is default (initial), <code class="highlighter-rouge">1</code> is <code class="highlighter-rouge">:hover</code>, <code class="highlighter-rouge">2</code> is <code class="highlighter-rouge">:active</code>/<code class="highlighter-rouge">.active</code>, and <code class="highlighter-rouge">3</code> is <code class="highlighter-rouge">:focus</code>.</li> + <li>This approach matches our expectations of highest user priority. If an element is focused, it’s in view and at the user’s attention. Active elements are second highest because they indicate state. Hover is third highest because it indicates user intent, but nearly <em>anything</em> can be hovered.</li> +</ul> + +<h3 id="overlay-components">Overlay components</h3> + +<p>Bootstrap includes several components that function as an overlay of some kind. This includes, in order of highest <code class="highlighter-rouge">z-index</code>, dropdowns, fixed and sticky navbars, modals, tooltips, and popovers. These components have their own <code class="highlighter-rouge">z-index</code> scale that begins at <code class="highlighter-rouge">1000</code>. This starting number is random and serves as a small buffer between our styles and your project’s custom styles.</p> + +<p>Each overlay component increases it’s <code class="highlighter-rouge">z-index</code> value slightly in such a way that common UI principles allow user focused or hovered elements to remain in view at all times. For example, a modal is document blocking (e.g., you cannot take any other action save for the modal’s action), so we put that above our navbars.</p> + +<p>Learn more about this in our <a href="/docs/4.3/layout/overview/#z-index"><code class="highlighter-rouge">z-index</code> layout page</a>.</p> + +<h2 id="html-and-css-over-js">HTML and CSS over JS</h2> + +<p>Whenever possible, we prefer to write HTML and CSS over JavaScript. In general, HTML and CSS are more prolific and accessible to more people of all different experience levels. HTML and CSS are also faster in your browser than JavaScript, and your browser generally provides a great deal of functionality for you.</p> + +<p>This principle is our first-class JavaScript API is <code class="highlighter-rouge">data</code> attributes. You don’t need to write nearly any JavaScript to use our JavaScript plugins; instead, write HTML. Read more about this in <a href="/docs/4.3/getting-started/javascript/#data-attributes">our JavaScript overview page</a>.</p> + +<p>Lastly, our styles build on the fundamental behaviors of common web elements. Whenever possible, we prefer to use what the browser provides. For example, you can put a <code class="highlighter-rouge">.btn</code> class on nearly any element, but most elements don’t provide any semantic value or browser functionality. So instead, we use <code class="highlighter-rouge"><button></code>s and <code class="highlighter-rouge"><a></code>s.</p> + +<p>The same goes for more complex components. While we <em>could</em> write our own form validation plugin to add classes to a parent element based on an input’s state, thereby allowing us to style the text say red, we prefer using the <code class="highlighter-rouge">:valid</code>/<code class="highlighter-rouge">:invalid</code> pseudo-elements every browser provides us.</p> + +<h2 id="utilities">Utilities</h2> + +<p>Utility classes—formerly helpers in Bootstrap 3—are a powerful ally in combatting CSS bloat and poor page performance. A utility class is typically a single, immutable property-value pairing expressed as a class (e.g., <code class="highlighter-rouge">.d-block</code> represents <code class="highlighter-rouge">display: block;</code>). Their primary appeal is speed of use while writing HTML and limiting the amount of custom CSS you have to write.</p> + +<p>Specifically regarding custom CSS, utilities can help combat increasing file size by reducing your most commonly repeated property-value pairs into single classes. This can have a dramatic effect at scale in your projects.</p> + +<h2 id="flexible-html">Flexible HTML</h2> + +<p>While not always possible, we strive to avoid being overly dogmatic in our HTML requirements for components. Thus, we focus on single classes in our CSS selectors and try to avoid immediate children selectors (<code class="highlighter-rouge">></code>). This gives you more flexibility in your implementation and helps keep our CSS simpler and less specific.</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/extend/icons/index.html b/docs/4.3/extend/icons/index.html new file mode 100644 index 0000000000..52481f1734 --- /dev/null +++ b/docs/4.3/extend/icons/index.html @@ -0,0 +1,506 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Guidance and suggestions for using external icon libraries with Bootstrap."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Icons · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/extend/icons/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Icons"> +<meta name="twitter:description" content="Guidance and suggestions for using external icon libraries with Bootstrap."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/extend/icons/"> +<meta property="og:title" content="Icons"> +<meta property="og:description" content="Guidance and suggestions for using external icon libraries with Bootstrap."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Icons</h1> + <p class="bd-lead">Guidance and suggestions for using external icon libraries with Bootstrap.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>Bootstrap doesn’t include an icon library by default, but we have a handful of recommendations for you to choose from. While most icon sets include multiple file formats, we prefer SVG implementations for their improved accessibility and vector support.</p> + +<h2 id="preferred">Preferred</h2> + +<p>We’ve tested and used these icon sets ourselves.</p> + +<ul> + <li><a href="https://fontawesome.com/">Font Awesome</a></li> + <li><a href="https://github.com/iconic/open-iconic">Iconic</a></li> + <li><a href="https://octicons.github.com/">Octicons</a></li> +</ul> + +<h2 id="more-options">More options</h2> + +<p>While we haven’t tried these out, they do look promising and provide multiple formats—including SVG.</p> + +<ul> + <li><a href="https://github.com/danklammer/bytesize-icons">Bytesize</a></li> + <li><a href="https://material.io/tools/icons/">Google Material icons</a></li> + <li><a href="https://ionicons.com/">Ionicons</a></li> + <li><a href="https://feathericons.com/">Feather</a></li> + <li><a href="http://demo.amitjakhu.com/dripicons/">Dripicons</a></li> + <li><a href="http://ikons.piotrkwiatkowski.co.uk/">Ikons</a></li> + <li><a href="https://glyph.smarticons.co/">Glyph</a></li> + <li><a href="https://icons8.com/">Icons8</a></li> +</ul> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/extend/index.html b/docs/4.3/extend/index.html new file mode 100644 index 0000000000..851e8659d8 --- /dev/null +++ b/docs/4.3/extend/index.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<html lang="en-US"> + <meta charset="utf-8"> + <title>Redirecting…</title> + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/extend/approach/"> + <script>location="https://getbootstrap.com/docs/4.3/extend/approach/"</script> + <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.3/extend/approach/"> + <meta name="robots" content="noindex"> + <h1>Redirecting…</h1> + <a href="https://getbootstrap.com/docs/4.3/extend/approach/">Click here if you are not redirected.</a> +</html> diff --git a/docs/4.3/getting-started/accessibility/index.html b/docs/4.3/getting-started/accessibility/index.html new file mode 100644 index 0000000000..6c10ba8032 --- /dev/null +++ b/docs/4.3/getting-started/accessibility/index.html @@ -0,0 +1,542 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="A brief overview of Bootstrap’s features and limitations for the creation of accessible content."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Accessibility · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/getting-started/accessibility/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Accessibility"> +<meta name="twitter:description" content="A brief overview of Bootstrap’s features and limitations for the creation of accessible content."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/getting-started/accessibility/"> +<meta property="og:title" content="Accessibility"> +<meta property="og:description" content="A brief overview of Bootstrap’s features and limitations for the creation of accessible content."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#overview-and-limitations">Overview and Limitations</a> +<ul> +<li class="toc-entry toc-h3"><a href="#structural-markup">Structural markup</a></li> +<li class="toc-entry toc-h3"><a href="#interactive-components">Interactive components</a></li> +<li class="toc-entry toc-h3"><a href="#color-contrast">Color contrast</a></li> +<li class="toc-entry toc-h3"><a href="#visually-hidden-content">Visually hidden content</a></li> +<li class="toc-entry toc-h3"><a href="#reduced-motion">Reduced motion</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#additional-resources">Additional resources</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Accessibility</h1> + <p class="bd-lead">A brief overview of Bootstrap’s features and limitations for the creation of accessible content.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>Bootstrap provides an easy-to-use framework of ready-made styles, layout tools, and interactive components, allowing developers to create websites and applications that are visually appealing, functionally rich, and accessible out of the box.</p> + +<h2 id="overview-and-limitations">Overview and Limitations</h2> + +<p>The overall accessibility of any project built with Bootstrap depends in large part on the author’s markup, additional styling, and scripting they’ve included. However, provided that these have been implemented correctly, it should be perfectly possible to create websites and applications with Bootstrap that fulfill <a href="https://www.w3.org/TR/WCAG20/"><abbr title="Web Content Accessibility Guidelines">WCAG</abbr> 2.0</a> (A/AA/AAA), <a href="https://www.section508.gov/">Section 508</a> and similar accessibility standards and requirements.</p> + +<h3 id="structural-markup">Structural markup</h3> + +<p>Bootstrap’s styling and layout can be applied to a wide range of markup structures. This documentation aims to provide developers with best practice examples to demonstrate the use of Bootstrap itself and illustrate appropriate semantic markup, including ways in which potential accessibility concerns can be addressed.</p> + +<h3 id="interactive-components">Interactive components</h3> + +<p>Bootstrap’s interactive components—such as modal dialogs, dropdown menus and custom tooltips—are designed to work for touch, mouse and keyboard users. Through the use of relevant <a href="https://www.w3.org/WAI/standards-guidelines/aria/"><abbr title="Web Accessibility Initiative">WAI</abbr>-<abbr title="Accessible Rich Internet Applications">ARIA</abbr></a> roles and attributes, these components should also be understandable and operable using assistive technologies (such as screen readers).</p> + +<p>Because Bootstrap’s components are purposely designed to be fairly generic, authors may need to include further <abbr title="Accessible Rich Internet Applications">ARIA</abbr> roles and attributes, as well as JavaScript behavior, to more accurately convey the precise nature and functionality of their component. This is usually noted in the documentation.</p> + +<h3 id="color-contrast">Color contrast</h3> + +<p>Most colors that currently make up Bootstrap’s default palette—used throughout the framework for things such as button variations, alert variations, form validation indicators—lead to <em>insufficient</em> color contrast (below the recommended <a href="https://www.w3.org/TR/UNDERSTANDING-WCAG20/visual-audio-contrast-contrast.html">WCAG 2.0 color contrast ratio of 4.5:1</a>) when used against a light background. Authors will need to manually modify/extend these default colors to ensure adequate color contrast ratios.</p> + +<h3 id="visually-hidden-content">Visually hidden content</h3> + +<p>Content which should be visually hidden, but remain accessible to assistive technologies such as screen readers, can be styled using the <code class="highlighter-rouge">.sr-only</code> class. This can be useful in situations where additional visual information or cues (such as meaning denoted through the use of color) need to also be conveyed to non-visual users.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-danger"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">class=</span><span class="s">"sr-only"</span><span class="nt">></span>Danger: <span class="nt"></span></span> + This action is not reversible +<span class="nt"></p></span></code></pre></figure> + +<p>For visually hidden interactive controls, such as traditional “skip†links, <code class="highlighter-rouge">.sr-only</code> can be combined with the <code class="highlighter-rouge">.sr-only-focusable</code> class. This will ensure that the control becomes visible once focused (for sighted keyboard users).</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><a</span> <span class="na">class=</span><span class="s">"sr-only sr-only-focusable"</span> <span class="na">href=</span><span class="s">"#content"</span><span class="nt">></span>Skip to main content<span class="nt"></a></span></code></pre></figure> + +<h3 id="reduced-motion">Reduced motion</h3> + +<p>Bootstrap includes support for the <a href="https://drafts.csswg.org/mediaqueries-5/#prefers-reduced-motion"><code class="highlighter-rouge">prefers-reduced-motion</code> media feature</a>. In browsers/environments that allow the user to specify their preference for reduced motion, most CSS transition effects in Bootstrap (for instance, when a modal dialog is opened or closed, or the sliding animation in carousels) will be disabled.</p> + +<h2 id="additional-resources">Additional resources</h2> + +<ul> + <li><a href="https://www.w3.org/TR/WCAG20/">Web Content Accessibility Guidelines (WCAG) 2.0</a></li> + <li><a href="https://a11yproject.com/">The A11Y Project</a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/Accessibility">MDN accessibility documentation</a></li> + <li><a href="https://tenon.io/">Tenon.io Accessibility Checker</a></li> + <li><a href="https://developer.paciellogroup.com/resources/contrastanalyser/">Colour Contrast Analyser (CCA)</a></li> + <li><a href="https://github.com/squizlabs/HTML_CodeSniffer">“HTML Codesniffer†bookmarklet for identifying accessibility issues</a></li> +</ul> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/getting-started/best-practices/index.html b/docs/4.3/getting-started/best-practices/index.html new file mode 100644 index 0000000000..c4238e61b8 --- /dev/null +++ b/docs/4.3/getting-started/best-practices/index.html @@ -0,0 +1,495 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Learn about some of the best practices we’ve gathered from years of working on and using Bootstrap."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Best practices · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/getting-started/best-practices/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Best practices"> +<meta name="twitter:description" content="Learn about some of the best practices we’ve gathered from years of working on and using Bootstrap."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/getting-started/best-practices/"> +<meta property="og:title" content="Best practices"> +<meta property="og:description" content="Learn about some of the best practices we’ve gathered from years of working on and using Bootstrap."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Best practices</h1> + <p class="bd-lead">Learn about some of the best practices we’ve gathered from years of working on and using Bootstrap.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>We’ve designed and developed Bootstrap to work in a number of environments. Here are some of the best practices we’ve gathered from years of working on and using it ourselves.</p> + +<div class="bd-callout bd-callout-info"> +<p><strong>Heads up!</strong> This copy is a work in progress.</p> +</div> + +<h3 id="general-outline">General outline</h3> + +<ul> + <li>Working with CSS</li> + <li>Working with Sass files</li> + <li>Building new CSS components</li> + <li>Working with flexbox</li> + <li>Ask in <a href="https://bootstrap-slack.herokuapp.com/">Slack</a></li> +</ul> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/getting-started/browsers-devices/index.html b/docs/4.3/getting-started/browsers-devices/index.html new file mode 100644 index 0000000000..3de4a71300 --- /dev/null +++ b/docs/4.3/getting-started/browsers-devices/index.html @@ -0,0 +1,687 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Learn about the browsers and devices, from modern to old, that are supported by Bootstrap, including known quirks and bugs for each."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Browsers and devices · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/getting-started/browsers-devices/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Browsers and devices"> +<meta name="twitter:description" content="Learn about the browsers and devices, from modern to old, that are supported by Bootstrap, including known quirks and bugs for each."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/getting-started/browsers-devices/"> +<meta property="og:title" content="Browsers and devices"> +<meta property="og:description" content="Learn about the browsers and devices, from modern to old, that are supported by Bootstrap, including known quirks and bugs for each."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#supported-browsers">Supported browsers</a> +<ul> +<li class="toc-entry toc-h3"><a href="#mobile-devices">Mobile devices</a></li> +<li class="toc-entry toc-h3"><a href="#desktop-browsers">Desktop browsers</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#internet-explorer">Internet Explorer</a></li> +<li class="toc-entry toc-h2"><a href="#modals-and-dropdowns-on-mobile">Modals and dropdowns on mobile</a> +<ul> +<li class="toc-entry toc-h3"><a href="#overflow-and-scrolling">Overflow and scrolling</a></li> +<li class="toc-entry toc-h3"><a href="#ios-text-fields-and-scrolling">iOS text fields and scrolling</a></li> +<li class="toc-entry toc-h3"><a href="#navbar-dropdowns">Navbar Dropdowns</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#browser-zooming">Browser zooming</a></li> +<li class="toc-entry toc-h2"><a href="#sticky-hoverfocus-on-ios">Sticky :hover/:focus on iOS</a></li> +<li class="toc-entry toc-h2"><a href="#printing">Printing</a></li> +<li class="toc-entry toc-h2"><a href="#android-stock-browser">Android stock browser</a> +<ul> +<li class="toc-entry toc-h4"><a href="#select-menu">Select menu</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#validators">Validators</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Browsers and devices</h1> + <p class="bd-lead">Learn about the browsers and devices, from modern to old, that are supported by Bootstrap, including known quirks and bugs for each.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="supported-browsers">Supported browsers</h2> + +<p>Bootstrap supports the <strong>latest, stable releases</strong> of all major browsers and platforms. On Windows, <strong>we support Internet Explorer 10-11 / Microsoft Edge</strong>.</p> + +<p>Alternative browsers which use the latest version of WebKit, Blink, or Gecko, whether directly or via the platform’s web view API, are not explicitly supported. However, Bootstrap should (in most cases) display and function correctly in these browsers as well. More specific support information is provided below.</p> + +<p>You can find our supported range of browsers and their versions <a href="https://github.com/twbs/bootstrap/blob/v4.3.0/.browserslistrc">in our <code class="highlighter-rouge">.browserslistrc file</code></a>:</p> + +<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code># https://github.com/browserslist/browserslist#readme + +>= 1% +last 1 major version +not dead +Chrome >= 45 +Firefox >= 38 +Edge >= 12 +Explorer >= 10 +iOS >= 9 +Safari >= 9 +Android >= 4.4 +Opera >= 30 +</code></pre></div></div> + +<p>We use <a href="https://github.com/postcss/autoprefixer">Autoprefixer</a> to handle intended browser support via CSS prefixes, which uses <a href="https://github.com/browserslist/browserslist">Browserslist</a> to manage these browser versions. Consult their documentation for how to integrate these tools into your projects.</p> + +<h3 id="mobile-devices">Mobile devices</h3> + +<p>Generally speaking, Bootstrap supports the latest versions of each major platform’s default browsers. Note that proxy browsers (such as Opera Mini, Opera Mobile’s Turbo mode, UC Browser Mini, Amazon Silk) are not supported.</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <td></td> + <th>Chrome</th> + <th>Firefox</th> + <th>Safari</th> + <th>Android Browser & WebView</th> + <th>Microsoft Edge</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">Android</th> + <td class="text-success">Supported</td> + <td class="text-success">Supported</td> + <td class="text-muted">N/A</td> + <td class="text-success">Android v5.0+ supported</td> + <td class="text-success">Supported</td> + </tr> + <tr> + <th scope="row">iOS</th> + <td class="text-success">Supported</td> + <td class="text-success">Supported</td> + <td class="text-success">Supported</td> + <td class="text-muted">N/A</td> + <td class="text-success">Supported</td> + </tr> + <tr> + <th scope="row">Windows 10 Mobile</th> + <td class="text-muted">N/A</td> + <td class="text-muted">N/A</td> + <td class="text-muted">N/A</td> + <td class="text-muted">N/A</td> + <td class="text-success">Supported</td> + </tr> + </tbody> +</table> + +<h3 id="desktop-browsers">Desktop browsers</h3> + +<p>Similarly, the latest versions of most desktop browsers are supported.</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <td></td> + <th>Chrome</th> + <th>Firefox</th> + <th>Internet Explorer</th> + <th>Microsoft Edge</th> + <th>Opera</th> + <th>Safari</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row">Mac</th> + <td class="text-success">Supported</td> + <td class="text-success">Supported</td> + <td class="text-muted">N/A</td> + <td class="text-muted">N/A</td> + <td class="text-success">Supported</td> + <td class="text-success">Supported</td> + </tr> + <tr> + <th scope="row">Windows</th> + <td class="text-success">Supported</td> + <td class="text-success">Supported</td> + <td class="text-success">Supported, IE10+</td> + <td class="text-success">Supported</td> + <td class="text-success">Supported</td> + <td class="text-danger">Not supported</td> + </tr> + </tbody> +</table> + +<p>For Firefox, in addition to the latest normal stable release, we also support the latest <a href="https://www.mozilla.org/en-US/firefox/organizations/#faq">Extended Support Release (ESR)</a> version of Firefox.</p> + +<p>Unofficially, Bootstrap should look and behave well enough in Chromium and Chrome for Linux, Firefox for Linux, and Internet Explorer 9, though they are not officially supported.</p> + +<p>For a list of some of the browser bugs that Bootstrap has to grapple with, see our <a href="/docs/4.3/browser-bugs/">Wall of browser bugs</a>.</p> + +<h2 id="internet-explorer">Internet Explorer</h2> + +<p>Internet Explorer 10+ is supported; IE9 and down is not. Please be aware that some CSS3 properties and HTML5 elements are not fully supported in IE10, or require prefixed properties for full functionality. Visit <a href="https://caniuse.com/">Can I use…</a> for details on browser support of CSS3 and HTML5 features. <strong>If you require IE8-9 support, use Bootstrap 3.</strong></p> + +<h2 id="modals-and-dropdowns-on-mobile">Modals and dropdowns on mobile</h2> + +<h3 id="overflow-and-scrolling">Overflow and scrolling</h3> + +<p>Support for <code class="highlighter-rouge">overflow: hidden;</code> on the <code class="highlighter-rouge"><body></code> element is quite limited in iOS and Android. To that end, when you scroll past the top or bottom of a modal in either of those devices’ browsers, the <code class="highlighter-rouge"><body></code> content will begin to scroll. See <a href="https://bugs.chromium.org/p/chromium/issues/detail?id=175502">Chrome bug #175502</a> (fixed in Chrome v40) and <a href="https://bugs.webkit.org/show_bug.cgi?id=153852">WebKit bug #153852</a>.</p> + +<h3 id="ios-text-fields-and-scrolling">iOS text fields and scrolling</h3> + +<p>As of iOS 9.2, while a modal is open, if the initial touch of a scroll gesture is within the boundary of a textual <code class="highlighter-rouge"><input></code> or a <code class="highlighter-rouge"><textarea></code>, the <code class="highlighter-rouge"><body></code> content underneath the modal will be scrolled instead of the modal itself. See <a href="https://bugs.webkit.org/show_bug.cgi?id=153856">WebKit bug #153856</a>.</p> + +<h3 id="navbar-dropdowns">Navbar Dropdowns</h3> + +<p>The <code class="highlighter-rouge">.dropdown-backdrop</code> element isn’t used on iOS in the nav because of the complexity of z-indexing. Thus, to close dropdowns in navbars, you must directly click the dropdown element (or <a href="https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile">any other element which will fire a click event in iOS</a>).</p> + +<h2 id="browser-zooming">Browser zooming</h2> + +<p>Page zooming inevitably presents rendering artifacts in some components, both in Bootstrap and the rest of the web. Depending on the issue, we may be able to fix it (search first and then open an issue if need be). However, we tend to ignore these as they often have no direct solution other than hacky workarounds.</p> + +<h2 id="sticky-hoverfocus-on-ios">Sticky <code class="highlighter-rouge">:hover</code>/<code class="highlighter-rouge">:focus</code> on iOS</h2> + +<p>While <code class="highlighter-rouge">:hover</code> isn’t possible on most touch devices, iOS emulates this behavior, resulting in “sticky†hover styles that persist after tapping one element. These hover styles are only removed when users tap another element. This behavior is considered largely undesirable and appears to not be an issue on Android or Windows devices.</p> + +<p>Throughout our v4 alpha and beta releases, we included incomplete and commented out code for opting into a media query shim that would disable hover styles in touch device browsers that emulate hovering. This work was never fully completed or enabled, but to avoid complete breakage, we’ve opted to deprecate <a href="https://github.com/twbs/mq4-hover-shim">this shim</a> and keep the mixins as shortcuts for the pseudo-classes.</p> + +<h2 id="printing">Printing</h2> + +<p>Even in some modern browsers, printing can be quirky.</p> + +<p>As of Safari v8.0, use of the fixed-width <code class="highlighter-rouge">.container</code> class can cause Safari to use an unusually small font size when printing. See <a href="https://github.com/twbs/bootstrap/issues/14868">issue #14868</a> and <a href="https://bugs.webkit.org/show_bug.cgi?id=138192">WebKit bug #138192</a> for more details. One potential workaround is the following CSS:</p> + +<figure class="highlight"><pre><code class="language-css" data-lang="css"><span class="k">@media</span> <span class="n">print</span> <span class="p">{</span> + <span class="nc">.container</span> <span class="p">{</span> + <span class="nl">width</span><span class="p">:</span> <span class="nb">auto</span><span class="p">;</span> + <span class="p">}</span> +<span class="p">}</span></code></pre></figure> + +<h2 id="android-stock-browser">Android stock browser</h2> + +<p>Out of the box, Android 4.1 (and even some newer releases apparently) ship with the Browser app as the default web browser of choice (as opposed to Chrome). Unfortunately, the Browser app has lots of bugs and inconsistencies with CSS in general.</p> + +<h4 id="select-menu">Select menu</h4> + +<p>On <code class="highlighter-rouge"><select></code> elements, the Android stock browser will not display the side controls if there is a <code class="highlighter-rouge">border-radius</code> and/or <code class="highlighter-rouge">border</code> applied. (See <a href="https://stackoverflow.com/questions/14744437/html-select-box-not-showing-drop-down-arrow-on-android-version-4-0-when-set-with">this StackOverflow question</a> for details.) Use the snippet of code below to remove the offending CSS and render the <code class="highlighter-rouge"><select></code> as an unstyled element on the Android stock browser. The user agent sniffing avoids interference with Chrome, Safari, and Mozilla browsers.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><script></span> +<span class="nx">$</span><span class="p">(</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> + <span class="kd">var</span> <span class="nx">nua</span> <span class="o">=</span> <span class="nb">navigator</span><span class="p">.</span><span class="nx">userAgent</span> + <span class="kd">var</span> <span class="nx">isAndroid</span> <span class="o">=</span> <span class="p">(</span><span class="nx">nua</span><span class="p">.</span><span class="nx">indexOf</span><span class="p">(</span><span class="s1">'Mozilla/5.0'</span><span class="p">)</span> <span class="o">></span> <span class="o">-</span><span class="mi">1</span> <span class="o">&&</span> <span class="nx">nua</span><span class="p">.</span><span class="nx">indexOf</span><span class="p">(</span><span class="s1">'Android '</span><span class="p">)</span> <span class="o">></span> <span class="o">-</span><span class="mi">1</span> <span class="o">&&</span> <span class="nx">nua</span><span class="p">.</span><span class="nx">indexOf</span><span class="p">(</span><span class="s1">'AppleWebKit'</span><span class="p">)</span> <span class="o">></span> <span class="o">-</span><span class="mi">1</span> <span class="o">&&</span> <span class="nx">nua</span><span class="p">.</span><span class="nx">indexOf</span><span class="p">(</span><span class="s1">'Chrome'</span><span class="p">)</span> <span class="o">===</span> <span class="o">-</span><span class="mi">1</span><span class="p">)</span> + <span class="k">if</span> <span class="p">(</span><span class="nx">isAndroid</span><span class="p">)</span> <span class="p">{</span> + <span class="nx">$</span><span class="p">(</span><span class="s1">'select.form-control'</span><span class="p">).</span><span class="nx">removeClass</span><span class="p">(</span><span class="s1">'form-control'</span><span class="p">).</span><span class="nx">css</span><span class="p">(</span><span class="s1">'width'</span><span class="p">,</span> <span class="s1">'100%'</span><span class="p">)</span> + <span class="p">}</span> +<span class="p">})</span> +<span class="nt"></script></span></code></pre></figure> + +<p>Want to see an example? <a href="http://jsbin.com/OyaqoDO/2">Check out this JS Bin demo</a>.</p> + +<h2 id="validators">Validators</h2> + +<p>In order to provide the best possible experience to old and buggy browsers, Bootstrap uses <a href="http://browserhacks.com/">CSS browser hacks</a> in several places to target special CSS to certain browser versions in order to work around bugs in the browsers themselves. These hacks understandably cause CSS validators to complain that they are invalid. In a couple places, we also use bleeding-edge CSS features that aren’t yet fully standardized, but these are used purely for progressive enhancement.</p> + +<p>These validation warnings don’t matter in practice since the non-hacky portion of our CSS does fully validate and the hacky portions don’t interfere with the proper functioning of the non-hacky portion, hence why we deliberately ignore these particular warnings.</p> + +<p>Our HTML docs likewise have some trivial and inconsequential HTML validation warnings due to our inclusion of a workaround for <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=654072">a certain Firefox bug</a>.</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/getting-started/build-tools/index.html b/docs/4.3/getting-started/build-tools/index.html new file mode 100644 index 0000000000..9de2ffbd5c --- /dev/null +++ b/docs/4.3/getting-started/build-tools/index.html @@ -0,0 +1,559 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Learn how to use Bootstrap’s included npm scripts to build our documentation, compile source code, run tests, and more."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Build tools · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/getting-started/build-tools/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Build tools"> +<meta name="twitter:description" content="Learn how to use Bootstrap’s included npm scripts to build our documentation, compile source code, run tests, and more."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/getting-started/build-tools/"> +<meta property="og:title" content="Build tools"> +<meta property="og:description" content="Learn how to use Bootstrap’s included npm scripts to build our documentation, compile source code, run tests, and more."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#tooling-setup">Tooling setup</a></li> +<li class="toc-entry toc-h2"><a href="#using-npm-scripts">Using npm scripts</a></li> +<li class="toc-entry toc-h2"><a href="#autoprefixer">Autoprefixer</a></li> +<li class="toc-entry toc-h2"><a href="#local-documentation">Local documentation</a></li> +<li class="toc-entry toc-h2"><a href="#troubleshooting">Troubleshooting</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Build tools</h1> + <p class="bd-lead">Learn how to use Bootstrap’s included npm scripts to build our documentation, compile source code, run tests, and more.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="tooling-setup">Tooling setup</h2> + +<p>Bootstrap uses <a href="https://docs.npmjs.com/misc/scripts">npm scripts</a> for its build system. Our <a href="https://github.com/twbs/bootstrap/blob/v4.3.0/package.json">package.json</a> includes convenient methods for working with the framework, including compiling code, running tests, and more.</p> + +<p>To use our build system and run our documentation locally, you’ll need a copy of Bootstrap’s source files and Node. Follow these steps and you should be ready to rock:</p> + +<ol> + <li><a href="https://nodejs.org/en/download/">Download and install Node.js</a>, which we use to manage our dependencies.</li> + <li>Navigate to the root <code class="highlighter-rouge">/bootstrap</code> directory and run <code class="highlighter-rouge">npm install</code> to install our local dependencies listed in <a href="https://github.com/twbs/bootstrap/blob/v4.3.0/package.json">package.json</a>.</li> + <li><a href="https://www.ruby-lang.org/en/documentation/installation/">Install Ruby</a>, install <a href="https://bundler.io/">Bundler</a> with <code class="highlighter-rouge">gem install bundler</code>, and finally run <code class="highlighter-rouge">bundle install</code>. This will install all Ruby dependencies, such as Jekyll and plugins. + <ul> + <li><strong>Windows users:</strong> Read <a href="https://jekyllrb.com/docs/windows/">this guide</a> to get Jekyll up and running without problems.</li> + </ul> + </li> +</ol> + +<p>When completed, you’ll be able to run the various commands provided from the command line.</p> + +<h2 id="using-npm-scripts">Using npm scripts</h2> + +<p>Our <a href="https://github.com/twbs/bootstrap/blob/v4.3.0/package.json">package.json</a> includes the following commands and tasks:</p> + +<table> + <thead> + <tr> + <th>Task</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td><code class="highlighter-rouge">npm run dist</code></td> + <td><code class="highlighter-rouge">npm run dist</code> creates the <code class="highlighter-rouge">/dist/</code> directory with compiled files. <strong>Uses <a href="https://sass-lang.com/">Sass</a>, <a href="https://github.com/postcss/autoprefixer">Autoprefixer</a>, and <a href="https://github.com/mishoo/UglifyJS2">UglifyJS</a>.</strong></td> + </tr> + <tr> + <td><code class="highlighter-rouge">npm test</code></td> + <td>Same as <code class="highlighter-rouge">npm run dist</code> plus it runs tests locally</td> + </tr> + <tr> + <td><code class="highlighter-rouge">npm run docs</code></td> + <td>Builds and lints CSS and JavaScript for docs. You can then run the documentation locally via <code class="highlighter-rouge">npm run docs-serve</code>.</td> + </tr> + </tbody> +</table> + +<p>Run <code class="highlighter-rouge">npm run</code> to see all the npm scripts.</p> + +<h2 id="autoprefixer">Autoprefixer</h2> + +<p>Bootstrap uses <a href="https://github.com/postcss/autoprefixer">Autoprefixer</a> (included in our build process) to automatically add vendor prefixes to some CSS properties at build time. Doing so saves us time and code by allowing us to write key parts of our CSS a single time while eliminating the need for vendor mixins like those found in v3.</p> + +<p>We maintain the list of browsers supported through Autoprefixer in a separate file within our GitHub repository. See <a href="https://github.com/twbs/bootstrap/blob/v4.3.0/.browserslistrc">.browserslistrc</a> for details.</p> + +<h2 id="local-documentation">Local documentation</h2> + +<p>Running our documentation locally requires the use of Jekyll, a decently flexible static site generator that provides us: basic includes, Markdown-based files, templates, and more. Here’s how to get it started:</p> + +<ol> + <li>Run through the <a href="#tooling-setup">tooling setup</a> above to install Jekyll (the site builder) and other Ruby dependencies with <code class="highlighter-rouge">bundle install</code>.</li> + <li>From the root <code class="highlighter-rouge">/bootstrap</code> directory, run <code class="highlighter-rouge">npm run docs-serve</code> in the command line.</li> + <li>Open <code class="highlighter-rouge">http://localhost:9001</code> in your browser, and voilà .</li> +</ol> + +<p>Learn more about using Jekyll by reading its <a href="https://jekyllrb.com/docs/">documentation</a>.</p> + +<h2 id="troubleshooting">Troubleshooting</h2> + +<p>Should you encounter problems with installing dependencies, uninstall all previous dependency versions (global and local). Then, rerun <code class="highlighter-rouge">npm install</code>.</p> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/getting-started/contents/index.html b/docs/4.3/getting-started/contents/index.html new file mode 100644 index 0000000000..05b28fa436 --- /dev/null +++ b/docs/4.3/getting-started/contents/index.html @@ -0,0 +1,617 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Discover what’s included in Bootstrap, including our precompiled and source code flavors. Remember, Bootstrap’s JavaScript plugins require jQuery."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Contents · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/getting-started/contents/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Contents"> +<meta name="twitter:description" content="Discover what’s included in Bootstrap, including our precompiled and source code flavors. Remember, Bootstrap’s JavaScript plugins require jQuery."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/getting-started/contents/"> +<meta property="og:title" content="Contents"> +<meta property="og:description" content="Discover what’s included in Bootstrap, including our precompiled and source code flavors. Remember, Bootstrap’s JavaScript plugins require jQuery."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#precompiled-bootstrap">Precompiled Bootstrap</a></li> +<li class="toc-entry toc-h2"><a href="#css-files">CSS files</a></li> +<li class="toc-entry toc-h2"><a href="#js-files">JS files</a></li> +<li class="toc-entry toc-h2"><a href="#bootstrap-source-code">Bootstrap source code</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Contents</h1> + <p class="bd-lead">Discover what’s included in Bootstrap, including our precompiled and source code flavors. Remember, Bootstrap’s JavaScript plugins require jQuery.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="precompiled-bootstrap">Precompiled Bootstrap</h2> + +<p>Once downloaded, unzip the compressed folder and you’ll see something like this:</p> + +<!-- NOTE: This info is intentionally duplicated in the README. Copy any changes made here over to the README too, but be sure to keep in mind to add the `dist` folder. --> + +<figure class="highlight"><pre><code class="language-plaintext" data-lang="plaintext">bootstrap/ +├── css/ +│ ├── bootstrap-grid.css +│ ├── bootstrap-grid.css.map +│ ├── bootstrap-grid.min.css +│ ├── bootstrap-grid.min.css.map +│ ├── bootstrap-reboot.css +│ ├── bootstrap-reboot.css.map +│ ├── bootstrap-reboot.min.css +│ ├── bootstrap-reboot.min.css.map +│ ├── bootstrap.css +│ ├── bootstrap.css.map +│ ├── bootstrap.min.css +│ └── bootstrap.min.css.map +└── js/ + ├── bootstrap.bundle.js + ├── bootstrap.bundle.js.map + ├── bootstrap.bundle.min.js + ├── bootstrap.bundle.min.js.map + ├── bootstrap.js + ├── bootstrap.js.map + ├── bootstrap.min.js + └── bootstrap.min.js.map</code></pre></figure> + +<p>This is the most basic form of Bootstrap: precompiled files for quick drop-in usage in nearly any web project. We provide compiled CSS and JS (<code class="highlighter-rouge">bootstrap.*</code>), as well as compiled and minified CSS and JS (<code class="highlighter-rouge">bootstrap.min.*</code>). <a href="https://developers.google.com/web/tools/chrome-devtools/javascript/source-maps">source maps</a> (<code class="highlighter-rouge">bootstrap.*.map</code>) are available for use with certain browsers’ developer tools. Bundled JS files (<code class="highlighter-rouge">bootstrap.bundle.js</code> and minified <code class="highlighter-rouge">bootstrap.bundle.min.js</code>) include <a href="https://popper.js.org/">Popper</a>, but not <a href="https://jquery.com/">jQuery</a>.</p> + +<h2 id="css-files">CSS files</h2> + +<p>Bootstrap includes a handful of options for including some or all of our compiled CSS.</p> + +<table class="table table-bordered"> + <thead> + <tr> + <th scope="col">CSS files</th> + <th scope="col">Layout</th> + <th scope="col">Content</th> + <th scope="col">Components</th> + <th scope="col">Utilities</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row"> + <div><code class="font-weight-normal text-nowrap">bootstrap.css</code></div> + <div><code class="font-weight-normal text-nowrap">bootstrap.min.css</code></div> + </th> + <td class="text-success">Included</td> + <td class="text-success">Included</td> + <td class="text-success">Included</td> + <td class="text-success">Included</td> + </tr> + <tr> + <th scope="row"> + <div><code class="font-weight-normal text-nowrap">bootstrap-grid.css</code></div> + <div><code class="font-weight-normal text-nowrap">bootstrap-grid.min.css</code></div> + </th> + <td><a class="text-warning" href="/docs/4.3/layout/grid/">Only grid system</a></td> + <td class="bg-light text-muted">Not included</td> + <td class="bg-light text-muted">Not included</td> + <td><a class="text-warning" href="/docs/4.3/utilities/flex/">Only flex utilities</a></td> + </tr> + <tr> + <th scope="row"> + <div><code class="font-weight-normal text-nowrap">bootstrap-reboot.css</code></div> + <div><code class="font-weight-normal text-nowrap">bootstrap-reboot.min.css</code></div> + </th> + <td class="bg-light text-muted">Not included</td> + <td><a class="text-warning" href="/docs/4.3/content/reboot/">Only Reboot</a></td> + <td class="bg-light text-muted">Not included</td> + <td class="bg-light text-muted">Not included</td> + </tr> + </tbody> +</table> + +<h2 id="js-files">JS files</h2> + +<p>Similarly, we have options for including some or all of our compiled JavaScript.</p> + +<table class="table table-bordered"> + <thead> + <tr> + <th scope="col">JS files</th> + <th scope="col">Popper</th> + <th scope="col">jQuery</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row"> + <div><code class="font-weight-normal text-nowrap">bootstrap.bundle.js</code></div> + <div><code class="font-weight-normal text-nowrap">bootstrap.bundle.min.js</code></div> + </th> + <td class="text-success">Included</td> + <td class="bg-light text-muted">Not included</td> + </tr> + <tr> + <th scope="row"> + <div><code class="font-weight-normal text-nowrap">bootstrap.js</code></div> + <div><code class="font-weight-normal text-nowrap">bootstrap.min.js</code></div> + </th> + <td class="bg-light text-muted">Not included</td> + <td class="bg-light text-muted">Not included</td> + </tr> + </tbody> +</table> + +<h2 id="bootstrap-source-code">Bootstrap source code</h2> + +<p>The Bootstrap source code download includes the precompiled CSS and JavaScript assets, along with source Sass, JavaScript, and documentation. More specifically, it includes the following and more:</p> + +<figure class="highlight"><pre><code class="language-plaintext" data-lang="plaintext">bootstrap/ +├── dist/ +│ ├── css/ +│ └── js/ +├── site/ +│ └──docs/ +│ └── 4.3/ +│ └── examples/ +├── js/ +└── scss/</code></pre></figure> + +<p>The <code class="highlighter-rouge">scss/</code> and <code class="highlighter-rouge">js/</code> are the source code for our CSS and JavaScript. The <code class="highlighter-rouge">dist/</code> folder includes everything listed in the precompiled download section above. The <code class="highlighter-rouge">site/docs/</code> folder includes the source code for our documentation, and <code class="highlighter-rouge">examples/</code> of Bootstrap usage. Beyond that, any other included file provides support for packages, license information, and development.</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/getting-started/download/index.html b/docs/4.3/getting-started/download/index.html new file mode 100644 index 0000000000..fbbe954f7d --- /dev/null +++ b/docs/4.3/getting-started/download/index.html @@ -0,0 +1,586 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Download Bootstrap to get the compiled CSS and JavaScript, source code, or include it with your favorite package managers like npm, RubyGems, and more."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Download · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/getting-started/download/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Download"> +<meta name="twitter:description" content="Download Bootstrap to get the compiled CSS and JavaScript, source code, or include it with your favorite package managers like npm, RubyGems, and more."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/getting-started/download/"> +<meta property="og:title" content="Download"> +<meta property="og:description" content="Download Bootstrap to get the compiled CSS and JavaScript, source code, or include it with your favorite package managers like npm, RubyGems, and more."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#compiled-css-and-js">Compiled CSS and JS</a></li> +<li class="toc-entry toc-h2"><a href="#source-files">Source files</a></li> +<li class="toc-entry toc-h2"><a href="#bootstrapcdn">BootstrapCDN</a></li> +<li class="toc-entry toc-h2"><a href="#package-managers">Package managers</a> +<ul> +<li class="toc-entry toc-h3"><a href="#npm">npm</a></li> +<li class="toc-entry toc-h3"><a href="#yarn">yarn</a></li> +<li class="toc-entry toc-h3"><a href="#rubygems">RubyGems</a></li> +<li class="toc-entry toc-h3"><a href="#composer">Composer</a></li> +<li class="toc-entry toc-h3"><a href="#nuget">NuGet</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Download</h1> + <p class="bd-lead">Download Bootstrap to get the compiled CSS and JavaScript, source code, or include it with your favorite package managers like npm, RubyGems, and more.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="compiled-css-and-js">Compiled CSS and JS</h2> + +<p>Download ready-to-use compiled code for <strong>Bootstrap v4.3.0</strong> to easily drop into your project, which includes:</p> + +<ul> + <li>Compiled and minified CSS bundles (see <a href="/docs/4.3/getting-started/contents/#css-files">CSS files comparison</a>)</li> + <li>Compiled and minified JavaScript plugins</li> +</ul> + +<p>This doesn’t include documentation, source files, or any optional JavaScript dependencies (jQuery and Popper.js).</p> + +<p><a href="https://github.com/twbs/bootstrap/releases/download/v4.3.0/bootstrap-4.3.0-dist.zip" class="btn btn-bd-primary" onclick="ga('send', 'event', 'Getting started', 'Download', 'Download Bootstrap');">Download</a></p> + +<h2 id="source-files">Source files</h2> + +<p>Compile Bootstrap with your own asset pipeline by downloading our source Sass, JavaScript, and documentation files. This option requires some additional tooling:</p> + +<ul> + <li>Sass compiler (Libsass or Ruby Sass is supported) for compiling your CSS.</li> + <li><a href="https://github.com/postcss/autoprefixer">Autoprefixer</a> for CSS vendor prefixing</li> +</ul> + +<p>Should you require <a href="/docs/4.3/getting-started/build-tools/#tooling-setup">build tools</a>, they are included for developing Bootstrap and its docs, but they’re likely unsuitable for your own purposes.</p> + +<p><a href="https://github.com/twbs/bootstrap/archive/v4.3.0.zip" class="btn btn-bd-primary" onclick="ga('send', 'event', 'Getting started', 'Download', 'Download source');">Download source</a></p> + +<h2 id="bootstrapcdn">BootstrapCDN</h2> + +<p>Skip the download with <a href="https://www.bootstrapcdn.com/">BootstrapCDN</a> to deliver cached version of Bootstrap’s compiled CSS and JS to your project.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><link</span> <span class="na">rel=</span><span class="s">"stylesheet"</span> <span class="na">href=</span><span class="s">"https://stackpath.bootstrapcdn.com/bootstrap/4.3.0/css/bootstrap.min.css"</span> <span class="na">integrity=</span><span class="s">"sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></span> +<span class="nt"><script </span><span class="na">src=</span><span class="s">"https://stackpath.bootstrapcdn.com/bootstrap/4.3.0/js/bootstrap.min.js"</span> <span class="na">integrity=</span><span class="s">"sha384-7aThvCh9TypR7fIc2HV4O/nFMVCBwyIUKL8XCtKE+8xgCgl/PQGuFsvShjr74PBp"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></script></span></code></pre></figure> + +<p>If you’re using our compiled JavaScript, don’t forget to include CDN versions of jQuery and Popper.js before it.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><script </span><span class="na">src=</span><span class="s">"https://code.jquery.com/jquery-3.3.1.slim.min.js"</span> <span class="na">integrity=</span><span class="s">"sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></script></span> +<span class="nt"><script </span><span class="na">src=</span><span class="s">"https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"</span> <span class="na">integrity=</span><span class="s">"sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></script></span></code></pre></figure> + +<h2 id="package-managers">Package managers</h2> + +<p>Pull in Bootstrap’s <strong>source files</strong> into nearly any project with some of the most popular package managers. No matter the package manager, Bootstrap will <strong>require a Sass compiler and <a href="https://github.com/postcss/autoprefixer">Autoprefixer</a></strong> for a setup that matches our official compiled versions.</p> + +<h3 id="npm">npm</h3> + +<p>Install Bootstrap in your Node.js powered apps with <a href="https://www.npmjs.com/package/bootstrap">the npm package</a>:</p> + +<figure class="highlight"><pre><code class="language-sh" data-lang="sh">npm <span class="nb">install </span>bootstrap</code></pre></figure> + +<p><code class="highlighter-rouge">require('bootstrap')</code> will load all of Bootstrap’s jQuery plugins onto the jQuery object. The <code class="highlighter-rouge">bootstrap</code> module itself does not export anything. You can manually load Bootstrap’s jQuery plugins individually by loading the <code class="highlighter-rouge">/js/*.js</code> files under the package’s top-level directory.</p> + +<p>Bootstrap’s <code class="highlighter-rouge">package.json</code> contains some additional metadata under the following keys:</p> + +<ul> + <li><code class="highlighter-rouge">sass</code> - path to Bootstrap’s main <a href="https://sass-lang.com/">Sass</a> source file</li> + <li><code class="highlighter-rouge">style</code> - path to Bootstrap’s non-minified CSS that’s been precompiled using the default settings (no customization)</li> +</ul> + +<h3 id="yarn">yarn</h3> + +<p>Install Bootstrap in your Node.js powered apps with <a href="https://yarnpkg.com/en/package/yarn">the yarn package</a>:</p> + +<figure class="highlight"><pre><code class="language-sh" data-lang="sh">yarn add bootstrap</code></pre></figure> + +<h3 id="rubygems">RubyGems</h3> + +<p>Install Bootstrap in your Ruby apps using <a href="https://bundler.io/">Bundler</a> (<strong>recommended</strong>) and <a href="https://rubygems.org/">RubyGems</a> by adding the following line to your <a href="https://bundler.io/gemfile.html"><code class="highlighter-rouge">Gemfile</code></a>:</p> + +<figure class="highlight"><pre><code class="language-ruby" data-lang="ruby"><span class="n">gem</span> <span class="s1">'bootstrap'</span><span class="p">,</span> <span class="s1">'~> 4.3.0'</span></code></pre></figure> + +<p>Alternatively, if you’re not using Bundler, you can install the gem by running this command:</p> + +<figure class="highlight"><pre><code class="language-sh" data-lang="sh">gem <span class="nb">install </span>bootstrap <span class="nt">-v</span> 4.3.0</code></pre></figure> + +<p><a href="https://github.com/twbs/bootstrap-rubygem/blob/master/README.md">See the gem’s README</a> for further details.</p> + +<h3 id="composer">Composer</h3> + +<p>You can also install and manage Bootstrap’s Sass and JavaScript using <a href="https://getcomposer.org/">Composer</a>:</p> + +<figure class="highlight"><pre><code class="language-sh" data-lang="sh">composer require twbs/bootstrap:4.3.0</code></pre></figure> + +<h3 id="nuget">NuGet</h3> + +<p>If you develop in .NET, you can also install and manage Bootstrap’s <a href="https://www.nuget.org/packages/bootstrap/">CSS</a> or <a href="https://www.nuget.org/packages/bootstrap.sass/">Sass</a> and JavaScript using <a href="https://www.nuget.org/">NuGet</a>:</p> + +<figure class="highlight"><pre><code class="language-powershell" data-lang="powershell">Install-Package bootstrap</code></pre></figure> + +<figure class="highlight"><pre><code class="language-powershell" data-lang="powershell">Install-Package bootstrap.sass</code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/getting-started/index.html b/docs/4.3/getting-started/index.html new file mode 100644 index 0000000000..770ddbcef0 --- /dev/null +++ b/docs/4.3/getting-started/index.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<html lang="en-US"> + <meta charset="utf-8"> + <title>Redirecting…</title> + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/getting-started/introduction/"> + <script>location="https://getbootstrap.com/docs/4.3/getting-started/introduction/"</script> + <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.3/getting-started/introduction/"> + <meta name="robots" content="noindex"> + <h1>Redirecting…</h1> + <a href="https://getbootstrap.com/docs/4.3/getting-started/introduction/">Click here if you are not redirected.</a> +</html> diff --git a/docs/4.3/getting-started/introduction/index.html b/docs/4.3/getting-started/introduction/index.html new file mode 100644 index 0000000000..eb678be86c --- /dev/null +++ b/docs/4.3/getting-started/introduction/index.html @@ -0,0 +1,625 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Get started with Bootstrap, the world’s most popular framework for building responsive, mobile-first sites, with BootstrapCDN and a template starter page."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Introduction · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/getting-started/introduction/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Introduction"> +<meta name="twitter:description" content="Get started with Bootstrap, the world’s most popular framework for building responsive, mobile-first sites, with BootstrapCDN and a template starter page."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/getting-started/introduction/"> +<meta property="og:title" content="Introduction"> +<meta property="og:description" content="Get started with Bootstrap, the world’s most popular framework for building responsive, mobile-first sites, with BootstrapCDN and a template starter page."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li class="active bd-sidenav-active"> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#quick-start">Quick start</a> +<ul> +<li class="toc-entry toc-h3"><a href="#css">CSS</a></li> +<li class="toc-entry toc-h3"><a href="#js">JS</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#starter-template">Starter template</a></li> +<li class="toc-entry toc-h2"><a href="#important-globals">Important globals</a> +<ul> +<li class="toc-entry toc-h3"><a href="#html5-doctype">HTML5 doctype</a></li> +<li class="toc-entry toc-h3"><a href="#responsive-meta-tag">Responsive meta tag</a></li> +<li class="toc-entry toc-h3"><a href="#box-sizing">Box-sizing</a></li> +<li class="toc-entry toc-h3"><a href="#reboot">Reboot</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#community">Community</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Introduction</h1> + <p class="bd-lead">Get started with Bootstrap, the world’s most popular framework for building responsive, mobile-first sites, with BootstrapCDN and a template starter page.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="quick-start">Quick start</h2> + +<p>Looking to quickly add Bootstrap to your project? Use BootstrapCDN, provided for free by the folks at StackPath. Using a package manager or need to download the source files? <a href="/docs/4.3/getting-started/download/">Head to the downloads page</a>.</p> + +<h3 id="css">CSS</h3> + +<p>Copy-paste the stylesheet <code class="highlighter-rouge"><link></code> into your <code class="highlighter-rouge"><head></code> before all other stylesheets to load our CSS.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><link</span> <span class="na">rel=</span><span class="s">"stylesheet"</span> <span class="na">href=</span><span class="s">"https://stackpath.bootstrapcdn.com/bootstrap/4.3.0/css/bootstrap.min.css"</span> <span class="na">integrity=</span><span class="s">"sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></span></code></pre></figure> + +<h3 id="js">JS</h3> + +<p>Many of our components require the use of JavaScript to function. Specifically, they require <a href="https://jquery.com/">jQuery</a>, <a href="https://popper.js.org/">Popper.js</a>, and our own JavaScript plugins. Place the following <code class="highlighter-rouge"><script></code>s near the end of your pages, right before the closing <code class="highlighter-rouge"></body></code> tag, to enable them. jQuery must come first, then Popper.js, and then our JavaScript plugins.</p> + +<p>We use <a href="https://blog.jquery.com/2016/06/09/jquery-3-0-final-released/">jQuery’s slim build</a>, but the full version is also supported.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><script </span><span class="na">src=</span><span class="s">"https://code.jquery.com/jquery-3.3.1.slim.min.js"</span> <span class="na">integrity=</span><span class="s">"sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></script></span> +<span class="nt"><script </span><span class="na">src=</span><span class="s">"https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"</span> <span class="na">integrity=</span><span class="s">"sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></script></span> +<span class="nt"><script </span><span class="na">src=</span><span class="s">"https://stackpath.bootstrapcdn.com/bootstrap/4.3.0/js/bootstrap.min.js"</span> <span class="na">integrity=</span><span class="s">"sha384-7aThvCh9TypR7fIc2HV4O/nFMVCBwyIUKL8XCtKE+8xgCgl/PQGuFsvShjr74PBp"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></script></span></code></pre></figure> + +<p>Curious which components explicitly require jQuery, our JS, and Popper.js? Click the show components link below. If you’re at all unsure about the general page structure, keep reading for an example page template.</p> + +<p>Our <code class="highlighter-rouge">bootstrap.bundle.js</code> and <code class="highlighter-rouge">bootstrap.bundle.min.js</code> include <a href="https://popper.js.org/">Popper</a>, but not <a href="https://jquery.com/">jQuery</a>. For more information about what’s included in Bootstrap, please see our <a href="/docs/4.3/getting-started/contents/#precompiled-bootstrap">contents</a> section.</p> + +<details> +<summary class="text-primary mb-3">Show components requiring JavaScript</summary> + + +<ul> + <li>Alerts for dismissing</li> + <li>Buttons for toggling states and checkbox/radio functionality</li> + <li>Carousel for all slide behaviors, controls, and indicators</li> + <li>Collapse for toggling visibility of content</li> + <li>Dropdowns for displaying and positioning (also requires <a href="https://popper.js.org/">Popper.js</a>)</li> + <li>Modals for displaying, positioning, and scroll behavior</li> + <li>Navbar for extending our Collapse plugin to implement responsive behavior</li> + <li>Tooltips and popovers for displaying and positioning (also requires <a href="https://popper.js.org/">Popper.js</a>)</li> + <li>Scrollspy for scroll behavior and navigation updates</li> +</ul> + +</details> + +<h2 id="starter-template">Starter template</h2> + +<p>Be sure to have your pages set up with the latest design and development standards. That means using an HTML5 doctype and including a viewport meta tag for proper responsive behaviors. Put it all together and your pages should look like this:</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="cp"><!doctype html></span> +<span class="nt"><html</span> <span class="na">lang=</span><span class="s">"en"</span><span class="nt">></span> + <span class="nt"><head></span> + <span class="c"><!-- Required meta tags --></span> + <span class="nt"><meta</span> <span class="na">charset=</span><span class="s">"utf-8"</span><span class="nt">></span> + <span class="nt"><meta</span> <span class="na">name=</span><span class="s">"viewport"</span> <span class="na">content=</span><span class="s">"width=device-width, initial-scale=1, shrink-to-fit=no"</span><span class="nt">></span> + + <span class="c"><!-- Bootstrap CSS --></span> + <span class="nt"><link</span> <span class="na">rel=</span><span class="s">"stylesheet"</span> <span class="na">href=</span><span class="s">"https://stackpath.bootstrapcdn.com/bootstrap/4.3.0/css/bootstrap.min.css"</span> <span class="na">integrity=</span><span class="s">"sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></span> + + <span class="nt"><title></span>Hello, world!<span class="nt"></title></span> + <span class="nt"></head></span> + <span class="nt"><body></span> + <span class="nt"><h1></span>Hello, world!<span class="nt"></h1></span> + + <span class="c"><!-- Optional JavaScript --></span> + <span class="c"><!-- jQuery first, then Popper.js, then Bootstrap JS --></span> + <span class="nt"><script </span><span class="na">src=</span><span class="s">"https://code.jquery.com/jquery-3.3.1.slim.min.js"</span> <span class="na">integrity=</span><span class="s">"sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></script></span> + <span class="nt"><script </span><span class="na">src=</span><span class="s">"https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"</span> <span class="na">integrity=</span><span class="s">"sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></script></span> + <span class="nt"><script </span><span class="na">src=</span><span class="s">"https://stackpath.bootstrapcdn.com/bootstrap/4.3.0/js/bootstrap.min.js"</span> <span class="na">integrity=</span><span class="s">"sha384-7aThvCh9TypR7fIc2HV4O/nFMVCBwyIUKL8XCtKE+8xgCgl/PQGuFsvShjr74PBp"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></script></span> + <span class="nt"></body></span> +<span class="nt"></html></span></code></pre></figure> + +<p>That’s all you need for overall page requirements. Visit the <a href="/docs/4.3/layout/overview/">Layout docs</a> or <a href="/docs/4.3/examples/">our official examples</a> to start laying out your site’s content and components.</p> + +<h2 id="important-globals">Important globals</h2> + +<p>Bootstrap employs a handful of important global styles and settings that you’ll need to be aware of when using it, all of which are almost exclusively geared towards the <em>normalization</em> of cross browser styles. Let’s dive in.</p> + +<h3 id="html5-doctype">HTML5 doctype</h3> + +<p>Bootstrap requires the use of the HTML5 doctype. Without it, you’ll see some funky incomplete styling, but including it shouldn’t cause any considerable hiccups.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="cp"><!doctype html></span> +<span class="nt"><html</span> <span class="na">lang=</span><span class="s">"en"</span><span class="nt">></span> + ... +<span class="nt"></html></span></code></pre></figure> + +<h3 id="responsive-meta-tag">Responsive meta tag</h3> + +<p>Bootstrap is developed <em>mobile first</em>, a strategy in which we optimize code for mobile devices first and then scale up components as necessary using CSS media queries. To ensure proper rendering and touch zooming for all devices, <strong>add the responsive viewport meta tag</strong> to your <code class="highlighter-rouge"><head></code>.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><meta</span> <span class="na">name=</span><span class="s">"viewport"</span> <span class="na">content=</span><span class="s">"width=device-width, initial-scale=1, shrink-to-fit=no"</span><span class="nt">></span></code></pre></figure> + +<p>You can see an example of this in action in the <a href="#starter-template">starter template</a>.</p> + +<h3 id="box-sizing">Box-sizing</h3> + +<p>For more straightforward sizing in CSS, we switch the global <code class="highlighter-rouge">box-sizing</code> value from <code class="highlighter-rouge">content-box</code> to <code class="highlighter-rouge">border-box</code>. This ensures <code class="highlighter-rouge">padding</code> does not affect the final computed width of an element, but it can cause problems with some third party software like Google Maps and Google Custom Search Engine.</p> + +<p>On the rare occasion you need to override it, use something like the following:</p> + +<figure class="highlight"><pre><code class="language-css" data-lang="css"><span class="nc">.selector-for-some-widget</span> <span class="p">{</span> + <span class="nl">box-sizing</span><span class="p">:</span> <span class="n">content-box</span><span class="p">;</span> +<span class="p">}</span></code></pre></figure> + +<p>With the above snippet, nested elements—including generated content via <code class="highlighter-rouge">::before</code> and <code class="highlighter-rouge">::after</code>—will all inherit the specified <code class="highlighter-rouge">box-sizing</code> for that <code class="highlighter-rouge">.selector-for-some-widget</code>.</p> + +<p>Learn more about <a href="https://css-tricks.com/box-sizing/">box model and sizing at CSS Tricks</a>.</p> + +<h3 id="reboot">Reboot</h3> + +<p>For improved cross-browser rendering, we use <a href="/docs/4.3/content/reboot/">Reboot</a> to correct inconsistencies across browsers and devices while providing slightly more opinionated resets to common HTML elements.</p> + +<h2 id="community">Community</h2> + +<p>Stay up to date on the development of Bootstrap and reach out to the community with these helpful resources.</p> + +<ul> + <li>Follow <a href="https://twitter.com/getbootstrap">@getbootstrap on Twitter</a>.</li> + <li>Read and subscribe to <a href="https://blog.getbootstrap.com/">The Official Bootstrap Blog</a>.</li> + <li>Join <a href="https://bootstrap-slack.herokuapp.com/">the official Slack room</a>.</li> + <li>Chat with fellow Bootstrappers in IRC. On the <code class="highlighter-rouge">irc.freenode.net</code> server, in the <code class="highlighter-rouge">##bootstrap</code> channel.</li> + <li>Implementation help may be found at Stack Overflow (tagged <a href="https://stackoverflow.com/questions/tagged/bootstrap-4"><code class="highlighter-rouge">bootstrap-4</code></a>).</li> + <li>Developers should use the keyword <code class="highlighter-rouge">bootstrap</code> on packages which modify or add to the functionality of Bootstrap when distributing through <a href="https://www.npmjs.com/search?q=keywords:bootstrap">npm</a> or similar delivery mechanisms for maximum discoverability.</li> +</ul> + +<p>You can also follow <a href="https://twitter.com/getbootstrap">@getbootstrap on Twitter</a> for the latest gossip and awesome music videos.</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/getting-started/javascript/index.html b/docs/4.3/getting-started/javascript/index.html new file mode 100644 index 0000000000..d9d3fe4130 --- /dev/null +++ b/docs/4.3/getting-started/javascript/index.html @@ -0,0 +1,610 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Bring Bootstrap to life with our optional JavaScript plugins built on jQuery. Learn about each plugin, our data and programmatic API options, and more."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>JavaScript · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/getting-started/javascript/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="JavaScript"> +<meta name="twitter:description" content="Bring Bootstrap to life with our optional JavaScript plugins built on jQuery. Learn about each plugin, our data and programmatic API options, and more."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/getting-started/javascript/"> +<meta property="og:title" content="JavaScript"> +<meta property="og:description" content="Bring Bootstrap to life with our optional JavaScript plugins built on jQuery. Learn about each plugin, our data and programmatic API options, and more."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#individual-or-compiled">Individual or compiled</a></li> +<li class="toc-entry toc-h2"><a href="#dependencies">Dependencies</a></li> +<li class="toc-entry toc-h2"><a href="#data-attributes">Data attributes</a></li> +<li class="toc-entry toc-h2"><a href="#events">Events</a></li> +<li class="toc-entry toc-h2"><a href="#programmatic-api">Programmatic API</a> +<ul> +<li class="toc-entry toc-h3"><a href="#asynchronous-functions-and-transitions">Asynchronous functions and transitions</a></li> +<li class="toc-entry toc-h3"><a href="#default-settings">Default settings</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#no-conflict">No conflict</a></li> +<li class="toc-entry toc-h2"><a href="#version-numbers">Version numbers</a></li> +<li class="toc-entry toc-h2"><a href="#no-special-fallbacks-when-javascript-is-disabled">No special fallbacks when JavaScript is disabled</a></li> +<li class="toc-entry toc-h2"><a href="#util">Util</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">JavaScript</h1> + <p class="bd-lead">Bring Bootstrap to life with our optional JavaScript plugins built on jQuery. Learn about each plugin, our data and programmatic API options, and more.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="individual-or-compiled">Individual or compiled</h2> + +<p>Plugins can be included individually (using Bootstrap’s individual <code class="highlighter-rouge">js/dist/*.js</code>), or all at once using <code class="highlighter-rouge">bootstrap.js</code> or the minified <code class="highlighter-rouge">bootstrap.min.js</code> (don’t include both).</p> + +<p>If you use a bundler (Webpack, Rollup…), you can use <code class="highlighter-rouge">/js/dist/*.js</code> files which are UMD ready.</p> + +<h2 id="dependencies">Dependencies</h2> + +<p>Some plugins and CSS components depend on other plugins. If you include plugins individually, make sure to check for these dependencies in the docs. Also note that <strong>all plugins depend on jQuery</strong> (this means jQuery must be included <strong>before</strong> the plugin files). <a href="https://github.com/twbs/bootstrap/blob/v4.3.0/package.json">Consult our <code class="highlighter-rouge">package.json</code></a> to see which versions of jQuery are supported.</p> + +<p>Our dropdowns, popovers and tooltips also depend on <a href="https://popper.js.org/">Popper.js</a>.</p> + +<h2 id="data-attributes">Data attributes</h2> + +<p>Nearly all Bootstrap plugins can be enabled and configured through HTML alone with data attributes (our preferred way of using JavaScript functionality). Be sure to <strong>only use one set of data attributes on a single element</strong> (e.g., you cannot trigger a tooltip and modal from the same button.)</p> + +<p>However, in some situations it may be desirable to disable this functionality. To disable the data attribute API, unbind all events on the document namespaced with <code class="highlighter-rouge">data-api</code> like so:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="nb">document</span><span class="p">).</span><span class="nx">off</span><span class="p">(</span><span class="s1">'.data-api'</span><span class="p">)</span></code></pre></figure> + +<p>Alternatively, to target a specific plugin, just include the plugin’s name as a namespace along with the data-api namespace like this:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="nb">document</span><span class="p">).</span><span class="nx">off</span><span class="p">(</span><span class="s1">'.alert.data-api'</span><span class="p">)</span></code></pre></figure> + +<div class="bd-callout bd-callout-warning"> +<h2 id="selectors">Selectors</h2> + +<p>Currently to query DOM elements we use the native methods <code class="highlighter-rouge">querySelector</code> and <code class="highlighter-rouge">querySelectorAll</code> for performance reasons, so you have to use <a href="https://www.w3.org/TR/CSS21/syndata.html#value-def-identifier">valid selectors</a>. +If you use special selectors, for example: <code class="highlighter-rouge">collapse:Example</code> be sure to escape them.</p> +</div> + +<h2 id="events">Events</h2> + +<p>Bootstrap provides custom events for most plugins’ unique actions. Generally, these come in an infinitive and past participle form - where the infinitive (ex. <code class="highlighter-rouge">show</code>) is triggered at the start of an event, and its past participle form (ex. <code class="highlighter-rouge">shown</code>) is triggered on the completion of an action.</p> + +<p>All infinitive events provide <a href="https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault"><code class="highlighter-rouge">preventDefault()</code></a> functionality. This provides the ability to stop the execution of an action before it starts. Returning false from an event handler will also automatically call <code class="highlighter-rouge">preventDefault()</code>.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myModal'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'show.bs.modal'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span> + <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">data</span><span class="p">)</span> <span class="p">{</span> + <span class="k">return</span> <span class="nx">e</span><span class="p">.</span><span class="nx">preventDefault</span><span class="p">()</span> <span class="c1">// stops modal from being shown</span> + <span class="p">}</span> +<span class="p">})</span></code></pre></figure> + +<h2 id="programmatic-api">Programmatic API</h2> + +<p>We also believe you should be able to use all Bootstrap plugins purely through the JavaScript API. All public APIs are single, chainable methods, and return the collection acted upon.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'.btn.danger'</span><span class="p">).</span><span class="nx">button</span><span class="p">(</span><span class="s1">'toggle'</span><span class="p">).</span><span class="nx">addClass</span><span class="p">(</span><span class="s1">'fat'</span><span class="p">)</span></code></pre></figure> + +<p>All methods should accept an optional options object, a string which targets a particular method, or nothing (which initiates a plugin with default behavior):</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myModal'</span><span class="p">).</span><span class="nx">modal</span><span class="p">()</span> <span class="c1">// initialized with defaults</span> +<span class="nx">$</span><span class="p">(</span><span class="s1">'#myModal'</span><span class="p">).</span><span class="nx">modal</span><span class="p">({</span> <span class="na">keyboard</span><span class="p">:</span> <span class="kc">false</span> <span class="p">})</span> <span class="c1">// initialized with no keyboard</span> +<span class="nx">$</span><span class="p">(</span><span class="s1">'#myModal'</span><span class="p">).</span><span class="nx">modal</span><span class="p">(</span><span class="s1">'show'</span><span class="p">)</span> <span class="c1">// initializes and invokes show immediately</span></code></pre></figure> + +<p>Each plugin also exposes its raw constructor on a <code class="highlighter-rouge">Constructor</code> property: <code class="highlighter-rouge">$.fn.popover.Constructor</code>. If you’d like to get a particular plugin instance, retrieve it directly from an element: <code class="highlighter-rouge">$('[rel="popover"]').data('popover')</code>.</p> + +<h3 id="asynchronous-functions-and-transitions">Asynchronous functions and transitions</h3> + +<p>All programmatic API methods are <strong>asynchronous</strong> and return to the caller once the transition is started but <strong>before it ends</strong>.</p> + +<p>In order to execute an action once the transition is complete, you can listen to the corresponding event.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myCollapse'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'shown.bs.collapse'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span> + <span class="c1">// Action to execute once the collapsible area is expanded</span> +<span class="p">})</span></code></pre></figure> + +<p>In addition a method call on a <strong>transitioning component will be ignored</strong>.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">(</span><span class="s1">'#myCarousel'</span><span class="p">).</span><span class="nx">on</span><span class="p">(</span><span class="s1">'slid.bs.carousel'</span><span class="p">,</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span> + <span class="nx">$</span><span class="p">(</span><span class="s1">'#myCarousel'</span><span class="p">).</span><span class="nx">carousel</span><span class="p">(</span><span class="s1">'2'</span><span class="p">)</span> <span class="c1">// Will slide to the slide 2 as soon as the transition to slide 1 is finished</span> +<span class="p">})</span> + +<span class="nx">$</span><span class="p">(</span><span class="s1">'#myCarousel'</span><span class="p">).</span><span class="nx">carousel</span><span class="p">(</span><span class="s1">'1'</span><span class="p">)</span> <span class="c1">// Will start sliding to the slide 1 and returns to the caller</span> +<span class="nx">$</span><span class="p">(</span><span class="s1">'#myCarousel'</span><span class="p">).</span><span class="nx">carousel</span><span class="p">(</span><span class="s1">'2'</span><span class="p">)</span> <span class="c1">// !! Will be ignored, as the transition to the slide 1 is not finished !!</span></code></pre></figure> + +<h3 id="default-settings">Default settings</h3> + +<p>You can change the default settings for a plugin by modifying the plugin’s <code class="highlighter-rouge">Constructor.Default</code> object:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="c1">// changes default for the modal plugin's `keyboard` option to false</span> +<span class="nx">$</span><span class="p">.</span><span class="nx">fn</span><span class="p">.</span><span class="nx">modal</span><span class="p">.</span><span class="nx">Constructor</span><span class="p">.</span><span class="nx">Default</span><span class="p">.</span><span class="nx">keyboard</span> <span class="o">=</span> <span class="kc">false</span></code></pre></figure> + +<h2 id="no-conflict">No conflict</h2> + +<p>Sometimes it is necessary to use Bootstrap plugins with other UI frameworks. In these circumstances, namespace collisions can occasionally occur. If this happens, you may call <code class="highlighter-rouge">.noConflict</code> on the plugin you wish to revert the value of.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="kd">var</span> <span class="nx">bootstrapButton</span> <span class="o">=</span> <span class="nx">$</span><span class="p">.</span><span class="nx">fn</span><span class="p">.</span><span class="nx">button</span><span class="p">.</span><span class="nx">noConflict</span><span class="p">()</span> <span class="c1">// return $.fn.button to previously assigned value</span> +<span class="nx">$</span><span class="p">.</span><span class="nx">fn</span><span class="p">.</span><span class="nx">bootstrapBtn</span> <span class="o">=</span> <span class="nx">bootstrapButton</span> <span class="c1">// give $().bootstrapBtn the Bootstrap functionality</span></code></pre></figure> + +<h2 id="version-numbers">Version numbers</h2> + +<p>The version of each of Bootstrap’s jQuery plugins can be accessed via the <code class="highlighter-rouge">VERSION</code> property of the plugin’s constructor. For example, for the tooltip plugin:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="nx">$</span><span class="p">.</span><span class="nx">fn</span><span class="p">.</span><span class="nx">tooltip</span><span class="p">.</span><span class="nx">Constructor</span><span class="p">.</span><span class="nx">VERSION</span> <span class="c1">// => "4.3.0"</span></code></pre></figure> + +<h2 id="no-special-fallbacks-when-javascript-is-disabled">No special fallbacks when JavaScript is disabled</h2> + +<p>Bootstrap’s plugins don’t fall back particularly gracefully when JavaScript is disabled. If you care about the user experience in this case, use <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/noscript"><code class="highlighter-rouge"><noscript></code></a> to explain the situation (and how to re-enable JavaScript) to your users, and/or add your own custom fallbacks.</p> + +<div class="bd-callout bd-callout-warning"> +<h5 id="third-party-libraries">Third-party libraries</h5> + +<p><strong>Bootstrap does not officially support third-party JavaScript libraries</strong> like Prototype or jQuery UI. Despite <code class="highlighter-rouge">.noConflict</code> and namespaced events, there may be compatibility problems that you need to fix on your own.</p> +</div> + +<h2 id="util">Util</h2> + +<p>All Bootstrap’s JavaScript files depend on <code class="highlighter-rouge">util.js</code> and it has to be included alongside the other JavaScript files. If you’re using the compiled (or minified) <code class="highlighter-rouge">bootstrap.js</code>, there is no need to include this—it’s already there.</p> + +<p><code class="highlighter-rouge">util.js</code> includes utility functions and a basic helper for <code class="highlighter-rouge">transitionEnd</code> events as well as a CSS transition emulator. It’s used by the other plugins to check for CSS transition support and to catch hanging transitions.</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/getting-started/theming/index.html b/docs/4.3/getting-started/theming/index.html new file mode 100644 index 0000000000..b4a18fce71 --- /dev/null +++ b/docs/4.3/getting-started/theming/index.html @@ -0,0 +1,1085 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Customize Bootstrap 4 with our new built-in Sass variables for global style preferences for easy theming and component changes."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Theming Bootstrap · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/getting-started/theming/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Theming Bootstrap"> +<meta name="twitter:description" content="Customize Bootstrap 4 with our new built-in Sass variables for global style preferences for easy theming and component changes."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/getting-started/theming/"> +<meta property="og:title" content="Theming Bootstrap"> +<meta property="og:description" content="Customize Bootstrap 4 with our new built-in Sass variables for global style preferences for easy theming and component changes."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#introduction">Introduction</a></li> +<li class="toc-entry toc-h2"><a href="#sass">Sass</a> +<ul> +<li class="toc-entry toc-h3"><a href="#file-structure">File structure</a></li> +<li class="toc-entry toc-h3"><a href="#importing">Importing</a></li> +<li class="toc-entry toc-h3"><a href="#variable-defaults">Variable defaults</a></li> +<li class="toc-entry toc-h3"><a href="#maps-and-loops">Maps and loops</a> +<ul> +<li class="toc-entry toc-h4"><a href="#modify-map">Modify map</a></li> +<li class="toc-entry toc-h4"><a href="#add-to-map">Add to map</a></li> +<li class="toc-entry toc-h4"><a href="#remove-from-map">Remove from map</a></li> +<li class="toc-entry toc-h4"><a href="#required-keys">Required keys</a></li> +</ul> +</li> +<li class="toc-entry toc-h3"><a href="#functions">Functions</a></li> +<li class="toc-entry toc-h3"><a href="#color-contrast">Color contrast</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#sass-options">Sass options</a></li> +<li class="toc-entry toc-h2"><a href="#color">Color</a> +<ul> +<li class="toc-entry toc-h3"><a href="#all-colors">All colors</a></li> +<li class="toc-entry toc-h3"><a href="#theme-colors">Theme colors</a></li> +<li class="toc-entry toc-h3"><a href="#grays">Grays</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#components">Components</a> +<ul> +<li class="toc-entry toc-h3"><a href="#modifiers">Modifiers</a></li> +<li class="toc-entry toc-h3"><a href="#responsive">Responsive</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#css-variables">CSS variables</a> +<ul> +<li class="toc-entry toc-h3"><a href="#available-variables">Available variables</a></li> +<li class="toc-entry toc-h3"><a href="#examples">Examples</a></li> +<li class="toc-entry toc-h3"><a href="#breakpoint-variables">Breakpoint variables</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Theming Bootstrap</h1> + <p class="bd-lead">Customize Bootstrap 4 with our new built-in Sass variables for global style preferences for easy theming and component changes.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="introduction">Introduction</h2> + +<p>In Bootstrap 3, theming was largely driven by variable overrides in LESS, custom CSS, and a separate theme stylesheet that we included in our <code class="highlighter-rouge">dist</code> files. With some effort, one could completely redesign the look of Bootstrap 3 without touching the core files. Bootstrap 4 provides a familiar, but slightly different approach.</p> + +<p>Now, theming is accomplished by Sass variables, Sass maps, and custom CSS. There’s no more dedicated theme stylesheet; instead, you can enable the built-in theme to add gradients, shadows, and more.</p> + +<h2 id="sass">Sass</h2> + +<p>Utilize our source Sass files to take advantage of variables, maps, mixins, and more. In our build we’ve increased the Sass rounding precision to 6 (by default it’s 5) to prevent issues with browser rounding.</p> + +<h3 id="file-structure">File structure</h3> + +<p>Whenever possible, avoid modifying Bootstrap’s core files. For Sass, that means creating your own stylesheet that imports Bootstrap so you can modify and extend it. Assuming you’re using a package manager like npm, you’ll have a file structure that looks like this:</p> + +<figure class="highlight"><pre><code class="language-plaintext" data-lang="plaintext">your-project/ +├── scss +│ └── custom.scss +└── node_modules/ + └── bootstrap + ├── js + └── scss</code></pre></figure> + +<p>If you’ve downloaded our source files and aren’t using a package manager, you’ll want to manually setup something similar to that structure, keeping Bootstrap’s source files separate from your own.</p> + +<figure class="highlight"><pre><code class="language-plaintext" data-lang="plaintext">your-project/ +├── scss +│ └── custom.scss +└── bootstrap/ + ├── js + └── scss</code></pre></figure> + +<h3 id="importing">Importing</h3> + +<p>In your <code class="highlighter-rouge">custom.scss</code>, you’ll import Bootstrap’s source Sass files. You have two options: include all of Bootstrap, or pick the parts you need. We encourage the latter, though be aware there are some requirements and dependencies across our components. You also will need to include some JavaScript for our plugins.</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// Custom.scss</span> +<span class="c1">// Option A: Include all of Bootstrap</span> + +<span class="k">@import</span> <span class="s2">"../node_modules/bootstrap/scss/bootstrap"</span><span class="p">;</span></code></pre></figure> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// Custom.scss</span> +<span class="c1">// Option B: Include parts of Bootstrap</span> + +<span class="c1">// Required</span> +<span class="k">@import</span> <span class="s2">"../node_modules/bootstrap/scss/functions"</span><span class="p">;</span> +<span class="k">@import</span> <span class="s2">"../node_modules/bootstrap/scss/variables"</span><span class="p">;</span> +<span class="k">@import</span> <span class="s2">"../node_modules/bootstrap/scss/mixins"</span><span class="p">;</span> + +<span class="c1">// Optional</span> +<span class="k">@import</span> <span class="s2">"../node_modules/bootstrap/scss/reboot"</span><span class="p">;</span> +<span class="k">@import</span> <span class="s2">"../node_modules/bootstrap/scss/type"</span><span class="p">;</span> +<span class="k">@import</span> <span class="s2">"../node_modules/bootstrap/scss/images"</span><span class="p">;</span> +<span class="k">@import</span> <span class="s2">"../node_modules/bootstrap/scss/code"</span><span class="p">;</span> +<span class="k">@import</span> <span class="s2">"../node_modules/bootstrap/scss/grid"</span><span class="p">;</span></code></pre></figure> + +<p>With that setup in place, you can begin to modify any of the Sass variables and maps in your <code class="highlighter-rouge">custom.scss</code>. You can also start to add parts of Bootstrap under the <code class="highlighter-rouge">// Optional</code> section as needed. We suggest using the full import stack from our <code class="highlighter-rouge">bootstrap.scss</code> file as your starting point.</p> + +<h3 id="variable-defaults">Variable defaults</h3> + +<p>Every Sass variable in Bootstrap 4 includes the <code class="highlighter-rouge">!default</code> flag allowing you to override the variable’s default value in your own Sass without modifying Bootstrap’s source code. Copy and paste variables as needed, modify their values, and remove the <code class="highlighter-rouge">!default</code> flag. If a variable has already been assigned, then it won’t be re-assigned by the default values in Bootstrap.</p> + +<p>You will find the complete list of Bootstrap’s variables in <code class="highlighter-rouge">scss/_variables.scss</code>. Some variables are set to <code class="highlighter-rouge">null</code>, these variables don’t output the property unless they are overridden in your configuration.</p> + +<p>Variable overrides within the same Sass file can come before or after the default variables. However, when overriding across Sass files, your overrides must come before you import Bootstrap’s Sass files.</p> + +<p>Here’s an example that changes the <code class="highlighter-rouge">background-color</code> and <code class="highlighter-rouge">color</code> for the <code class="highlighter-rouge"><body></code> when importing and compiling Bootstrap via npm:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// Your variable overrides</span> +<span class="nv">$body-bg</span><span class="p">:</span> <span class="mh">#000</span><span class="p">;</span> +<span class="nv">$body-color</span><span class="p">:</span> <span class="mh">#111</span><span class="p">;</span> + +<span class="c1">// Bootstrap and its default variables</span> +<span class="k">@import</span> <span class="s2">"../node_modules/bootstrap/scss/bootstrap"</span><span class="p">;</span></code></pre></figure> + +<p>Repeat as necessary for any variable in Bootstrap, including the global options below.</p> + +<h3 id="maps-and-loops">Maps and loops</h3> + +<p>Bootstrap 4 includes a handful of Sass maps, key value pairs that make it easier to generate families of related CSS. We use Sass maps for our colors, grid breakpoints, and more. Just like Sass variables, all Sass maps include the <code class="highlighter-rouge">!default</code> flag and can be overridden and extended.</p> + +<p>Some of our Sass maps are merged into empty ones by default. This is done to allow easy expansion of a given Sass map, but comes at the cost of making <em>removing</em> items from a map slightly more difficult.</p> + +<h4 id="modify-map">Modify map</h4> + +<p>To modify an existing color in our <code class="highlighter-rouge">$theme-colors</code> map, add the following to your custom Sass file:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nv">$theme-colors</span><span class="p">:</span> <span class="p">(</span> + <span class="s2">"primary"</span><span class="o">:</span> <span class="mh">#0074d9</span><span class="o">,</span> + <span class="s2">"danger"</span><span class="o">:</span> <span class="mh">#ff4136</span> +<span class="p">);</span></code></pre></figure> + +<h4 id="add-to-map">Add to map</h4> + +<p>To add a new color to <code class="highlighter-rouge">$theme-colors</code>, add the new key and value:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nv">$theme-colors</span><span class="p">:</span> <span class="p">(</span> + <span class="s2">"custom-color"</span><span class="o">:</span> <span class="mh">#900</span> +<span class="p">);</span></code></pre></figure> + +<h4 id="remove-from-map">Remove from map</h4> + +<p>To remove colors from <code class="highlighter-rouge">$theme-colors</code>, or any other map, use <code class="highlighter-rouge">map-remove</code>. Be aware you must insert it between our requirements and options:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// Required</span> +<span class="k">@import</span> <span class="s2">"../node_modules/bootstrap/scss/functions"</span><span class="p">;</span> +<span class="k">@import</span> <span class="s2">"../node_modules/bootstrap/scss/variables"</span><span class="p">;</span> +<span class="k">@import</span> <span class="s2">"../node_modules/bootstrap/scss/mixins"</span><span class="p">;</span> + +<span class="nv">$theme-colors</span><span class="p">:</span> <span class="nf">map-remove</span><span class="p">(</span><span class="nv">$theme-colors</span><span class="o">,</span> <span class="s2">"info"</span><span class="o">,</span> <span class="s2">"light"</span><span class="o">,</span> <span class="s2">"dark"</span><span class="p">);</span> + +<span class="c1">// Optional</span> +<span class="k">@import</span> <span class="s2">"../node_modules/bootstrap/scss/root"</span><span class="p">;</span> +<span class="k">@import</span> <span class="s2">"../node_modules/bootstrap/scss/reboot"</span><span class="p">;</span> +<span class="k">@import</span> <span class="s2">"../node_modules/bootstrap/scss/type"</span><span class="p">;</span> +<span class="nc">...</span></code></pre></figure> + +<h4 id="required-keys">Required keys</h4> + +<p>Bootstrap assumes the presence of some specific keys within Sass maps as we used and extend these ourselves. As you customize the included maps, you may encounter errors where a specific Sass map’s key is being used.</p> + +<p>For example, we use the <code class="highlighter-rouge">primary</code>, <code class="highlighter-rouge">success</code>, and <code class="highlighter-rouge">danger</code> keys from <code class="highlighter-rouge">$theme-colors</code> for links, buttons, and form states. Replacing the values of these keys should present no issues, but removing them may cause Sass compilation issues. In these instances, you’ll need to modify the Sass code that makes use of those values.</p> + +<h3 id="functions">Functions</h3> + +<p>Bootstrap utilizes several Sass functions, but only a subset are applicable to general theming. We’ve included three functions for getting values from the color maps:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="k">@function</span> <span class="nf">color</span><span class="p">(</span><span class="nv">$key</span><span class="o">:</span> <span class="s2">"blue"</span><span class="p">)</span> <span class="p">{</span> + <span class="k">@return</span> <span class="nf">map-get</span><span class="p">(</span><span class="nv">$colors</span><span class="o">,</span> <span class="nv">$key</span><span class="p">);</span> +<span class="p">}</span> + +<span class="k">@function</span> <span class="nf">theme-color</span><span class="p">(</span><span class="nv">$key</span><span class="o">:</span> <span class="s2">"primary"</span><span class="p">)</span> <span class="p">{</span> + <span class="k">@return</span> <span class="nf">map-get</span><span class="p">(</span><span class="nv">$theme-colors</span><span class="o">,</span> <span class="nv">$key</span><span class="p">);</span> +<span class="p">}</span> + +<span class="k">@function</span> <span class="nf">gray</span><span class="p">(</span><span class="nv">$key</span><span class="o">:</span> <span class="s2">"100"</span><span class="p">)</span> <span class="p">{</span> + <span class="k">@return</span> <span class="nf">map-get</span><span class="p">(</span><span class="nv">$grays</span><span class="o">,</span> <span class="nv">$key</span><span class="p">);</span> +<span class="p">}</span></code></pre></figure> + +<p>These allow you to pick one color from a Sass map much like how you’d use a color variable from v3.</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nc">.custom-element</span> <span class="p">{</span> + <span class="nl">color</span><span class="p">:</span> <span class="nf">gray</span><span class="p">(</span><span class="s2">"100"</span><span class="p">);</span> + <span class="nl">background-color</span><span class="p">:</span> <span class="nf">theme-color</span><span class="p">(</span><span class="s2">"dark"</span><span class="p">);</span> +<span class="p">}</span></code></pre></figure> + +<p>We also have another function for getting a particular <em>level</em> of color from the <code class="highlighter-rouge">$theme-colors</code> map. Negative level values will lighten the color, while higher levels will darken.</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="k">@function</span> <span class="nf">theme-color-level</span><span class="p">(</span><span class="nv">$color-name</span><span class="o">:</span> <span class="s2">"primary"</span><span class="o">,</span> <span class="nv">$level</span><span class="o">:</span> <span class="m">0</span><span class="p">)</span> <span class="p">{</span> + <span class="nv">$color</span><span class="p">:</span> <span class="nf">theme-color</span><span class="p">(</span><span class="nv">$color-name</span><span class="p">);</span> + <span class="nv">$color-base</span><span class="p">:</span> <span class="nf">if</span><span class="p">(</span><span class="nv">$level</span> <span class="o">></span> <span class="m">0</span><span class="o">,</span> <span class="mh">#000</span><span class="o">,</span> <span class="mh">#fff</span><span class="p">);</span> + <span class="nv">$level</span><span class="p">:</span> <span class="nf">abs</span><span class="p">(</span><span class="nv">$level</span><span class="p">);</span> + + <span class="k">@return</span> <span class="nf">mix</span><span class="p">(</span><span class="nv">$color-base</span><span class="o">,</span> <span class="nv">$color</span><span class="o">,</span> <span class="nv">$level</span> <span class="o">*</span> <span class="nv">$theme-color-interval</span><span class="p">);</span> +<span class="p">}</span></code></pre></figure> + +<p>In practice, you’d call the function and pass in two parameters: the name of the color from <code class="highlighter-rouge">$theme-colors</code> (e.g., primary or danger) and a numeric level.</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nc">.custom-element</span> <span class="p">{</span> + <span class="nl">color</span><span class="p">:</span> <span class="nf">theme-color-level</span><span class="p">(</span><span class="n">primary</span><span class="o">,</span> <span class="m">-10</span><span class="p">);</span> +<span class="p">}</span></code></pre></figure> + +<p>Additional functions could be added in the future or your own custom Sass to create level functions for additional Sass maps, or even a generic one if you wanted to be more verbose.</p> + +<h3 id="color-contrast">Color contrast</h3> + +<p>One additional function we include in Bootstrap is the color contrast function, <code class="highlighter-rouge">color-yiq</code>. It utilizes the <a href="https://en.wikipedia.org/wiki/YIQ">YIQ color space</a> to automatically return a light (<code class="highlighter-rouge">#fff</code>) or dark (<code class="highlighter-rouge">#111</code>) contrast color based on the specified base color. This function is especially useful for mixins or loops where you’re generating multiple classes.</p> + +<p>For example, to generate color swatches from our <code class="highlighter-rouge">$theme-colors</code> map:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="k">@each</span> <span class="nv">$color</span><span class="o">,</span> <span class="nv">$value</span> <span class="n">in</span> <span class="nv">$theme-colors</span> <span class="p">{</span> + <span class="nc">.swatch-</span><span class="si">#{</span><span class="nv">$color</span><span class="si">}</span> <span class="p">{</span> + <span class="nl">color</span><span class="p">:</span> <span class="nf">color-yiq</span><span class="p">(</span><span class="nv">$value</span><span class="p">);</span> + <span class="p">}</span> +<span class="p">}</span></code></pre></figure> + +<p>It can also be used for one-off contrast needs:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nc">.custom-element</span> <span class="p">{</span> + <span class="nl">color</span><span class="p">:</span> <span class="nf">color-yiq</span><span class="p">(</span><span class="mh">#000</span><span class="p">);</span> <span class="c1">// returns `color: #fff`</span> +<span class="p">}</span></code></pre></figure> + +<p>You can also specify a base color with our color map functions:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nc">.custom-element</span> <span class="p">{</span> + <span class="nl">color</span><span class="p">:</span> <span class="nf">color-yiq</span><span class="p">(</span><span class="nf">theme-color</span><span class="p">(</span><span class="s2">"dark"</span><span class="p">));</span> <span class="c1">// returns `color: #fff`</span> +<span class="p">}</span></code></pre></figure> + +<h2 id="sass-options">Sass options</h2> + +<p>Customize Bootstrap 4 with our built-in custom variables file and easily toggle global CSS preferences with new <code class="highlighter-rouge">$enable-*</code> Sass variables. Override a variable’s value and recompile with <code class="highlighter-rouge">npm run test</code> as needed.</p> + +<p>You can find and customize these variables for key global options in Bootstrap’s <code class="highlighter-rouge">scss/_variables.scss</code> file.</p> + +<table> + <thead> + <tr> + <th>Variable</th> + <th>Values</th> + <th>Description</th> + </tr> + </thead> + <tbody> + <tr> + <td><code class="highlighter-rouge">$spacer</code></td> + <td><code class="highlighter-rouge">1rem</code> (default), or any value > 0</td> + <td>Specifies the default spacer value to programmatically generate our <a href="/docs/4.3/utilities/spacing/">spacer utilities</a>.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$enable-rounded</code></td> + <td><code class="highlighter-rouge">true</code> (default) or <code class="highlighter-rouge">false</code></td> + <td>Enables predefined <code class="highlighter-rouge">border-radius</code> styles on various components.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$enable-shadows</code></td> + <td><code class="highlighter-rouge">true</code> or <code class="highlighter-rouge">false</code> (default)</td> + <td>Enables predefined <code class="highlighter-rouge">box-shadow</code> styles on various components.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$enable-gradients</code></td> + <td><code class="highlighter-rouge">true</code> or <code class="highlighter-rouge">false</code> (default)</td> + <td>Enables predefined gradients via <code class="highlighter-rouge">background-image</code> styles on various components.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$enable-transitions</code></td> + <td><code class="highlighter-rouge">true</code> (default) or <code class="highlighter-rouge">false</code></td> + <td>Enables predefined <code class="highlighter-rouge">transition</code>s on various components.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$enable-prefers-reduced-motion-media-query</code></td> + <td><code class="highlighter-rouge">true</code> (default) or <code class="highlighter-rouge">false</code></td> + <td>Enables the <a href="/docs/4.3/getting-started/accessibility/#reduced-motion"><code class="highlighter-rouge">prefers-reduced-motion</code> media query</a>, which suppresses certain animations/transitions based on the users’ browser/operating system preferences.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$enable-hover-media-query</code></td> + <td><code class="highlighter-rouge">true</code> or <code class="highlighter-rouge">false</code> (default)</td> + <td><strong>Deprecated</strong></td> + </tr> + <tr> + <td><code class="highlighter-rouge">$enable-grid-classes</code></td> + <td><code class="highlighter-rouge">true</code> (default) or <code class="highlighter-rouge">false</code></td> + <td>Enables the generation of CSS classes for the grid system (e.g., <code class="highlighter-rouge">.container</code>, <code class="highlighter-rouge">.row</code>, <code class="highlighter-rouge">.col-md-1</code>, etc.).</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$enable-caret</code></td> + <td><code class="highlighter-rouge">true</code> (default) or <code class="highlighter-rouge">false</code></td> + <td>Enables pseudo element caret on <code class="highlighter-rouge">.dropdown-toggle</code>.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$enable-pointer-cursor-for-buttons</code></td> + <td><code class="highlighter-rouge">true</code> (default) or <code class="highlighter-rouge">false</code></td> + <td>Add “hand†cursor to non-disabled button elements.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$enable-print-styles</code></td> + <td><code class="highlighter-rouge">true</code> (default) or <code class="highlighter-rouge">false</code></td> + <td>Enables styles for optimizing printing.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$enable-responsive-font-sizes</code></td> + <td><code class="highlighter-rouge">true</code> or <code class="highlighter-rouge">false</code> (default)</td> + <td>Enables <a href="/docs/4.3/content/typography/#responsive-font-sizes">responsive font sizes</a>.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$enable-validation-icons</code></td> + <td><code class="highlighter-rouge">true</code> (default) or <code class="highlighter-rouge">false</code></td> + <td>Enables <code class="highlighter-rouge">background-image</code> icons within textual inputs and some custom forms for validation states.</td> + </tr> + <tr> + <td><code class="highlighter-rouge">$enable-deprecation-messages</code></td> + <td><code class="highlighter-rouge">true</code> or <code class="highlighter-rouge">false</code> (default)</td> + <td>Set to <code class="highlighter-rouge">true</code> to show warnings when using any of the deprecated mixins and functions that are planned to be removed in <code class="highlighter-rouge">v5</code>.</td> + </tr> + </tbody> +</table> + +<h2 id="color">Color</h2> + +<p>Many of Bootstrap’s various components and utilities are built through a series of colors defined in a Sass map. This map can be looped over in Sass to quickly generate a series of rulesets.</p> + +<h3 id="all-colors">All colors</h3> + +<p>All colors available in Bootstrap 4, are available as Sass variables and a Sass map in <code class="highlighter-rouge">scss/_variables.scss</code> file. This will be expanded upon in subsequent minor releases to add additional shades, much like the <a href="#grays">grayscale palette</a> we already include.</p> + +<div class="row"> + + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-blue">Blue</div> + </div> + + + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-indigo">Indigo</div> + </div> + + + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-purple">Purple</div> + </div> + + + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-pink">Pink</div> + </div> + + + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-red">Red</div> + </div> + + + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-orange">Orange</div> + </div> + + + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-yellow">Yellow</div> + </div> + + + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-green">Green</div> + </div> + + + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-teal">Teal</div> + </div> + + + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-cyan">Cyan</div> + </div> + + + + + + + + +</div> + +<p>Here’s how you can use these in your Sass:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// With variable</span> +<span class="nc">.alpha</span> <span class="p">{</span> <span class="nl">color</span><span class="p">:</span> <span class="nv">$purple</span><span class="p">;</span> <span class="p">}</span> + +<span class="c1">// From the Sass map with our `color()` function</span> +<span class="nc">.beta</span> <span class="p">{</span> <span class="nl">color</span><span class="p">:</span> <span class="nf">color</span><span class="p">(</span><span class="s2">"purple"</span><span class="p">);</span> <span class="p">}</span></code></pre></figure> + +<p><a href="/docs/4.3/utilities/colors/">Color utility classes</a> are also available for setting <code class="highlighter-rouge">color</code> and <code class="highlighter-rouge">background-color</code>.</p> + +<div class="bd-callout bd-callout-info"> +<p>In the future, we’ll aim to provide Sass maps and variables for shades of each color as we’ve done with the grayscale colors below.</p> +</div> + +<h3 id="theme-colors">Theme colors</h3> + +<p>We use a subset of all colors to create a smaller color palette for generating color schemes, also available as Sass variables and a Sass map in Bootstraps’s <code class="highlighter-rouge">scss/_variables.scss</code> file.</p> + +<div class="row"> + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-primary">Primary</div> + </div> + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-secondary">Secondary</div> + </div> + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-success">Success</div> + </div> + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-danger">Danger</div> + </div> + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-warning">Warning</div> + </div> + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-info">Info</div> + </div> + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-light">Light</div> + </div> + + <div class="col-md-4"> + <div class="p-3 mb-3 swatch-dark">Dark</div> + </div> + +</div> + +<h3 id="grays">Grays</h3> + +<p>An expansive set of gray variables and a Sass map in <code class="highlighter-rouge">scss/_variables.scss</code> for consistent shades of gray across your project. Note that these are “cool graysâ€, which tend towards a subtle blue tone, rather than neutral grays.</p> + +<div class="row mb-3"> + <div class="col-md-4"> + + <div class="p-3 swatch-100">100</div> + + <div class="p-3 swatch-200">200</div> + + <div class="p-3 swatch-300">300</div> + + <div class="p-3 swatch-400">400</div> + + <div class="p-3 swatch-500">500</div> + + <div class="p-3 swatch-600">600</div> + + <div class="p-3 swatch-700">700</div> + + <div class="p-3 swatch-800">800</div> + + <div class="p-3 swatch-900">900</div> + + </div> +</div> + +<p>Within <code class="highlighter-rouge">scss/_variables.scss</code>, you’ll find Bootstrap’s color variables and Sass map. Here’s an example of the <code class="highlighter-rouge">$colors</code> Sass map:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nv">$colors</span><span class="p">:</span> <span class="p">(</span> + <span class="s2">"blue"</span><span class="o">:</span> <span class="nv">$blue</span><span class="o">,</span> + <span class="s2">"indigo"</span><span class="o">:</span> <span class="nv">$indigo</span><span class="o">,</span> + <span class="s2">"purple"</span><span class="o">:</span> <span class="nv">$purple</span><span class="o">,</span> + <span class="s2">"pink"</span><span class="o">:</span> <span class="nv">$pink</span><span class="o">,</span> + <span class="s2">"red"</span><span class="o">:</span> <span class="nv">$red</span><span class="o">,</span> + <span class="s2">"orange"</span><span class="o">:</span> <span class="nv">$orange</span><span class="o">,</span> + <span class="s2">"yellow"</span><span class="o">:</span> <span class="nv">$yellow</span><span class="o">,</span> + <span class="s2">"green"</span><span class="o">:</span> <span class="nv">$green</span><span class="o">,</span> + <span class="s2">"teal"</span><span class="o">:</span> <span class="nv">$teal</span><span class="o">,</span> + <span class="s2">"cyan"</span><span class="o">:</span> <span class="nv">$cyan</span><span class="o">,</span> + <span class="s2">"white"</span><span class="o">:</span> <span class="nv">$white</span><span class="o">,</span> + <span class="s2">"gray"</span><span class="o">:</span> <span class="nv">$gray-600</span><span class="o">,</span> + <span class="s2">"gray-dark"</span><span class="o">:</span> <span class="nv">$gray-800</span> +<span class="p">)</span> <span class="o">!</span><span class="nb">default</span><span class="p">;</span></code></pre></figure> + +<p>Add, remove, or modify values within the map to update how they’re used in many other components. Unfortunately at this time, not <em>every</em> component utilizes this Sass map. Future updates will strive to improve upon this. Until then, plan on making use of the <code class="highlighter-rouge">${color}</code> variables and this Sass map.</p> + +<h2 id="components">Components</h2> + +<p>Many of Bootstrap’s components and utilities are built with <code class="highlighter-rouge">@each</code> loops that iterate over a Sass map. This is especially helpful for generating variants of a component by our <code class="highlighter-rouge">$theme-colors</code> and creating responsive variants for each breakpoint. As you customize these Sass maps and recompile, you’ll automatically see your changes reflected in these loops.</p> + +<h3 id="modifiers">Modifiers</h3> + +<p>Many of Bootstrap’s components are built with a base-modifier class approach. This means the bulk of the styling is contained to a base class (e.g., <code class="highlighter-rouge">.btn</code>) while style variations are confined to modifier classes (e.g., <code class="highlighter-rouge">.btn-danger</code>). These modifier classes are built from the <code class="highlighter-rouge">$theme-colors</code> map to make customizing the number and name of our modifier classes.</p> + +<p>Here are two examples of how we loop over the <code class="highlighter-rouge">$theme-colors</code> map to generate modifiers to the <code class="highlighter-rouge">.alert</code> component and all our <code class="highlighter-rouge">.bg-*</code> background utilities.</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// Generate alert modifier classes</span> +<span class="k">@each</span> <span class="nv">$color</span><span class="o">,</span> <span class="nv">$value</span> <span class="n">in</span> <span class="nv">$theme-colors</span> <span class="p">{</span> + <span class="nc">.alert-</span><span class="si">#{</span><span class="nv">$color</span><span class="si">}</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">alert-variant</span><span class="p">(</span><span class="nf">theme-color-level</span><span class="p">(</span><span class="nv">$color</span><span class="o">,</span> <span class="m">-10</span><span class="p">)</span><span class="o">,</span> <span class="nf">theme-color-level</span><span class="p">(</span><span class="nv">$color</span><span class="o">,</span> <span class="m">-9</span><span class="p">)</span><span class="o">,</span> <span class="nf">theme-color-level</span><span class="p">(</span><span class="nv">$color</span><span class="o">,</span> <span class="m">6</span><span class="p">));</span> + <span class="p">}</span> +<span class="p">}</span> + +<span class="c1">// Generate `.bg-*` color utilities</span> +<span class="k">@each</span> <span class="nv">$color</span><span class="o">,</span> <span class="nv">$value</span> <span class="n">in</span> <span class="nv">$theme-colors</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">bg-variant</span><span class="p">(</span><span class="s1">'.bg-</span><span class="si">#{</span><span class="nv">$color</span><span class="si">}</span><span class="s1">'</span><span class="o">,</span> <span class="nv">$value</span><span class="p">);</span> +<span class="p">}</span></code></pre></figure> + +<h3 id="responsive">Responsive</h3> + +<p>These Sass loops aren’t limited to color maps, either. You can also generate responsive variations of your components or utilities. Take for example our responsive text alignment utilities where we mix an <code class="highlighter-rouge">@each</code> loop for the <code class="highlighter-rouge">$grid-breakpoints</code> Sass map with a media query include.</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="k">@each</span> <span class="nv">$breakpoint</span> <span class="n">in</span> <span class="nf">map-keys</span><span class="p">(</span><span class="nv">$grid-breakpoints</span><span class="p">)</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">media-breakpoint-up</span><span class="p">(</span><span class="nv">$breakpoint</span><span class="p">)</span> <span class="p">{</span> + <span class="nv">$infix</span><span class="p">:</span> <span class="nf">breakpoint-infix</span><span class="p">(</span><span class="nv">$breakpoint</span><span class="o">,</span> <span class="nv">$grid-breakpoints</span><span class="p">);</span> + + <span class="nc">.text</span><span class="si">#{</span><span class="nv">$infix</span><span class="si">}</span><span class="nc">-left</span> <span class="p">{</span> <span class="nl">text-align</span><span class="p">:</span> <span class="nb">left</span> <span class="o">!</span><span class="n">important</span><span class="p">;</span> <span class="p">}</span> + <span class="nc">.text</span><span class="si">#{</span><span class="nv">$infix</span><span class="si">}</span><span class="nc">-right</span> <span class="p">{</span> <span class="nl">text-align</span><span class="p">:</span> <span class="nb">right</span> <span class="o">!</span><span class="n">important</span><span class="p">;</span> <span class="p">}</span> + <span class="nc">.text</span><span class="si">#{</span><span class="nv">$infix</span><span class="si">}</span><span class="nc">-center</span> <span class="p">{</span> <span class="nl">text-align</span><span class="p">:</span> <span class="nb">center</span> <span class="o">!</span><span class="n">important</span><span class="p">;</span> <span class="p">}</span> + <span class="p">}</span> +<span class="p">}</span></code></pre></figure> + +<p>Should you need to modify your <code class="highlighter-rouge">$grid-breakpoints</code>, your changes will apply to all the loops iterating over that map.</p> + +<h2 id="css-variables">CSS variables</h2> + +<p>Bootstrap 4 includes around two dozen <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_variables">CSS custom properties (variables)</a> in its compiled CSS. These provide easy access to commonly used values like our theme colors, breakpoints, and primary font stacks when working in your browser’s Inspector, a code sandbox, or general prototyping.</p> + +<h3 id="available-variables">Available variables</h3> + +<p>Here are the variables we include (note that the <code class="highlighter-rouge">:root</code> is required). They’re located in our <code class="highlighter-rouge">_root.scss</code> file.</p> + +<figure class="highlight"><pre><code class="language-css" data-lang="css"><span class="nd">:root</span> <span class="p">{</span> + <span class="py">--blue</span><span class="p">:</span> <span class="m">#007bff</span><span class="p">;</span> + <span class="py">--indigo</span><span class="p">:</span> <span class="m">#6610f2</span><span class="p">;</span> + <span class="py">--purple</span><span class="p">:</span> <span class="m">#6f42c1</span><span class="p">;</span> + <span class="py">--pink</span><span class="p">:</span> <span class="m">#e83e8c</span><span class="p">;</span> + <span class="py">--red</span><span class="p">:</span> <span class="m">#dc3545</span><span class="p">;</span> + <span class="py">--orange</span><span class="p">:</span> <span class="m">#fd7e14</span><span class="p">;</span> + <span class="py">--yellow</span><span class="p">:</span> <span class="m">#ffc107</span><span class="p">;</span> + <span class="py">--green</span><span class="p">:</span> <span class="m">#28a745</span><span class="p">;</span> + <span class="py">--teal</span><span class="p">:</span> <span class="m">#20c997</span><span class="p">;</span> + <span class="py">--cyan</span><span class="p">:</span> <span class="m">#17a2b8</span><span class="p">;</span> + <span class="py">--white</span><span class="p">:</span> <span class="m">#fff</span><span class="p">;</span> + <span class="py">--gray</span><span class="p">:</span> <span class="m">#6c757d</span><span class="p">;</span> + <span class="py">--gray-dark</span><span class="p">:</span> <span class="m">#343a40</span><span class="p">;</span> + <span class="py">--primary</span><span class="p">:</span> <span class="m">#007bff</span><span class="p">;</span> + <span class="py">--secondary</span><span class="p">:</span> <span class="m">#6c757d</span><span class="p">;</span> + <span class="py">--success</span><span class="p">:</span> <span class="m">#28a745</span><span class="p">;</span> + <span class="py">--info</span><span class="p">:</span> <span class="m">#17a2b8</span><span class="p">;</span> + <span class="py">--warning</span><span class="p">:</span> <span class="m">#ffc107</span><span class="p">;</span> + <span class="py">--danger</span><span class="p">:</span> <span class="m">#dc3545</span><span class="p">;</span> + <span class="py">--light</span><span class="p">:</span> <span class="m">#f8f9fa</span><span class="p">;</span> + <span class="py">--dark</span><span class="p">:</span> <span class="m">#343a40</span><span class="p">;</span> + <span class="py">--breakpoint-xs</span><span class="p">:</span> <span class="m">0</span><span class="p">;</span> + <span class="py">--breakpoint-sm</span><span class="p">:</span> <span class="m">576px</span><span class="p">;</span> + <span class="py">--breakpoint-md</span><span class="p">:</span> <span class="m">768px</span><span class="p">;</span> + <span class="py">--breakpoint-lg</span><span class="p">:</span> <span class="m">992px</span><span class="p">;</span> + <span class="py">--breakpoint-xl</span><span class="p">:</span> <span class="m">1200px</span><span class="p">;</span> + <span class="py">--font-family-sans-serif</span><span class="p">:</span> <span class="n">-apple-system</span><span class="p">,</span> <span class="n">BlinkMacSystemFont</span><span class="p">,</span> <span class="s1">"Segoe UI"</span><span class="p">,</span> <span class="n">Roboto</span><span class="p">,</span> <span class="s1">"Helvetica Neue"</span><span class="p">,</span> <span class="n">Arial</span><span class="p">,</span> <span class="nb">sans-serif</span><span class="p">,</span> <span class="s1">"Apple Color Emoji"</span><span class="p">,</span> <span class="s1">"Segoe UI Emoji"</span><span class="p">,</span> <span class="s1">"Segoe UI Symbol"</span><span class="p">;</span> + <span class="py">--font-family-monospace</span><span class="p">:</span> <span class="n">SFMono-Regular</span><span class="p">,</span> <span class="n">Menlo</span><span class="p">,</span> <span class="n">Monaco</span><span class="p">,</span> <span class="n">Consolas</span><span class="p">,</span> <span class="s1">"Liberation Mono"</span><span class="p">,</span> <span class="s1">"Courier New"</span><span class="p">,</span> <span class="nb">monospace</span><span class="p">;</span> +<span class="p">}</span></code></pre></figure> + +<h3 id="examples">Examples</h3> + +<p>CSS variables offer similar flexibility to Sass’s variables, but without the need for compilation before being served to the browser. For example, here we’re resetting our page’s font and link styles with CSS variables.</p> + +<figure class="highlight"><pre><code class="language-css" data-lang="css"><span class="nt">body</span> <span class="p">{</span> + <span class="nl">font</span><span class="p">:</span> <span class="m">1rem</span><span class="p">/</span><span class="m">1.5</span> <span class="n">var</span><span class="p">(</span><span class="n">--font-family-sans-serif</span><span class="p">);</span> +<span class="p">}</span> +<span class="nt">a</span> <span class="p">{</span> + <span class="nl">color</span><span class="p">:</span> <span class="n">var</span><span class="p">(</span><span class="n">--blue</span><span class="p">);</span> +<span class="p">}</span></code></pre></figure> + +<h3 id="breakpoint-variables">Breakpoint variables</h3> + +<p>While we originally included breakpoints in our CSS variables (e.g., <code class="highlighter-rouge">--breakpoint-md</code>), <strong>these are not supported in media queries</strong>, but they can still be used <em>within</em> rulesets in media queries. These breakpoint variables remain in the compiled CSS for backward compatibility given they can be utilized by JavaScript. <a href="https://www.w3.org/TR/css-variables-1/#using-variables">Learn more in the spec</a>.</p> + +<p>Here’s an example of <strong>what’s not supported:</strong></p> + +<figure class="highlight"><pre><code class="language-css" data-lang="css"><span class="k">@media</span> <span class="p">(</span><span class="n">min-width</span><span class="p">:</span> <span class="n">var</span><span class="p">(</span><span class="n">--breakpoint-sm</span><span class="p">))</span> <span class="p">{</span> + <span class="o">...</span> +<span class="p">}</span></code></pre></figure> + +<p>And here’s an example of <strong>what is supported:</strong></p> + +<figure class="highlight"><pre><code class="language-css" data-lang="css"><span class="k">@media</span> <span class="p">(</span><span class="n">min-width</span><span class="p">:</span> <span class="m">768px</span><span class="p">)</span> <span class="p">{</span> + <span class="nc">.custom-element</span> <span class="p">{</span> + <span class="nl">color</span><span class="p">:</span> <span class="n">var</span><span class="p">(</span><span class="n">--primary</span><span class="p">);</span> + <span class="p">}</span> +<span class="p">}</span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/getting-started/webpack/index.html b/docs/4.3/getting-started/webpack/index.html new file mode 100644 index 0000000000..f5c0660e12 --- /dev/null +++ b/docs/4.3/getting-started/webpack/index.html @@ -0,0 +1,567 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Learn how to include Bootstrap in your project using Webpack."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Webpack · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/getting-started/webpack/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Webpack"> +<meta name="twitter:description" content="Learn how to include Bootstrap in your project using Webpack."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/getting-started/webpack/"> +<meta property="og:title" content="Webpack"> +<meta property="og:description" content="Learn how to include Bootstrap in your project using Webpack."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#installing-bootstrap">Installing Bootstrap</a></li> +<li class="toc-entry toc-h2"><a href="#importing-javascript">Importing JavaScript</a></li> +<li class="toc-entry toc-h2"><a href="#importing-styles">Importing Styles</a> +<ul> +<li class="toc-entry toc-h3"><a href="#importing-precompiled-sass">Importing Precompiled Sass</a></li> +<li class="toc-entry toc-h3"><a href="#importing-compiled-css">Importing Compiled CSS</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Webpack</h1> + <p class="bd-lead">Learn how to include Bootstrap in your project using Webpack.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="installing-bootstrap">Installing Bootstrap</h2> + +<p><a href="/docs/4.3/getting-started/download/#npm">Install bootstrap</a> as a Node.js module using npm.</p> + +<h2 id="importing-javascript">Importing JavaScript</h2> + +<p>Import <a href="/docs/4.3/getting-started/javascript/">Bootstrap’s JavaScript</a> by adding this line to your app’s entry point (usually <code class="highlighter-rouge">index.js</code> or <code class="highlighter-rouge">app.js</code>):</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="k">import</span> <span class="s1">'bootstrap'</span><span class="p">;</span></code></pre></figure> + +<p>Alternatively, you may <strong>import plugins individually</strong> as needed:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="k">import</span> <span class="s1">'bootstrap/js/dist/util'</span><span class="p">;</span> +<span class="k">import</span> <span class="s1">'bootstrap/js/dist/alert'</span><span class="p">;</span> +<span class="p">...</span></code></pre></figure> + +<p>Bootstrap is dependent on <a href="https://jquery.com/">jQuery</a> and <a href="https://popper.js.org/">Popper</a>, +these are defined as <code class="highlighter-rouge">peerDependencies</code>, this means that you will have to make sure to add both of them +to your <code class="highlighter-rouge">package.json</code> using <code class="highlighter-rouge">npm install --save jquery popper.js</code>.</p> + +<h2 id="importing-styles">Importing Styles</h2> + +<h3 id="importing-precompiled-sass">Importing Precompiled Sass</h3> + +<p>To enjoy the full potential of Bootstrap and customize it to your needs, use the source files as a part of your project’s bundling process.</p> + +<p>First, create your own <code class="highlighter-rouge">_custom.scss</code> and use it to override the <a href="/docs/4.3/getting-started/theming/">built-in custom variables</a>. Then, use your main Sass file to import your custom variables, followed by Bootstrap:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="k">@import</span> <span class="s2">"custom"</span><span class="p">;</span> +<span class="k">@import</span> <span class="s2">"~bootstrap/scss/bootstrap"</span><span class="p">;</span></code></pre></figure> + +<p>For Bootstrap to compile, make sure you install and use the required loaders: <a href="https://github.com/webpack-contrib/sass-loader">sass-loader</a>, <a href="https://github.com/postcss/postcss-loader">postcss-loader</a> with <a href="https://github.com/postcss/autoprefixer#webpack">Autoprefixer</a>. With minimal setup, your webpack config should include this rule or similar:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="p">...</span> +<span class="p">{</span> + <span class="nl">test</span><span class="p">:</span> <span class="sr">/</span><span class="se">\.(</span><span class="sr">scss</span><span class="se">)</span><span class="sr">$/</span><span class="p">,</span> + <span class="nx">use</span><span class="p">:</span> <span class="p">[{</span> + <span class="na">loader</span><span class="p">:</span> <span class="s1">'style-loader'</span><span class="p">,</span> <span class="c1">// inject CSS to page</span> + <span class="p">},</span> <span class="p">{</span> + <span class="na">loader</span><span class="p">:</span> <span class="s1">'css-loader'</span><span class="p">,</span> <span class="c1">// translates CSS into CommonJS modules</span> + <span class="p">},</span> <span class="p">{</span> + <span class="na">loader</span><span class="p">:</span> <span class="s1">'postcss-loader'</span><span class="p">,</span> <span class="c1">// Run postcss actions</span> + <span class="na">options</span><span class="p">:</span> <span class="p">{</span> + <span class="na">plugins</span><span class="p">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> <span class="c1">// postcss plugins, can be exported to postcss.config.js</span> + <span class="k">return</span> <span class="p">[</span> + <span class="nx">require</span><span class="p">(</span><span class="s1">'autoprefixer'</span><span class="p">)</span> + <span class="p">];</span> + <span class="p">}</span> + <span class="p">}</span> + <span class="p">},</span> <span class="p">{</span> + <span class="na">loader</span><span class="p">:</span> <span class="s1">'sass-loader'</span> <span class="c1">// compiles Sass to CSS</span> + <span class="p">}]</span> +<span class="p">},</span> +<span class="p">...</span></code></pre></figure> + +<h3 id="importing-compiled-css">Importing Compiled CSS</h3> + +<p>Alternatively, you may use Bootstrap’s ready-to-use CSS by simply adding this line to your project’s entry point:</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="k">import</span> <span class="s1">'bootstrap/dist/css/bootstrap.min.css'</span><span class="p">;</span></code></pre></figure> + +<p>In this case you may use your existing rule for <code class="highlighter-rouge">css</code> without any special modifications to webpack config, except you don’t need <code class="highlighter-rouge">sass-loader</code> just <a href="https://github.com/webpack-contrib/style-loader">style-loader</a> and <a href="https://github.com/webpack-contrib/css-loader">css-loader</a>.</p> + +<figure class="highlight"><pre><code class="language-js" data-lang="js"><span class="p">...</span> +<span class="nx">module</span><span class="p">:</span> <span class="p">{</span> + <span class="nl">rules</span><span class="p">:</span> <span class="p">[</span> + <span class="p">{</span> + <span class="na">test</span><span class="p">:</span> <span class="sr">/</span><span class="se">\.</span><span class="sr">css$/</span><span class="p">,</span> + <span class="na">use</span><span class="p">:</span> <span class="p">[</span><span class="s1">'style-loader'</span><span class="p">,</span> <span class="s1">'css-loader'</span><span class="p">]</span> + <span class="p">}</span> + <span class="p">]</span> +<span class="p">}</span> +<span class="p">...</span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/index.html b/docs/4.3/index.html new file mode 100644 index 0000000000..770ddbcef0 --- /dev/null +++ b/docs/4.3/index.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<html lang="en-US"> + <meta charset="utf-8"> + <title>Redirecting…</title> + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/getting-started/introduction/"> + <script>location="https://getbootstrap.com/docs/4.3/getting-started/introduction/"</script> + <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.3/getting-started/introduction/"> + <meta name="robots" content="noindex"> + <h1>Redirecting…</h1> + <a href="https://getbootstrap.com/docs/4.3/getting-started/introduction/">Click here if you are not redirected.</a> +</html> diff --git a/docs/4.3/layout/grid/index.html b/docs/4.3/layout/grid/index.html new file mode 100644 index 0000000000..3e3d7c9068 --- /dev/null +++ b/docs/4.3/layout/grid/index.html @@ -0,0 +1,1724 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Use our powerful mobile-first flexbox grid to build layouts of all shapes and sizes thanks to a twelve column system, five default responsive tiers, Sass variables and mixins, and dozens of predefined classes."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Grid system · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/layout/grid/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Grid system"> +<meta name="twitter:description" content="Use our powerful mobile-first flexbox grid to build layouts of all shapes and sizes thanks to a twelve column system, five default responsive tiers, Sass variables and mixins, and dozens of predefined classes."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/layout/grid/"> +<meta property="og:title" content="Grid system"> +<meta property="og:description" content="Use our powerful mobile-first flexbox grid to build layouts of all shapes and sizes thanks to a twelve column system, five default responsive tiers, Sass variables and mixins, and dozens of predefined classes."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#how-it-works">How it works</a></li> +<li class="toc-entry toc-h2"><a href="#grid-options">Grid options</a></li> +<li class="toc-entry toc-h2"><a href="#auto-layout-columns">Auto-layout columns</a> +<ul> +<li class="toc-entry toc-h3"><a href="#equal-width">Equal-width</a></li> +<li class="toc-entry toc-h3"><a href="#setting-one-column-width">Setting one column width</a></li> +<li class="toc-entry toc-h3"><a href="#variable-width-content">Variable width content</a></li> +<li class="toc-entry toc-h3"><a href="#equal-width-multi-row">Equal-width multi-row</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#responsive-classes">Responsive classes</a> +<ul> +<li class="toc-entry toc-h3"><a href="#all-breakpoints">All breakpoints</a></li> +<li class="toc-entry toc-h3"><a href="#stacked-to-horizontal">Stacked to horizontal</a></li> +<li class="toc-entry toc-h3"><a href="#mix-and-match">Mix and match</a></li> +<li class="toc-entry toc-h3"><a href="#gutters">Gutters</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#alignment">Alignment</a> +<ul> +<li class="toc-entry toc-h3"><a href="#vertical-alignment">Vertical alignment</a></li> +<li class="toc-entry toc-h3"><a href="#horizontal-alignment">Horizontal alignment</a></li> +<li class="toc-entry toc-h3"><a href="#no-gutters">No gutters</a></li> +<li class="toc-entry toc-h3"><a href="#column-wrapping">Column wrapping</a></li> +<li class="toc-entry toc-h3"><a href="#column-breaks">Column breaks</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#reordering">Reordering</a> +<ul> +<li class="toc-entry toc-h3"><a href="#order-classes">Order classes</a></li> +<li class="toc-entry toc-h3"><a href="#offsetting-columns">Offsetting columns</a> +<ul> +<li class="toc-entry toc-h4"><a href="#offset-classes">Offset classes</a></li> +<li class="toc-entry toc-h4"><a href="#margin-utilities">Margin utilities</a></li> +</ul> +</li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#nesting">Nesting</a></li> +<li class="toc-entry toc-h2"><a href="#sass-mixins">Sass mixins</a> +<ul> +<li class="toc-entry toc-h3"><a href="#variables">Variables</a></li> +<li class="toc-entry toc-h3"><a href="#mixins">Mixins</a></li> +<li class="toc-entry toc-h3"><a href="#example-usage">Example usage</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#customizing-the-grid">Customizing the grid</a> +<ul> +<li class="toc-entry toc-h3"><a href="#columns-and-gutters">Columns and gutters</a></li> +<li class="toc-entry toc-h3"><a href="#grid-tiers">Grid tiers</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Grid system</h1> + <p class="bd-lead">Use our powerful mobile-first flexbox grid to build layouts of all shapes and sizes thanks to a twelve column system, five default responsive tiers, Sass variables and mixins, and dozens of predefined classes.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="how-it-works">How it works</h2> + +<p>Bootstrap’s grid system uses a series of containers, rows, and columns to layout and align content. It’s built with <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Flexible_Box_Layout/Basic_Concepts_of_Flexbox">flexbox</a> and is fully responsive. Below is an example and an in-depth look at how the grid comes together.</p> + +<p><strong>New to or unfamiliar with flexbox?</strong> <a href="https://css-tricks.com/snippets/css/a-guide-to-flexbox/#flexbox-background">Read this CSS Tricks flexbox guide</a> for background, terminology, guidelines, and code snippets.</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col-sm"> + One of three columns + </div> + <div class="col-sm"> + One of three columns + </div> + <div class="col-sm"> + One of three columns + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm"</span><span class="nt">></span> + One of three columns + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm"</span><span class="nt">></span> + One of three columns + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm"</span><span class="nt">></span> + One of three columns + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<p>The above example creates three equal-width columns on small, medium, large, and extra large devices using our predefined grid classes. Those columns are centered in the page with the parent <code class="highlighter-rouge">.container</code>.</p> + +<p>Breaking it down, here’s how it works:</p> + +<ul> + <li>Containers provide a means to center and horizontally pad your site’s contents. Use <code class="highlighter-rouge">.container</code> for a responsive pixel width or <code class="highlighter-rouge">.container-fluid</code> for <code class="highlighter-rouge">width: 100%</code> across all viewport and device sizes.</li> + <li>Rows are wrappers for columns. Each column has horizontal <code class="highlighter-rouge">padding</code> (called a gutter) for controlling the space between them. This <code class="highlighter-rouge">padding</code> is then counteracted on the rows with negative margins. This way, all the content in your columns is visually aligned down the left side.</li> + <li>In a grid layout, content must be placed within columns and only columns may be immediate children of rows.</li> + <li>Thanks to flexbox, grid columns without a specified <code class="highlighter-rouge">width</code> will automatically layout as equal width columns. For example, four instances of <code class="highlighter-rouge">.col-sm</code> will each automatically be 25% wide from the small breakpoint and up. See the <a href="#auto-layout-columns">auto-layout columns</a> section for more examples.</li> + <li>Column classes indicate the number of columns you’d like to use out of the possible 12 per row. So, if you want three equal-width columns across, you can use <code class="highlighter-rouge">.col-4</code>.</li> + <li>Column <code class="highlighter-rouge">width</code>s are set in percentages, so they’re always fluid and sized relative to their parent element.</li> + <li>Columns have horizontal <code class="highlighter-rouge">padding</code> to create the gutters between individual columns, however, you can remove the <code class="highlighter-rouge">margin</code> from rows and <code class="highlighter-rouge">padding</code> from columns with <code class="highlighter-rouge">.no-gutters</code> on the <code class="highlighter-rouge">.row</code>.</li> + <li>To make the grid responsive, there are five grid breakpoints, one for each <a href="/docs/4.3/layout/overview/#responsive-breakpoints">responsive breakpoint</a>: all breakpoints (extra small), small, medium, large, and extra large.</li> + <li>Grid breakpoints are based on minimum width media queries, meaning <strong>they apply to that one breakpoint and all those above it</strong> (e.g., <code class="highlighter-rouge">.col-sm-4</code> applies to small, medium, large, and extra large devices, but not the first <code class="highlighter-rouge">xs</code> breakpoint).</li> + <li>You can use predefined grid classes (like <code class="highlighter-rouge">.col-4</code>) or <a href="#sass-mixins">Sass mixins</a> for more semantic markup.</li> +</ul> + +<p>Be aware of the limitations and <a href="https://github.com/philipwalton/flexbugs">bugs around flexbox</a>, like the <a href="https://github.com/philipwalton/flexbugs#flexbug-9">inability to use some HTML elements as flex containers</a>.</p> + +<h2 id="grid-options">Grid options</h2> + +<p>While Bootstrap uses <code class="highlighter-rouge">em</code>s or <code class="highlighter-rouge">rem</code>s for defining most sizes, <code class="highlighter-rouge">px</code>s are used for grid breakpoints and container widths. This is because the viewport width is in pixels and does not change with the <a href="https://drafts.csswg.org/mediaqueries-3/#units">font size</a>.</p> + +<p>See how aspects of the Bootstrap grid system work across multiple devices with a handy table.</p> + +<table class="table table-bordered table-striped"> + <thead> + <tr> + <th></th> + <th class="text-center"> + Extra small<br /> + <small><576px</small> + </th> + <th class="text-center"> + Small<br /> + <small>≥576px</small> + </th> + <th class="text-center"> + Medium<br /> + <small>≥768px</small> + </th> + <th class="text-center"> + Large<br /> + <small>≥992px</small> + </th> + <th class="text-center"> + Extra large<br /> + <small>≥1200px</small> + </th> + </tr> + </thead> + <tbody> + <tr> + <th class="text-nowrap" scope="row">Max container width</th> + <td>None (auto)</td> + <td>540px</td> + <td>720px</td> + <td>960px</td> + <td>1140px</td> + </tr> + <tr> + <th class="text-nowrap" scope="row">Class prefix</th> + <td><code>.col-</code></td> + <td><code>.col-sm-</code></td> + <td><code>.col-md-</code></td> + <td><code>.col-lg-</code></td> + <td><code>.col-xl-</code></td> + </tr> + <tr> + <th class="text-nowrap" scope="row"># of columns</th> + <td colspan="5">12</td> + </tr> + <tr> + <th class="text-nowrap" scope="row">Gutter width</th> + <td colspan="5">30px (15px on each side of a column)</td> + </tr> + <tr> + <th class="text-nowrap" scope="row">Nestable</th> + <td colspan="5">Yes</td> + </tr> + <tr> + <th class="text-nowrap" scope="row">Column ordering</th> + <td colspan="5">Yes</td> + </tr> + </tbody> +</table> + +<h2 id="auto-layout-columns">Auto-layout columns</h2> + +<p>Utilize breakpoint-specific column classes for easy column sizing without an explicit numbered class like <code class="highlighter-rouge">.col-sm-6</code>.</p> + +<h3 id="equal-width">Equal-width</h3> + +<p>For example, here are two grid layouts that apply to every device and viewport, from <code class="highlighter-rouge">xs</code> to <code class="highlighter-rouge">xl</code>. Add any number of unit-less classes for each breakpoint you need and every column will be the same width.</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col"> + 1 of 2 + </div> + <div class="col"> + 2 of 2 + </div> + </div> + <div class="row"> + <div class="col"> + 1 of 3 + </div> + <div class="col"> + 2 of 3 + </div> + <div class="col"> + 3 of 3 + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + 1 of 2 + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + 2 of 2 + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + 1 of 3 + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + 2 of 3 + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + 3 of 3 + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<p>Equal-width columns can be broken into multiple lines, but there was a <a href="https://github.com/philipwalton/flexbugs#flexbug-11">Safari flexbox bug</a> that prevented this from working without an explicit <code class="highlighter-rouge">flex-basis</code> or <code class="highlighter-rouge">border</code>. There are workarounds for older browser versions, but they shouldn’t be necessary if you’re up-to-date.</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col">Column</div> + <div class="col">Column</div> + <div class="w-100"></div> + <div class="col">Column</div> + <div class="col">Column</div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span>Column<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span>Column<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"w-100"</span><span class="nt">></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span>Column<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span>Column<span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h3 id="setting-one-column-width">Setting one column width</h3> + +<p>Auto-layout for flexbox grid columns also means you can set the width of one column and have the sibling columns automatically resize around it. You may use predefined grid classes (as shown below), grid mixins, or inline widths. Note that the other columns will resize no matter the width of the center column.</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col"> + 1 of 3 + </div> + <div class="col-6"> + 2 of 3 (wider) + </div> + <div class="col"> + 3 of 3 + </div> + </div> + <div class="row"> + <div class="col"> + 1 of 3 + </div> + <div class="col-5"> + 2 of 3 (wider) + </div> + <div class="col"> + 3 of 3 + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + 1 of 3 + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6"</span><span class="nt">></span> + 2 of 3 (wider) + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + 3 of 3 + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + 1 of 3 + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-5"</span><span class="nt">></span> + 2 of 3 (wider) + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + 3 of 3 + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h3 id="variable-width-content">Variable width content</h3> + +<p>Use <code class="highlighter-rouge">col-{breakpoint}-auto</code> classes to size columns based on the natural width of their content.</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row justify-content-md-center"> + <div class="col col-lg-2"> + 1 of 3 + </div> + <div class="col-md-auto"> + Variable width content + </div> + <div class="col col-lg-2"> + 3 of 3 + </div> + </div> + <div class="row"> + <div class="col"> + 1 of 3 + </div> + <div class="col-md-auto"> + Variable width content + </div> + <div class="col col-lg-2"> + 3 of 3 + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row justify-content-md-center"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col col-lg-2"</span><span class="nt">></span> + 1 of 3 + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-auto"</span><span class="nt">></span> + Variable width content + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col col-lg-2"</span><span class="nt">></span> + 3 of 3 + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + 1 of 3 + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-auto"</span><span class="nt">></span> + Variable width content + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col col-lg-2"</span><span class="nt">></span> + 3 of 3 + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h3 id="equal-width-multi-row">Equal-width multi-row</h3> + +<p>Create equal-width columns that span multiple rows by inserting a <code class="highlighter-rouge">.w-100</code> where you want the columns to break to a new line. Make the breaks responsive by mixing the <code class="highlighter-rouge">.w-100</code> with some <a href="/docs/4.3/utilities/display/">responsive display utilities</a>.</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col">col</div> + <div class="col">col</div> + <div class="w-100"></div> + <div class="col">col</div> + <div class="col">col</div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span>col<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span>col<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"w-100"</span><span class="nt">></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span>col<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span>col<span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h2 id="responsive-classes">Responsive classes</h2> + +<p>Bootstrap’s grid includes five tiers of predefined classes for building complex responsive layouts. Customize the size of your columns on extra small, small, medium, large, or extra large devices however you see fit.</p> + +<h3 id="all-breakpoints">All breakpoints</h3> + +<p>For grids that are the same from the smallest of devices to the largest, use the <code class="highlighter-rouge">.col</code> and <code class="highlighter-rouge">.col-*</code> classes. Specify a numbered class when you need a particularly sized column; otherwise, feel free to stick to <code class="highlighter-rouge">.col</code>.</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col">col</div> + <div class="col">col</div> + <div class="col">col</div> + <div class="col">col</div> + </div> + <div class="row"> + <div class="col-8">col-8</div> + <div class="col-4">col-4</div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span>col<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span>col<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span>col<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span>col<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-8"</span><span class="nt">></span>col-8<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-4"</span><span class="nt">></span>col-4<span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h3 id="stacked-to-horizontal">Stacked to horizontal</h3> + +<p>Using a single set of <code class="highlighter-rouge">.col-sm-*</code> classes, you can create a basic grid system that starts out stacked and becomes horizontal at the small breakpoint (<code class="highlighter-rouge">sm</code>).</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col-sm-8">col-sm-8</div> + <div class="col-sm-4">col-sm-4</div> + </div> + <div class="row"> + <div class="col-sm">col-sm</div> + <div class="col-sm">col-sm</div> + <div class="col-sm">col-sm</div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-8"</span><span class="nt">></span>col-sm-8<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-4"</span><span class="nt">></span>col-sm-4<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm"</span><span class="nt">></span>col-sm<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm"</span><span class="nt">></span>col-sm<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm"</span><span class="nt">></span>col-sm<span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h3 id="mix-and-match">Mix and match</h3> + +<p>Don’t want your columns to simply stack in some grid tiers? Use a combination of different classes for each tier as needed. See the example below for a better idea of how it all works.</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <!-- Stack the columns on mobile by making one full-width and the other half-width --> + <div class="row"> + <div class="col-12 col-md-8">.col-12 .col-md-8</div> + <div class="col-6 col-md-4">.col-6 .col-md-4</div> + </div> + + <!-- Columns start at 50% wide on mobile and bump up to 33.3% wide on desktop --> + <div class="row"> + <div class="col-6 col-md-4">.col-6 .col-md-4</div> + <div class="col-6 col-md-4">.col-6 .col-md-4</div> + <div class="col-6 col-md-4">.col-6 .col-md-4</div> + </div> + + <!-- Columns are always 50% wide, on mobile and desktop --> + <div class="row"> + <div class="col-6">.col-6</div> + <div class="col-6">.col-6</div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="c"><!-- Stack the columns on mobile by making one full-width and the other half-width --></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-12 col-md-8"</span><span class="nt">></span>.col-12 .col-md-8<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6 col-md-4"</span><span class="nt">></span>.col-6 .col-md-4<span class="nt"></div></span> + <span class="nt"></div></span> + + <span class="c"><!-- Columns start at 50% wide on mobile and bump up to 33.3% wide on desktop --></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6 col-md-4"</span><span class="nt">></span>.col-6 .col-md-4<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6 col-md-4"</span><span class="nt">></span>.col-6 .col-md-4<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6 col-md-4"</span><span class="nt">></span>.col-6 .col-md-4<span class="nt"></div></span> + <span class="nt"></div></span> + + <span class="c"><!-- Columns are always 50% wide, on mobile and desktop --></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6"</span><span class="nt">></span>.col-6<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6"</span><span class="nt">></span>.col-6<span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h3 id="gutters">Gutters</h3> + +<p>Gutters can be responsively adjusted by breakpoint-specific padding and negative margin utility classes. To change the gutters in a given row, pair a negative margin utility on the <code class="highlighter-rouge">.row</code> and matching padding utilities on the <code class="highlighter-rouge">.col</code>s. The <code class="highlighter-rouge">.container</code> or <code class="highlighter-rouge">.container-fluid</code> parent may need to be adjusted too to avoid unwanted overflow, using again matching padding utility.</p> + +<p>Here’s an example of customizing the Bootstrap grid at the large (<code class="highlighter-rouge">lg</code>) breakpoint and above. We’ve increased the <code class="highlighter-rouge">.col</code> padding with <code class="highlighter-rouge">.px-lg-5</code>, counteracted that with <code class="highlighter-rouge">.mx-lg-n5</code> on the parent <code class="highlighter-rouge">.row</code> and then adjusted the <code class="highlighter-rouge">.container</code> wrapper with <code class="highlighter-rouge">.px-lg-5</code>.</p> + +<div class="bd-example"> +<div class="container px-lg-5"> + <div class="row mx-lg-n5"> + <div class="col py-3 px-lg-5 border bg-light">Custom column padding</div> + <div class="col py-3 px-lg-5 border bg-light">Custom column padding</div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container px-lg-5"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row mx-lg-n5"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col py-3 px-lg-5 border bg-light"</span><span class="nt">></span>Custom column padding<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col py-3 px-lg-5 border bg-light"</span><span class="nt">></span>Custom column padding<span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="alignment">Alignment</h2> + +<p>Use flexbox alignment utilities to vertically and horizontally align columns. <strong>Internet Explorer 10-11 do not support vertical alignment of flex items when the flex container has a <code class="highlighter-rouge">min-height</code> as shown below.</strong> <a href="https://github.com/philipwalton/flexbugs#flexbug-3">See Flexbugs #3 for more details.</a></p> + +<h3 id="vertical-alignment">Vertical alignment</h3> + +<div class="bd-example-row bd-example-row-flex-cols"> + +<div class="bd-example"> +<div class="container"> + <div class="row align-items-start"> + <div class="col"> + One of three columns + </div> + <div class="col"> + One of three columns + </div> + <div class="col"> + One of three columns + </div> + </div> + <div class="row align-items-center"> + <div class="col"> + One of three columns + </div> + <div class="col"> + One of three columns + </div> + <div class="col"> + One of three columns + </div> + </div> + <div class="row align-items-end"> + <div class="col"> + One of three columns + </div> + <div class="col"> + One of three columns + </div> + <div class="col"> + One of three columns + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row align-items-start"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + One of three columns + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + One of three columns + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + One of three columns + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row align-items-center"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + One of three columns + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + One of three columns + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + One of three columns + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row align-items-end"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + One of three columns + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + One of three columns + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + One of three columns + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<div class="bd-example-row bd-example-row-flex-cols"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col align-self-start"> + One of three columns + </div> + <div class="col align-self-center"> + One of three columns + </div> + <div class="col align-self-end"> + One of three columns + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col align-self-start"</span><span class="nt">></span> + One of three columns + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col align-self-center"</span><span class="nt">></span> + One of three columns + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col align-self-end"</span><span class="nt">></span> + One of three columns + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h3 id="horizontal-alignment">Horizontal alignment</h3> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row justify-content-start"> + <div class="col-4"> + One of two columns + </div> + <div class="col-4"> + One of two columns + </div> + </div> + <div class="row justify-content-center"> + <div class="col-4"> + One of two columns + </div> + <div class="col-4"> + One of two columns + </div> + </div> + <div class="row justify-content-end"> + <div class="col-4"> + One of two columns + </div> + <div class="col-4"> + One of two columns + </div> + </div> + <div class="row justify-content-around"> + <div class="col-4"> + One of two columns + </div> + <div class="col-4"> + One of two columns + </div> + </div> + <div class="row justify-content-between"> + <div class="col-4"> + One of two columns + </div> + <div class="col-4"> + One of two columns + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row justify-content-start"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-4"</span><span class="nt">></span> + One of two columns + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-4"</span><span class="nt">></span> + One of two columns + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row justify-content-center"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-4"</span><span class="nt">></span> + One of two columns + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-4"</span><span class="nt">></span> + One of two columns + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row justify-content-end"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-4"</span><span class="nt">></span> + One of two columns + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-4"</span><span class="nt">></span> + One of two columns + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row justify-content-around"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-4"</span><span class="nt">></span> + One of two columns + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-4"</span><span class="nt">></span> + One of two columns + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row justify-content-between"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-4"</span><span class="nt">></span> + One of two columns + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-4"</span><span class="nt">></span> + One of two columns + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h3 id="no-gutters">No gutters</h3> + +<p>The gutters between columns in our predefined grid classes can be removed with <code class="highlighter-rouge">.no-gutters</code>. This removes the negative <code class="highlighter-rouge">margin</code>s from <code class="highlighter-rouge">.row</code> and the horizontal <code class="highlighter-rouge">padding</code> from all immediate children columns.</p> + +<p>Here’s the source code for creating these styles. Note that column overrides are scoped to only the first children columns and are targeted via <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/Attribute_selectors">attribute selector</a>. While this generates a more specific selector, column padding can still be further customized with <a href="/docs/4.3/utilities/spacing/">spacing utilities</a>.</p> + +<p><strong>Need an edge-to-edge design?</strong> Drop the parent <code class="highlighter-rouge">.container</code> or <code class="highlighter-rouge">.container-fluid</code>.</p> + +<figure class="highlight"><pre><code class="language-sass" data-lang="sass"><span class="nc">.no-gutters</span> <span class="err">{</span> + <span class="nl">margin-right</span><span class="p">:</span> <span class="m">0</span><span class="err">;</span> + <span class="nl">margin-left</span><span class="p">:</span> <span class="m">0</span><span class="err">;</span> + + <span class="o">></span> <span class="nc">.col</span><span class="o">,</span> + <span class="o">></span> <span class="o">[</span><span class="nt">class</span><span class="o">*=</span><span class="s2">"col-"</span><span class="o">]</span> <span class="err">{</span> + <span class="nl">padding-right</span><span class="p">:</span> <span class="m">0</span><span class="err">;</span> + <span class="nl">padding-left</span><span class="p">:</span> <span class="m">0</span><span class="err">;</span> + <span class="err">}</span> +<span class="err">}</span></code></pre></figure> + +<p>In practice, here’s how it looks. Note you can continue to use this with all other predefined grid classes (including column widths, responsive tiers, reorders, and more).</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="row no-gutters"> + <div class="col-12 col-sm-6 col-md-8">.col-12 .col-sm-6 .col-md-8</div> + <div class="col-6 col-md-4">.col-6 .col-md-4</div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"row no-gutters"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-12 col-sm-6 col-md-8"</span><span class="nt">></span>.col-12 .col-sm-6 .col-md-8<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6 col-md-4"</span><span class="nt">></span>.col-6 .col-md-4<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h3 id="column-wrapping">Column wrapping</h3> + +<p>If more than 12 columns are placed within a single row, each group of extra columns will, as one unit, wrap onto a new line.</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col-9">.col-9</div> + <div class="col-4">.col-4<br />Since 9 + 4 = 13 > 12, this 4-column-wide div gets wrapped onto a new line as one contiguous unit.</div> + <div class="col-6">.col-6<br />Subsequent columns continue along the new line.</div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-9"</span><span class="nt">></span>.col-9<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-4"</span><span class="nt">></span>.col-4<span class="nt"><br></span>Since 9 + 4 = 13 <span class="ni">&gt;</span> 12, this 4-column-wide div gets wrapped onto a new line as one contiguous unit.<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6"</span><span class="nt">></span>.col-6<span class="nt"><br></span>Subsequent columns continue along the new line.<span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h3 id="column-breaks">Column breaks</h3> + +<p>Breaking columns to a new line in flexbox requires a small hack: add an element with <code class="highlighter-rouge">width: 100%</code> wherever you want to wrap your columns to a new line. Normally this is accomplished with multiple <code class="highlighter-rouge">.row</code>s, but not every implementation method can account for this.</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col-6 col-sm-3">.col-6 .col-sm-3</div> + <div class="col-6 col-sm-3">.col-6 .col-sm-3</div> + + <!-- Force next columns to break to new line --> + <div class="w-100"></div> + + <div class="col-6 col-sm-3">.col-6 .col-sm-3</div> + <div class="col-6 col-sm-3">.col-6 .col-sm-3</div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6 col-sm-3"</span><span class="nt">></span>.col-6 .col-sm-3<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6 col-sm-3"</span><span class="nt">></span>.col-6 .col-sm-3<span class="nt"></div></span> + + <span class="c"><!-- Force next columns to break to new line --></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"w-100"</span><span class="nt">></div></span> + + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6 col-sm-3"</span><span class="nt">></span>.col-6 .col-sm-3<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6 col-sm-3"</span><span class="nt">></span>.col-6 .col-sm-3<span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<p>You may also apply this break at specific breakpoints with our <a href="/docs/4.3/utilities/display/">responsive display utilities</a>.</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col-6 col-sm-4">.col-6 .col-sm-4</div> + <div class="col-6 col-sm-4">.col-6 .col-sm-4</div> + + <!-- Force next columns to break to new line at md breakpoint and up --> + <div class="w-100 d-none d-md-block"></div> + + <div class="col-6 col-sm-4">.col-6 .col-sm-4</div> + <div class="col-6 col-sm-4">.col-6 .col-sm-4</div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6 col-sm-4"</span><span class="nt">></span>.col-6 .col-sm-4<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6 col-sm-4"</span><span class="nt">></span>.col-6 .col-sm-4<span class="nt"></div></span> + + <span class="c"><!-- Force next columns to break to new line at md breakpoint and up --></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"w-100 d-none d-md-block"</span><span class="nt">></div></span> + + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6 col-sm-4"</span><span class="nt">></span>.col-6 .col-sm-4<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-6 col-sm-4"</span><span class="nt">></span>.col-6 .col-sm-4<span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h2 id="reordering">Reordering</h2> + +<h3 id="order-classes">Order classes</h3> + +<p>Use <code class="highlighter-rouge">.order-</code> classes for controlling the <strong>visual order</strong> of your content. These classes are responsive, so you can set the <code class="highlighter-rouge">order</code> by breakpoint (e.g., <code class="highlighter-rouge">.order-1.order-md-2</code>). Includes support for <code class="highlighter-rouge">1</code> through <code class="highlighter-rouge">12</code> across all five grid tiers.</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col"> + First, but unordered + </div> + <div class="col order-12"> + Second, but last + </div> + <div class="col order-1"> + Third, but first + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + First, but unordered + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col order-12"</span><span class="nt">></span> + Second, but last + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col order-1"</span><span class="nt">></span> + Third, but first + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<p>There are also responsive <code class="highlighter-rouge">.order-first</code> and <code class="highlighter-rouge">.order-last</code> classes that change the <code class="highlighter-rouge">order</code> of an element by applying <code class="highlighter-rouge">order: -1</code> and <code class="highlighter-rouge">order: 13</code> (<code class="highlighter-rouge">order: $columns + 1</code>), respectively. These classes can also be intermixed with the numbered <code class="highlighter-rouge">.order-*</code> classes as needed.</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col order-last"> + First, but last + </div> + <div class="col"> + Second, but unordered + </div> + <div class="col order-first"> + Third, but first + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col order-last"</span><span class="nt">></span> + First, but last + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col"</span><span class="nt">></span> + Second, but unordered + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col order-first"</span><span class="nt">></span> + Third, but first + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h3 id="offsetting-columns">Offsetting columns</h3> + +<p>You can offset grid columns in two ways: our responsive <code class="highlighter-rouge">.offset-</code> grid classes and our <a href="/docs/4.3/utilities/spacing/">margin utilities</a>. Grid classes are sized to match columns while margins are more useful for quick layouts where the width of the offset is variable.</p> + +<h4 id="offset-classes">Offset classes</h4> + +<p>Move columns to the right using <code class="highlighter-rouge">.offset-md-*</code> classes. These classes increase the left margin of a column by <code class="highlighter-rouge">*</code> columns. For example, <code class="highlighter-rouge">.offset-md-4</code> moves <code class="highlighter-rouge">.col-md-4</code> over four columns.</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col-md-4">.col-md-4</div> + <div class="col-md-4 offset-md-4">.col-md-4 .offset-md-4</div> + </div> + <div class="row"> + <div class="col-md-3 offset-md-3">.col-md-3 .offset-md-3</div> + <div class="col-md-3 offset-md-3">.col-md-3 .offset-md-3</div> + </div> + <div class="row"> + <div class="col-md-6 offset-md-3">.col-md-6 .offset-md-3</div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4"</span><span class="nt">></span>.col-md-4<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4 offset-md-4"</span><span class="nt">></span>.col-md-4 .offset-md-4<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-3 offset-md-3"</span><span class="nt">></span>.col-md-3 .offset-md-3<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-3 offset-md-3"</span><span class="nt">></span>.col-md-3 .offset-md-3<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-6 offset-md-3"</span><span class="nt">></span>.col-md-6 .offset-md-3<span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<p>In addition to column clearing at responsive breakpoints, you may need to reset offsets. See this in action in <a href="/docs/4.3/examples/grid/">the grid example</a>.</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col-sm-5 col-md-6">.col-sm-5 .col-md-6</div> + <div class="col-sm-5 offset-sm-2 col-md-6 offset-md-0">.col-sm-5 .offset-sm-2 .col-md-6 .offset-md-0</div> + </div> + <div class="row"> + <div class="col-sm-6 col-md-5 col-lg-6">.col-sm-6 .col-md-5 .col-lg-6</div> + <div class="col-sm-6 col-md-5 offset-md-2 col-lg-6 offset-lg-0">.col-sm-6 .col-md-5 .offset-md-2 .col-lg-6 .offset-lg-0</div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-5 col-md-6"</span><span class="nt">></span>.col-sm-5 .col-md-6<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-5 offset-sm-2 col-md-6 offset-md-0"</span><span class="nt">></span>.col-sm-5 .offset-sm-2 .col-md-6 .offset-md-0<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-6 col-md-5 col-lg-6"</span><span class="nt">></span>.col-sm-6 .col-md-5 .col-lg-6<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-6 col-md-5 offset-md-2 col-lg-6 offset-lg-0"</span><span class="nt">></span>.col-sm-6 .col-md-5 .offset-md-2 .col-lg-6 .offset-lg-0<span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h4 id="margin-utilities">Margin utilities</h4> + +<p>With the move to flexbox in v4, you can use margin utilities like <code class="highlighter-rouge">.mr-auto</code> to force sibling columns away from one another.</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col-md-4">.col-md-4</div> + <div class="col-md-4 ml-auto">.col-md-4 .ml-auto</div> + </div> + <div class="row"> + <div class="col-md-3 ml-md-auto">.col-md-3 .ml-md-auto</div> + <div class="col-md-3 ml-md-auto">.col-md-3 .ml-md-auto</div> + </div> + <div class="row"> + <div class="col-auto mr-auto">.col-auto .mr-auto</div> + <div class="col-auto">.col-auto</div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4"</span><span class="nt">></span>.col-md-4<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-4 ml-auto"</span><span class="nt">></span>.col-md-4 .ml-auto<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-3 ml-md-auto"</span><span class="nt">></span>.col-md-3 .ml-md-auto<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-3 ml-md-auto"</span><span class="nt">></span>.col-md-3 .ml-md-auto<span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-auto mr-auto"</span><span class="nt">></span>.col-auto .mr-auto<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-auto"</span><span class="nt">></span>.col-auto<span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h2 id="nesting">Nesting</h2> + +<p>To nest your content with the default grid, add a new <code class="highlighter-rouge">.row</code> and set of <code class="highlighter-rouge">.col-sm-*</code> columns within an existing <code class="highlighter-rouge">.col-sm-*</code> column. Nested rows should include a set of columns that add up to 12 or fewer (it is not required that you use all 12 available columns).</p> + +<div class="bd-example-row"> + +<div class="bd-example"> +<div class="container"> + <div class="row"> + <div class="col-sm-9"> + Level 1: .col-sm-9 + <div class="row"> + <div class="col-8 col-sm-6"> + Level 2: .col-8 .col-sm-6 + </div> + <div class="col-4 col-sm-6"> + Level 2: .col-4 .col-sm-6 + </div> + </div> + </div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-sm-9"</span><span class="nt">></span> + Level 1: .col-sm-9 + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-8 col-sm-6"</span><span class="nt">></span> + Level 2: .col-8 .col-sm-6 + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-4 col-sm-6"</span><span class="nt">></span> + Level 2: .col-4 .col-sm-6 + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +</div> + +<h2 id="sass-mixins">Sass mixins</h2> + +<p>When using Bootstrap’s source Sass files, you have the option of using Sass variables and mixins to create custom, semantic, and responsive page layouts. Our predefined grid classes use these same variables and mixins to provide a whole suite of ready-to-use classes for fast responsive layouts.</p> + +<h3 id="variables">Variables</h3> + +<p>Variables and maps determine the number of columns, the gutter width, and the media query point at which to begin floating columns. We use these to generate the predefined grid classes documented above, as well as for the custom mixins listed below.</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nv">$grid-columns</span><span class="p">:</span> <span class="m">12</span><span class="p">;</span> +<span class="nv">$grid-gutter-width</span><span class="p">:</span> <span class="m">30px</span><span class="p">;</span> + +<span class="nv">$grid-breakpoints</span><span class="p">:</span> <span class="p">(</span> + <span class="o">//</span> <span class="n">Extra</span> <span class="n">small</span> <span class="n">screen</span> <span class="o">/</span> <span class="n">phone</span> + <span class="n">xs</span><span class="o">:</span> <span class="m">0</span><span class="o">,</span> + <span class="o">//</span> <span class="n">Small</span> <span class="n">screen</span> <span class="o">/</span> <span class="n">phone</span> + <span class="n">sm</span><span class="o">:</span> <span class="m">576px</span><span class="o">,</span> + <span class="o">//</span> <span class="n">Medium</span> <span class="n">screen</span> <span class="o">/</span> <span class="n">tablet</span> + <span class="n">md</span><span class="o">:</span> <span class="m">768px</span><span class="o">,</span> + <span class="o">//</span> <span class="n">Large</span> <span class="n">screen</span> <span class="o">/</span> <span class="n">desktop</span> + <span class="n">lg</span><span class="o">:</span> <span class="m">992px</span><span class="o">,</span> + <span class="o">//</span> <span class="n">Extra</span> <span class="nb">large</span> <span class="n">screen</span> <span class="o">/</span> <span class="n">wide</span> <span class="n">desktop</span> + <span class="n">xl</span><span class="o">:</span> <span class="m">1200px</span> +<span class="p">);</span> + +<span class="nv">$container-max-widths</span><span class="p">:</span> <span class="p">(</span> + <span class="n">sm</span><span class="o">:</span> <span class="m">540px</span><span class="o">,</span> + <span class="n">md</span><span class="o">:</span> <span class="m">720px</span><span class="o">,</span> + <span class="n">lg</span><span class="o">:</span> <span class="m">960px</span><span class="o">,</span> + <span class="n">xl</span><span class="o">:</span> <span class="m">1140px</span> +<span class="p">);</span></code></pre></figure> + +<h3 id="mixins">Mixins</h3> + +<p>Mixins are used in conjunction with the grid variables to generate semantic CSS for individual grid columns.</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// Creates a wrapper for a series of columns</span> +<span class="k">@include</span> <span class="nd">make-row</span><span class="p">();</span> + +<span class="c1">// Make the element grid-ready (applying everything but the width)</span> +<span class="k">@include</span> <span class="nd">make-col-ready</span><span class="p">();</span> +<span class="k">@include</span> <span class="nd">make-col</span><span class="p">(</span><span class="nv">$size</span><span class="o">,</span> <span class="nv">$columns</span><span class="o">:</span> <span class="nv">$grid-columns</span><span class="p">);</span> + +<span class="c1">// Get fancy by offsetting, or changing the sort order</span> +<span class="k">@include</span> <span class="nd">make-col-offset</span><span class="p">(</span><span class="nv">$size</span><span class="o">,</span> <span class="nv">$columns</span><span class="o">:</span> <span class="nv">$grid-columns</span><span class="p">);</span></code></pre></figure> + +<h3 id="example-usage">Example usage</h3> + +<p>You can modify the variables to your own custom values, or just use the mixins with their default values. Here’s an example of using the default settings to create a two-column layout with a gap between.</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nc">.example-container</span> <span class="p">{</span> + <span class="nl">width</span><span class="p">:</span> <span class="m">800px</span><span class="p">;</span> + <span class="k">@include</span> <span class="nd">make-container</span><span class="p">();</span> +<span class="p">}</span> + +<span class="nc">.example-row</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">make-row</span><span class="p">();</span> +<span class="p">}</span> + +<span class="nc">.example-content-main</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">make-col-ready</span><span class="p">();</span> + + <span class="k">@include</span> <span class="nd">media-breakpoint-up</span><span class="p">(</span><span class="n">sm</span><span class="p">)</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">make-col</span><span class="p">(</span><span class="m">6</span><span class="p">);</span> + <span class="p">}</span> + <span class="k">@include</span> <span class="nd">media-breakpoint-up</span><span class="p">(</span><span class="n">lg</span><span class="p">)</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">make-col</span><span class="p">(</span><span class="m">8</span><span class="p">);</span> + <span class="p">}</span> +<span class="p">}</span> + +<span class="nc">.example-content-secondary</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">make-col-ready</span><span class="p">();</span> + + <span class="k">@include</span> <span class="nd">media-breakpoint-up</span><span class="p">(</span><span class="n">sm</span><span class="p">)</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">make-col</span><span class="p">(</span><span class="m">6</span><span class="p">);</span> + <span class="p">}</span> + <span class="k">@include</span> <span class="nd">media-breakpoint-up</span><span class="p">(</span><span class="n">lg</span><span class="p">)</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">make-col</span><span class="p">(</span><span class="m">4</span><span class="p">);</span> + <span class="p">}</span> +<span class="p">}</span></code></pre></figure> + +<div class="bd-example"> +<div class="example-container"> + <div class="example-row"> + <div class="example-content-main">Main content</div> + <div class="example-content-secondary">Secondary content</div> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"example-container"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"example-row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"example-content-main"</span><span class="nt">></span>Main content<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"example-content-secondary"</span><span class="nt">></span>Secondary content<span class="nt"></div></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="customizing-the-grid">Customizing the grid</h2> + +<p>Using our built-in grid Sass variables and maps, it’s possible to completely customize the predefined grid classes. Change the number of tiers, the media query dimensions, and the container widths—then recompile.</p> + +<h3 id="columns-and-gutters">Columns and gutters</h3> + +<p>The number of grid columns can be modified via Sass variables. <code class="highlighter-rouge">$grid-columns</code> is used to generate the widths (in percent) of each individual column while <code class="highlighter-rouge">$grid-gutter-width</code> sets the width for the column gutters.</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nv">$grid-columns</span><span class="p">:</span> <span class="m">12</span> <span class="o">!</span><span class="nb">default</span><span class="p">;</span> +<span class="nv">$grid-gutter-width</span><span class="p">:</span> <span class="m">30px</span> <span class="o">!</span><span class="nb">default</span><span class="p">;</span></code></pre></figure> + +<h3 id="grid-tiers">Grid tiers</h3> + +<p>Moving beyond the columns themselves, you may also customize the number of grid tiers. If you wanted just four grid tiers, you’d update the <code class="highlighter-rouge">$grid-breakpoints</code> and <code class="highlighter-rouge">$container-max-widths</code> to something like this:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nv">$grid-breakpoints</span><span class="p">:</span> <span class="p">(</span> + <span class="n">xs</span><span class="o">:</span> <span class="m">0</span><span class="o">,</span> + <span class="n">sm</span><span class="o">:</span> <span class="m">480px</span><span class="o">,</span> + <span class="n">md</span><span class="o">:</span> <span class="m">768px</span><span class="o">,</span> + <span class="n">lg</span><span class="o">:</span> <span class="m">1024px</span> +<span class="p">);</span> + +<span class="nv">$container-max-widths</span><span class="p">:</span> <span class="p">(</span> + <span class="n">sm</span><span class="o">:</span> <span class="m">420px</span><span class="o">,</span> + <span class="n">md</span><span class="o">:</span> <span class="m">720px</span><span class="o">,</span> + <span class="n">lg</span><span class="o">:</span> <span class="m">960px</span> +<span class="p">);</span></code></pre></figure> + +<p>When making any changes to the Sass variables or maps, you’ll need to save your changes and recompile. Doing so will output a brand new set of predefined grid classes for column widths, offsets, and ordering. Responsive visibility utilities will also be updated to use the custom breakpoints. Make sure to set grid values in <code class="highlighter-rouge">px</code> (not <code class="highlighter-rouge">rem</code>, <code class="highlighter-rouge">em</code>, or <code class="highlighter-rouge">%</code>).</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/layout/index.html b/docs/4.3/layout/index.html new file mode 100644 index 0000000000..2bf797564e --- /dev/null +++ b/docs/4.3/layout/index.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<html lang="en-US"> + <meta charset="utf-8"> + <title>Redirecting…</title> + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/layout/overview/"> + <script>location="https://getbootstrap.com/docs/4.3/layout/overview/"</script> + <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.3/layout/overview/"> + <meta name="robots" content="noindex"> + <h1>Redirecting…</h1> + <a href="https://getbootstrap.com/docs/4.3/layout/overview/">Click here if you are not redirected.</a> +</html> diff --git a/docs/4.3/layout/overview/index.html b/docs/4.3/layout/overview/index.html new file mode 100644 index 0000000000..f88964068e --- /dev/null +++ b/docs/4.3/layout/overview/index.html @@ -0,0 +1,647 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Components and options for laying out your Bootstrap project, including wrapping containers, a powerful grid system, a flexible media object, and responsive utility classes."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Overview · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/layout/overview/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Overview"> +<meta name="twitter:description" content="Components and options for laying out your Bootstrap project, including wrapping containers, a powerful grid system, a flexible media object, and responsive utility classes."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/layout/overview/"> +<meta property="og:title" content="Overview"> +<meta property="og:description" content="Components and options for laying out your Bootstrap project, including wrapping containers, a powerful grid system, a flexible media object, and responsive utility classes."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li class="active bd-sidenav-active"> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#containers">Containers</a></li> +<li class="toc-entry toc-h2"><a href="#responsive-breakpoints">Responsive breakpoints</a></li> +<li class="toc-entry toc-h2"><a href="#z-index">Z-index</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Overview</h1> + <p class="bd-lead">Components and options for laying out your Bootstrap project, including wrapping containers, a powerful grid system, a flexible media object, and responsive utility classes.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="containers">Containers</h2> + +<p>Containers are the most basic layout element in Bootstrap and are <strong>required when using our default grid system</strong>. Choose from a responsive, fixed-width container (meaning its <code class="highlighter-rouge">max-width</code> changes at each breakpoint) or fluid-width (meaning it’s <code class="highlighter-rouge">100%</code> wide all the time).</p> + +<p>While containers <em>can</em> be nested, most layouts do not require a nested container.</p> + +<div class="bd-example"> + <div class="bd-example-container"> + <div class="bd-example-container-header"></div> + <div class="bd-example-container-sidebar"></div> + <div class="bd-example-container-body"></div> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container"</span><span class="nt">></span> + <span class="c"><!-- Content here --></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Use <code class="highlighter-rouge">.container-fluid</code> for a full width container, spanning the entire width of the viewport.</p> + +<div class="bd-example"> + <div class="bd-example-container bd-example-container-fluid"> + <div class="bd-example-container-header"></div> + <div class="bd-example-container-sidebar"></div> + <div class="bd-example-container-body"></div> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"container-fluid"</span><span class="nt">></span> + ... +<span class="nt"></div></span></code></pre></figure> + +<h2 id="responsive-breakpoints">Responsive breakpoints</h2> + +<p>Since Bootstrap is developed to be mobile first, we use a handful of <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/Media_Queries/Using_media_queries">media queries</a> to create sensible breakpoints for our layouts and interfaces. These breakpoints are mostly based on minimum viewport widths and allow us to scale up elements as the viewport changes.</p> + +<p>Bootstrap primarily uses the following media query ranges—or breakpoints—in our source Sass files for our layout, grid system, and components.</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// Extra small devices (portrait phones, less than 576px)</span> +<span class="c1">// No media query for `xs` since this is the default in Bootstrap</span> + +<span class="c1">// Small devices (landscape phones, 576px and up)</span> +<span class="k">@media</span> <span class="p">(</span><span class="n">min-width</span><span class="o">:</span> <span class="m">576px</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> + +<span class="c1">// Medium devices (tablets, 768px and up)</span> +<span class="k">@media</span> <span class="p">(</span><span class="n">min-width</span><span class="o">:</span> <span class="m">768px</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> + +<span class="c1">// Large devices (desktops, 992px and up)</span> +<span class="k">@media</span> <span class="p">(</span><span class="n">min-width</span><span class="o">:</span> <span class="m">992px</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> + +<span class="c1">// Extra large devices (large desktops, 1200px and up)</span> +<span class="k">@media</span> <span class="p">(</span><span class="n">min-width</span><span class="o">:</span> <span class="m">1200px</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span></code></pre></figure> + +<p>Since we write our source CSS in Sass, all our media queries are available via Sass mixins:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// No media query necessary for xs breakpoint as it's effectively `@media (min-width: 0) { ... }`</span> +<span class="k">@include</span> <span class="nd">media-breakpoint-up</span><span class="p">(</span><span class="n">sm</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> +<span class="k">@include</span> <span class="nd">media-breakpoint-up</span><span class="p">(</span><span class="n">md</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> +<span class="k">@include</span> <span class="nd">media-breakpoint-up</span><span class="p">(</span><span class="n">lg</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> +<span class="k">@include</span> <span class="nd">media-breakpoint-up</span><span class="p">(</span><span class="n">xl</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> + +<span class="c1">// Example: Hide starting at `min-width: 0`, and then show at the `sm` breakpoint</span> +<span class="nc">.custom-class</span> <span class="p">{</span> + <span class="nl">display</span><span class="p">:</span> <span class="nb">none</span><span class="p">;</span> +<span class="p">}</span> +<span class="k">@include</span> <span class="nd">media-breakpoint-up</span><span class="p">(</span><span class="n">sm</span><span class="p">)</span> <span class="p">{</span> + <span class="nc">.custom-class</span> <span class="p">{</span> + <span class="nl">display</span><span class="p">:</span> <span class="nb">block</span><span class="p">;</span> + <span class="p">}</span> +<span class="p">}</span></code></pre></figure> + +<p>We occasionally use media queries that go in the other direction (the given screen size <em>or smaller</em>):</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// Extra small devices (portrait phones, less than 576px)</span> +<span class="k">@media</span> <span class="p">(</span><span class="n">max-width</span><span class="o">:</span> <span class="m">575</span><span class="mi">.98px</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> + +<span class="c1">// Small devices (landscape phones, less than 768px)</span> +<span class="k">@media</span> <span class="p">(</span><span class="n">max-width</span><span class="o">:</span> <span class="m">767</span><span class="mi">.98px</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> + +<span class="c1">// Medium devices (tablets, less than 992px)</span> +<span class="k">@media</span> <span class="p">(</span><span class="n">max-width</span><span class="o">:</span> <span class="m">991</span><span class="mi">.98px</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> + +<span class="c1">// Large devices (desktops, less than 1200px)</span> +<span class="k">@media</span> <span class="p">(</span><span class="n">max-width</span><span class="o">:</span> <span class="m">1199</span><span class="mi">.98px</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> + +<span class="c1">// Extra large devices (large desktops)</span> +<span class="c1">// No media query since the extra-large breakpoint has no upper bound on its width</span></code></pre></figure> + +<div class="bd-callout bd-callout-info"> +<p>Note that since browsers do not currently support <a href="https://www.w3.org/TR/mediaqueries-4/#range-context">range context queries</a>, we work around the limitations of <a href="https://www.w3.org/TR/mediaqueries-4/#mq-min-max"><code class="highlighter-rouge">min-</code> and <code class="highlighter-rouge">max-</code> prefixes</a> and viewports with fractional widths (which can occur under certain conditions on high-dpi devices, for instance) by using values with higher precision for these comparisons.</p> +</div> + +<p>Once again, these media queries are also available via Sass mixins:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="k">@include</span> <span class="nd">media-breakpoint-down</span><span class="p">(</span><span class="n">xs</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> +<span class="k">@include</span> <span class="nd">media-breakpoint-down</span><span class="p">(</span><span class="n">sm</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> +<span class="k">@include</span> <span class="nd">media-breakpoint-down</span><span class="p">(</span><span class="n">md</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> +<span class="k">@include</span> <span class="nd">media-breakpoint-down</span><span class="p">(</span><span class="n">lg</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> +<span class="c1">// No media query necessary for xl breakpoint as it has no upper bound on its width</span> + +<span class="c1">// Example: Style from medium breakpoint and down</span> +<span class="k">@include</span> <span class="nd">media-breakpoint-down</span><span class="p">(</span><span class="n">md</span><span class="p">)</span> <span class="p">{</span> + <span class="nc">.custom-class</span> <span class="p">{</span> + <span class="nl">display</span><span class="p">:</span> <span class="nb">block</span><span class="p">;</span> + <span class="p">}</span> +<span class="p">}</span></code></pre></figure> + +<p>There are also media queries and mixins for targeting a single segment of screen sizes using the minimum and maximum breakpoint widths.</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// Extra small devices (portrait phones, less than 576px)</span> +<span class="k">@media</span> <span class="p">(</span><span class="n">max-width</span><span class="o">:</span> <span class="m">575</span><span class="mi">.98px</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> + +<span class="c1">// Small devices (landscape phones, 576px and up)</span> +<span class="k">@media</span> <span class="p">(</span><span class="n">min-width</span><span class="o">:</span> <span class="m">576px</span><span class="p">)</span> <span class="nf">and</span> <span class="p">(</span><span class="n">max-width</span><span class="o">:</span> <span class="m">767</span><span class="mi">.98px</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> + +<span class="c1">// Medium devices (tablets, 768px and up)</span> +<span class="k">@media</span> <span class="p">(</span><span class="n">min-width</span><span class="o">:</span> <span class="m">768px</span><span class="p">)</span> <span class="nf">and</span> <span class="p">(</span><span class="n">max-width</span><span class="o">:</span> <span class="m">991</span><span class="mi">.98px</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> + +<span class="c1">// Large devices (desktops, 992px and up)</span> +<span class="k">@media</span> <span class="p">(</span><span class="n">min-width</span><span class="o">:</span> <span class="m">992px</span><span class="p">)</span> <span class="nf">and</span> <span class="p">(</span><span class="n">max-width</span><span class="o">:</span> <span class="m">1199</span><span class="mi">.98px</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> + +<span class="c1">// Extra large devices (large desktops, 1200px and up)</span> +<span class="k">@media</span> <span class="p">(</span><span class="n">min-width</span><span class="o">:</span> <span class="m">1200px</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span></code></pre></figure> + +<p>These media queries are also available via Sass mixins:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="k">@include</span> <span class="nd">media-breakpoint-only</span><span class="p">(</span><span class="n">xs</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> +<span class="k">@include</span> <span class="nd">media-breakpoint-only</span><span class="p">(</span><span class="n">sm</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> +<span class="k">@include</span> <span class="nd">media-breakpoint-only</span><span class="p">(</span><span class="n">md</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> +<span class="k">@include</span> <span class="nd">media-breakpoint-only</span><span class="p">(</span><span class="n">lg</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span> +<span class="k">@include</span> <span class="nd">media-breakpoint-only</span><span class="p">(</span><span class="n">xl</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span></code></pre></figure> + +<p>Similarly, media queries may span multiple breakpoint widths:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// Example</span> +<span class="c1">// Apply styles starting from medium devices and up to extra large devices</span> +<span class="k">@media</span> <span class="p">(</span><span class="n">min-width</span><span class="o">:</span> <span class="m">768px</span><span class="p">)</span> <span class="nf">and</span> <span class="p">(</span><span class="n">max-width</span><span class="o">:</span> <span class="m">1199</span><span class="mi">.98px</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span></code></pre></figure> + +<p>The Sass mixin for targeting the same screen size range would be:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="k">@include</span> <span class="nd">media-breakpoint-between</span><span class="p">(</span><span class="n">md</span><span class="o">,</span> <span class="n">xl</span><span class="p">)</span> <span class="p">{</span> <span class="nc">...</span> <span class="p">}</span></code></pre></figure> + +<h2 id="z-index">Z-index</h2> + +<p>Several Bootstrap components utilize <code class="highlighter-rouge">z-index</code>, the CSS property that helps control layout by providing a third axis to arrange content. We utilize a default z-index scale in Bootstrap that’s been designed to properly layer navigation, tooltips and popovers, modals, and more.</p> + +<p>These higher values start at an arbitrary number, high and specific enough to ideally avoid conflicts. We need a standard set of these across our layered components—tooltips, popovers, navbars, dropdowns, modals—so we can be reasonably consistent in the behaviors. There’s no reason we couldn’t have used <code class="highlighter-rouge">100</code>+ or <code class="highlighter-rouge">500</code>+.</p> + +<p>We don’t encourage customization of these individual values; should you change one, you likely need to change them all.</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nv">$zindex-dropdown</span><span class="p">:</span> <span class="m">1000</span> <span class="o">!</span><span class="nb">default</span><span class="p">;</span> +<span class="nv">$zindex-sticky</span><span class="p">:</span> <span class="m">1020</span> <span class="o">!</span><span class="nb">default</span><span class="p">;</span> +<span class="nv">$zindex-fixed</span><span class="p">:</span> <span class="m">1030</span> <span class="o">!</span><span class="nb">default</span><span class="p">;</span> +<span class="nv">$zindex-modal-backdrop</span><span class="p">:</span> <span class="m">1040</span> <span class="o">!</span><span class="nb">default</span><span class="p">;</span> +<span class="nv">$zindex-modal</span><span class="p">:</span> <span class="m">1050</span> <span class="o">!</span><span class="nb">default</span><span class="p">;</span> +<span class="nv">$zindex-popover</span><span class="p">:</span> <span class="m">1060</span> <span class="o">!</span><span class="nb">default</span><span class="p">;</span> +<span class="nv">$zindex-tooltip</span><span class="p">:</span> <span class="m">1070</span> <span class="o">!</span><span class="nb">default</span><span class="p">;</span></code></pre></figure> + +<p>To handle overlapping borders within components (e.g., buttons and inputs in input groups), we use low single digit <code class="highlighter-rouge">z-index</code> values of <code class="highlighter-rouge">1</code>, <code class="highlighter-rouge">2</code>, and <code class="highlighter-rouge">3</code> for default, hover, and active states. On hover/focus/active, we bring a particular element to the forefront with a higher <code class="highlighter-rouge">z-index</code> value to show their border over the sibling elements.</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/layout/utilities-for-layout/index.html b/docs/4.3/layout/utilities-for-layout/index.html new file mode 100644 index 0000000000..4f54ab6ea8 --- /dev/null +++ b/docs/4.3/layout/utilities-for-layout/index.html @@ -0,0 +1,506 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="For faster mobile-friendly and responsive development, Bootstrap includes dozens of utility classes for showing, hiding, aligning, and spacing content."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Utilities for layout · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/layout/utilities-for-layout/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Utilities for layout"> +<meta name="twitter:description" content="For faster mobile-friendly and responsive development, Bootstrap includes dozens of utility classes for showing, hiding, aligning, and spacing content."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/layout/utilities-for-layout/"> +<meta property="og:title" content="Utilities for layout"> +<meta property="og:description" content="For faster mobile-friendly and responsive development, Bootstrap includes dozens of utility classes for showing, hiding, aligning, and spacing content."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#changing-display">Changing display</a></li> +<li class="toc-entry toc-h2"><a href="#flexbox-options">Flexbox options</a></li> +<li class="toc-entry toc-h2"><a href="#margin-and-padding">Margin and padding</a></li> +<li class="toc-entry toc-h2"><a href="#toggle-visibility">Toggle visibility</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Utilities for layout</h1> + <p class="bd-lead">For faster mobile-friendly and responsive development, Bootstrap includes dozens of utility classes for showing, hiding, aligning, and spacing content.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="changing-display">Changing <code class="highlighter-rouge">display</code></h2> + +<p>Use our <a href="/docs/4.3/utilities/display/">display utilities</a> for responsively toggling common values of the <code class="highlighter-rouge">display</code> property. Mix it with our grid system, content, or components to show or hide them across specific viewports.</p> + +<h2 id="flexbox-options">Flexbox options</h2> + +<p>Bootstrap 4 is built with flexbox, but not every element’s <code class="highlighter-rouge">display</code> has been changed to <code class="highlighter-rouge">display: flex</code> as this would add many unnecessary overrides and unexpectedly change key browser behaviors. Most of <a href="/docs/4.3/components/alerts/">our components</a> are built with flexbox enabled.</p> + +<p>Should you need to add <code class="highlighter-rouge">display: flex</code> to an element, do so with <code class="highlighter-rouge">.d-flex</code> or one of the responsive variants (e.g., <code class="highlighter-rouge">.d-sm-flex</code>). You’ll need this class or <code class="highlighter-rouge">display</code> value to allow the use of our extra <a href="/docs/4.3/utilities/flex/">flexbox utilities</a> for sizing, alignment, spacing, and more.</p> + +<h2 id="margin-and-padding">Margin and padding</h2> + +<p>Use the <code class="highlighter-rouge">margin</code> and <code class="highlighter-rouge">padding</code> <a href="/docs/4.3/utilities/spacing/">spacing utilities</a> to control how elements and components are spaced and sized. Bootstrap 4 includes a five-level scale for spacing utilities, based on a <code class="highlighter-rouge">1rem</code> value default <code class="highlighter-rouge">$spacer</code> variable. Choose values for all viewports (e.g., <code class="highlighter-rouge">.mr-3</code> for <code class="highlighter-rouge">margin-right: 1rem</code>), or pick responsive variants to target specific viewports (e.g., <code class="highlighter-rouge">.mr-md-3</code> for <code class="highlighter-rouge">margin-right: 1rem</code> starting at the <code class="highlighter-rouge">md</code> breakpoint).</p> + +<h2 id="toggle-visibility">Toggle <code class="highlighter-rouge">visibility</code></h2> + +<p>When toggling <code class="highlighter-rouge">display</code> isn’t needed, you can toggle the <code class="highlighter-rouge">visibility</code> of an element with our <a href="/docs/4.3/utilities/visibility/">visibility utilities</a>. Invisible elements will still affect the layout of the page, but are visually hidden from visitors.</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/migration/index.html b/docs/4.3/migration/index.html new file mode 100644 index 0000000000..e8b68c15ce --- /dev/null +++ b/docs/4.3/migration/index.html @@ -0,0 +1,989 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Bootstrap 4 is a major rewrite of the entire project. The most notable changes are summarized below, followed by more specific changes to relevant components."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Migrating to v4 · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/migration/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Migrating to v4"> +<meta name="twitter:description" content="Bootstrap 4 is a major rewrite of the entire project. The most notable changes are summarized below, followed by more specific changes to relevant components."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/migration/"> +<meta property="og:title" content="Migrating to v4"> +<meta property="og:description" content="Bootstrap 4 is a major rewrite of the entire project. The most notable changes are summarized below, followed by more specific changes to relevant components."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#stable-changes">Stable changes</a> +<ul> +<li class="toc-entry toc-h3"><a href="#printing">Printing</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#beta-3-changes">Beta 3 changes</a> +<ul> +<li class="toc-entry toc-h3"><a href="#miscellaneous">Miscellaneous</a></li> +<li class="toc-entry toc-h3"><a href="#forms">Forms</a></li> +<li class="toc-entry toc-h3"><a href="#input-groups">Input groups</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#beta-2-changes">Beta 2 changes</a> +<ul> +<li class="toc-entry toc-h3"><a href="#breaking">Breaking</a></li> +<li class="toc-entry toc-h3"><a href="#highlights">Highlights</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#summary">Summary</a> +<ul> +<li class="toc-entry toc-h3"><a href="#browser-support">Browser support</a></li> +<li class="toc-entry toc-h3"><a href="#global-changes">Global changes</a></li> +<li class="toc-entry toc-h3"><a href="#grid-system">Grid system</a></li> +<li class="toc-entry toc-h3"><a href="#components">Components</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#by-component">By component</a> +<ul> +<li class="toc-entry toc-h3"><a href="#reboot">Reboot</a></li> +<li class="toc-entry toc-h3"><a href="#typography">Typography</a></li> +<li class="toc-entry toc-h3"><a href="#images">Images</a></li> +<li class="toc-entry toc-h3"><a href="#tables">Tables</a></li> +<li class="toc-entry toc-h3"><a href="#forms-1">Forms</a></li> +<li class="toc-entry toc-h3"><a href="#buttons">Buttons</a></li> +<li class="toc-entry toc-h3"><a href="#button-group">Button group</a></li> +<li class="toc-entry toc-h3"><a href="#dropdowns">Dropdowns</a></li> +<li class="toc-entry toc-h3"><a href="#grid-system-1">Grid system</a></li> +<li class="toc-entry toc-h3"><a href="#list-groups">List groups</a></li> +<li class="toc-entry toc-h3"><a href="#modal">Modal</a></li> +<li class="toc-entry toc-h3"><a href="#navs">Navs</a></li> +<li class="toc-entry toc-h3"><a href="#navbar">Navbar</a></li> +<li class="toc-entry toc-h3"><a href="#pagination">Pagination</a></li> +<li class="toc-entry toc-h3"><a href="#breadcrumbs">Breadcrumbs</a></li> +<li class="toc-entry toc-h3"><a href="#labels-and-badges">Labels and badges</a></li> +<li class="toc-entry toc-h3"><a href="#panels-thumbnails-and-wells">Panels, thumbnails, and wells</a></li> +<li class="toc-entry toc-h3"><a href="#panels">Panels</a></li> +<li class="toc-entry toc-h3"><a href="#progress">Progress</a></li> +<li class="toc-entry toc-h3"><a href="#carousel">Carousel</a></li> +<li class="toc-entry toc-h3"><a href="#tables-1">Tables</a></li> +<li class="toc-entry toc-h3"><a href="#utilities">Utilities</a></li> +<li class="toc-entry toc-h3"><a href="#vendor-prefix-mixins">Vendor prefix mixins</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#documentation">Documentation</a> +<ul> +<li class="toc-entry toc-h3"><a href="#responsive-utilities">Responsive utilities</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Migrating to v4</h1> + <p class="bd-lead">Bootstrap 4 is a major rewrite of the entire project. The most notable changes are summarized below, followed by more specific changes to relevant components.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="stable-changes">Stable changes</h2> + +<p>Moving from Beta 3 to our stable v4.x release, there are no breaking changes, but there are some notable changes.</p> + +<h3 id="printing">Printing</h3> +<ul> + <li> + <p>Fixed broken print utilities. Previously, using a <code class="highlighter-rouge">.d-print-*</code> class would unexpectedly overrule any other <code class="highlighter-rouge">.d-*</code> class. Now, they match our other display utilities and only apply to that media (<code class="highlighter-rouge">@media print</code>).</p> + </li> + <li> + <p>Expanded available print display utilities to match other utilities. Beta 3 and older only had <code class="highlighter-rouge">block</code>, <code class="highlighter-rouge">inline-block</code>, <code class="highlighter-rouge">inline</code>, and <code class="highlighter-rouge">none</code>. Stable v4 added <code class="highlighter-rouge">flex</code>, <code class="highlighter-rouge">inline-flex</code>, <code class="highlighter-rouge">table</code>, <code class="highlighter-rouge">table-row</code>, and <code class="highlighter-rouge">table-cell</code>.</p> + </li> + <li> + <p>Fixed print preview rendering across browsers with new print styles that specify <code class="highlighter-rouge">@page</code> <code class="highlighter-rouge">size</code>.</p> + </li> +</ul> + +<h2 id="beta-3-changes">Beta 3 changes</h2> + +<p>While Beta 2 saw the bulk of our breaking changes during the beta phase, but we still have a few that needed to be addressed in the Beta 3 release. These changes apply if you’re updating to Beta 3 from Beta 2 or any older version of Bootstrap.</p> + +<h3 id="miscellaneous">Miscellaneous</h3> + +<ul> + <li>Removed the unused <code class="highlighter-rouge">$thumbnail-transition</code> variable. We weren’t transitioning anything, so it was just extra code.</li> + <li>The npm package no longer includes any files other than our source and dist files; if you relied on them and were running our scripts via the <code class="highlighter-rouge">node_modules</code> folder, you should adapt your workflow.</li> +</ul> + +<h3 id="forms">Forms</h3> + +<ul> + <li> + <p>Rewrote both custom and default checkboxes and radios. Now, both have matching HTML structure (outer <code class="highlighter-rouge"><div></code> with sibling <code class="highlighter-rouge"><input></code> and <code class="highlighter-rouge"><label></code>) and the same layout styles (stacked default, inline with modifier class). This allows us to style the label based on the input’s state, simplifying support for the <code class="highlighter-rouge">disabled</code> attribute (previously requiring a parent class) and better supporting our form validation.</p> + + <p>As part of this, we’ve changed the CSS for managing multiple <code class="highlighter-rouge">background-image</code>s on custom form checkboxes and radios. Previously, the now removed <code class="highlighter-rouge">.custom-control-indicator</code> element had the background color, gradient, and SVG icon. Customizing the background gradient meant replacing all of those every time you needed to change just one. Now, we have <code class="highlighter-rouge">.custom-control-label::before</code> for the fill and gradient and <code class="highlighter-rouge">.custom-control-label::after</code> handles the icon.</p> + + <p>To make a custom check inline, add <code class="highlighter-rouge">.custom-control-inline</code>.</p> + </li> + <li> + <p>Updated selector for input-based button groups. Instead of <code class="highlighter-rouge">[data-toggle="buttons"] { }</code> for style and behavior, we use the <code class="highlighter-rouge">data</code> attribute just for JS behaviors and rely on a new <code class="highlighter-rouge">.btn-group-toggle</code> class for styling.</p> + </li> + <li> + <p>Removed <code class="highlighter-rouge">.col-form-legend</code> in favor of a slightly improved <code class="highlighter-rouge">.col-form-label</code>. This way <code class="highlighter-rouge">.col-form-label-sm</code> and <code class="highlighter-rouge">.col-form-label-lg</code> can be used on <code class="highlighter-rouge"><legend></code> elements with ease.</p> + </li> + <li> + <p>Custom file inputs received a change to their <code class="highlighter-rouge">$custom-file-text</code> Sass variable. It’s no longer a nested Sass map and now only powers one string—the <code class="highlighter-rouge">Browse</code> button as that is now the only pseudo-element generated from our Sass. The <code class="highlighter-rouge">Choose file</code> text now comes from the <code class="highlighter-rouge">.custom-file-label</code>.</p> + </li> +</ul> + +<h3 id="input-groups">Input groups</h3> + +<ul> + <li> + <p>Input group addons are now specific to their placement relative to an input. We’ve dropped <code class="highlighter-rouge">.input-group-addon</code> and <code class="highlighter-rouge">.input-group-btn</code> for two new classes, <code class="highlighter-rouge">.input-group-prepend</code> and <code class="highlighter-rouge">.input-group-append</code>. You must explicitly use an append or a prepend now, simplifying much of our CSS. Within an append or prepend, place your buttons as they would exist anywhere else, but wrap text in <code class="highlighter-rouge">.input-group-text</code>.</p> + </li> + <li> + <p>Validation styles are now supported, as are multiple inputs (though you can only validate one input per group).</p> + </li> + <li> + <p>Sizing classes must be on the parent <code class="highlighter-rouge">.input-group</code> and not the individual form elements.</p> + </li> +</ul> + +<h2 id="beta-2-changes">Beta 2 changes</h2> + +<p>While in beta, we aim to have no breaking changes. However, things don’t always go as planned. Below are the breaking changes to bear in mind when moving from Beta 1 to Beta 2.</p> + +<h3 id="breaking">Breaking</h3> + +<ul> + <li>Removed <code class="highlighter-rouge">$badge-color</code> variable and its usage on <code class="highlighter-rouge">.badge</code>. We use a color contrast function to pick a <code class="highlighter-rouge">color</code> based on the <code class="highlighter-rouge">background-color</code>, so the variable is unnecessary.</li> + <li>Renamed <code class="highlighter-rouge">grayscale()</code> function to <code class="highlighter-rouge">gray()</code> to avoid breaking conflict with the CSS native <code class="highlighter-rouge">grayscale</code> filter.</li> + <li>Renamed <code class="highlighter-rouge">.table-inverse</code>, <code class="highlighter-rouge">.thead-inverse</code>, and <code class="highlighter-rouge">.thead-default</code> to <code class="highlighter-rouge">.*-dark</code> and <code class="highlighter-rouge">.*-light</code>, matching our color schemes used elsewhere.</li> + <li>Responsive tables now generate classes for each grid breakpoint. This breaks from Beta 1 in that the <code class="highlighter-rouge">.table-responsive</code> you’ve been using is more like <code class="highlighter-rouge">.table-responsive-md</code>. You may now use <code class="highlighter-rouge">.table-responsive</code> or <code class="highlighter-rouge">.table-responsive-{sm,md,lg,xl}</code> as needed.</li> + <li>Dropped Bower support as the package manager has been deprecated for alternatives (e.g., Yarn or npm). <a href="https://github.com/bower/bower/issues/2298">See bower/bower#2298</a> for details.</li> + <li>Bootstrap still requires jQuery 1.9.1 or higher, but you’re advised to use version 3.x since v3.x’s supported browsers are the ones Bootstrap supports plus v3.x has some security fixes.</li> + <li>Removed the unused <code class="highlighter-rouge">.form-control-label</code> class. If you did make use of this class, it was duplicate of the <code class="highlighter-rouge">.col-form-label</code> class that vertically centered a <code class="highlighter-rouge"><label></code> with it’s associated input in horizontal form layouts.</li> + <li>Changed the <code class="highlighter-rouge">color-yiq</code> from a mixin that included the <code class="highlighter-rouge">color</code> property to a function that returns a value, allowing you to use it for any CSS property. For example, instead of <code class="highlighter-rouge">color-yiq(#000)</code>, you’d write <code class="highlighter-rouge">color: color-yiq(#000);</code>.</li> +</ul> + +<h3 id="highlights">Highlights</h3> + +<ul> + <li>Introduced new <code class="highlighter-rouge">pointer-events</code> usage on modals. The outer <code class="highlighter-rouge">.modal-dialog</code> passes through events with <code class="highlighter-rouge">pointer-events: none</code> for custom click handling (making it possible to just listen on the <code class="highlighter-rouge">.modal-backdrop</code> for any clicks), and then counteracts it for the actual <code class="highlighter-rouge">.modal-content</code> with <code class="highlighter-rouge">pointer-events: auto</code>.</li> +</ul> + +<h2 id="summary">Summary</h2> + +<p>Here are the big ticket items you’ll want to be aware of when moving from v3 to v4.</p> + +<h3 id="browser-support">Browser support</h3> + +<ul> + <li>Dropped IE8, IE9, and iOS 6 support. v4 is now only IE10+ and iOS 7+. For sites needing either of those, use v3.</li> + <li>Added official support for Android v5.0 Lollipop’s Browser and WebView. Earlier versions of the Android Browser and WebView remain only unofficially supported.</li> +</ul> + +<h3 id="global-changes">Global changes</h3> + +<ul> + <li><strong>Flexbox is enabled by default.</strong> In general this means a move away from floats and more across our components.</li> + <li>Switched from <a href="http://lesscss.org/">Less</a> to <a href="https://sass-lang.com/">Sass</a> for our source CSS files.</li> + <li>Switched from <code class="highlighter-rouge">px</code> to <code class="highlighter-rouge">rem</code> as our primary CSS unit, though pixels are still used for media queries and grid behavior as device viewports are not affected by type size.</li> + <li>Global font-size increased from <code class="highlighter-rouge">14px</code> to <code class="highlighter-rouge">16px</code>.</li> + <li>Revamped grid tiers to add a fifth option (addressing smaller devices at <code class="highlighter-rouge">576px</code> and below) and removed the <code class="highlighter-rouge">-xs</code> infix from those classes. Example: <code class="highlighter-rouge">.col-6.col-sm-4.col-md-3</code>.</li> + <li>Replaced the separate optional theme with configurable options via SCSS variables (e.g., <code class="highlighter-rouge">$enable-gradients: true</code>).</li> + <li>Build system overhauled to use a series of npm scripts instead of Grunt. See <code class="highlighter-rouge">package.json</code> for all scripts, or our project readme for local development needs.</li> + <li>Non-responsive usage of Bootstrap is no longer supported.</li> + <li>Dropped the online Customizer in favor of more extensive setup documentation and customized builds.</li> + <li>Added dozens of new <a href="/docs/4.3/utilities/">utility classes</a> for common CSS property-value pairs and margin/padding spacing shortcuts.</li> +</ul> + +<h3 id="grid-system">Grid system</h3> + +<ul> + <li><strong>Moved to flexbox.</strong> + <ul> + <li>Added support for flexbox in the grid mixins and predefined classes.</li> + <li>As part of flexbox, included support for vertical and horizontal alignment classes.</li> + </ul> + </li> + <li><strong>Updated grid class names and a new grid tier.</strong> + <ul> + <li>Added a new <code class="highlighter-rouge">sm</code> grid tier below <code class="highlighter-rouge">768px</code> for more granular control. We now have <code class="highlighter-rouge">xs</code>, <code class="highlighter-rouge">sm</code>, <code class="highlighter-rouge">md</code>, <code class="highlighter-rouge">lg</code>, and <code class="highlighter-rouge">xl</code>. This also means every tier has been bumped up one level (so <code class="highlighter-rouge">.col-md-6</code> in v3 is now <code class="highlighter-rouge">.col-lg-6</code> in v4).</li> + <li><code class="highlighter-rouge">xs</code> grid classes have been modified to not require the infix to more accurately represent that they start applying styles at <code class="highlighter-rouge">min-width: 0</code> and not a set pixel value. Instead of <code class="highlighter-rouge">.col-xs-6</code>, it’s now <code class="highlighter-rouge">.col-6</code>. All other grid tiers require the infix (e.g., <code class="highlighter-rouge">sm</code>).</li> + </ul> + </li> + <li><strong>Updated grid sizes, mixins, and variables.</strong> + <ul> + <li>Grid gutters now have a Sass map so you can specify specific gutter widths at each breakpoint.</li> + <li>Updated grid mixins to utilize a <code class="highlighter-rouge">make-col-ready</code> prep mixin and a <code class="highlighter-rouge">make-col</code> to set the <code class="highlighter-rouge">flex</code> and <code class="highlighter-rouge">max-width</code> for individual column sizing.</li> + <li>Changed grid system media query breakpoints and container widths to account for new grid tier and ensure columns are evenly divisible by <code class="highlighter-rouge">12</code> at their max width.</li> + <li>Grid breakpoints and container widths are now handled via Sass maps (<code class="highlighter-rouge">$grid-breakpoints</code> and <code class="highlighter-rouge">$container-max-widths</code>) instead of a handful of separate variables. These replace the <code class="highlighter-rouge">@screen-*</code> variables entirely and allow you to fully customize the grid tiers.</li> + <li>Media queries have also changed. Instead of repeating our media query declarations with the same value each time, we now have <code class="highlighter-rouge">@include media-breakpoint-up/down/only</code>. Now, instead of writing <code class="highlighter-rouge">@media (min-width: @screen-sm-min) { ... }</code>, you can write <code class="highlighter-rouge">@include media-breakpoint-up(sm) { ... }</code>.</li> + </ul> + </li> +</ul> + +<h3 id="components">Components</h3> + +<ul> + <li><strong>Dropped panels, thumbnails, and wells</strong> for a new all-encompassing component, <a href="/docs/4.3/components/card/">cards</a>.</li> + <li><strong>Dropped the Glyphicons icon font.</strong> If you need icons, some options are: + <ul> + <li>the upstream version of <a href="https://www.glyphicons.com/">Glyphicons</a></li> + <li><a href="https://octicons.github.com/">Octicons</a></li> + <li><a href="https://fontawesome.com/">Font Awesome</a></li> + <li>See the <a href="/docs/4.3/extend/icons/">Extend page</a> for a list of alternatives. Have additional suggestions? Please open an issue or PR.</li> + </ul> + </li> + <li><strong>Dropped the Affix jQuery plugin.</strong> + <ul> + <li>We recommend using <code class="highlighter-rouge">position: sticky</code> instead. <a href="https://html5please.com/#sticky">See the HTML5 Please entry</a> for details and specific polyfill recommendations. One suggestion is to use an <code class="highlighter-rouge">@supports</code> rule for implementing it (e.g., <code class="highlighter-rouge">@supports (position: sticky) { ... }</code>)</li> + <li>If you were using Affix to apply additional, non-<code class="highlighter-rouge">position</code> styles, the polyfills might not support your use case. One option for such uses is the third-party <a href="https://github.com/acch/scrollpos-styler">ScrollPos-Styler</a> library.</li> + </ul> + </li> + <li><strong>Dropped the pager component</strong> as it was essentially slightly customized buttons.</li> + <li><strong>Refactored nearly all components</strong> to use more un-nested class selectors instead of over-specific children selectors.</li> +</ul> + +<h2 id="by-component">By component</h2> + +<p>This list highlights key changes by component between v3.x.x and v4.0.0.</p> + +<h3 id="reboot">Reboot</h3> + +<p>New to Bootstrap 4 is the <a href="/docs/4.3/content/reboot/">Reboot</a>, a new stylesheet that builds on Normalize with our own somewhat opinionated reset styles. Selectors appearing in this file only use elements—there are no classes here. This isolates our reset styles from our component styles for a more modular approach. Some of the most important resets this includes are the <code class="highlighter-rouge">box-sizing: border-box</code> change, moving from <code class="highlighter-rouge">em</code> to <code class="highlighter-rouge">rem</code> units on many elements, link styles, and many form element resets.</p> + +<h3 id="typography">Typography</h3> + +<ul> + <li>Moved all <code class="highlighter-rouge">.text-</code> utilities to the <code class="highlighter-rouge">_utilities.scss</code> file.</li> + <li>Dropped <code class="highlighter-rouge">.page-header</code> as its styles can be applied via utilities.</li> + <li><code class="highlighter-rouge">.dl-horizontal</code> has been dropped. Instead, use <code class="highlighter-rouge">.row</code> on <code class="highlighter-rouge"><dl></code> and use grid column classes (or mixins) on its <code class="highlighter-rouge"><dt></code> and <code class="highlighter-rouge"><dd></code> children.</li> + <li>Redesigned blockquotes, moving their styles from the <code class="highlighter-rouge"><blockquote></code> element to a single class, <code class="highlighter-rouge">.blockquote</code>. Dropped the <code class="highlighter-rouge">.blockquote-reverse</code> modifier for text utilities.</li> + <li><code class="highlighter-rouge">.list-inline</code> now requires that its children list items have the new <code class="highlighter-rouge">.list-inline-item</code> class applied to them.</li> +</ul> + +<h3 id="images">Images</h3> + +<ul> + <li>Renamed <code class="highlighter-rouge">.img-responsive</code> to <code class="highlighter-rouge">.img-fluid</code>.</li> + <li>Renamed <code class="highlighter-rouge">.img-rounded</code> to <code class="highlighter-rouge">.rounded</code></li> + <li>Renamed <code class="highlighter-rouge">.img-circle</code> to <code class="highlighter-rouge">.rounded-circle</code></li> +</ul> + +<h3 id="tables">Tables</h3> + +<ul> + <li>Nearly all instances of the <code class="highlighter-rouge">></code> selector have been removed, meaning nested tables will now automatically inherit styles from their parents. This greatly simplifies our selectors and potential customizations.</li> + <li>Renamed <code class="highlighter-rouge">.table-condensed</code> to <code class="highlighter-rouge">.table-sm</code> for consistency.</li> + <li>Added a new <code class="highlighter-rouge">.table-inverse</code> option.</li> + <li>Added table header modifiers: <code class="highlighter-rouge">.thead-default</code> and <code class="highlighter-rouge">.thead-inverse</code>.</li> + <li>Renamed contextual classes to have a <code class="highlighter-rouge">.table-</code>-prefix. Hence <code class="highlighter-rouge">.active</code>, <code class="highlighter-rouge">.success</code>, <code class="highlighter-rouge">.warning</code>, <code class="highlighter-rouge">.danger</code> and <code class="highlighter-rouge">.info</code> to <code class="highlighter-rouge">.table-active</code>, <code class="highlighter-rouge">.table-success</code>, <code class="highlighter-rouge">.table-warning</code>, <code class="highlighter-rouge">.table-danger</code> and <code class="highlighter-rouge">.table-info</code>.</li> +</ul> + +<h3 id="forms-1">Forms</h3> + +<ul> + <li>Moved element resets to the <code class="highlighter-rouge">_reboot.scss</code> file.</li> + <li>Renamed <code class="highlighter-rouge">.control-label</code> to <code class="highlighter-rouge">.col-form-label</code>.</li> + <li>Renamed <code class="highlighter-rouge">.input-lg</code> and <code class="highlighter-rouge">.input-sm</code> to <code class="highlighter-rouge">.form-control-lg</code> and <code class="highlighter-rouge">.form-control-sm</code>, respectively.</li> + <li>Dropped <code class="highlighter-rouge">.form-group-*</code> classes for simplicity’s sake. Use <code class="highlighter-rouge">.form-control-*</code> classes instead now.</li> + <li>Dropped <code class="highlighter-rouge">.help-block</code> and replaced it with <code class="highlighter-rouge">.form-text</code> for block-level help text. For inline help text and other flexible options, use utility classes like <code class="highlighter-rouge">.text-muted</code>.</li> + <li>Dropped <code class="highlighter-rouge">.radio-inline</code> and <code class="highlighter-rouge">.checkbox-inline</code>.</li> + <li>Consolidated <code class="highlighter-rouge">.checkbox</code> and <code class="highlighter-rouge">.radio</code> into <code class="highlighter-rouge">.form-check</code> and the various <code class="highlighter-rouge">.form-check-*</code> classes.</li> + <li>Horizontal forms overhauled: + <ul> + <li>Dropped the <code class="highlighter-rouge">.form-horizontal</code> class requirement.</li> + <li><code class="highlighter-rouge">.form-group</code> no longer applies styles from the <code class="highlighter-rouge">.row</code> via mixin, so <code class="highlighter-rouge">.row</code> is now required for horizontal grid layouts (e.g., <code class="highlighter-rouge"><div class="form-group row"></code>).</li> + <li>Added new <code class="highlighter-rouge">.col-form-label</code> class to vertically center labels with <code class="highlighter-rouge">.form-control</code>s.</li> + <li>Added new <code class="highlighter-rouge">.form-row</code> for compact form layouts with the grid classes (swap your <code class="highlighter-rouge">.row</code> for a <code class="highlighter-rouge">.form-row</code> and go).</li> + </ul> + </li> + <li>Added custom forms support (for checkboxes, radios, selects, and file inputs).</li> + <li>Replaced <code class="highlighter-rouge">.has-error</code>, <code class="highlighter-rouge">.has-warning</code>, and <code class="highlighter-rouge">.has-success</code> classes with HTML5 form validation via CSS’s <code class="highlighter-rouge">:invalid</code> and <code class="highlighter-rouge">:valid</code> pseudo-classes.</li> + <li>Renamed <code class="highlighter-rouge">.form-control-static</code> to <code class="highlighter-rouge">.form-control-plaintext</code>.</li> +</ul> + +<h3 id="buttons">Buttons</h3> + +<ul> + <li>Renamed <code class="highlighter-rouge">.btn-default</code> to <code class="highlighter-rouge">.btn-secondary</code>.</li> + <li>Dropped the <code class="highlighter-rouge">.btn-xs</code> class entirely as <code class="highlighter-rouge">.btn-sm</code> is proportionally much smaller than v3’s.</li> + <li>The <a href="https://getbootstrap.com/docs/3.3/javascript/#buttons-stateful">stateful button</a> feature of the <code class="highlighter-rouge">button.js</code> jQuery plugin has been dropped. This includes the <code class="highlighter-rouge">$().button(string)</code> and <code class="highlighter-rouge">$().button('reset')</code> methods. We advise using a tiny bit of custom JavaScript instead, which will have the benefit of behaving exactly the way you want it to. + <ul> + <li>Note that the other features of the plugin (button checkboxes, button radios, single-toggle buttons) have been retained in v4.</li> + </ul> + </li> + <li>Change buttons’ <code class="highlighter-rouge">[disabled]</code> to <code class="highlighter-rouge">:disabled</code> as IE9+ supports <code class="highlighter-rouge">:disabled</code>. However <code class="highlighter-rouge">fieldset[disabled]</code> is still necessary because <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/fieldset#Browser_compatibility">native disabled fieldsets are still buggy in IE11</a>.</li> +</ul> + +<h3 id="button-group">Button group</h3> + +<ul> + <li>Rewrote component with flexbox.</li> + <li>Removed <code class="highlighter-rouge">.btn-group-justified</code>. As a replacement you can use <code class="highlighter-rouge"><div class="btn-group d-flex" role="group"></div></code> as a wrapper around elements with <code class="highlighter-rouge">.w-100</code>.</li> + <li>Dropped the <code class="highlighter-rouge">.btn-group-xs</code> class entirely given removal of <code class="highlighter-rouge">.btn-xs</code>.</li> + <li>Removed explicit spacing between button groups in button toolbars; use margin utilities now.</li> + <li>Improved documentation for use with other components.</li> +</ul> + +<h3 id="dropdowns">Dropdowns</h3> + +<ul> + <li>Switched from parent selectors to singular classes for all components, modifiers, etc.</li> + <li>Simplified dropdown styles to no longer ship with upward or downward facing arrows attached to the dropdown menu.</li> + <li>Dropdowns can be built with <code class="highlighter-rouge"><div></code>s or <code class="highlighter-rouge"><ul></code>s now.</li> + <li>Rebuilt dropdown styles and markup to provide easy, built-in support for <code class="highlighter-rouge"><a></code> and <code class="highlighter-rouge"><button></code> based dropdown items.</li> + <li>Renamed <code class="highlighter-rouge">.divider</code> to <code class="highlighter-rouge">.dropdown-divider</code>.</li> + <li>Dropdown items now require <code class="highlighter-rouge">.dropdown-item</code>.</li> + <li>Dropdown toggles no longer require an explicit <code class="highlighter-rouge"><span class="caret"></span></code>; this is now provided automatically via CSS’s <code class="highlighter-rouge">::after</code> on <code class="highlighter-rouge">.dropdown-toggle</code>.</li> +</ul> + +<h3 id="grid-system-1">Grid system</h3> + +<ul> + <li>Added a new <code class="highlighter-rouge">576px</code> grid breakpoint as <code class="highlighter-rouge">sm</code>, meaning there are now five total tiers (<code class="highlighter-rouge">xs</code>, <code class="highlighter-rouge">sm</code>, <code class="highlighter-rouge">md</code>, <code class="highlighter-rouge">lg</code>, and <code class="highlighter-rouge">xl</code>).</li> + <li>Renamed the responsive grid modifier classes from <code class="highlighter-rouge">.col-{breakpoint}-{modifier}-{size}</code> to <code class="highlighter-rouge">.{modifier}-{breakpoint}-{size}</code> for simpler grid classes.</li> + <li>Dropped push and pull modifier classes for the new flexbox-powered <code class="highlighter-rouge">order</code> classes. For example, instead of <code class="highlighter-rouge">.col-8.push-4</code> and <code class="highlighter-rouge">.col-4.pull-8</code>, you’d use <code class="highlighter-rouge">.col-8.order-2</code> and <code class="highlighter-rouge">.col-4.order-1</code>.</li> + <li>Added flexbox utility classes for grid system and components.</li> +</ul> + +<h3 id="list-groups">List groups</h3> + +<ul> + <li>Rewrote component with flexbox.</li> + <li>Replaced <code class="highlighter-rouge">a.list-group-item</code> with an explicit class, <code class="highlighter-rouge">.list-group-item-action</code>, for styling link and button versions of list group items.</li> + <li>Added <code class="highlighter-rouge">.list-group-flush</code> class for use with cards.</li> +</ul> + +<h3 id="modal">Modal</h3> + +<ul> + <li>Rewrote component with flexbox.</li> + <li>Given the move to flexbox, alignment of dismiss icons in the header is likely broken as we’re no longer using floats. Floated content comes first, but with flexbox that’s no longer the case. Update your dismiss icons to come after modal titles to fix.</li> + <li>The <code class="highlighter-rouge">remote</code> option (which could be used to automatically load and inject external content into a modal) and the corresponding <code class="highlighter-rouge">loaded.bs.modal</code> event were removed. We recommend instead using client-side templating or a data binding framework, or calling <a href="https://api.jquery.com/load/">jQuery.load</a> yourself.</li> +</ul> + +<h3 id="navs">Navs</h3> + +<ul> + <li>Rewrote component with flexbox.</li> + <li>Dropped nearly all <code class="highlighter-rouge">></code> selectors for simpler styling via un-nested classes.</li> + <li>Instead of HTML-specific selectors like <code class="highlighter-rouge">.nav > li > a</code>, we use separate classes for <code class="highlighter-rouge">.nav</code>s, <code class="highlighter-rouge">.nav-item</code>s, and <code class="highlighter-rouge">.nav-link</code>s. This makes your HTML more flexible while bringing along increased extensibility.</li> +</ul> + +<h3 id="navbar">Navbar</h3> + +<p>The navbar has been entirely rewritten in flexbox with improved support for alignment, responsiveness, and customization.</p> + +<ul> + <li>Responsive navbar behaviors are now applied to the <code class="highlighter-rouge">.navbar</code> class via the <strong>required</strong> <code class="highlighter-rouge">.navbar-expand-{breakpoint}</code> where you choose where to collapse the navbar. Previously this was a Less variable modification and required recompiling.</li> + <li><code class="highlighter-rouge">.navbar-default</code> is now <code class="highlighter-rouge">.navbar-light</code>, though <code class="highlighter-rouge">.navbar-dark</code> remains the same. <strong>One of these is required on each navbar.</strong> However, these classes no longer set <code class="highlighter-rouge">background-color</code>s; instead they essentially only affect <code class="highlighter-rouge">color</code>.</li> + <li>Navbars now require a background declaration of some kind. Choose from our background utilities (<code class="highlighter-rouge">.bg-*</code>) or set your own with the light/inverse classes above <a href="/docs/4.3/components/navbar/#color-schemes">for mad customization</a>.</li> + <li>Given flexbox styles, navbars can now use flexbox utilities for easy alignment options.</li> + <li><code class="highlighter-rouge">.navbar-toggle</code> is now <code class="highlighter-rouge">.navbar-toggler</code> and has different styles and inner markup (no more three <code class="highlighter-rouge"><span></code>s).</li> + <li>Dropped the <code class="highlighter-rouge">.navbar-form</code> class entirely. It’s no longer necessary; instead, just use <code class="highlighter-rouge">.form-inline</code> and apply margin utilities as necessary.</li> + <li>Navbars no longer include <code class="highlighter-rouge">margin-bottom</code> or <code class="highlighter-rouge">border-radius</code> by default. Use utilities as necessary.</li> + <li>All examples featuring navbars have been updated to include new markup.</li> +</ul> + +<h3 id="pagination">Pagination</h3> + +<ul> + <li>Rewrote component with flexbox.</li> + <li>Explicit classes (<code class="highlighter-rouge">.page-item</code>, <code class="highlighter-rouge">.page-link</code>) are now required on the descendants of <code class="highlighter-rouge">.pagination</code>s</li> + <li>Dropped the <code class="highlighter-rouge">.pager</code> component entirely as it was little more than customized outline buttons.</li> +</ul> + +<h3 id="breadcrumbs">Breadcrumbs</h3> + +<ul> + <li>An explicit class, <code class="highlighter-rouge">.breadcrumb-item</code>, is now required on the descendants of <code class="highlighter-rouge">.breadcrumb</code>s</li> +</ul> + +<h3 id="labels-and-badges">Labels and badges</h3> + +<ul> + <li>Consolidated <code class="highlighter-rouge">.label</code> and <code class="highlighter-rouge">.badge</code> to disambiguate from the <code class="highlighter-rouge"><label></code> element and simplify related components.</li> + <li>Added <code class="highlighter-rouge">.badge-pill</code> as modifier for rounded “pill†look.</li> + <li>Badges are no longer floated automatically in list groups and other components. Utility classes are now required for that.</li> + <li><code class="highlighter-rouge">.badge-default</code> has been dropped and <code class="highlighter-rouge">.badge-secondary</code> added to match component modifier classes used elsewhere.</li> +</ul> + +<h3 id="panels-thumbnails-and-wells">Panels, thumbnails, and wells</h3> + +<p>Dropped entirely for the new card component.</p> + +<h3 id="panels">Panels</h3> + +<ul> + <li><code class="highlighter-rouge">.panel</code> to <code class="highlighter-rouge">.card</code>, now built with flexbox.</li> + <li><code class="highlighter-rouge">.panel-default</code> removed and no replacement.</li> + <li><code class="highlighter-rouge">.panel-group</code> removed and no replacement. <code class="highlighter-rouge">.card-group</code> is not a replacement, it is different.</li> + <li><code class="highlighter-rouge">.panel-heading</code> to <code class="highlighter-rouge">.card-header</code></li> + <li><code class="highlighter-rouge">.panel-title</code> to <code class="highlighter-rouge">.card-title</code>. Depending on the desired look, you may also want to use <a href="/docs/4.3/content/typography/#headings">heading elements or classes</a> (e.g. <code class="highlighter-rouge"><h3></code>, <code class="highlighter-rouge">.h3</code>) or bold elements or classes (e.g. <code class="highlighter-rouge"><strong></code>, <code class="highlighter-rouge"><b></code>, <a href="/docs/4.3/utilities/text/#font-weight-and-italics"><code class="highlighter-rouge">.font-weight-bold</code></a>). Note that <code class="highlighter-rouge">.card-title</code>, while similarly named, produces a different look than <code class="highlighter-rouge">.panel-title</code>.</li> + <li><code class="highlighter-rouge">.panel-body</code> to <code class="highlighter-rouge">.card-body</code></li> + <li><code class="highlighter-rouge">.panel-footer</code> to <code class="highlighter-rouge">.card-footer</code></li> + <li><code class="highlighter-rouge">.panel-primary</code>, <code class="highlighter-rouge">.panel-success</code>, <code class="highlighter-rouge">.panel-info</code>, <code class="highlighter-rouge">.panel-warning</code>, and <code class="highlighter-rouge">.panel-danger</code> have been dropped for <code class="highlighter-rouge">.bg-</code>, <code class="highlighter-rouge">.text-</code>, and <code class="highlighter-rouge">.border</code> utilities generated from our <code class="highlighter-rouge">$theme-colors</code> Sass map.</li> +</ul> + +<h3 id="progress">Progress</h3> + +<ul> + <li>Replaced contextual <code class="highlighter-rouge">.progress-bar-*</code> classes with <code class="highlighter-rouge">.bg-*</code> utilities. For example, <code class="highlighter-rouge">class="progress-bar progress-bar-danger"</code> becomes <code class="highlighter-rouge">class="progress-bar bg-danger"</code>.</li> + <li>Replaced <code class="highlighter-rouge">.active</code> for animated progress bars with <code class="highlighter-rouge">.progress-bar-animated</code>.</li> +</ul> + +<h3 id="carousel">Carousel</h3> + +<ul> + <li>Overhauled the entire component to simplify design and styling. We have fewer styles for you to override, new indicators, and new icons.</li> + <li>All CSS has been un-nested and renamed, ensuring each class is prefixed with <code class="highlighter-rouge">.carousel-</code>. + <ul> + <li>For carousel items, <code class="highlighter-rouge">.next</code>, <code class="highlighter-rouge">.prev</code>, <code class="highlighter-rouge">.left</code>, and <code class="highlighter-rouge">.right</code> are now <code class="highlighter-rouge">.carousel-item-next</code>, <code class="highlighter-rouge">.carousel-item-prev</code>, <code class="highlighter-rouge">.carousel-item-left</code>, and <code class="highlighter-rouge">.carousel-item-right</code>.</li> + <li><code class="highlighter-rouge">.item</code> is also now <code class="highlighter-rouge">.carousel-item</code>.</li> + <li>For prev/next controls, <code class="highlighter-rouge">.carousel-control.right</code> and <code class="highlighter-rouge">.carousel-control.left</code> are now <code class="highlighter-rouge">.carousel-control-next</code> and <code class="highlighter-rouge">.carousel-control-prev</code>, meaning they no longer require a specific base class.</li> + </ul> + </li> + <li>Removed all responsive styling, deferring to utilities (e.g., showing captions on certain viewports) and custom styles as needed.</li> + <li>Removed image overrides for images in carousel items, deferring to utilities.</li> + <li>Tweaked the Carousel example to include the new markup and styles.</li> +</ul> + +<h3 id="tables-1">Tables</h3> + +<ul> + <li>Removed support for styled nested tables. All table styles are now inherited in v4 for simpler selectors.</li> + <li>Added inverse table variant.</li> +</ul> + +<h3 id="utilities">Utilities</h3> + +<ul> + <li><strong>Display, hidden, and more:</strong> + <ul> + <li>Made display utilities responsive (e.g., <code class="highlighter-rouge">.d-none</code> and <code class="highlighter-rouge">d-{sm,md,lg,xl}-none</code>).</li> + <li>Dropped the bulk of <code class="highlighter-rouge">.hidden-*</code> utilities for new <a href="/docs/4.3/utilities/display/">display utilities</a>. For example, instead of <code class="highlighter-rouge">.hidden-sm-up</code>, use <code class="highlighter-rouge">.d-sm-none</code>. Renamed the <code class="highlighter-rouge">.hidden-print</code> utilities to use the display utility naming scheme. More info under the <a href="#responsive-utilities">Responsive utilities</a> section of this page.</li> + <li>Added <code class="highlighter-rouge">.float-{sm,md,lg,xl}-{left,right,none}</code> classes for responsive floats and removed <code class="highlighter-rouge">.pull-left</code> and <code class="highlighter-rouge">.pull-right</code> since they’re redundant to <code class="highlighter-rouge">.float-left</code> and <code class="highlighter-rouge">.float-right</code>.</li> + </ul> + </li> + <li><strong>Type:</strong> + <ul> + <li>Added responsive variations to our text alignment classes <code class="highlighter-rouge">.text-{sm,md,lg,xl}-{left,center,right}</code>.</li> + </ul> + </li> + <li><strong>Alignment and spacing:</strong> + <ul> + <li>Added new <a href="/docs/4.3/utilities/spacing/">responsive margin and padding utilities</a> for all sides, plus vertical and horizontal shorthands.</li> + <li>Added boatload of <a href="/docs/4.3/utilities/flex/">flexbox utilities</a>.</li> + <li>Dropped <code class="highlighter-rouge">.center-block</code> for the new <code class="highlighter-rouge">.mx-auto</code> class.</li> + </ul> + </li> + <li>Clearfix updated to drop support for older browser versions.</li> +</ul> + +<h3 id="vendor-prefix-mixins">Vendor prefix mixins</h3> + +<p>Bootstrap 3’s <a href="https://www.lifewire.com/css-vendor-prefixes-3466867">vendor prefix</a> mixins, which were deprecated in v3.2.0, have been removed in Bootstrap 4. Since we use <a href="https://github.com/postcss/autoprefixer">Autoprefixer</a>, they’re no longer necessary.</p> + +<p>Removed the following mixins: <code class="highlighter-rouge">animation</code>, <code class="highlighter-rouge">animation-delay</code>, <code class="highlighter-rouge">animation-direction</code>, <code class="highlighter-rouge">animation-duration</code>, <code class="highlighter-rouge">animation-fill-mode</code>, <code class="highlighter-rouge">animation-iteration-count</code>, <code class="highlighter-rouge">animation-name</code>, <code class="highlighter-rouge">animation-timing-function</code>, <code class="highlighter-rouge">backface-visibility</code>, <code class="highlighter-rouge">box-sizing</code>, <code class="highlighter-rouge">content-columns</code>, <code class="highlighter-rouge">hyphens</code>, <code class="highlighter-rouge">opacity</code>, <code class="highlighter-rouge">perspective</code>, <code class="highlighter-rouge">perspective-origin</code>, <code class="highlighter-rouge">rotate</code>, <code class="highlighter-rouge">rotateX</code>, <code class="highlighter-rouge">rotateY</code>, <code class="highlighter-rouge">scale</code>, <code class="highlighter-rouge">scaleX</code>, <code class="highlighter-rouge">scaleY</code>, <code class="highlighter-rouge">skew</code>, <code class="highlighter-rouge">transform-origin</code>, <code class="highlighter-rouge">transition-delay</code>, <code class="highlighter-rouge">transition-duration</code>, <code class="highlighter-rouge">transition-property</code>, <code class="highlighter-rouge">transition-timing-function</code>, <code class="highlighter-rouge">transition-transform</code>, <code class="highlighter-rouge">translate</code>, <code class="highlighter-rouge">translate3d</code>, <code class="highlighter-rouge">user-select</code></p> + +<h2 id="documentation">Documentation</h2> + +<p>Our documentation received an upgrade across the board as well. Here’s the low down:</p> + +<ul> + <li>We’re still using Jekyll, but we have plugins in the mix: + <ul> + <li><code class="highlighter-rouge">bugify.rb</code> is used to efficiently list out the entries on our <a href="/docs/4.3/browser-bugs/">browser bugs</a> page.</li> + <li><code class="highlighter-rouge">example.rb</code> is a custom fork of the default <code class="highlighter-rouge">highlight.rb</code> plugin, allowing for easier example-code handling.</li> + <li><code class="highlighter-rouge">callout.rb</code> is a similar custom fork of that, but designed for our special docs callouts.</li> + <li><a href="https://github.com/toshimaru/jekyll-toc">jekyll-toc</a> is used to generate our table of contents.</li> + </ul> + </li> + <li>All docs content has been rewritten in Markdown (instead of HTML) for easier editing.</li> + <li>Pages have been reorganized for simpler content and a more approachable hierarchy.</li> + <li>We moved from regular CSS to SCSS to take full advantage of Bootstrap’s variables, mixins, and more.</li> +</ul> + +<h3 id="responsive-utilities">Responsive utilities</h3> + +<p>All <code class="highlighter-rouge">@screen-</code> variables have been removed in v4.0.0. Use the <code class="highlighter-rouge">media-breakpoint-up()</code>, <code class="highlighter-rouge">media-breakpoint-down()</code>, or <code class="highlighter-rouge">media-breakpoint-only()</code> Sass mixins or the <code class="highlighter-rouge">$grid-breakpoints</code> Sass map instead.</p> + +<p>Our responsive utility classes have largely been removed in favor of explicit <code class="highlighter-rouge">display</code> utilities.</p> + +<ul> + <li>The <code class="highlighter-rouge">.hidden</code> and <code class="highlighter-rouge">.show</code> classes have been removed because they conflicted with jQuery’s <code class="highlighter-rouge">$(...).hide()</code> and <code class="highlighter-rouge">$(...).show()</code> methods. Instead, try toggling the <code class="highlighter-rouge">[hidden]</code> attribute or use inline styles like <code class="highlighter-rouge">style="display: none;"</code> and <code class="highlighter-rouge">style="display: block;"</code>.</li> + <li>All <code class="highlighter-rouge">.hidden-</code> classes have been removed, save for the print utilities which have been renamed. + <ul> + <li>Removed from v3: <code class="highlighter-rouge">.hidden-xs</code> <code class="highlighter-rouge">.hidden-sm</code> <code class="highlighter-rouge">.hidden-md</code> <code class="highlighter-rouge">.hidden-lg</code> <code class="highlighter-rouge">.visible-xs-block</code> <code class="highlighter-rouge">.visible-xs-inline</code> <code class="highlighter-rouge">.visible-xs-inline-block</code> <code class="highlighter-rouge">.visible-sm-block</code> <code class="highlighter-rouge">.visible-sm-inline</code> <code class="highlighter-rouge">.visible-sm-inline-block</code> <code class="highlighter-rouge">.visible-md-block</code> <code class="highlighter-rouge">.visible-md-inline</code> <code class="highlighter-rouge">.visible-md-inline-block</code> <code class="highlighter-rouge">.visible-lg-block</code> <code class="highlighter-rouge">.visible-lg-inline</code> <code class="highlighter-rouge">.visible-lg-inline-block</code></li> + <li>Removed from v4 alphas: <code class="highlighter-rouge">.hidden-xs-up</code> <code class="highlighter-rouge">.hidden-xs-down</code> <code class="highlighter-rouge">.hidden-sm-up</code> <code class="highlighter-rouge">.hidden-sm-down</code> <code class="highlighter-rouge">.hidden-md-up</code> <code class="highlighter-rouge">.hidden-md-down</code> <code class="highlighter-rouge">.hidden-lg-up</code> <code class="highlighter-rouge">.hidden-lg-down</code></li> + </ul> + </li> + <li>Print utilities no longer start with <code class="highlighter-rouge">.hidden-</code> or <code class="highlighter-rouge">.visible-</code>, but with <code class="highlighter-rouge">.d-print-</code>. + <ul> + <li>Old names: <code class="highlighter-rouge">.visible-print-block</code>, <code class="highlighter-rouge">.visible-print-inline</code>, <code class="highlighter-rouge">.visible-print-inline-block</code>, <code class="highlighter-rouge">.hidden-print</code></li> + <li>New classes: <code class="highlighter-rouge">.d-print-block</code>, <code class="highlighter-rouge">.d-print-inline</code>, <code class="highlighter-rouge">.d-print-inline-block</code>, <code class="highlighter-rouge">.d-print-none</code></li> + </ul> + </li> +</ul> + +<p>Rather than using explicit <code class="highlighter-rouge">.visible-*</code> classes, you make an element visible by simply not hiding it at that screen size. You can combine one <code class="highlighter-rouge">.d-*-none</code> class with one <code class="highlighter-rouge">.d-*-block</code> class to show an element only on a given interval of screen sizes (e.g. <code class="highlighter-rouge">.d-none.d-md-block.d-xl-none</code> shows the element only on medium and large devices).</p> + +<p>Note that the changes to the grid breakpoints in v4 means that you’ll need to go one breakpoint larger to achieve the same results. The new responsive utility classes don’t attempt to accommodate less common cases where an element’s visibility can’t be expressed as a single contiguous range of viewport sizes; you will instead need to use custom CSS in such cases.</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/borders/index.html b/docs/4.3/utilities/borders/index.html new file mode 100644 index 0000000000..05a1a7554b --- /dev/null +++ b/docs/4.3/utilities/borders/index.html @@ -0,0 +1,590 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Use border utilities to quickly style the border and border-radius of an element. Great for images, buttons, or any other element."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Borders · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/borders/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Borders"> +<meta name="twitter:description" content="Use border utilities to quickly style the border and border-radius of an element. Great for images, buttons, or any other element."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/borders/"> +<meta property="og:title" content="Borders"> +<meta property="og:description" content="Use border utilities to quickly style the border and border-radius of an element. Great for images, buttons, or any other element."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#border">Border</a> +<ul> +<li class="toc-entry toc-h3"><a href="#additive">Additive</a></li> +<li class="toc-entry toc-h3"><a href="#subtractive">Subtractive</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#border-color">Border color</a></li> +<li class="toc-entry toc-h2"><a href="#border-radius">Border-radius</a></li> +<li class="toc-entry toc-h2"><a href="#sizes">Sizes</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Borders</h1> + <p class="bd-lead">Use border utilities to quickly style the border and border-radius of an element. Great for images, buttons, or any other element.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="border">Border</h2> + +<p>Use border utilities to add or remove an element’s borders. Choose from all borders or one at a time.</p> + +<h3 id="additive">Additive</h3> + +<div class="bd-example-border-utils"> + +<div class="bd-example"> +<span class="border"></span> +<span class="border-top"></span> +<span class="border-right"></span> +<span class="border-bottom"></span> +<span class="border-left"></span> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><span</span> <span class="na">class=</span><span class="s">"border"</span><span class="nt">></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"border-top"</span><span class="nt">></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"border-right"</span><span class="nt">></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"border-bottom"</span><span class="nt">></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"border-left"</span><span class="nt">></span></span></code></pre></figure> + +</div> + +<h3 id="subtractive">Subtractive</h3> + +<div class="bd-example-border-utils bd-example-border-utils-0"> + +<div class="bd-example"> +<span class="border-0"></span> +<span class="border-top-0"></span> +<span class="border-right-0"></span> +<span class="border-bottom-0"></span> +<span class="border-left-0"></span> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><span</span> <span class="na">class=</span><span class="s">"border-0"</span><span class="nt">></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"border-top-0"</span><span class="nt">></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"border-right-0"</span><span class="nt">></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"border-bottom-0"</span><span class="nt">></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"border-left-0"</span><span class="nt">></span></span></code></pre></figure> + +</div> + +<h2 id="border-color">Border color</h2> + +<p>Change the border color using utilities built on our theme colors.</p> + +<div class="bd-example-border-utils"> + +<div class="bd-example"> + +<span class="border border-primary"></span> +<span class="border border-secondary"></span> +<span class="border border-success"></span> +<span class="border border-danger"></span> +<span class="border border-warning"></span> +<span class="border border-info"></span> +<span class="border border-light"></span> +<span class="border border-dark"></span> +<span class="border border-white"></span> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><span</span> <span class="na">class=</span><span class="s">"border border-primary"</span><span class="nt">></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"border border-secondary"</span><span class="nt">></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"border border-success"</span><span class="nt">></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"border border-danger"</span><span class="nt">></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"border border-warning"</span><span class="nt">></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"border border-info"</span><span class="nt">></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"border border-light"</span><span class="nt">></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"border border-dark"</span><span class="nt">></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"border border-white"</span><span class="nt">></span></span></code></pre></figure> + +</div> + +<h2 id="border-radius">Border-radius</h2> + +<p>Add classes to an element to easily round its corners.</p> + +<div class="bd-example bd-example-images"><svg class="bd-placeholder-img rounded" width="75" height="75" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Example rounded image: 75x75"><title>Example rounded image</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">75x75</text></svg><svg class="bd-placeholder-img rounded-top" width="75" height="75" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Example top rounded image: 75x75"><title>Example top rounded image</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">75x75</text></svg><svg class="bd-placeholder-img rounded-right" width="75" height="75" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Example right rounded image: 75x75"><title>Example right rounded image</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">75x75</text></svg><svg class="bd-placeholder-img rounded-bottom" width="75" height="75" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Example bottom rounded image: 75x75"><title>Example bottom rounded image</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">75x75</text></svg><svg class="bd-placeholder-img rounded-left" width="75" height="75" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Example left rounded image: 75x75"><title>Example left rounded image</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">75x75</text></svg><svg class="bd-placeholder-img rounded-circle" width="75" height="75" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Completely round image: 75x75"><title>Completely round image</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">75x75</text></svg><svg class="bd-placeholder-img rounded-pill" width="150" height="75" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Rounded pill image: 150x75"><title>Rounded pill image</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">150x75</text></svg><svg class="bd-placeholder-img rounded-0" width="75" height="75" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Example non-rounded image (overrides rounding applied elsewhere): 75x75"><title>Example non-rounded image (overrides rounding applied elsewhere)</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">75x75</text></svg></div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">alt=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded"</span><span class="nt">></span> +<span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">alt=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded-top"</span><span class="nt">></span> +<span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">alt=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded-right"</span><span class="nt">></span> +<span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">alt=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded-bottom"</span><span class="nt">></span> +<span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">alt=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded-left"</span><span class="nt">></span> +<span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">alt=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded-circle"</span><span class="nt">></span> +<span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">alt=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded-pill"</span><span class="nt">></span> +<span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">alt=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded-0"</span><span class="nt">></span></code></pre></figure> + +<h2 id="sizes">Sizes</h2> + +<p>Use <code class="highlighter-rouge">.rounded-lg</code> or <code class="highlighter-rouge">.rounded-sm</code> for larger or smaller border-radius.</p> + +<div class="bd-example bd-example-images"><svg class="bd-placeholder-img rounded-sm" width="75" height="75" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Example small rounded image: 75x75"><title>Example small rounded image</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">75x75</text></svg><svg class="bd-placeholder-img rounded-lg" width="75" height="75" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Example large rounded image: 75x75"><title>Example large rounded image</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">75x75</text></svg></div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">alt=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded-sm"</span><span class="nt">></span> +<span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">alt=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"rounded-lg"</span><span class="nt">></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/clearfix/index.html b/docs/4.3/utilities/clearfix/index.html new file mode 100644 index 0000000000..7cecef1150 --- /dev/null +++ b/docs/4.3/utilities/clearfix/index.html @@ -0,0 +1,511 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Quickly and easily clear floated content within a container by adding a clearfix utility."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Clearfix · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/clearfix/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Clearfix"> +<meta name="twitter:description" content="Quickly and easily clear floated content within a container by adding a clearfix utility."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/clearfix/"> +<meta property="og:title" content="Clearfix"> +<meta property="og:description" content="Quickly and easily clear floated content within a container by adding a clearfix utility."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Clearfix</h1> + <p class="bd-lead">Quickly and easily clear floated content within a container by adding a clearfix utility.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>Easily clear <code class="highlighter-rouge">float</code>s by adding <code class="highlighter-rouge">.clearfix</code> <strong>to the parent element</strong>. Can also be used as a mixin.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"clearfix"</span><span class="nt">></span>...<span class="nt"></div></span></code></pre></figure> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// Mixin itself</span> +<span class="k">@mixin</span> <span class="nf">clearfix</span><span class="p">()</span> <span class="p">{</span> + <span class="err">&</span><span class="p">:</span><span class="o">:</span><span class="n">after</span> <span class="p">{</span> + <span class="nl">display</span><span class="p">:</span> <span class="nb">block</span><span class="p">;</span> + <span class="nl">content</span><span class="p">:</span> <span class="s2">""</span><span class="p">;</span> + <span class="nl">clear</span><span class="p">:</span> <span class="nb">both</span><span class="p">;</span> + <span class="p">}</span> +<span class="p">}</span> + +<span class="c1">// Usage as a mixin</span> +<span class="nc">.element</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">clearfix</span><span class="p">;</span> +<span class="p">}</span></code></pre></figure> + +<p>The following example shows how the clearfix can be used. Without the clearfix the wrapping div would not span around the buttons which would cause a broken layout.</p> + +<div class="bd-example"> +<div class="bg-info clearfix"> + <button type="button" class="btn btn-secondary float-left">Example Button floated left</button> + <button type="button" class="btn btn-secondary float-right">Example Button floated right</button> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"bg-info clearfix"</span><span class="nt">></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary float-left"</span><span class="nt">></span>Example Button floated left<span class="nt"></button></span> + <span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"btn btn-secondary float-right"</span><span class="nt">></span>Example Button floated right<span class="nt"></button></span> +<span class="nt"></div></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/close-icon/index.html b/docs/4.3/utilities/close-icon/index.html new file mode 100644 index 0000000000..b19e415c89 --- /dev/null +++ b/docs/4.3/utilities/close-icon/index.html @@ -0,0 +1,491 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Use a generic close icon for dismissing content like modals and alerts."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Close icon · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/close-icon/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Close icon"> +<meta name="twitter:description" content="Use a generic close icon for dismissing content like modals and alerts."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/close-icon/"> +<meta property="og:title" content="Close icon"> +<meta property="og:description" content="Use a generic close icon for dismissing content like modals and alerts."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Close icon</h1> + <p class="bd-lead">Use a generic close icon for dismissing content like modals and alerts.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p><strong>Be sure to include text for screen readers</strong>, as we’ve done with <code class="highlighter-rouge">aria-label</code>.</p> + +<div class="bd-example"> +<button type="button" class="close" aria-label="Close"> + <span aria-hidden="true">×</span> +</button> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><button</span> <span class="na">type=</span><span class="s">"button"</span> <span class="na">class=</span><span class="s">"close"</span> <span class="na">aria-label=</span><span class="s">"Close"</span><span class="nt">></span> + <span class="nt"><span</span> <span class="na">aria-hidden=</span><span class="s">"true"</span><span class="nt">></span><span class="ni">&times;</span><span class="nt"></span></span> +<span class="nt"></button></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/colors/index.html b/docs/4.3/utilities/colors/index.html new file mode 100644 index 0000000000..aec80d3317 --- /dev/null +++ b/docs/4.3/utilities/colors/index.html @@ -0,0 +1,601 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Convey meaning through color with a handful of color utility classes. Includes support for styling links with hover states, too."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Colors · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/colors/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Colors"> +<meta name="twitter:description" content="Convey meaning through color with a handful of color utility classes. Includes support for styling links with hover states, too."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/colors/"> +<meta property="og:title" content="Colors"> +<meta property="og:description" content="Convey meaning through color with a handful of color utility classes. Includes support for styling links with hover states, too."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#color">Color</a></li> +<li class="toc-entry toc-h2"><a href="#background-color">Background color</a></li> +<li class="toc-entry toc-h2"><a href="#background-gradient">Background gradient</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Colors</h1> + <p class="bd-lead">Convey meaning through color with a handful of color utility classes. Includes support for styling links with hover states, too.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="color">Color</h2> + +<div class="bd-example"> + +<p class="text-primary">.text-primary</p> +<p class="text-secondary">.text-secondary</p> +<p class="text-success">.text-success</p> +<p class="text-danger">.text-danger</p> +<p class="text-warning">.text-warning</p> +<p class="text-info">.text-info</p> +<p class="text-light bg-dark">.text-light</p> +<p class="text-dark">.text-dark</p> +<p class="text-body">.text-body</p> +<p class="text-muted">.text-muted</p> +<p class="text-white bg-dark">.text-white</p> +<p class="text-black-50">.text-black-50</p> +<p class="text-white-50 bg-dark">.text-white-50</p> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-primary"</span><span class="nt">></span>.text-primary<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-secondary"</span><span class="nt">></span>.text-secondary<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-success"</span><span class="nt">></span>.text-success<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-danger"</span><span class="nt">></span>.text-danger<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-warning"</span><span class="nt">></span>.text-warning<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-info"</span><span class="nt">></span>.text-info<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-light bg-dark"</span><span class="nt">></span>.text-light<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-dark"</span><span class="nt">></span>.text-dark<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-body"</span><span class="nt">></span>.text-body<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>.text-muted<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-white bg-dark"</span><span class="nt">></span>.text-white<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-black-50"</span><span class="nt">></span>.text-black-50<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-white-50 bg-dark"</span><span class="nt">></span>.text-white-50<span class="nt"></p></span></code></pre></figure> + +<p>Contextual text classes also work well on anchors with the provided hover and focus states. <strong>Note that the <code class="highlighter-rouge">.text-white</code> and <code class="highlighter-rouge">.text-muted</code> class has no additional link styling beyond underline.</strong></p> + +<div class="bd-example"> + +<p><a href="#" class="text-primary">Primary link</a></p> +<p><a href="#" class="text-secondary">Secondary link</a></p> +<p><a href="#" class="text-success">Success link</a></p> +<p><a href="#" class="text-danger">Danger link</a></p> +<p><a href="#" class="text-warning">Warning link</a></p> +<p><a href="#" class="text-info">Info link</a></p> +<p><a href="#" class="text-light bg-dark">Light link</a></p> +<p><a href="#" class="text-dark">Dark link</a></p> +<p><a href="#" class="text-muted">Muted link</a></p> +<p><a href="#" class="text-white bg-dark">White link</a></p> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><p><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"text-primary"</span><span class="nt">></span>Primary link<span class="nt"></a></p></span> +<span class="nt"><p><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"text-secondary"</span><span class="nt">></span>Secondary link<span class="nt"></a></p></span> +<span class="nt"><p><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"text-success"</span><span class="nt">></span>Success link<span class="nt"></a></p></span> +<span class="nt"><p><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"text-danger"</span><span class="nt">></span>Danger link<span class="nt"></a></p></span> +<span class="nt"><p><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"text-warning"</span><span class="nt">></span>Warning link<span class="nt"></a></p></span> +<span class="nt"><p><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"text-info"</span><span class="nt">></span>Info link<span class="nt"></a></p></span> +<span class="nt"><p><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"text-light bg-dark"</span><span class="nt">></span>Light link<span class="nt"></a></p></span> +<span class="nt"><p><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"text-dark"</span><span class="nt">></span>Dark link<span class="nt"></a></p></span> +<span class="nt"><p><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span>Muted link<span class="nt"></a></p></span> +<span class="nt"><p><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"text-white bg-dark"</span><span class="nt">></span>White link<span class="nt"></a></p></span></code></pre></figure> + +<h2 id="background-color">Background color</h2> + +<p>Similar to the contextual text color classes, easily set the background of an element to any contextual class. Anchor components will darken on hover, just like the text classes. Background utilities <strong>do not set <code class="highlighter-rouge">color</code></strong>, so in some cases you’ll want to use <code class="highlighter-rouge">.text-*</code> utilities.</p> + +<div class="bd-example"> + +<div class="p-3 mb-2 bg-primary text-white">.bg-primary</div> +<div class="p-3 mb-2 bg-secondary text-white">.bg-secondary</div> +<div class="p-3 mb-2 bg-success text-white">.bg-success</div> +<div class="p-3 mb-2 bg-danger text-white">.bg-danger</div> +<div class="p-3 mb-2 bg-warning text-dark">.bg-warning</div> +<div class="p-3 mb-2 bg-info text-white">.bg-info</div> +<div class="p-3 mb-2 bg-light text-dark">.bg-light</div> +<div class="p-3 mb-2 bg-dark text-white">.bg-dark</div> +<div class="p-3 mb-2 bg-white text-dark">.bg-white</div> +<div class="p-3 mb-2 bg-transparent text-dark">.bg-transparent</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-3 mb-2 bg-primary text-white"</span><span class="nt">></span>.bg-primary<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-3 mb-2 bg-secondary text-white"</span><span class="nt">></span>.bg-secondary<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-3 mb-2 bg-success text-white"</span><span class="nt">></span>.bg-success<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-3 mb-2 bg-danger text-white"</span><span class="nt">></span>.bg-danger<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-3 mb-2 bg-warning text-dark"</span><span class="nt">></span>.bg-warning<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-3 mb-2 bg-info text-white"</span><span class="nt">></span>.bg-info<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-3 mb-2 bg-light text-dark"</span><span class="nt">></span>.bg-light<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-3 mb-2 bg-dark text-white"</span><span class="nt">></span>.bg-dark<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-3 mb-2 bg-white text-dark"</span><span class="nt">></span>.bg-white<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-3 mb-2 bg-transparent text-dark"</span><span class="nt">></span>.bg-transparent<span class="nt"></div></span></code></pre></figure> + +<h2 id="background-gradient">Background gradient</h2> + +<p>When <code class="highlighter-rouge">$enable-gradients</code> is set to <code class="highlighter-rouge">true</code> (default is <code class="highlighter-rouge">false</code>), you can use <code class="highlighter-rouge">.bg-gradient-</code> utility classes. <a href="/docs/4.3/getting-started/theming/#sass-options">Learn about our Sass options</a> to enable these classes and more.</p> + +<ul> + <li><code class="highlighter-rouge">.bg-gradient-primary</code></li> + <li><code class="highlighter-rouge">.bg-gradient-secondary</code></li> + <li><code class="highlighter-rouge">.bg-gradient-success</code></li> + <li><code class="highlighter-rouge">.bg-gradient-danger</code></li> + <li><code class="highlighter-rouge">.bg-gradient-warning</code></li> + <li><code class="highlighter-rouge">.bg-gradient-info</code></li> + <li><code class="highlighter-rouge">.bg-gradient-light</code></li> + <li><code class="highlighter-rouge">.bg-gradient-dark</code></li> +</ul> + +<div class="bd-callout bd-callout-info"> +<h4 id="dealing-with-specificity">Dealing with specificity</h4> + +<p>Sometimes contextual classes cannot be applied due to the specificity of another selector. In some cases, a sufficient workaround is to wrap your element’s content in a <code class="highlighter-rouge"><div></code> with the class.</p> +</div> + +<div class="bd-callout bd-callout-warning"> +<h5 id="conveying-meaning-to-assistive-technologies">Conveying meaning to assistive technologies</h5> + +<p>Using color to add meaning only provides a visual indication, which will not be conveyed to users of assistive technologies – such as screen readers. Ensure that information denoted by the color is either obvious from the content itself (e.g. the visible text), or is included through alternative means, such as additional text hidden with the <code class="highlighter-rouge">.sr-only</code> class.</p> +</div> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/display/index.html b/docs/4.3/utilities/display/index.html new file mode 100644 index 0000000000..3e93304c05 --- /dev/null +++ b/docs/4.3/utilities/display/index.html @@ -0,0 +1,640 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Quickly and responsively toggle the display value of components and more with our display utilities. Includes support for some of the more common values, as well as some extras for controlling display when printing."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Display property · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/display/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Display property"> +<meta name="twitter:description" content="Quickly and responsively toggle the display value of components and more with our display utilities. Includes support for some of the more common values, as well as some extras for controlling display when printing."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/display/"> +<meta property="og:title" content="Display property"> +<meta property="og:description" content="Quickly and responsively toggle the display value of components and more with our display utilities. Includes support for some of the more common values, as well as some extras for controlling display when printing."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#how-it-works">How it works</a></li> +<li class="toc-entry toc-h2"><a href="#notation">Notation</a></li> +<li class="toc-entry toc-h2"><a href="#examples">Examples</a></li> +<li class="toc-entry toc-h2"><a href="#hiding-elements">Hiding elements</a></li> +<li class="toc-entry toc-h2"><a href="#display-in-print">Display in print</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Display property</h1> + <p class="bd-lead">Quickly and responsively toggle the display value of components and more with our display utilities. Includes support for some of the more common values, as well as some extras for controlling display when printing.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="how-it-works">How it works</h2> + +<p>Change the value of the <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/display"><code class="highlighter-rouge">display</code> property</a> with our responsive display utility classes. We purposely support only a subset of all possible values for <code class="highlighter-rouge">display</code>. Classes can be combined for various effects as you need.</p> + +<h2 id="notation">Notation</h2> + +<p>Display utility classes that apply to all <a href="/docs/4.3/layout/overview/#responsive-breakpoints">breakpoints</a>, from <code class="highlighter-rouge">xs</code> to <code class="highlighter-rouge">xl</code>, have no breakpoint abbreviation in them. This is because those classes are applied from <code class="highlighter-rouge">min-width: 0;</code> and up, and thus are not bound by a media query. The remaining breakpoints, however, do include a breakpoint abbreviation.</p> + +<p>As such, the classes are named using the format:</p> + +<ul> + <li><code class="highlighter-rouge">.d-{value}</code> for <code class="highlighter-rouge">xs</code></li> + <li><code class="highlighter-rouge">.d-{breakpoint}-{value}</code> for <code class="highlighter-rouge">sm</code>, <code class="highlighter-rouge">md</code>, <code class="highlighter-rouge">lg</code>, and <code class="highlighter-rouge">xl</code>.</li> +</ul> + +<p>Where <em>value</em> is one of:</p> + +<ul> + <li><code class="highlighter-rouge">none</code></li> + <li><code class="highlighter-rouge">inline</code></li> + <li><code class="highlighter-rouge">inline-block</code></li> + <li><code class="highlighter-rouge">block</code></li> + <li><code class="highlighter-rouge">table</code></li> + <li><code class="highlighter-rouge">table-cell</code></li> + <li><code class="highlighter-rouge">table-row</code></li> + <li><code class="highlighter-rouge">flex</code></li> + <li><code class="highlighter-rouge">inline-flex</code></li> +</ul> + +<p>The display values can be altered by changing the <code class="highlighter-rouge">$displays</code> variable and recompiling the SCSS.</p> + +<p>The media queries effect screen widths with the given breakpoint <em>or larger</em>. For example, <code class="highlighter-rouge">.d-lg-none</code> sets <code class="highlighter-rouge">display: none;</code> on both <code class="highlighter-rouge">lg</code> and <code class="highlighter-rouge">xl</code> screens.</p> + +<h2 id="examples">Examples</h2> + +<div class="bd-example"> +<div class="d-inline p-2 bg-primary text-white">d-inline</div> +<div class="d-inline p-2 bg-dark text-white">d-inline</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-inline p-2 bg-primary text-white"</span><span class="nt">></span>d-inline<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-inline p-2 bg-dark text-white"</span><span class="nt">></span>d-inline<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<span class="d-block p-2 bg-primary text-white">d-block</span> +<span class="d-block p-2 bg-dark text-white">d-block</span> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><span</span> <span class="na">class=</span><span class="s">"d-block p-2 bg-primary text-white"</span><span class="nt">></span>d-block<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"d-block p-2 bg-dark text-white"</span><span class="nt">></span>d-block<span class="nt"></span></span></code></pre></figure> + +<h2 id="hiding-elements">Hiding elements</h2> + +<p>For faster mobile-friendly development, use responsive display classes for showing and hiding elements by device. Avoid creating entirely different versions of the same site, instead hide elements responsively for each screen size.</p> + +<p>To hide elements simply use the <code class="highlighter-rouge">.d-none</code> class or one of the <code class="highlighter-rouge">.d-{sm,md,lg,xl}-none</code> classes for any responsive screen variation.</p> + +<p>To show an element only on a given interval of screen sizes you can combine one <code class="highlighter-rouge">.d-*-none</code> class with a <code class="highlighter-rouge">.d-*-*</code> class, for example <code class="highlighter-rouge">.d-none .d-md-block .d-xl-none</code> will hide the element for all screen sizes except on medium and large devices.</p> + +<table> + <thead> + <tr> + <th>Screen Size</th> + <th>Class</th> + </tr> + </thead> + <tbody> + <tr> + <td>Hidden on all</td> + <td><code class="highlighter-rouge">.d-none</code></td> + </tr> + <tr> + <td>Hidden only on xs</td> + <td><code class="highlighter-rouge">.d-none .d-sm-block</code></td> + </tr> + <tr> + <td>Hidden only on sm</td> + <td><code class="highlighter-rouge">.d-sm-none .d-md-block</code></td> + </tr> + <tr> + <td>Hidden only on md</td> + <td><code class="highlighter-rouge">.d-md-none .d-lg-block</code></td> + </tr> + <tr> + <td>Hidden only on lg</td> + <td><code class="highlighter-rouge">.d-lg-none .d-xl-block</code></td> + </tr> + <tr> + <td>Hidden only on xl</td> + <td><code class="highlighter-rouge">.d-xl-none</code></td> + </tr> + <tr> + <td>Visible on all</td> + <td><code class="highlighter-rouge">.d-block</code></td> + </tr> + <tr> + <td>Visible only on xs</td> + <td><code class="highlighter-rouge">.d-block .d-sm-none</code></td> + </tr> + <tr> + <td>Visible only on sm</td> + <td><code class="highlighter-rouge">.d-none .d-sm-block .d-md-none</code></td> + </tr> + <tr> + <td>Visible only on md</td> + <td><code class="highlighter-rouge">.d-none .d-md-block .d-lg-none</code></td> + </tr> + <tr> + <td>Visible only on lg</td> + <td><code class="highlighter-rouge">.d-none .d-lg-block .d-xl-none</code></td> + </tr> + <tr> + <td>Visible only on xl</td> + <td><code class="highlighter-rouge">.d-none .d-xl-block</code></td> + </tr> + </tbody> +</table> + +<div class="bd-example"> +<div class="d-lg-none">hide on screens wider than lg</div> +<div class="d-none d-lg-block">hide on screens smaller than lg</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-lg-none"</span><span class="nt">></span>hide on screens wider than lg<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-none d-lg-block"</span><span class="nt">></span>hide on screens smaller than lg<span class="nt"></div></span></code></pre></figure> + +<h2 id="display-in-print">Display in print</h2> + +<p>Change the <code class="highlighter-rouge">display</code> value of elements when printing with our print display utility classes. Includes support for the same <code class="highlighter-rouge">display</code> values as our responsive <code class="highlighter-rouge">.d-*</code> utilities.</p> + +<ul> + <li><code class="highlighter-rouge">.d-print-none</code></li> + <li><code class="highlighter-rouge">.d-print-inline</code></li> + <li><code class="highlighter-rouge">.d-print-inline-block</code></li> + <li><code class="highlighter-rouge">.d-print-block</code></li> + <li><code class="highlighter-rouge">.d-print-table</code></li> + <li><code class="highlighter-rouge">.d-print-table-row</code></li> + <li><code class="highlighter-rouge">.d-print-table-cell</code></li> + <li><code class="highlighter-rouge">.d-print-flex</code></li> + <li><code class="highlighter-rouge">.d-print-inline-flex</code></li> +</ul> + +<p>The print and display classes can be combined.</p> + +<div class="bd-example"> +<div class="d-print-none">Screen Only (Hide on print only)</div> +<div class="d-none d-print-block">Print Only (Hide on screen only)</div> +<div class="d-none d-lg-block d-print-block">Hide up to large on screen, but always show on print</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-print-none"</span><span class="nt">></span>Screen Only (Hide on print only)<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-none d-print-block"</span><span class="nt">></span>Print Only (Hide on screen only)<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-none d-lg-block d-print-block"</span><span class="nt">></span>Hide up to large on screen, but always show on print<span class="nt"></div></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/embed/index.html b/docs/4.3/utilities/embed/index.html new file mode 100644 index 0000000000..eddccc57f4 --- /dev/null +++ b/docs/4.3/utilities/embed/index.html @@ -0,0 +1,540 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Create responsive video or slideshow embeds based on the width of the parent by creating an intrinsic ratio that scales on any device."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Embeds · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/embed/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Embeds"> +<meta name="twitter:description" content="Create responsive video or slideshow embeds based on the width of the parent by creating an intrinsic ratio that scales on any device."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/embed/"> +<meta property="og:title" content="Embeds"> +<meta property="og:description" content="Create responsive video or slideshow embeds based on the width of the parent by creating an intrinsic ratio that scales on any device."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#about">About</a></li> +<li class="toc-entry toc-h2"><a href="#example">Example</a></li> +<li class="toc-entry toc-h2"><a href="#aspect-ratios">Aspect ratios</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Embeds</h1> + <p class="bd-lead">Create responsive video or slideshow embeds based on the width of the parent by creating an intrinsic ratio that scales on any device.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="about">About</h2> + +<p>Rules are directly applied to <code class="highlighter-rouge"><iframe></code>, <code class="highlighter-rouge"><embed></code>, <code class="highlighter-rouge"><video></code>, and <code class="highlighter-rouge"><object></code> elements; optionally use an explicit descendant class <code class="highlighter-rouge">.embed-responsive-item</code> when you want to match the styling for other attributes.</p> + +<p><strong>Pro-Tip!</strong> You don’t need to include <code class="highlighter-rouge">frameborder="0"</code> in your <code class="highlighter-rouge"><iframe></code>s as we override that for you.</p> + +<h2 id="example">Example</h2> + +<p>Wrap any embed like an <code class="highlighter-rouge"><iframe></code> in a parent element with <code class="highlighter-rouge">.embed-responsive</code> and an aspect ratio. The <code class="highlighter-rouge">.embed-responsive-item</code> isn’t strictly required, but we encourage it.</p> + +<div class="bd-example"> +<div class="embed-responsive embed-responsive-16by9"> + <iframe class="embed-responsive-item" src="https://www.youtube.com/embed/zpOULjyy-n8?rel=0" allowfullscreen=""></iframe> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"embed-responsive embed-responsive-16by9"</span><span class="nt">></span> + <span class="nt"><iframe</span> <span class="na">class=</span><span class="s">"embed-responsive-item"</span> <span class="na">src=</span><span class="s">"https://www.youtube.com/embed/zpOULjyy-n8?rel=0"</span> <span class="na">allowfullscreen</span><span class="nt">></iframe></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="aspect-ratios">Aspect ratios</h2> + +<p>Aspect ratios can be customized with modifier classes. By default the following ratio classes are provided:</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- 21:9 aspect ratio --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"embed-responsive embed-responsive-21by9"</span><span class="nt">></span> + <span class="nt"><iframe</span> <span class="na">class=</span><span class="s">"embed-responsive-item"</span> <span class="na">src=</span><span class="s">"..."</span><span class="nt">></iframe></span> +<span class="nt"></div></span> + +<span class="c"><!-- 16:9 aspect ratio --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"embed-responsive embed-responsive-16by9"</span><span class="nt">></span> + <span class="nt"><iframe</span> <span class="na">class=</span><span class="s">"embed-responsive-item"</span> <span class="na">src=</span><span class="s">"..."</span><span class="nt">></iframe></span> +<span class="nt"></div></span> + +<span class="c"><!-- 4:3 aspect ratio --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"embed-responsive embed-responsive-4by3"</span><span class="nt">></span> + <span class="nt"><iframe</span> <span class="na">class=</span><span class="s">"embed-responsive-item"</span> <span class="na">src=</span><span class="s">"..."</span><span class="nt">></iframe></span> +<span class="nt"></div></span> + +<span class="c"><!-- 1:1 aspect ratio --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"embed-responsive embed-responsive-1by1"</span><span class="nt">></span> + <span class="nt"><iframe</span> <span class="na">class=</span><span class="s">"embed-responsive-item"</span> <span class="na">src=</span><span class="s">"..."</span><span class="nt">></iframe></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Within <code class="highlighter-rouge">_variables.scss</code>, you can change the aspect ratios you want to use. Here’s an example of the <code class="highlighter-rouge">$embed-responsive-aspect-ratios</code> list:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nv">$embed-responsive-aspect-ratios</span><span class="p">:</span> <span class="p">(</span> + <span class="p">(</span><span class="m">21</span> <span class="m">9</span><span class="p">)</span><span class="o">,</span> + <span class="p">(</span><span class="m">16</span> <span class="m">9</span><span class="p">)</span><span class="o">,</span> + <span class="p">(</span><span class="m">4</span> <span class="m">3</span><span class="p">)</span><span class="o">,</span> + <span class="p">(</span><span class="m">1</span> <span class="m">1</span><span class="p">)</span> +<span class="p">)</span> <span class="o">!</span><span class="nb">default</span><span class="p">;</span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/flex/index.html b/docs/4.3/utilities/flex/index.html new file mode 100644 index 0000000000..dd0c6d93f6 --- /dev/null +++ b/docs/4.3/utilities/flex/index.html @@ -0,0 +1,1298 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="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."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Flex · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/flex/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Flex"> +<meta name="twitter:description" content="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."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/flex/"> +<meta property="og:title" content="Flex"> +<meta property="og:description" content="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."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#enable-flex-behaviors">Enable flex behaviors</a></li> +<li class="toc-entry toc-h2"><a href="#direction">Direction</a></li> +<li class="toc-entry toc-h2"><a href="#justify-content">Justify content</a></li> +<li class="toc-entry toc-h2"><a href="#align-items">Align items</a></li> +<li class="toc-entry toc-h2"><a href="#align-self">Align self</a></li> +<li class="toc-entry toc-h2"><a href="#fill">Fill</a></li> +<li class="toc-entry toc-h2"><a href="#grow-and-shrink">Grow and shrink</a></li> +<li class="toc-entry toc-h2"><a href="#auto-margins">Auto margins</a> +<ul> +<li class="toc-entry toc-h3"><a href="#with-align-items">With align-items</a></li> +</ul> +</li> +<li class="toc-entry toc-h2"><a href="#wrap">Wrap</a></li> +<li class="toc-entry toc-h2"><a href="#order">Order</a></li> +<li class="toc-entry toc-h2"><a href="#align-content">Align content</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Flex</h1> + <p class="bd-lead">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.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="enable-flex-behaviors">Enable flex behaviors</h2> + +<p>Apply <code class="highlighter-rouge">display</code> utilities to create a flexbox container and transform <strong>direct children elements</strong> into flex items. Flex containers and items are able to be modified further with additional flex properties.</p> + +<div class="bd-example"> +<div class="d-flex p-2 bd-highlight">I'm a flexbox container!</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex p-2 bd-highlight"</span><span class="nt">></span>I'm a flexbox container!<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<div class="d-inline-flex p-2 bd-highlight">I'm an inline flexbox container!</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-inline-flex p-2 bd-highlight"</span><span class="nt">></span>I'm an inline flexbox container!<span class="nt"></div></span></code></pre></figure> + +<p>Responsive variations also exist for <code class="highlighter-rouge">.d-flex</code> and <code class="highlighter-rouge">.d-inline-flex</code>.</p> + +<ul> + <li><code class="highlighter-rouge">.d-flex</code></li> + <li><code class="highlighter-rouge">.d-inline-flex</code></li> + <li><code class="highlighter-rouge">.d-sm-flex</code></li> + <li><code class="highlighter-rouge">.d-sm-inline-flex</code></li> + <li><code class="highlighter-rouge">.d-md-flex</code></li> + <li><code class="highlighter-rouge">.d-md-inline-flex</code></li> + <li><code class="highlighter-rouge">.d-lg-flex</code></li> + <li><code class="highlighter-rouge">.d-lg-inline-flex</code></li> + <li><code class="highlighter-rouge">.d-xl-flex</code></li> + <li><code class="highlighter-rouge">.d-xl-inline-flex</code></li> +</ul> + +<h2 id="direction">Direction</h2> + +<p>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 <code class="highlighter-rouge">row</code>. However, you may encounter situations where you needed to explicitly set this value (like responsive layouts).</p> + +<p>Use <code class="highlighter-rouge">.flex-row</code> to set a horizontal direction (the browser default), or <code class="highlighter-rouge">.flex-row-reverse</code> to start the horizontal direction from the opposite side.</p> + +<div class="bd-example"> +<div class="d-flex flex-row bd-highlight mb-3"> + <div class="p-2 bd-highlight">Flex item 1</div> + <div class="p-2 bd-highlight">Flex item 2</div> + <div class="p-2 bd-highlight">Flex item 3</div> +</div> +<div class="d-flex flex-row-reverse bd-highlight"> + <div class="p-2 bd-highlight">Flex item 1</div> + <div class="p-2 bd-highlight">Flex item 2</div> + <div class="p-2 bd-highlight">Flex item 3</div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex flex-row bd-highlight mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item 1<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item 2<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item 3<span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex flex-row-reverse bd-highlight"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item 1<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item 2<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item 3<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Use <code class="highlighter-rouge">.flex-column</code> to set a vertical direction, or <code class="highlighter-rouge">.flex-column-reverse</code> to start the vertical direction from the opposite side.</p> + +<div class="bd-example"> +<div class="d-flex flex-column bd-highlight mb-3"> + <div class="p-2 bd-highlight">Flex item 1</div> + <div class="p-2 bd-highlight">Flex item 2</div> + <div class="p-2 bd-highlight">Flex item 3</div> +</div> +<div class="d-flex flex-column-reverse bd-highlight"> + <div class="p-2 bd-highlight">Flex item 1</div> + <div class="p-2 bd-highlight">Flex item 2</div> + <div class="p-2 bd-highlight">Flex item 3</div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex flex-column bd-highlight mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item 1<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item 2<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item 3<span class="nt"></div></span> +<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex flex-column-reverse bd-highlight"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item 1<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item 2<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item 3<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Responsive variations also exist for <code class="highlighter-rouge">flex-direction</code>.</p> + +<ul> + <li><code class="highlighter-rouge">.flex-row</code></li> + <li><code class="highlighter-rouge">.flex-row-reverse</code></li> + <li><code class="highlighter-rouge">.flex-column</code></li> + <li><code class="highlighter-rouge">.flex-column-reverse</code></li> + <li><code class="highlighter-rouge">.flex-sm-row</code></li> + <li><code class="highlighter-rouge">.flex-sm-row-reverse</code></li> + <li><code class="highlighter-rouge">.flex-sm-column</code></li> + <li><code class="highlighter-rouge">.flex-sm-column-reverse</code></li> + <li><code class="highlighter-rouge">.flex-md-row</code></li> + <li><code class="highlighter-rouge">.flex-md-row-reverse</code></li> + <li><code class="highlighter-rouge">.flex-md-column</code></li> + <li><code class="highlighter-rouge">.flex-md-column-reverse</code></li> + <li><code class="highlighter-rouge">.flex-lg-row</code></li> + <li><code class="highlighter-rouge">.flex-lg-row-reverse</code></li> + <li><code class="highlighter-rouge">.flex-lg-column</code></li> + <li><code class="highlighter-rouge">.flex-lg-column-reverse</code></li> + <li><code class="highlighter-rouge">.flex-xl-row</code></li> + <li><code class="highlighter-rouge">.flex-xl-row-reverse</code></li> + <li><code class="highlighter-rouge">.flex-xl-column</code></li> + <li><code class="highlighter-rouge">.flex-xl-column-reverse</code></li> +</ul> + +<h2 id="justify-content">Justify content</h2> + +<p>Use <code class="highlighter-rouge">justify-content</code> utilities on flexbox containers to change the alignment of flex items on the main axis (the x-axis to start, y-axis if <code class="highlighter-rouge">flex-direction: column</code>). Choose from <code class="highlighter-rouge">start</code> (browser default), <code class="highlighter-rouge">end</code>, <code class="highlighter-rouge">center</code>, <code class="highlighter-rouge">between</code>, or <code class="highlighter-rouge">around</code>.</p> + +<div class="bd-example"> + <div class="d-flex justify-content-start bd-highlight mb-3"> + <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> + <div class="d-flex justify-content-end bd-highlight mb-3"> + <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> + <div class="d-flex justify-content-center bd-highlight mb-3"> + <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> + <div class="d-flex justify-content-between bd-highlight mb-3"> + <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> + <div class="d-flex justify-content-around 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> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex justify-content-start"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex justify-content-end"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex justify-content-center"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex justify-content-between"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex justify-content-around"</span><span class="nt">></span>...<span class="nt"></div></span></code></pre></figure> + +<p>Responsive variations also exist for <code class="highlighter-rouge">justify-content</code>.</p> + +<ul> + <li><code class="highlighter-rouge">.justify-content-start</code></li> + <li><code class="highlighter-rouge">.justify-content-end</code></li> + <li><code class="highlighter-rouge">.justify-content-center</code></li> + <li><code class="highlighter-rouge">.justify-content-between</code></li> + <li><code class="highlighter-rouge">.justify-content-around</code></li> + <li><code class="highlighter-rouge">.justify-content-sm-start</code></li> + <li><code class="highlighter-rouge">.justify-content-sm-end</code></li> + <li><code class="highlighter-rouge">.justify-content-sm-center</code></li> + <li><code class="highlighter-rouge">.justify-content-sm-between</code></li> + <li><code class="highlighter-rouge">.justify-content-sm-around</code></li> + <li><code class="highlighter-rouge">.justify-content-md-start</code></li> + <li><code class="highlighter-rouge">.justify-content-md-end</code></li> + <li><code class="highlighter-rouge">.justify-content-md-center</code></li> + <li><code class="highlighter-rouge">.justify-content-md-between</code></li> + <li><code class="highlighter-rouge">.justify-content-md-around</code></li> + <li><code class="highlighter-rouge">.justify-content-lg-start</code></li> + <li><code class="highlighter-rouge">.justify-content-lg-end</code></li> + <li><code class="highlighter-rouge">.justify-content-lg-center</code></li> + <li><code class="highlighter-rouge">.justify-content-lg-between</code></li> + <li><code class="highlighter-rouge">.justify-content-lg-around</code></li> + <li><code class="highlighter-rouge">.justify-content-xl-start</code></li> + <li><code class="highlighter-rouge">.justify-content-xl-end</code></li> + <li><code class="highlighter-rouge">.justify-content-xl-center</code></li> + <li><code class="highlighter-rouge">.justify-content-xl-between</code></li> + <li><code class="highlighter-rouge">.justify-content-xl-around</code></li> +</ul> + +<h2 id="align-items">Align items</h2> + +<p>Use <code class="highlighter-rouge">align-items</code> utilities on flexbox containers to change the alignment of flex items on the cross axis (the y-axis to start, x-axis if <code class="highlighter-rouge">flex-direction: column</code>). Choose from <code class="highlighter-rouge">start</code>, <code class="highlighter-rouge">end</code>, <code class="highlighter-rouge">center</code>, <code class="highlighter-rouge">baseline</code>, or <code class="highlighter-rouge">stretch</code> (browser default).</p> + +<div class="bd-example"> + <div class="d-flex align-items-start bd-highlight mb-3" style="height: 100px"> + <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> + <div class="d-flex align-items-end bd-highlight mb-3" style="height: 100px"> + <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> + <div class="d-flex align-items-center bd-highlight mb-3" style="height: 100px"> + <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> + <div class="d-flex align-items-baseline bd-highlight mb-3" style="height: 100px"> + <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> + <div class="d-flex align-items-stretch bd-highlight" style="height: 100px"> + <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> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex align-items-start"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex align-items-end"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex align-items-center"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex align-items-baseline"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex align-items-stretch"</span><span class="nt">></span>...<span class="nt"></div></span></code></pre></figure> + +<p>Responsive variations also exist for <code class="highlighter-rouge">align-items</code>.</p> + +<ul> + <li><code class="highlighter-rouge">.align-items-start</code></li> + <li><code class="highlighter-rouge">.align-items-end</code></li> + <li><code class="highlighter-rouge">.align-items-center</code></li> + <li><code class="highlighter-rouge">.align-items-baseline</code></li> + <li><code class="highlighter-rouge">.align-items-stretch</code></li> + <li><code class="highlighter-rouge">.align-items-sm-start</code></li> + <li><code class="highlighter-rouge">.align-items-sm-end</code></li> + <li><code class="highlighter-rouge">.align-items-sm-center</code></li> + <li><code class="highlighter-rouge">.align-items-sm-baseline</code></li> + <li><code class="highlighter-rouge">.align-items-sm-stretch</code></li> + <li><code class="highlighter-rouge">.align-items-md-start</code></li> + <li><code class="highlighter-rouge">.align-items-md-end</code></li> + <li><code class="highlighter-rouge">.align-items-md-center</code></li> + <li><code class="highlighter-rouge">.align-items-md-baseline</code></li> + <li><code class="highlighter-rouge">.align-items-md-stretch</code></li> + <li><code class="highlighter-rouge">.align-items-lg-start</code></li> + <li><code class="highlighter-rouge">.align-items-lg-end</code></li> + <li><code class="highlighter-rouge">.align-items-lg-center</code></li> + <li><code class="highlighter-rouge">.align-items-lg-baseline</code></li> + <li><code class="highlighter-rouge">.align-items-lg-stretch</code></li> + <li><code class="highlighter-rouge">.align-items-xl-start</code></li> + <li><code class="highlighter-rouge">.align-items-xl-end</code></li> + <li><code class="highlighter-rouge">.align-items-xl-center</code></li> + <li><code class="highlighter-rouge">.align-items-xl-baseline</code></li> + <li><code class="highlighter-rouge">.align-items-xl-stretch</code></li> +</ul> + +<h2 id="align-self">Align self</h2> + +<p>Use <code class="highlighter-rouge">align-self</code> utilities on flexbox items to individually change their alignment on the cross axis (the y-axis to start, x-axis if <code class="highlighter-rouge">flex-direction: column</code>). Choose from the same options as <code class="highlighter-rouge">align-items</code>: <code class="highlighter-rouge">start</code>, <code class="highlighter-rouge">end</code>, <code class="highlighter-rouge">center</code>, <code class="highlighter-rouge">baseline</code>, or <code class="highlighter-rouge">stretch</code> (browser default).</p> + +<div class="bd-example"> + <div class="d-flex bd-highlight mb-3" style="height: 100px"> + <div class="p-2 bd-highlight">Flex item</div> + <div class="align-self-start p-2 bd-highlight">Aligned flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + </div> + <div class="d-flex bd-highlight mb-3" style="height: 100px"> + <div class="p-2 bd-highlight">Flex item</div> + <div class="align-self-end p-2 bd-highlight">Aligned flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + </div> + <div class="d-flex bd-highlight mb-3" style="height: 100px"> + <div class="p-2 bd-highlight">Flex item</div> + <div class="align-self-center p-2 bd-highlight">Aligned flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + </div> + <div class="d-flex bd-highlight mb-3" style="height: 100px"> + <div class="p-2 bd-highlight">Flex item</div> + <div class="align-self-baseline p-2 bd-highlight">Aligned flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + </div> + <div class="d-flex bd-highlight" style="height: 100px"> + <div class="p-2 bd-highlight">Flex item</div> + <div class="align-self-stretch p-2 bd-highlight">Aligned flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"align-self-start"</span><span class="nt">></span>Aligned flex item<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"align-self-end"</span><span class="nt">></span>Aligned flex item<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"align-self-center"</span><span class="nt">></span>Aligned flex item<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"align-self-baseline"</span><span class="nt">></span>Aligned flex item<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"align-self-stretch"</span><span class="nt">></span>Aligned flex item<span class="nt"></div></span></code></pre></figure> + +<p>Responsive variations also exist for <code class="highlighter-rouge">align-self</code>.</p> + +<ul> + <li><code class="highlighter-rouge">.align-self-start</code></li> + <li><code class="highlighter-rouge">.align-self-end</code></li> + <li><code class="highlighter-rouge">.align-self-center</code></li> + <li><code class="highlighter-rouge">.align-self-baseline</code></li> + <li><code class="highlighter-rouge">.align-self-stretch</code></li> + <li><code class="highlighter-rouge">.align-self-sm-start</code></li> + <li><code class="highlighter-rouge">.align-self-sm-end</code></li> + <li><code class="highlighter-rouge">.align-self-sm-center</code></li> + <li><code class="highlighter-rouge">.align-self-sm-baseline</code></li> + <li><code class="highlighter-rouge">.align-self-sm-stretch</code></li> + <li><code class="highlighter-rouge">.align-self-md-start</code></li> + <li><code class="highlighter-rouge">.align-self-md-end</code></li> + <li><code class="highlighter-rouge">.align-self-md-center</code></li> + <li><code class="highlighter-rouge">.align-self-md-baseline</code></li> + <li><code class="highlighter-rouge">.align-self-md-stretch</code></li> + <li><code class="highlighter-rouge">.align-self-lg-start</code></li> + <li><code class="highlighter-rouge">.align-self-lg-end</code></li> + <li><code class="highlighter-rouge">.align-self-lg-center</code></li> + <li><code class="highlighter-rouge">.align-self-lg-baseline</code></li> + <li><code class="highlighter-rouge">.align-self-lg-stretch</code></li> + <li><code class="highlighter-rouge">.align-self-xl-start</code></li> + <li><code class="highlighter-rouge">.align-self-xl-end</code></li> + <li><code class="highlighter-rouge">.align-self-xl-center</code></li> + <li><code class="highlighter-rouge">.align-self-xl-baseline</code></li> + <li><code class="highlighter-rouge">.align-self-xl-stretch</code></li> +</ul> + +<h2 id="fill">Fill</h2> + +<p>Use the <code class="highlighter-rouge">.flex-fill</code> class on a series of sibling elements to force them into widths equal to their content (or equal widths if their content does not surpass their border-boxes) while taking up all available horizontal space.</p> + +<div class="bd-example"> +<div class="d-flex bd-highlight"> + <div class="p-2 flex-fill bd-highlight">Flex item with a lot of content</div> + <div class="p-2 flex-fill bd-highlight">Flex item</div> + <div class="p-2 flex-fill bd-highlight">Flex item</div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex bd-highlight"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 flex-fill bd-highlight"</span><span class="nt">></span>Flex item with a lot of content<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 flex-fill bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 flex-fill bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Responsive variations also exist for <code class="highlighter-rouge">flex-fill</code>.</p> + +<ul> + <li><code class="highlighter-rouge">.flex-fill</code></li> + <li><code class="highlighter-rouge">.flex-sm-fill</code></li> + <li><code class="highlighter-rouge">.flex-md-fill</code></li> + <li><code class="highlighter-rouge">.flex-lg-fill</code></li> + <li><code class="highlighter-rouge">.flex-xl-fill</code></li> +</ul> + +<h2 id="grow-and-shrink">Grow and shrink</h2> + +<p>Use <code class="highlighter-rouge">.flex-grow-*</code> utilities to toggle a flex item’s ability to grow to fill available space. In the example below, the <code class="highlighter-rouge">.flex-grow-1</code> elements uses all available space it can, while allowing the remaining two flex items their necessary space.</p> + +<div class="bd-example"> +<div class="d-flex bd-highlight"> + <div class="p-2 flex-grow-1 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Third flex item</div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex bd-highlight"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 flex-grow-1 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Third flex item<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Use <code class="highlighter-rouge">.flex-shrink-*</code> utilities to toggle a flex item’s ability to shrink if necessary. In the example below, the second flex item with <code class="highlighter-rouge">.flex-shrink-1</code> is forced to wrap it’s contents to a new line, “shrinking†to allow more space for the previous flex item with <code class="highlighter-rouge">.w-100</code>.</p> + +<div class="bd-example"> +<div class="d-flex bd-highlight"> + <div class="p-2 w-100 bd-highlight">Flex item</div> + <div class="p-2 flex-shrink-1 bd-highlight">Flex item</div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex bd-highlight"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 w-100 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 flex-shrink-1 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Responsive variations also exist for <code class="highlighter-rouge">flex-grow</code> and <code class="highlighter-rouge">flex-shrink</code>.</p> + +<ul> + <li><code class="highlighter-rouge">.flex-{grow|shrink}-0</code></li> + <li><code class="highlighter-rouge">.flex-{grow|shrink}-1</code></li> + <li><code class="highlighter-rouge">.flex-sm-{grow|shrink}-0</code></li> + <li><code class="highlighter-rouge">.flex-sm-{grow|shrink}-1</code></li> + <li><code class="highlighter-rouge">.flex-md-{grow|shrink}-0</code></li> + <li><code class="highlighter-rouge">.flex-md-{grow|shrink}-1</code></li> + <li><code class="highlighter-rouge">.flex-lg-{grow|shrink}-0</code></li> + <li><code class="highlighter-rouge">.flex-lg-{grow|shrink}-1</code></li> + <li><code class="highlighter-rouge">.flex-xl-{grow|shrink}-0</code></li> + <li><code class="highlighter-rouge">.flex-xl-{grow|shrink}-1</code></li> +</ul> + +<h2 id="auto-margins">Auto margins</h2> + +<p>Flexbox can do some pretty awesome things when you mix flex alignments with auto margins. Shown below are three examples of controlling flex items via auto margins: default (no auto margin), pushing two items to the right (<code class="highlighter-rouge">.mr-auto</code>), and pushing two items to the left (<code class="highlighter-rouge">.ml-auto</code>).</p> + +<p><strong>Unfortunately, IE10 and IE11 do not properly support auto margins on flex items whose parent has a non-default <code class="highlighter-rouge">justify-content</code> value.</strong> <a href="https://stackoverflow.com/a/37535548">See this StackOverflow answer</a> for more details.</p> + +<div class="bd-example"> +<div class="d-flex bd-highlight mb-3"> + <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> + +<div class="d-flex bd-highlight mb-3"> + <div class="mr-auto 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> + +<div class="d-flex bd-highlight mb-3"> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="ml-auto p-2 bd-highlight">Flex item</div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex bd-highlight mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex bd-highlight mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"mr-auto p-2 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex bd-highlight mb-3"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"ml-auto p-2 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h3 id="with-align-items">With align-items</h3> + +<p>Vertically move one flex item to the top or bottom of a container by mixing <code class="highlighter-rouge">align-items</code>, <code class="highlighter-rouge">flex-direction: column</code>, and <code class="highlighter-rouge">margin-top: auto</code> or <code class="highlighter-rouge">margin-bottom: auto</code>.</p> + +<div class="bd-example"> +<div class="d-flex align-items-start flex-column bd-highlight mb-3" style="height: 200px;"> + <div class="mb-auto 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> + +<div class="d-flex align-items-end flex-column bd-highlight mb-3" style="height: 200px;"> + <div class="p-2 bd-highlight">Flex item</div> + <div class="p-2 bd-highlight">Flex item</div> + <div class="mt-auto p-2 bd-highlight">Flex item</div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex align-items-start flex-column bd-highlight mb-3"</span> <span class="na">style=</span><span class="s">"height: 200px;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"mb-auto p-2 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex align-items-end flex-column bd-highlight mb-3"</span> <span class="na">style=</span><span class="s">"height: 200px;"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"p-2 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"mt-auto p-2 bd-highlight"</span><span class="nt">></span>Flex item<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="wrap">Wrap</h2> + +<p>Change how flex items wrap in a flex container. Choose from no wrapping at all (the browser default) with <code class="highlighter-rouge">.flex-nowrap</code>, wrapping with <code class="highlighter-rouge">.flex-wrap</code>, or reverse wrapping with <code class="highlighter-rouge">.flex-wrap-reverse</code>.</p> + +<div class="bd-example"> + <div class="d-flex flex-nowrap bd-highlight" style="width: 8rem;"> + <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> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex flex-nowrap"</span><span class="nt">></span> + ... +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> + <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> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex flex-wrap"</span><span class="nt">></span> + ... +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> + <div class="d-flex flex-wrap-reverse 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> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex flex-wrap-reverse"</span><span class="nt">></span> + ... +<span class="nt"></div></span></code></pre></figure> + +<p>Responsive variations also exist for <code class="highlighter-rouge">flex-wrap</code>.</p> + +<ul> + <li><code class="highlighter-rouge">.flex-nowrap</code></li> + <li><code class="highlighter-rouge">.flex-wrap</code></li> + <li><code class="highlighter-rouge">.flex-wrap-reverse</code></li> + <li><code class="highlighter-rouge">.flex-sm-nowrap</code></li> + <li><code class="highlighter-rouge">.flex-sm-wrap</code></li> + <li><code class="highlighter-rouge">.flex-sm-wrap-reverse</code></li> + <li><code class="highlighter-rouge">.flex-md-nowrap</code></li> + <li><code class="highlighter-rouge">.flex-md-wrap</code></li> + <li><code class="highlighter-rouge">.flex-md-wrap-reverse</code></li> + <li><code class="highlighter-rouge">.flex-lg-nowrap</code></li> + <li><code class="highlighter-rouge">.flex-lg-wrap</code></li> + <li><code class="highlighter-rouge">.flex-lg-wrap-reverse</code></li> + <li><code class="highlighter-rouge">.flex-xl-nowrap</code></li> + <li><code class="highlighter-rouge">.flex-xl-wrap</code></li> + <li><code class="highlighter-rouge">.flex-xl-wrap-reverse</code></li> +</ul> + +<h2 id="order">Order</h2> + +<p>Change the <em>visual</em> order of specific flex items with a handful of <code class="highlighter-rouge">order</code> utilities. We only provide options for making an item first or last, as well as a reset to use the DOM order. As <code class="highlighter-rouge">order</code> takes any integer value (e.g., <code class="highlighter-rouge">5</code>), add custom CSS for any additional values needed.</p> + +<div class="bd-example"> +<div class="d-flex flex-nowrap bd-highlight"> + <div class="order-3 p-2 bd-highlight">First flex item</div> + <div class="order-2 p-2 bd-highlight">Second flex item</div> + <div class="order-1 p-2 bd-highlight">Third flex item</div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex flex-nowrap bd-highlight"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"order-3 p-2 bd-highlight"</span><span class="nt">></span>First flex item<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"order-2 p-2 bd-highlight"</span><span class="nt">></span>Second flex item<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"order-1 p-2 bd-highlight"</span><span class="nt">></span>Third flex item<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Responsive variations also exist for <code class="highlighter-rouge">order</code>.</p> + +<ul> + <li><code class="highlighter-rouge">.order-0</code></li> + <li><code class="highlighter-rouge">.order-1</code></li> + <li><code class="highlighter-rouge">.order-2</code></li> + <li><code class="highlighter-rouge">.order-3</code></li> + <li><code class="highlighter-rouge">.order-4</code></li> + <li><code class="highlighter-rouge">.order-5</code></li> + <li><code class="highlighter-rouge">.order-6</code></li> + <li><code class="highlighter-rouge">.order-7</code></li> + <li><code class="highlighter-rouge">.order-8</code></li> + <li><code class="highlighter-rouge">.order-9</code></li> + <li><code class="highlighter-rouge">.order-10</code></li> + <li><code class="highlighter-rouge">.order-11</code></li> + <li><code class="highlighter-rouge">.order-12</code></li> + <li><code class="highlighter-rouge">.order-sm-0</code></li> + <li><code class="highlighter-rouge">.order-sm-1</code></li> + <li><code class="highlighter-rouge">.order-sm-2</code></li> + <li><code class="highlighter-rouge">.order-sm-3</code></li> + <li><code class="highlighter-rouge">.order-sm-4</code></li> + <li><code class="highlighter-rouge">.order-sm-5</code></li> + <li><code class="highlighter-rouge">.order-sm-6</code></li> + <li><code class="highlighter-rouge">.order-sm-7</code></li> + <li><code class="highlighter-rouge">.order-sm-8</code></li> + <li><code class="highlighter-rouge">.order-sm-9</code></li> + <li><code class="highlighter-rouge">.order-sm-10</code></li> + <li><code class="highlighter-rouge">.order-sm-11</code></li> + <li><code class="highlighter-rouge">.order-sm-12</code></li> + <li><code class="highlighter-rouge">.order-md-0</code></li> + <li><code class="highlighter-rouge">.order-md-1</code></li> + <li><code class="highlighter-rouge">.order-md-2</code></li> + <li><code class="highlighter-rouge">.order-md-3</code></li> + <li><code class="highlighter-rouge">.order-md-4</code></li> + <li><code class="highlighter-rouge">.order-md-5</code></li> + <li><code class="highlighter-rouge">.order-md-6</code></li> + <li><code class="highlighter-rouge">.order-md-7</code></li> + <li><code class="highlighter-rouge">.order-md-8</code></li> + <li><code class="highlighter-rouge">.order-md-9</code></li> + <li><code class="highlighter-rouge">.order-md-10</code></li> + <li><code class="highlighter-rouge">.order-md-11</code></li> + <li><code class="highlighter-rouge">.order-md-12</code></li> + <li><code class="highlighter-rouge">.order-lg-0</code></li> + <li><code class="highlighter-rouge">.order-lg-1</code></li> + <li><code class="highlighter-rouge">.order-lg-2</code></li> + <li><code class="highlighter-rouge">.order-lg-3</code></li> + <li><code class="highlighter-rouge">.order-lg-4</code></li> + <li><code class="highlighter-rouge">.order-lg-5</code></li> + <li><code class="highlighter-rouge">.order-lg-6</code></li> + <li><code class="highlighter-rouge">.order-lg-7</code></li> + <li><code class="highlighter-rouge">.order-lg-8</code></li> + <li><code class="highlighter-rouge">.order-lg-9</code></li> + <li><code class="highlighter-rouge">.order-lg-10</code></li> + <li><code class="highlighter-rouge">.order-lg-11</code></li> + <li><code class="highlighter-rouge">.order-lg-12</code></li> + <li><code class="highlighter-rouge">.order-xl-0</code></li> + <li><code class="highlighter-rouge">.order-xl-1</code></li> + <li><code class="highlighter-rouge">.order-xl-2</code></li> + <li><code class="highlighter-rouge">.order-xl-3</code></li> + <li><code class="highlighter-rouge">.order-xl-4</code></li> + <li><code class="highlighter-rouge">.order-xl-5</code></li> + <li><code class="highlighter-rouge">.order-xl-6</code></li> + <li><code class="highlighter-rouge">.order-xl-7</code></li> + <li><code class="highlighter-rouge">.order-xl-8</code></li> + <li><code class="highlighter-rouge">.order-xl-9</code></li> + <li><code class="highlighter-rouge">.order-xl-10</code></li> + <li><code class="highlighter-rouge">.order-xl-11</code></li> + <li><code class="highlighter-rouge">.order-xl-12</code></li> +</ul> + +<h2 id="align-content">Align content</h2> + +<p>Use <code class="highlighter-rouge">align-content</code> utilities on flexbox containers to align flex items <em>together</em> on the cross axis. Choose from <code class="highlighter-rouge">start</code> (browser default), <code class="highlighter-rouge">end</code>, <code class="highlighter-rouge">center</code>, <code class="highlighter-rouge">between</code>, <code class="highlighter-rouge">around</code>, or <code class="highlighter-rouge">stretch</code>. To demonstrate these utilities, we’ve enforced <code class="highlighter-rouge">flex-wrap: wrap</code> and increased the number of flex items.</p> + +<p><strong>Heads up!</strong> This property has no effect on single rows of flex items.</p> + +<div class="bd-example"> + <div class="d-flex align-content-start flex-wrap bd-highlight mb-3" style="height: 200px"> + <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> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex align-content-start flex-wrap"</span><span class="nt">></span> + ... +<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> + <div class="d-flex align-content-end flex-wrap bd-highlight mb-3" style="height: 200px"> + <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> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex align-content-end flex-wrap"</span><span class="nt">></span>...<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> + <div class="d-flex align-content-center flex-wrap bd-highlight mb-3" style="height: 200px"> + <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> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex align-content-center flex-wrap"</span><span class="nt">></span>...<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> + <div class="d-flex align-content-between flex-wrap bd-highlight mb-3" style="height: 200px"> + <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> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex align-content-between flex-wrap"</span><span class="nt">></span>...<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> + <div class="d-flex align-content-around flex-wrap bd-highlight mb-3" style="height: 200px"> + <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> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex align-content-around flex-wrap"</span><span class="nt">></span>...<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> + <div class="d-flex align-content-stretch flex-wrap bd-highlight mb-3" style="height: 200px"> + <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> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"d-flex align-content-stretch flex-wrap"</span><span class="nt">></span>...<span class="nt"></div></span></code></pre></figure> + +<p>Responsive variations also exist for <code class="highlighter-rouge">align-content</code>.</p> + +<ul> + <li><code class="highlighter-rouge">.align-content-start</code></li> + <li><code class="highlighter-rouge">.align-content-end</code></li> + <li><code class="highlighter-rouge">.align-content-center</code></li> + <li><code class="highlighter-rouge">.align-content-around</code></li> + <li><code class="highlighter-rouge">.align-content-stretch</code></li> + <li><code class="highlighter-rouge">.align-content-sm-start</code></li> + <li><code class="highlighter-rouge">.align-content-sm-end</code></li> + <li><code class="highlighter-rouge">.align-content-sm-center</code></li> + <li><code class="highlighter-rouge">.align-content-sm-around</code></li> + <li><code class="highlighter-rouge">.align-content-sm-stretch</code></li> + <li><code class="highlighter-rouge">.align-content-md-start</code></li> + <li><code class="highlighter-rouge">.align-content-md-end</code></li> + <li><code class="highlighter-rouge">.align-content-md-center</code></li> + <li><code class="highlighter-rouge">.align-content-md-around</code></li> + <li><code class="highlighter-rouge">.align-content-md-stretch</code></li> + <li><code class="highlighter-rouge">.align-content-lg-start</code></li> + <li><code class="highlighter-rouge">.align-content-lg-end</code></li> + <li><code class="highlighter-rouge">.align-content-lg-center</code></li> + <li><code class="highlighter-rouge">.align-content-lg-around</code></li> + <li><code class="highlighter-rouge">.align-content-lg-stretch</code></li> + <li><code class="highlighter-rouge">.align-content-xl-start</code></li> + <li><code class="highlighter-rouge">.align-content-xl-end</code></li> + <li><code class="highlighter-rouge">.align-content-xl-center</code></li> + <li><code class="highlighter-rouge">.align-content-xl-around</code></li> + <li><code class="highlighter-rouge">.align-content-xl-stretch</code></li> +</ul> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/float/index.html b/docs/4.3/utilities/float/index.html new file mode 100644 index 0000000000..358e5dbe69 --- /dev/null +++ b/docs/4.3/utilities/float/index.html @@ -0,0 +1,554 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Toggle floats on any element, across any breakpoint, using our responsive float utilities."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Float · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/float/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Float"> +<meta name="twitter:description" content="Toggle floats on any element, across any breakpoint, using our responsive float utilities."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/float/"> +<meta property="og:title" content="Float"> +<meta property="og:description" content="Toggle floats on any element, across any breakpoint, using our responsive float utilities."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#overview">Overview</a></li> +<li class="toc-entry toc-h2"><a href="#classes">Classes</a></li> +<li class="toc-entry toc-h2"><a href="#mixins">Mixins</a></li> +<li class="toc-entry toc-h2"><a href="#responsive">Responsive</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Float</h1> + <p class="bd-lead">Toggle floats on any element, across any breakpoint, using our responsive float utilities.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="overview">Overview</h2> + +<p>These utility classes float an element to the left or right, or disable floating, based on the current viewport size using the <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/float">CSS <code class="highlighter-rouge">float</code> property</a>. <code class="highlighter-rouge">!important</code> is included to avoid specificity issues. These use the same viewport breakpoints as our grid system. Please be aware float utilities have no affect on flex items.</p> + +<h2 id="classes">Classes</h2> + +<p>Toggle a float with a class:</p> + +<div class="bd-example"> +<div class="float-left">Float left on all viewport sizes</div><br /> +<div class="float-right">Float right on all viewport sizes</div><br /> +<div class="float-none">Don't float on all viewport sizes</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"float-left"</span><span class="nt">></span>Float left on all viewport sizes<span class="nt"></div><br></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"float-right"</span><span class="nt">></span>Float right on all viewport sizes<span class="nt"></div><br></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"float-none"</span><span class="nt">></span>Don't float on all viewport sizes<span class="nt"></div></span></code></pre></figure> + +<h2 id="mixins">Mixins</h2> + +<p>Or by Sass mixin:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nc">.element</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">float-left</span><span class="p">;</span> +<span class="p">}</span> +<span class="nc">.another-element</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">float-right</span><span class="p">;</span> +<span class="p">}</span> +<span class="nc">.one-more</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">float-none</span><span class="p">;</span> +<span class="p">}</span></code></pre></figure> + +<h2 id="responsive">Responsive</h2> + +<p>Responsive variations also exist for each <code class="highlighter-rouge">float</code> value.</p> + +<div class="bd-example"> +<div class="float-sm-left">Float left on viewports sized SM (small) or wider</div><br /> +<div class="float-md-left">Float left on viewports sized MD (medium) or wider</div><br /> +<div class="float-lg-left">Float left on viewports sized LG (large) or wider</div><br /> +<div class="float-xl-left">Float left on viewports sized XL (extra-large) or wider</div><br /> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"float-sm-left"</span><span class="nt">></span>Float left on viewports sized SM (small) or wider<span class="nt"></div><br></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"float-md-left"</span><span class="nt">></span>Float left on viewports sized MD (medium) or wider<span class="nt"></div><br></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"float-lg-left"</span><span class="nt">></span>Float left on viewports sized LG (large) or wider<span class="nt"></div><br></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"float-xl-left"</span><span class="nt">></span>Float left on viewports sized XL (extra-large) or wider<span class="nt"></div><br></span></code></pre></figure> + +<p>Here are all the support classes;</p> + +<ul> + <li><code class="highlighter-rouge">.float-left</code></li> + <li><code class="highlighter-rouge">.float-right</code></li> + <li><code class="highlighter-rouge">.float-none</code></li> + <li><code class="highlighter-rouge">.float-sm-left</code></li> + <li><code class="highlighter-rouge">.float-sm-right</code></li> + <li><code class="highlighter-rouge">.float-sm-none</code></li> + <li><code class="highlighter-rouge">.float-md-left</code></li> + <li><code class="highlighter-rouge">.float-md-right</code></li> + <li><code class="highlighter-rouge">.float-md-none</code></li> + <li><code class="highlighter-rouge">.float-lg-left</code></li> + <li><code class="highlighter-rouge">.float-lg-right</code></li> + <li><code class="highlighter-rouge">.float-lg-none</code></li> + <li><code class="highlighter-rouge">.float-xl-left</code></li> + <li><code class="highlighter-rouge">.float-xl-right</code></li> + <li><code class="highlighter-rouge">.float-xl-none</code></li> +</ul> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/image-replacement/index.html b/docs/4.3/utilities/image-replacement/index.html new file mode 100644 index 0000000000..14a4f5ba13 --- /dev/null +++ b/docs/4.3/utilities/image-replacement/index.html @@ -0,0 +1,504 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Swap text for background images with the image replacement class."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Image replacement · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/image-replacement/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Image replacement"> +<meta name="twitter:description" content="Swap text for background images with the image replacement class."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/image-replacement/"> +<meta property="og:title" content="Image replacement"> +<meta property="og:description" content="Swap text for background images with the image replacement class."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Image replacement</h1> + <p class="bd-lead">Swap text for background images with the image replacement class.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + +<div class="bd-callout bd-callout-warning"> +<h5 id="warning">Warning</h5> + +<p>The <code class="highlighter-rouge">text-hide()</code> class and mixin has been deprecated as of v4.1. It will be removed entirely in v5.</p> +</div> + +<p>Utilize the <code class="highlighter-rouge">.text-hide</code> class or mixin to help replace an element’s text content with a background image.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><h1</span> <span class="na">class=</span><span class="s">"text-hide"</span><span class="nt">></span>Custom heading<span class="nt"></h1></span></code></pre></figure> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// Usage as a mixin</span> +<span class="nc">.heading</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">text-hide</span><span class="p">;</span> +<span class="p">}</span></code></pre></figure> + +<p>Use the <code class="highlighter-rouge">.text-hide</code> class to maintain the accessibility and SEO benefits of heading tags, but want to utilize a <code class="highlighter-rouge">background-image</code> instead of text.</p> + +<div class="bd-example"> + <h1 class="text-hide" style="background-image: url('/docs/4.3/assets/brand/bootstrap-solid.svg'); width: 50px; height: 50px;">Bootstrap</h1> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><h1</span> <span class="na">class=</span><span class="s">"text-hide"</span> <span class="na">style=</span><span class="s">"background-image: url('...');"</span><span class="nt">></span>Bootstrap<span class="nt"></h1></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/index.html b/docs/4.3/utilities/index.html new file mode 100644 index 0000000000..45971ed7b0 --- /dev/null +++ b/docs/4.3/utilities/index.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<html lang="en-US"> + <meta charset="utf-8"> + <title>Redirecting…</title> + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/borders/"> + <script>location="https://getbootstrap.com/docs/4.3/utilities/borders/"</script> + <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.3/utilities/borders/"> + <meta name="robots" content="noindex"> + <h1>Redirecting…</h1> + <a href="https://getbootstrap.com/docs/4.3/utilities/borders/">Click here if you are not redirected.</a> +</html> diff --git a/docs/4.3/utilities/overflow/index.html b/docs/4.3/utilities/overflow/index.html new file mode 100644 index 0000000000..d3b8c1d3c2 --- /dev/null +++ b/docs/4.3/utilities/overflow/index.html @@ -0,0 +1,495 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Use these shorthand utilities for quickly configuring how content overflows an element."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Overflow · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/overflow/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Overflow"> +<meta name="twitter:description" content="Use these shorthand utilities for quickly configuring how content overflows an element."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/overflow/"> +<meta property="og:title" content="Overflow"> +<meta property="og:description" content="Use these shorthand utilities for quickly configuring how content overflows an element."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Overflow</h1> + <p class="bd-lead">Use these shorthand utilities for quickly configuring how content overflows an element.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>Barebones <code class="highlighter-rouge">overflow</code> functionality is provided for two values by default, and they are not responsive.</p> + +<div class="bd-example d-md-flex"> + <div class="overflow-auto p-3 mb-3 mb-md-0 mr-md-3 bg-light" style="max-width: 260px; max-height: 100px;"> + This is an example of using <code>.overflow-auto</code> on an element with set width and height dimensions. By design, this content will vertically scroll. + </div> + <div class="overflow-hidden p-3 bg-light" style="max-width: 260px; max-height: 100px;"> + This is an example of using <code>.overflow-hidden</code> on an element with set width and height dimensions. + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"overflow-auto"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"overflow-hidden"</span><span class="nt">></span>...<span class="nt"></div></span></code></pre></figure> + +<p>Using Sass variables, you may customize the overflow utilities by changing the <code class="highlighter-rouge">$overflows</code> variable in <code class="highlighter-rouge">_variables.scss</code>.</p> + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/position/index.html b/docs/4.3/utilities/position/index.html new file mode 100644 index 0000000000..3e11da4bba --- /dev/null +++ b/docs/4.3/utilities/position/index.html @@ -0,0 +1,519 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Use these shorthand utilities for quickly configuring the position of an element."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Position · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/position/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Position"> +<meta name="twitter:description" content="Use these shorthand utilities for quickly configuring the position of an element."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/position/"> +<meta property="og:title" content="Position"> +<meta property="og:description" content="Use these shorthand utilities for quickly configuring the position of an element."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#common-values">Common values</a></li> +<li class="toc-entry toc-h2"><a href="#fixed-top">Fixed top</a></li> +<li class="toc-entry toc-h2"><a href="#fixed-bottom">Fixed bottom</a></li> +<li class="toc-entry toc-h2"><a href="#sticky-top">Sticky top</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Position</h1> + <p class="bd-lead">Use these shorthand utilities for quickly configuring the position of an element.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="common-values">Common values</h2> + +<p>Quick positioning classes are available, though they are not responsive.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"position-static"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"position-relative"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"position-absolute"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"position-fixed"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"position-sticky"</span><span class="nt">></span>...<span class="nt"></div></span></code></pre></figure> + +<h2 id="fixed-top">Fixed top</h2> + +<p>Position an element at the top of the viewport, from edge to edge. Be sure you understand the ramifications of fixed position in your project; you may need to add additional CSS.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"fixed-top"</span><span class="nt">></span>...<span class="nt"></div></span></code></pre></figure> + +<h2 id="fixed-bottom">Fixed bottom</h2> + +<p>Position an element at the bottom of the viewport, from edge to edge. Be sure you understand the ramifications of fixed position in your project; you may need to add additional CSS.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"fixed-bottom"</span><span class="nt">></span>...<span class="nt"></div></span></code></pre></figure> + +<h2 id="sticky-top">Sticky top</h2> + +<p>Position an element at the top of the viewport, from edge to edge, but only after you scroll past it. The <code class="highlighter-rouge">.sticky-top</code> utility uses CSS’s <code class="highlighter-rouge">position: sticky</code>, which isn’t fully supported in all browsers.</p> + +<p><strong>IE11 and IE10 will render <code class="highlighter-rouge">position: sticky</code> as <code class="highlighter-rouge">position: relative</code>.</strong> As such, we wrap the styles in a <code class="highlighter-rouge">@supports</code> query, limiting the stickiness to only browsers that can render it properly.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"sticky-top"</span><span class="nt">></span>...<span class="nt"></div></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/screen-readers/index.html b/docs/4.3/utilities/screen-readers/index.html new file mode 100644 index 0000000000..0cc570946c --- /dev/null +++ b/docs/4.3/utilities/screen-readers/index.html @@ -0,0 +1,492 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Use screen reader utilities to hide elements on all devices except screen readers."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Screen readers · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/screen-readers/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Screen readers"> +<meta name="twitter:description" content="Use screen reader utilities to hide elements on all devices except screen readers."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/screen-readers/"> +<meta property="og:title" content="Screen readers"> +<meta property="og:description" content="Use screen reader utilities to hide elements on all devices except screen readers."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Screen readers</h1> + <p class="bd-lead">Use screen reader utilities to hide elements on all devices except screen readers.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>Hide an element to all devices <strong>except screen readers</strong> with <code class="highlighter-rouge">.sr-only</code>. Combine <code class="highlighter-rouge">.sr-only</code> with <code class="highlighter-rouge">.sr-only-focusable</code> to show the element again when it’s focused (e.g. by a keyboard-only user). Can also be used as mixins.</p> +<div class="bd-example"> +<a class="sr-only sr-only-focusable" href="#content">Skip to main content</a> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><a</span> <span class="na">class=</span><span class="s">"sr-only sr-only-focusable"</span> <span class="na">href=</span><span class="s">"#content"</span><span class="nt">></span>Skip to main content<span class="nt"></a></span></code></pre></figure> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// Usage as a mixin</span> +<span class="nc">.skip-navigation</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">sr-only</span><span class="p">;</span> + <span class="k">@include</span> <span class="nd">sr-only-focusable</span><span class="p">;</span> +<span class="p">}</span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/shadows/index.html b/docs/4.3/utilities/shadows/index.html new file mode 100644 index 0000000000..c65006c5c8 --- /dev/null +++ b/docs/4.3/utilities/shadows/index.html @@ -0,0 +1,495 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Add or remove shadows to elements with box-shadow utilities."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Shadows · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/shadows/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Shadows"> +<meta name="twitter:description" content="Add or remove shadows to elements with box-shadow utilities."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/shadows/"> +<meta property="og:title" content="Shadows"> +<meta property="og:description" content="Add or remove shadows to elements with box-shadow utilities."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Shadows</h1> + <p class="bd-lead">Add or remove shadows to elements with box-shadow utilities.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="examples">Examples</h2> + +<p>While shadows on components are disabled by default in Bootstrap and can be enabled via <code class="highlighter-rouge">$enable-shadows</code>, you can also quickly add or remove a shadow with our <code class="highlighter-rouge">box-shadow</code> utility classes. Includes support for <code class="highlighter-rouge">.shadow-none</code> and three default sizes (which have associated variables to match).</p> + +<div class="bd-example"> +<div class="shadow-none p-3 mb-5 bg-light rounded">No shadow</div> +<div class="shadow-sm p-3 mb-5 bg-white rounded">Small shadow</div> +<div class="shadow p-3 mb-5 bg-white rounded">Regular shadow</div> +<div class="shadow-lg p-3 mb-5 bg-white rounded">Larger shadow</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"shadow-none p-3 mb-5 bg-light rounded"</span><span class="nt">></span>No shadow<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"shadow-sm p-3 mb-5 bg-white rounded"</span><span class="nt">></span>Small shadow<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"shadow p-3 mb-5 bg-white rounded"</span><span class="nt">></span>Regular shadow<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"shadow-lg p-3 mb-5 bg-white rounded"</span><span class="nt">></span>Larger shadow<span class="nt"></div></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/sizing/index.html b/docs/4.3/utilities/sizing/index.html new file mode 100644 index 0000000000..ee3883cbd8 --- /dev/null +++ b/docs/4.3/utilities/sizing/index.html @@ -0,0 +1,546 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Easily make an element as wide or as tall with our width and height utilities."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Sizing · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/sizing/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Sizing"> +<meta name="twitter:description" content="Easily make an element as wide or as tall with our width and height utilities."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/sizing/"> +<meta property="og:title" content="Sizing"> +<meta property="og:description" content="Easily make an element as wide or as tall with our width and height utilities."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#relative-to-the-parent">Relative to the parent</a></li> +<li class="toc-entry toc-h2"><a href="#relative-to-the-viewport">Relative to the viewport</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Sizing</h1> + <p class="bd-lead">Easily make an element as wide or as tall with our width and height utilities.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="relative-to-the-parent">Relative to the parent</h2> + +<p>Width and height utilities are generated from the <code class="highlighter-rouge">$sizes</code> Sass map in <code class="highlighter-rouge">_variables.scss</code>. Includes support for <code class="highlighter-rouge">25%</code>, <code class="highlighter-rouge">50%</code>, <code class="highlighter-rouge">75%</code>, <code class="highlighter-rouge">100%</code>, and <code class="highlighter-rouge">auto</code> by default. Modify those values as you need to generate different utilities here.</p> + +<div class="bd-example"> +<div class="w-25 p-3" style="background-color: #eee;">Width 25%</div> +<div class="w-50 p-3" style="background-color: #eee;">Width 50%</div> +<div class="w-75 p-3" style="background-color: #eee;">Width 75%</div> +<div class="w-100 p-3" style="background-color: #eee;">Width 100%</div> +<div class="w-auto p-3" style="background-color: #eee;">Width auto</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"w-25 p-3"</span> <span class="na">style=</span><span class="s">"background-color: #eee;"</span><span class="nt">></span>Width 25%<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"w-50 p-3"</span> <span class="na">style=</span><span class="s">"background-color: #eee;"</span><span class="nt">></span>Width 50%<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"w-75 p-3"</span> <span class="na">style=</span><span class="s">"background-color: #eee;"</span><span class="nt">></span>Width 75%<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"w-100 p-3"</span> <span class="na">style=</span><span class="s">"background-color: #eee;"</span><span class="nt">></span>Width 100%<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"w-auto p-3"</span> <span class="na">style=</span><span class="s">"background-color: #eee;"</span><span class="nt">></span>Width auto<span class="nt"></div></span></code></pre></figure> + +<div class="bd-example"> +<div style="height: 100px; background-color: rgba(255,0,0,0.1);"> + <div class="h-25 d-inline-block" style="width: 120px; background-color: rgba(0,0,255,.1)">Height 25%</div> + <div class="h-50 d-inline-block" style="width: 120px; background-color: rgba(0,0,255,.1)">Height 50%</div> + <div class="h-75 d-inline-block" style="width: 120px; background-color: rgba(0,0,255,.1)">Height 75%</div> + <div class="h-100 d-inline-block" style="width: 120px; background-color: rgba(0,0,255,.1)">Height 100%</div> + <div class="h-auto d-inline-block" style="width: 120px; background-color: rgba(0,0,255,.1)">Height auto</div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">style=</span><span class="s">"height: 100px; background-color: rgba(255,0,0,0.1);"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"h-25 d-inline-block"</span> <span class="na">style=</span><span class="s">"width: 120px; background-color: rgba(0,0,255,.1)"</span><span class="nt">></span>Height 25%<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"h-50 d-inline-block"</span> <span class="na">style=</span><span class="s">"width: 120px; background-color: rgba(0,0,255,.1)"</span><span class="nt">></span>Height 50%<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"h-75 d-inline-block"</span> <span class="na">style=</span><span class="s">"width: 120px; background-color: rgba(0,0,255,.1)"</span><span class="nt">></span>Height 75%<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"h-100 d-inline-block"</span> <span class="na">style=</span><span class="s">"width: 120px; background-color: rgba(0,0,255,.1)"</span><span class="nt">></span>Height 100%<span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"h-auto d-inline-block"</span> <span class="na">style=</span><span class="s">"width: 120px; background-color: rgba(0,0,255,.1)"</span><span class="nt">></span>Height auto<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>You can also use <code class="highlighter-rouge">max-width: 100%;</code> and <code class="highlighter-rouge">max-height: 100%;</code> utilities as needed.</p> + +<div class="bd-example"> +<svg class="bd-placeholder-img mw-100" width="100%" height="100" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Max-width 100%"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96" /><text x="50%" y="50%" fill="#dee2e6" dy=".3em">Max-width 100%</text></svg> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"mw-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span></code></pre></figure> + +<div class="bd-example"> +<div style="height: 100px; background-color: rgba(255,0,0,0.1);"> + <div class="mh-100" style="width: 100px; height: 200px; background-color: rgba(0,0,255,0.1);">Max-height 100%</div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">style=</span><span class="s">"height: 100px; background-color: rgba(255,0,0,0.1);"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"mh-100"</span> <span class="na">style=</span><span class="s">"width: 100px; height: 200px; background-color: rgba(0,0,255,0.1);"</span><span class="nt">></span>Max-height 100%<span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="relative-to-the-viewport">Relative to the viewport</h2> + +<p>You can also use utilities to set the width and height relative to the viewport.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"min-vw-100"</span><span class="nt">></span>Min-width 100vw<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"min-vh-100"</span><span class="nt">></span>Min-height 100vh<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"vw-100"</span><span class="nt">></span>Width 100vw<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"vh-100"</span><span class="nt">></span>Height 100vh<span class="nt"></div></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/spacing/index.html b/docs/4.3/utilities/spacing/index.html new file mode 100644 index 0000000000..48f32ccf8f --- /dev/null +++ b/docs/4.3/utilities/spacing/index.html @@ -0,0 +1,594 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Bootstrap includes a wide range of shorthand responsive margin and padding utility classes to modify an element’s appearance."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Spacing · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/spacing/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Spacing"> +<meta name="twitter:description" content="Bootstrap includes a wide range of shorthand responsive margin and padding utility classes to modify an element’s appearance."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/spacing/"> +<meta property="og:title" content="Spacing"> +<meta property="og:description" content="Bootstrap includes a wide range of shorthand responsive margin and padding utility classes to modify an element’s appearance."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#how-it-works">How it works</a></li> +<li class="toc-entry toc-h2"><a href="#notation">Notation</a></li> +<li class="toc-entry toc-h2"><a href="#examples">Examples</a> +<ul> +<li class="toc-entry toc-h3"><a href="#horizontal-centering">Horizontal centering</a></li> +<li class="toc-entry toc-h3"><a href="#negative-margin">Negative margin</a></li> +</ul> +</li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Spacing</h1> + <p class="bd-lead">Bootstrap includes a wide range of shorthand responsive margin and padding utility classes to modify an element’s appearance.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="how-it-works">How it works</h2> + +<p>Assign responsive-friendly <code class="highlighter-rouge">margin</code> or <code class="highlighter-rouge">padding</code> values to an element or a subset of its sides with shorthand classes. Includes support for individual properties, all properties, and vertical and horizontal properties. Classes are built from a default Sass map ranging from <code class="highlighter-rouge">.25rem</code> to <code class="highlighter-rouge">3rem</code>.</p> + +<h2 id="notation">Notation</h2> + +<p>Spacing utilities that apply to all breakpoints, from <code class="highlighter-rouge">xs</code> to <code class="highlighter-rouge">xl</code>, have no breakpoint abbreviation in them. This is because those classes are applied from <code class="highlighter-rouge">min-width: 0</code> and up, and thus are not bound by a media query. The remaining breakpoints, however, do include a breakpoint abbreviation.</p> + +<p>The classes are named using the format <code class="highlighter-rouge">{property}{sides}-{size}</code> for <code class="highlighter-rouge">xs</code> and <code class="highlighter-rouge">{property}{sides}-{breakpoint}-{size}</code> for <code class="highlighter-rouge">sm</code>, <code class="highlighter-rouge">md</code>, <code class="highlighter-rouge">lg</code>, and <code class="highlighter-rouge">xl</code>.</p> + +<p>Where <em>property</em> is one of:</p> + +<ul> + <li><code class="highlighter-rouge">m</code> - for classes that set <code class="highlighter-rouge">margin</code></li> + <li><code class="highlighter-rouge">p</code> - for classes that set <code class="highlighter-rouge">padding</code></li> +</ul> + +<p>Where <em>sides</em> is one of:</p> + +<ul> + <li><code class="highlighter-rouge">t</code> - for classes that set <code class="highlighter-rouge">margin-top</code> or <code class="highlighter-rouge">padding-top</code></li> + <li><code class="highlighter-rouge">b</code> - for classes that set <code class="highlighter-rouge">margin-bottom</code> or <code class="highlighter-rouge">padding-bottom</code></li> + <li><code class="highlighter-rouge">l</code> - for classes that set <code class="highlighter-rouge">margin-left</code> or <code class="highlighter-rouge">padding-left</code></li> + <li><code class="highlighter-rouge">r</code> - for classes that set <code class="highlighter-rouge">margin-right</code> or <code class="highlighter-rouge">padding-right</code></li> + <li><code class="highlighter-rouge">x</code> - for classes that set both <code class="highlighter-rouge">*-left</code> and <code class="highlighter-rouge">*-right</code></li> + <li><code class="highlighter-rouge">y</code> - for classes that set both <code class="highlighter-rouge">*-top</code> and <code class="highlighter-rouge">*-bottom</code></li> + <li>blank - for classes that set a <code class="highlighter-rouge">margin</code> or <code class="highlighter-rouge">padding</code> on all 4 sides of the element</li> +</ul> + +<p>Where <em>size</em> is one of:</p> + +<ul> + <li><code class="highlighter-rouge">0</code> - for classes that eliminate the <code class="highlighter-rouge">margin</code> or <code class="highlighter-rouge">padding</code> by setting it to <code class="highlighter-rouge">0</code></li> + <li><code class="highlighter-rouge">1</code> - (by default) for classes that set the <code class="highlighter-rouge">margin</code> or <code class="highlighter-rouge">padding</code> to <code class="highlighter-rouge">$spacer * .25</code></li> + <li><code class="highlighter-rouge">2</code> - (by default) for classes that set the <code class="highlighter-rouge">margin</code> or <code class="highlighter-rouge">padding</code> to <code class="highlighter-rouge">$spacer * .5</code></li> + <li><code class="highlighter-rouge">3</code> - (by default) for classes that set the <code class="highlighter-rouge">margin</code> or <code class="highlighter-rouge">padding</code> to <code class="highlighter-rouge">$spacer</code></li> + <li><code class="highlighter-rouge">4</code> - (by default) for classes that set the <code class="highlighter-rouge">margin</code> or <code class="highlighter-rouge">padding</code> to <code class="highlighter-rouge">$spacer * 1.5</code></li> + <li><code class="highlighter-rouge">5</code> - (by default) for classes that set the <code class="highlighter-rouge">margin</code> or <code class="highlighter-rouge">padding</code> to <code class="highlighter-rouge">$spacer * 3</code></li> + <li><code class="highlighter-rouge">auto</code> - for classes that set the <code class="highlighter-rouge">margin</code> to auto</li> +</ul> + +<p>(You can add more sizes by adding entries to the <code class="highlighter-rouge">$spacers</code> Sass map variable.)</p> + +<h2 id="examples">Examples</h2> + +<p>Here are some representative examples of these classes:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nc">.mt-0</span> <span class="p">{</span> + <span class="nl">margin-top</span><span class="p">:</span> <span class="m">0</span> <span class="o">!</span><span class="n">important</span><span class="p">;</span> +<span class="p">}</span> + +<span class="nc">.ml-1</span> <span class="p">{</span> + <span class="nl">margin-left</span><span class="p">:</span> <span class="p">(</span><span class="nv">$spacer</span> <span class="o">*</span> <span class="mi">.25</span><span class="p">)</span> <span class="o">!</span><span class="n">important</span><span class="p">;</span> +<span class="p">}</span> + +<span class="nc">.px-2</span> <span class="p">{</span> + <span class="nl">padding-left</span><span class="p">:</span> <span class="p">(</span><span class="nv">$spacer</span> <span class="o">*</span> <span class="mi">.5</span><span class="p">)</span> <span class="o">!</span><span class="n">important</span><span class="p">;</span> + <span class="nl">padding-right</span><span class="p">:</span> <span class="p">(</span><span class="nv">$spacer</span> <span class="o">*</span> <span class="mi">.5</span><span class="p">)</span> <span class="o">!</span><span class="n">important</span><span class="p">;</span> +<span class="p">}</span> + +<span class="nc">.p-3</span> <span class="p">{</span> + <span class="nl">padding</span><span class="p">:</span> <span class="nv">$spacer</span> <span class="o">!</span><span class="n">important</span><span class="p">;</span> +<span class="p">}</span></code></pre></figure> + +<h3 id="horizontal-centering">Horizontal centering</h3> + +<p>Additionally, Bootstrap also includes an <code class="highlighter-rouge">.mx-auto</code> class for horizontally centering fixed-width block level content—that is, content that has <code class="highlighter-rouge">display: block</code> and a <code class="highlighter-rouge">width</code> set—by setting the horizontal margins to <code class="highlighter-rouge">auto</code>.</p> + +<div class="bd-example"> + <div class="mx-auto" style="width: 200px; background-color: rgba(86,61,124,.15);"> + Centered element + </div> +</div> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"mx-auto"</span> <span class="na">style=</span><span class="s">"width: 200px;"</span><span class="nt">></span> + Centered element +<span class="nt"></div></span></code></pre></figure> + +<h3 id="negative-margin">Negative margin</h3> + +<p>In CSS, <code class="highlighter-rouge">margin</code> properties can utilize negative values (<code class="highlighter-rouge">padding</code> cannot). As of 4.2, we’ve added negative margin utilities for every non-zero integer size listed above (e.g., <code class="highlighter-rouge">1</code>, <code class="highlighter-rouge">2</code>, <code class="highlighter-rouge">3</code>, <code class="highlighter-rouge">4</code>, <code class="highlighter-rouge">5</code>). These utilities are ideal for customizing grid column gutters across breakpoints.</p> + +<p>The syntax is nearly the same as the default, positive margin utilities, but with the addition of <code class="highlighter-rouge">n</code> before the requested size. Here’s an example class that’s the opposite of <code class="highlighter-rouge">.mt-1</code>:</p> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="nc">.mt-n1</span> <span class="p">{</span> + <span class="nl">margin-top</span><span class="p">:</span> <span class="m">-0</span><span class="mi">.25rem</span> <span class="o">!</span><span class="n">important</span><span class="p">;</span> +<span class="p">}</span></code></pre></figure> + +<p>Here’s an example of customizing the Bootstrap grid at the medium (<code class="highlighter-rouge">md</code>) breakpoint and above. We’ve increased the <code class="highlighter-rouge">.col</code> padding with <code class="highlighter-rouge">.px-md-5</code> and then counteracted that with <code class="highlighter-rouge">.mx-md-n5</code> on the parent <code class="highlighter-rouge">.row</code>.</p> + +<div class="bd-example"> +<div class="row mx-md-n5"> + <div class="col px-md-5"><div class="p-3 border bg-light">Custom column padding</div></div> + <div class="col px-md-5"><div class="p-3 border bg-light">Custom column padding</div></div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"row mx-md-n5"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col px-md-5"</span><span class="nt">><div</span> <span class="na">class=</span><span class="s">"p-3 border bg-light"</span><span class="nt">></span>Custom column padding<span class="nt"></div></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col px-md-5"</span><span class="nt">><div</span> <span class="na">class=</span><span class="s">"p-3 border bg-light"</span><span class="nt">></span>Custom column padding<span class="nt"></div></div></span> +<span class="nt"></div></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/stretched-link/index.html b/docs/4.3/utilities/stretched-link/index.html new file mode 100644 index 0000000000..38513a9214 --- /dev/null +++ b/docs/4.3/utilities/stretched-link/index.html @@ -0,0 +1,591 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Make any HTML element or Bootstrap component clickable by “stretching†a nested link via CSS."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Stretched link · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/stretched-link/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Stretched link"> +<meta name="twitter:description" content="Make any HTML element or Bootstrap component clickable by “stretching†a nested link via CSS."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/stretched-link/"> +<meta property="og:title" content="Stretched link"> +<meta property="og:description" content="Make any HTML element or Bootstrap component clickable by “stretching†a nested link via CSS."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Stretched link</h1> + <p class="bd-lead">Make any HTML element or Bootstrap component clickable by “stretching†a nested link via CSS.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>Add <code class="highlighter-rouge">.stretched-link</code> to a link to make its <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block">containing block</a> clickable via a <code class="highlighter-rouge">::after</code> pseudo element. In most cases, this means that an element with <code class="highlighter-rouge">position: relative;</code> that contains a link with the <code class="highlighter-rouge">.stretched-link</code> class is clickable.</p> + +<p>Cards have <code class="highlighter-rouge">position: relative</code> by default in Bootstrap, so in this case you can safely add the <code class="highlighter-rouge">.stretched-link</code> class to a link in the card without any other HTML changes.</p> + +<p>Multiple links and tap targets are not recommended with stretched links. However, some <code class="highlighter-rouge">position</code> and <code class="highlighter-rouge">z-index</code> styles can help should this be required.</p> + +<div class="bd-example"> +<div class="card" style="width: 18rem;"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Card image cap"><title>Card image cap</title><rect width="100%" height="100%" fill="#868e96" /></svg> + <div class="card-body"> + <h5 class="card-title">Card with stretched link</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + <a href="#" class="btn btn-primary stretched-link">Go somewhere</a> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span> <span class="na">style=</span><span class="s">"width: 18rem;"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card with stretched link<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"btn btn-primary stretched-link"</span><span class="nt">></span>Go somewhere<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Media objects do not have <code class="highlighter-rouge">position: relative</code> by default, so we need to add the <code class="highlighter-rouge">.position-relative</code> here to prevent the link from stretching outside the media object.</p> + +<div class="bd-example"> +<div class="media position-relative"> + <svg class="bd-placeholder-img mr-3" width="144" height="144" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Generic placeholder image"><title>Generic placeholder image</title><rect width="100%" height="100%" fill="#868e96" /></svg> + <div class="media-body"> + <h5 class="mt-0">Media with stretched link</h5> + <p>Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.</p> + <a href="#" class="stretched-link">Go somewhere</a> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"media position-relative"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"mr-3"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"media-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"mt-0"</span><span class="nt">></span>Media with stretched link<span class="nt"></h5></span> + <span class="nt"><p></span>Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"stretched-link"</span><span class="nt">></span>Go somewhere<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<p>Columns are <code class="highlighter-rouge">position: relative</code> by default, so clickable columns only require the <code class="highlighter-rouge">.stretched-link</code> class on a link. However, stretching a link over an entire <code class="highlighter-rouge">.row</code> requires <code class="highlighter-rouge">.position-static</code> on the column and <code class="highlighter-rouge">.position-relative</code> on the row.</p> + +<div class="bd-example"> +<div class="row no-gutters bg-light position-relative"> + <div class="col-md-6 mb-md-0 p-md-4"> + <svg class="bd-placeholder-img w-100" width="100%" height="200" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Generic placeholder image"><title>Generic placeholder image</title><rect width="100%" height="100%" fill="#868e96" /></svg> + </div> + <div class="col-md-6 position-static p-4 pl-md-0"> + <h5 class="mt-0">Columns with stretched link</h5> + <p>Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.</p> + <a href="#" class="stretched-link">Go somewhere</a> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"row no-gutters bg-light position-relative"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-6 mb-md-0 p-md-4"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"w-100"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"></div></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-md-6 position-static p-4 pl-md-0"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"mt-0"</span><span class="nt">></span>Columns with stretched link<span class="nt"></h5></span> + <span class="nt"><p></span>Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.<span class="nt"></p></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"stretched-link"</span><span class="nt">></span>Go somewhere<span class="nt"></a></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + +<h2 id="identifying-the-containing-block">Identifying the containing block</h2> + +<p>If the stretched link doesn’t seem to work, the <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#Identifying_the_containing_block">containing block</a> will probably be the cause. The following CSS properties will make an element the containing block:</p> + +<ul> + <li>A <code class="highlighter-rouge">position</code> value other than <code class="highlighter-rouge">static</code></li> + <li>A <code class="highlighter-rouge">transform</code> or <code class="highlighter-rouge">perspective</code> value other than <code class="highlighter-rouge">none</code></li> + <li>A <code class="highlighter-rouge">will-change</code> value of <code class="highlighter-rouge">transform</code> or <code class="highlighter-rouge">perspective</code></li> + <li>A <code class="highlighter-rouge">filter</code> value other than <code class="highlighter-rouge">none</code> or a <code class="highlighter-rouge">will-change</code> value of <code class="highlighter-rouge">filter</code> (only works on Firefox)</li> +</ul> + +<div class="bd-example"> +<div class="card" style="width: 18rem;"> + <svg class="bd-placeholder-img card-img-top" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Card image cap"><title>Card image cap</title><rect width="100%" height="100%" fill="#868e96" /></svg> + <div class="card-body"> + <h5 class="card-title">Card with stretched links</h5> + <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> + <p class="card-text"> + <a href="#" class="stretched-link text-danger" style="position: relative;">Stretched link will not work here, because <code>position: relative</code> is added to the link</a> + </p> + <p class="card-text bg-light" style="transform: rotate(0);"> + This <a href="#" class="text-warning stretched-link">stretched link</a> will only be spread over the <code>p</code>-tag, because a transform is applied to it. + </p> + </div> +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"card"</span> <span class="na">style=</span><span class="s">"width: 18rem;"</span><span class="nt">></span> + <span class="nt"><img</span> <span class="na">src=</span><span class="s">"..."</span> <span class="na">class=</span><span class="s">"card-img-top"</span> <span class="na">alt=</span><span class="s">"..."</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"card-body"</span><span class="nt">></span> + <span class="nt"><h5</span> <span class="na">class=</span><span class="s">"card-title"</span><span class="nt">></span>Card with stretched links<span class="nt"></h5></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span>Some quick example text to build on the card title and make up the bulk of the card's content.<span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text"</span><span class="nt">></span> + <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"stretched-link text-danger"</span> <span class="na">style=</span><span class="s">"position: relative;"</span><span class="nt">></span>Stretched link will not work here, because <span class="nt"><code></span>position: relative<span class="nt"></code></span> is added to the link<span class="nt"></a></span> + <span class="nt"></p></span> + <span class="nt"><p</span> <span class="na">class=</span><span class="s">"card-text bg-light"</span> <span class="na">style=</span><span class="s">"transform: rotate(0);"</span><span class="nt">></span> + This <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"text-warning stretched-link"</span><span class="nt">></span>stretched link<span class="nt"></a></span> will only be spread over the <span class="nt"><code></span>p<span class="nt"></code></span>-tag, because a transform is applied to it. + <span class="nt"></p></span> + <span class="nt"></div></span> +<span class="nt"></div></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/text/index.html b/docs/4.3/utilities/text/index.html new file mode 100644 index 0000000000..360af1ca8f --- /dev/null +++ b/docs/4.3/utilities/text/index.html @@ -0,0 +1,648 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Documentation and examples for common text utilities to control alignment, wrapping, weight, and more."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Text · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/text/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Text"> +<meta name="twitter:description" content="Documentation and examples for common text utilities to control alignment, wrapping, weight, and more."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/text/"> +<meta property="og:title" content="Text"> +<meta property="og:description" content="Documentation and examples for common text utilities to control alignment, wrapping, weight, and more."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + <div class="d-none d-xl-block col-xl-2 bd-toc"> + <ul class="section-nav"> +<li class="toc-entry toc-h2"><a href="#text-alignment">Text alignment</a></li> +<li class="toc-entry toc-h2"><a href="#text-wrapping-and-overflow">Text wrapping and overflow</a></li> +<li class="toc-entry toc-h2"><a href="#word-break">Word break</a></li> +<li class="toc-entry toc-h2"><a href="#text-transform">Text transform</a></li> +<li class="toc-entry toc-h2"><a href="#font-weight-and-italics">Font weight and italics</a></li> +<li class="toc-entry toc-h2"><a href="#monospace">Monospace</a></li> +<li class="toc-entry toc-h2"><a href="#reset-color">Reset color</a></li> +<li class="toc-entry toc-h2"><a href="#text-decoration">Text decoration</a></li> +</ul> + </div> + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Text</h1> + <p class="bd-lead">Documentation and examples for common text utilities to control alignment, wrapping, weight, and more.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <h2 id="text-alignment">Text alignment</h2> + +<p>Easily realign text to components with text alignment classes.</p> + +<div class="bd-example"> +<p class="text-justify">Ambitioni dedisse scripsisse iudicaretur. Cras mattis iudicium purus sit amet fermentum. Donec sed odio operae, eu vulputate felis rhoncus. Praeterea iter est quasdam res quas ex communi. At nos hinc posthac, sitientis piros Afros. Petierunt uti sibi concilium totius Galliae in diem certam indicere. Cras mattis iudicium purus sit amet fermentum.</p> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-justify"</span><span class="nt">></span>Ambitioni dedisse scripsisse iudicaretur. Cras mattis iudicium purus sit amet fermentum. Donec sed odio operae, eu vulputate felis rhoncus. Praeterea iter est quasdam res quas ex communi. At nos hinc posthac, sitientis piros Afros. Petierunt uti sibi concilium totius Galliae in diem certam indicere. Cras mattis iudicium purus sit amet fermentum.<span class="nt"></p></span></code></pre></figure> + +<p>For left, right, and center alignment, responsive classes are available that use the same viewport width breakpoints as the grid system.</p> + +<div class="bd-example"> +<p class="text-left">Left aligned text on all viewport sizes.</p> +<p class="text-center">Center aligned text on all viewport sizes.</p> +<p class="text-right">Right aligned text on all viewport sizes.</p> + +<p class="text-sm-left">Left aligned text on viewports sized SM (small) or wider.</p> +<p class="text-md-left">Left aligned text on viewports sized MD (medium) or wider.</p> +<p class="text-lg-left">Left aligned text on viewports sized LG (large) or wider.</p> +<p class="text-xl-left">Left aligned text on viewports sized XL (extra-large) or wider.</p> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-left"</span><span class="nt">></span>Left aligned text on all viewport sizes.<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-center"</span><span class="nt">></span>Center aligned text on all viewport sizes.<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-right"</span><span class="nt">></span>Right aligned text on all viewport sizes.<span class="nt"></p></span> + +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-sm-left"</span><span class="nt">></span>Left aligned text on viewports sized SM (small) or wider.<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-md-left"</span><span class="nt">></span>Left aligned text on viewports sized MD (medium) or wider.<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-lg-left"</span><span class="nt">></span>Left aligned text on viewports sized LG (large) or wider.<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-xl-left"</span><span class="nt">></span>Left aligned text on viewports sized XL (extra-large) or wider.<span class="nt"></p></span></code></pre></figure> + +<h2 id="text-wrapping-and-overflow">Text wrapping and overflow</h2> + +<p>Wrap text with a <code class="highlighter-rouge">.text-wrap</code> class.</p> + +<div class="bd-example"> +<div class="badge badge-primary text-wrap" style="width: 6rem;"> + This text should wrap. +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"badge badge-primary text-wrap"</span> <span class="na">style=</span><span class="s">"width: 6rem;"</span><span class="nt">></span> + This text should wrap. +<span class="nt"></div></span></code></pre></figure> + +<p>Prevent text from wrapping with a <code class="highlighter-rouge">.text-nowrap</code> class.</p> + +<div class="bd-example"> +<div class="text-nowrap bd-highlight" style="width: 8rem;"> + This text should overflow the parent. +</div> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"text-nowrap bd-highlight"</span> <span class="na">style=</span><span class="s">"width: 8rem;"</span><span class="nt">></span> + This text should overflow the parent. +<span class="nt"></div></span></code></pre></figure> + +<p>For longer content, you can add a <code class="highlighter-rouge">.text-truncate</code> class to truncate the text with an ellipsis. <strong>Requires <code class="highlighter-rouge">display: inline-block</code> or <code class="highlighter-rouge">display: block</code>.</strong></p> + +<div class="bd-example"> +<!-- Block level --> +<div class="row"> + <div class="col-2 text-truncate"> + Praeterea iter est quasdam res quas ex communi. + </div> +</div> + +<!-- Inline level --> +<span class="d-inline-block text-truncate" style="max-width: 150px;"> + Praeterea iter est quasdam res quas ex communi. +</span> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Block level --></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"row"</span><span class="nt">></span> + <span class="nt"><div</span> <span class="na">class=</span><span class="s">"col-2 text-truncate"</span><span class="nt">></span> + Praeterea iter est quasdam res quas ex communi. + <span class="nt"></div></span> +<span class="nt"></div></span> + +<span class="c"><!-- Inline level --></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"d-inline-block text-truncate"</span> <span class="na">style=</span><span class="s">"max-width: 150px;"</span><span class="nt">></span> + Praeterea iter est quasdam res quas ex communi. +<span class="nt"></span></span></code></pre></figure> + +<h2 id="word-break">Word break</h2> + +<p>Prevent long strings of text from breaking your components’ layout by using <code class="highlighter-rouge">.text-break</code> to set <code class="highlighter-rouge">overflow-wrap: break-word</code> (and <code class="highlighter-rouge">word-break: break-word</code> for IE & Edge compatibility).</p> + +<div class="bd-example"> +<p class="text-break">mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm</p> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-break"</span><span class="nt">></span>mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm<span class="nt"></p></span></code></pre></figure> + +<h2 id="text-transform">Text transform</h2> + +<p>Transform text in components with text capitalization classes.</p> + +<div class="bd-example"> +<p class="text-lowercase">Lowercased text.</p> +<p class="text-uppercase">Uppercased text.</p> +<p class="text-capitalize">CapiTaliZed text.</p> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-lowercase"</span><span class="nt">></span>Lowercased text.<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-uppercase"</span><span class="nt">></span>Uppercased text.<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-capitalize"</span><span class="nt">></span>CapiTaliZed text.<span class="nt"></p></span></code></pre></figure> + +<p>Note how <code class="highlighter-rouge">.text-capitalize</code> only changes the first letter of each word, leaving the case of any other letters unaffected.</p> + +<h2 id="font-weight-and-italics">Font weight and italics</h2> + +<p>Quickly change the weight (boldness) of text or italicize text.</p> + +<div class="bd-example"> +<p class="font-weight-bold">Bold text.</p> +<p class="font-weight-bolder">Bolder weight text (relative to the parent element).</p> +<p class="font-weight-normal">Normal weight text.</p> +<p class="font-weight-light">Light weight text.</p> +<p class="font-weight-lighter">Lighter weight text (relative to the parent element).</p> +<p class="font-italic">Italic text.</p> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><p</span> <span class="na">class=</span><span class="s">"font-weight-bold"</span><span class="nt">></span>Bold text.<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"font-weight-bolder"</span><span class="nt">></span>Bolder weight text (relative to the parent element).<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"font-weight-normal"</span><span class="nt">></span>Normal weight text.<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"font-weight-light"</span><span class="nt">></span>Light weight text.<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"font-weight-lighter"</span><span class="nt">></span>Lighter weight text (relative to the parent element).<span class="nt"></p></span> +<span class="nt"><p</span> <span class="na">class=</span><span class="s">"font-italic"</span><span class="nt">></span>Italic text.<span class="nt"></p></span></code></pre></figure> + +<h2 id="monospace">Monospace</h2> + +<p>Change a selection to our monospace font stack with <code class="highlighter-rouge">.text-monospace</code>.</p> + +<div class="bd-example"> +<p class="text-monospace">This is in monospace</p> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-monospace"</span><span class="nt">></span>This is in monospace<span class="nt"></p></span></code></pre></figure> + +<h2 id="reset-color">Reset color</h2> + +<p>Reset a text or link’s color with <code class="highlighter-rouge">.text-reset</code>, so that it inherits the color from its parent.</p> + +<div class="bd-example"> +<p class="text-muted"> + Muted text with a <a href="#" class="text-reset">reset link</a>. +</p> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><p</span> <span class="na">class=</span><span class="s">"text-muted"</span><span class="nt">></span> + Muted text with a <span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"text-reset"</span><span class="nt">></span>reset link<span class="nt"></a></span>. +<span class="nt"></p></span></code></pre></figure> + +<h2 id="text-decoration">Text decoration</h2> + +<p>Remove a text decoration with a <code class="highlighter-rouge">.text-decoration-none</code> class.</p> + +<div class="bd-example"> +<a href="#" class="text-decoration-none">Non-underlined link</a> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><a</span> <span class="na">href=</span><span class="s">"#"</span> <span class="na">class=</span><span class="s">"text-decoration-none"</span><span class="nt">></span>Non-underlined link<span class="nt"></a></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/vertical-align/index.html b/docs/4.3/utilities/vertical-align/index.html new file mode 100644 index 0000000000..4915edc096 --- /dev/null +++ b/docs/4.3/utilities/vertical-align/index.html @@ -0,0 +1,530 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Easily change the vertical alignment of inline, inline-block, inline-table, and table cell elements."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Vertical alignment · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/vertical-align/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Vertical alignment"> +<meta name="twitter:description" content="Easily change the vertical alignment of inline, inline-block, inline-table, and table cell elements."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/vertical-align/"> +<meta property="og:title" content="Vertical alignment"> +<meta property="og:description" content="Easily change the vertical alignment of inline, inline-block, inline-table, and table cell elements."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Vertical alignment</h1> + <p class="bd-lead">Easily change the vertical alignment of inline, inline-block, inline-table, and table cell elements.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>Change the alignment of elements with the <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/vertical-align"><code class="highlighter-rouge">vertical-alignment</code></a> utilities. Please note that vertical-align only affects inline, inline-block, inline-table, and table cell elements.</p> + +<p>Choose from <code class="highlighter-rouge">.align-baseline</code>, <code class="highlighter-rouge">.align-top</code>, <code class="highlighter-rouge">.align-middle</code>, <code class="highlighter-rouge">.align-bottom</code>, <code class="highlighter-rouge">.align-text-bottom</code>, and <code class="highlighter-rouge">.align-text-top</code> as needed.</p> + +<p>With inline elements:</p> + +<div class="bd-example"> +<span class="align-baseline">baseline</span> +<span class="align-top">top</span> +<span class="align-middle">middle</span> +<span class="align-bottom">bottom</span> +<span class="align-text-top">text-top</span> +<span class="align-text-bottom">text-bottom</span> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><span</span> <span class="na">class=</span><span class="s">"align-baseline"</span><span class="nt">></span>baseline<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"align-top"</span><span class="nt">></span>top<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"align-middle"</span><span class="nt">></span>middle<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"align-bottom"</span><span class="nt">></span>bottom<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"align-text-top"</span><span class="nt">></span>text-top<span class="nt"></span></span> +<span class="nt"><span</span> <span class="na">class=</span><span class="s">"align-text-bottom"</span><span class="nt">></span>text-bottom<span class="nt"></span></span></code></pre></figure> + +<p>With table cells:</p> + +<div class="bd-example"> +<table style="height: 100px;"> + <tbody> + <tr> + <td class="align-baseline">baseline</td> + <td class="align-top">top</td> + <td class="align-middle">middle</td> + <td class="align-bottom">bottom</td> + <td class="align-text-top">text-top</td> + <td class="align-text-bottom">text-bottom</td> + </tr> + </tbody> +</table> +</div> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><table</span> <span class="na">style=</span><span class="s">"height: 100px;"</span><span class="nt">></span> + <span class="nt"><tbody></span> + <span class="nt"><tr></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"align-baseline"</span><span class="nt">></span>baseline<span class="nt"></td></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"align-top"</span><span class="nt">></span>top<span class="nt"></td></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"align-middle"</span><span class="nt">></span>middle<span class="nt"></td></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"align-bottom"</span><span class="nt">></span>bottom<span class="nt"></td></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"align-text-top"</span><span class="nt">></span>text-top<span class="nt"></td></span> + <span class="nt"><td</span> <span class="na">class=</span><span class="s">"align-text-bottom"</span><span class="nt">></span>text-bottom<span class="nt"></td></span> + <span class="nt"></tr></span> + <span class="nt"></tbody></span> +<span class="nt"></table></span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/4.3/utilities/visibility/index.html b/docs/4.3/utilities/visibility/index.html new file mode 100644 index 0000000000..35bcbb36fb --- /dev/null +++ b/docs/4.3/utilities/visibility/index.html @@ -0,0 +1,504 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> +<meta name="description" content="Control the visibility, without modifying the display, of elements with visibility utilities."> +<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> +<meta name="generator" content="Jekyll v3.8.5"> + +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + +<title>Visibility · Bootstrap</title> + +<link rel="canonical" href="https://getbootstrap.com/docs/4.3/utilities/visibility/"> + +<!-- Bootstrap core CSS --> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> +<!-- Documentation extras --> + +<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet"> + + +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> + +<!-- Favicons --> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="icon" href="/favicon.ico"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> +<meta name="theme-color" content="#563d7c"> + +<!-- Twitter --> +<meta name="twitter:card" content="summary"> +<meta name="twitter:site" content="@getbootstrap"> +<meta name="twitter:creator" content="@getbootstrap"> +<meta name="twitter:title" content="Visibility"> +<meta name="twitter:description" content="Control the visibility, without modifying the display, of elements with visibility utilities."> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> + +<!-- Facebook --> +<meta property="og:url" content="https://getbootstrap.com/docs/4.3/utilities/visibility/"> +<meta property="og:title" content="Visibility"> +<meta property="og:description" content="Control the visibility, without modifying the display, of elements with visibility utilities."> +<meta property="og:type" content="website"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:type" content="image/png"> +<meta property="og:image:width" content="1200"> +<meta property="og:image:height" content="630"> + +<script> + window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; + ga('create', 'UA-146052-10', 'getbootstrap.com'); + ga('send', 'pageview'); +</script> +<script async src="https://www.google-analytics.com/analytics.js"></script> + + + </head> + <body> + <a class="skippy sr-only sr-only-focusable" href="#content"> + <span class="skippy-text">Skip to main content</span> +</a> + + + <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> + + <div class="navbar-nav-scroll"> + <ul class="navbar-nav bd-navbar-nav flex-row"> + <li class="nav-item"> + <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link active" href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + </li> + <li class="nav-item"> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://expo.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://blog.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a> + </li> + </ul> + </div> + + <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> + <li class="nav-item dropdown"> + <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + v4.3 + </a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.4/">v3.4.0</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a> + <a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a> + <div class="dropdown-divider"></div> + <a class="dropdown-item" href="/docs/versions/">All versions</a> + </div> + </li> + + <li class="nav-item"> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> + </li> + </ul> + + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> +</header> + + + <div class="container-fluid"> + <div class="row flex-xl-nowrap"> + <div class="col-12 col-md-3 col-xl-2 bd-sidebar"> + <form class="bd-search d-flex align-items-center"> + <input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-docs-version="4.3"> + <button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"/></svg></button> +</form> + +<nav class="collapse bd-links" id="bd-docs-nav"><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/getting-started/introduction/"> + Getting started + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/getting-started/introduction/"> + Introduction + </a> + </li><li> + <a href="/docs/4.3/getting-started/download/"> + Download + </a> + </li><li> + <a href="/docs/4.3/getting-started/contents/"> + Contents + </a> + </li><li> + <a href="/docs/4.3/getting-started/browsers-devices/"> + Browsers & devices + </a> + </li><li> + <a href="/docs/4.3/getting-started/javascript/"> + JavaScript + </a> + </li><li> + <a href="/docs/4.3/getting-started/theming/"> + Theming + </a> + </li><li> + <a href="/docs/4.3/getting-started/build-tools/"> + Build tools + </a> + </li><li> + <a href="/docs/4.3/getting-started/webpack/"> + Webpack + </a> + </li><li> + <a href="/docs/4.3/getting-started/accessibility/"> + Accessibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/layout/overview/"> + Layout + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/layout/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/layout/grid/"> + Grid + </a> + </li><li> + <a href="/docs/4.3/layout/utilities-for-layout/"> + Utilities for layout + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/content/reboot/"> + Content + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/content/reboot/"> + Reboot + </a> + </li><li> + <a href="/docs/4.3/content/typography/"> + Typography + </a> + </li><li> + <a href="/docs/4.3/content/code/"> + Code + </a> + </li><li> + <a href="/docs/4.3/content/images/"> + Images + </a> + </li><li> + <a href="/docs/4.3/content/tables/"> + Tables + </a> + </li><li> + <a href="/docs/4.3/content/figures/"> + Figures + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/components/alerts/"> + Components + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/components/alerts/"> + Alerts + </a> + </li><li> + <a href="/docs/4.3/components/badge/"> + Badge + </a> + </li><li> + <a href="/docs/4.3/components/breadcrumb/"> + Breadcrumb + </a> + </li><li> + <a href="/docs/4.3/components/buttons/"> + Buttons + </a> + </li><li> + <a href="/docs/4.3/components/button-group/"> + Button group + </a> + </li><li> + <a href="/docs/4.3/components/card/"> + Card + </a> + </li><li> + <a href="/docs/4.3/components/carousel/"> + Carousel + </a> + </li><li> + <a href="/docs/4.3/components/collapse/"> + Collapse + </a> + </li><li> + <a href="/docs/4.3/components/dropdowns/"> + Dropdowns + </a> + </li><li> + <a href="/docs/4.3/components/forms/"> + Forms + </a> + </li><li> + <a href="/docs/4.3/components/input-group/"> + Input group + </a> + </li><li> + <a href="/docs/4.3/components/jumbotron/"> + Jumbotron + </a> + </li><li> + <a href="/docs/4.3/components/list-group/"> + List group + </a> + </li><li> + <a href="/docs/4.3/components/media-object/"> + Media object + </a> + </li><li> + <a href="/docs/4.3/components/modal/"> + Modal + </a> + </li><li> + <a href="/docs/4.3/components/navs/"> + Navs + </a> + </li><li> + <a href="/docs/4.3/components/navbar/"> + Navbar + </a> + </li><li> + <a href="/docs/4.3/components/pagination/"> + Pagination + </a> + </li><li> + <a href="/docs/4.3/components/popovers/"> + Popovers + </a> + </li><li> + <a href="/docs/4.3/components/progress/"> + Progress + </a> + </li><li> + <a href="/docs/4.3/components/scrollspy/"> + Scrollspy + </a> + </li><li> + <a href="/docs/4.3/components/spinners/"> + Spinners + </a> + </li><li> + <a href="/docs/4.3/components/toasts/"> + Toasts + </a> + </li><li> + <a href="/docs/4.3/components/tooltips/"> + Tooltips + </a> + </li></ul> + </div><div class="bd-toc-item active"> + <a class="bd-toc-link" href="/docs/4.3/utilities/borders/"> + Utilities + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/utilities/borders/"> + Borders + </a> + </li><li> + <a href="/docs/4.3/utilities/clearfix/"> + Clearfix + </a> + </li><li> + <a href="/docs/4.3/utilities/close-icon/"> + Close icon + </a> + </li><li> + <a href="/docs/4.3/utilities/colors/"> + Colors + </a> + </li><li> + <a href="/docs/4.3/utilities/display/"> + Display + </a> + </li><li> + <a href="/docs/4.3/utilities/embed/"> + Embed + </a> + </li><li> + <a href="/docs/4.3/utilities/flex/"> + Flex + </a> + </li><li> + <a href="/docs/4.3/utilities/float/"> + Float + </a> + </li><li> + <a href="/docs/4.3/utilities/image-replacement/"> + Image replacement + </a> + </li><li> + <a href="/docs/4.3/utilities/overflow/"> + Overflow + </a> + </li><li> + <a href="/docs/4.3/utilities/position/"> + Position + </a> + </li><li> + <a href="/docs/4.3/utilities/screen-readers/"> + Screen readers + </a> + </li><li> + <a href="/docs/4.3/utilities/shadows/"> + Shadows + </a> + </li><li> + <a href="/docs/4.3/utilities/sizing/"> + Sizing + </a> + </li><li> + <a href="/docs/4.3/utilities/spacing/"> + Spacing + </a> + </li><li> + <a href="/docs/4.3/utilities/stretched-link/"> + Stretched link + </a> + </li><li> + <a href="/docs/4.3/utilities/text/"> + Text + </a> + </li><li> + <a href="/docs/4.3/utilities/vertical-align/"> + Vertical align + </a> + </li><li class="active bd-sidenav-active"> + <a href="/docs/4.3/utilities/visibility/"> + Visibility + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/extend/approach/"> + Extend + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/extend/approach/"> + Approach + </a> + </li><li> + <a href="/docs/4.3/extend/icons/"> + Icons + </a> + </li></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/migration/"> + Migration + </a> + + <ul class="nav bd-sidenav"></ul> + </div><div class="bd-toc-item"> + <a class="bd-toc-link" href="/docs/4.3/about/overview/"> + About + </a> + + <ul class="nav bd-sidenav"><li> + <a href="/docs/4.3/about/overview/"> + Overview + </a> + </li><li> + <a href="/docs/4.3/about/team/"> + Team + </a> + </li><li> + <a href="/docs/4.3/about/brand/"> + Brand + </a> + </li><li> + <a href="/docs/4.3/about/license/"> + License + </a> + </li><li> + <a href="/docs/4.3/about/translations/"> + Translations + </a> + </li></ul> + </div></nav> + + </div> + + + + <main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main"> + <h1 class="bd-title" id="content">Visibility</h1> + <p class="bd-lead">Control the visibility, without modifying the display, of elements with visibility utilities.</p> + <script async src="https://cdn.carbonads.com/carbon.js?serve=CKYIKKJL&placement=getbootstrapcom" id="_carbonads_js"></script> + + <p>Set the <code class="highlighter-rouge">visibility</code> of elements with our visibility utilities. These utility classes do not modify the <code class="highlighter-rouge">display</code> value at all and do not affect layout – <code class="highlighter-rouge">.invisible</code> elements still take up space in the page. Content will be hidden both visually and for assistive technology/screen reader users.</p> + +<p>Apply <code class="highlighter-rouge">.visible</code> or <code class="highlighter-rouge">.invisible</code> as needed.</p> + +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"visible"</span><span class="nt">></span>...<span class="nt"></div></span> +<span class="nt"><div</span> <span class="na">class=</span><span class="s">"invisible"</span><span class="nt">></span>...<span class="nt"></div></span></code></pre></figure> + +<figure class="highlight"><pre><code class="language-scss" data-lang="scss"><span class="c1">// Class</span> +<span class="nc">.visible</span> <span class="p">{</span> + <span class="nl">visibility</span><span class="p">:</span> <span class="nb">visible</span> <span class="o">!</span><span class="n">important</span><span class="p">;</span> +<span class="p">}</span> +<span class="nc">.invisible</span> <span class="p">{</span> + <span class="nl">visibility</span><span class="p">:</span> <span class="nb">hidden</span> <span class="o">!</span><span class="n">important</span><span class="p">;</span> +<span class="p">}</span> + +<span class="c1">// Usage as a mixin</span> +<span class="c1">// Warning: The `invisible()` mixin has been deprecated as of v4.3.0. It will be removed entirely in v5.</span> +<span class="nc">.element</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">invisible</span><span class="p">(</span><span class="nb">visible</span><span class="p">);</span> +<span class="p">}</span> +<span class="nc">.element</span> <span class="p">{</span> + <span class="k">@include</span> <span class="nd">invisible</span><span class="p">(</span><span class="nb">hidden</span><span class="p">);</span> +<span class="p">}</span></code></pre></figure> + + + </main> + </div> + </div> + + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> + </body> +</html> diff --git a/docs/getting-started/index.html b/docs/getting-started/index.html index 7e42c55a33..770ddbcef0 100644 --- a/docs/getting-started/index.html +++ b/docs/getting-started/index.html @@ -2,10 +2,10 @@ <html lang="en-US"> <meta charset="utf-8"> <title>Redirecting…</title> - <link rel="canonical" href="https://getbootstrap.com/docs/4.2/getting-started/introduction/"> - <script>location="https://getbootstrap.com/docs/4.2/getting-started/introduction/"</script> - <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.2/getting-started/introduction/"> + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/getting-started/introduction/"> + <script>location="https://getbootstrap.com/docs/4.3/getting-started/introduction/"</script> + <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.3/getting-started/introduction/"> <meta name="robots" content="noindex"> <h1>Redirecting…</h1> - <a href="https://getbootstrap.com/docs/4.2/getting-started/introduction/">Click here if you are not redirected.</a> + <a href="https://getbootstrap.com/docs/4.3/getting-started/introduction/">Click here if you are not redirected.</a> </html> diff --git a/docs/index.html b/docs/index.html index 7e42c55a33..770ddbcef0 100644 --- a/docs/index.html +++ b/docs/index.html @@ -2,10 +2,10 @@ <html lang="en-US"> <meta charset="utf-8"> <title>Redirecting…</title> - <link rel="canonical" href="https://getbootstrap.com/docs/4.2/getting-started/introduction/"> - <script>location="https://getbootstrap.com/docs/4.2/getting-started/introduction/"</script> - <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.2/getting-started/introduction/"> + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/getting-started/introduction/"> + <script>location="https://getbootstrap.com/docs/4.3/getting-started/introduction/"</script> + <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.3/getting-started/introduction/"> <meta name="robots" content="noindex"> <h1>Redirecting…</h1> - <a href="https://getbootstrap.com/docs/4.2/getting-started/introduction/">Click here if you are not redirected.</a> + <a href="https://getbootstrap.com/docs/4.3/getting-started/introduction/">Click here if you are not redirected.</a> </html> diff --git a/docs/versions/index.html b/docs/versions/index.html index 5e8115a0b3..3424fc2904 100644 --- a/docs/versions/index.html +++ b/docs/versions/index.html @@ -7,23 +7,28 @@ <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> <meta name="generator" content="Jekyll v3.8.5"> +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + <title>Versions · Bootstrap</title> +<link rel="canonical" href="https://getbootstrap.com/docs/versions/"> + <!-- Bootstrap core CSS --> -<link href="/docs/4.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-GJzZqFGwb1QTTN6wy59ffF1BuGJpLSa9DkKMp0DgiMDm4iYMj70gZWKYbI706tWS" crossorigin="anonymous"> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> <!-- Documentation extras --> -<link href="/docs/4.2/assets/css/docs.min.css" rel="stylesheet"> +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> <!-- Favicons --> -<link rel="apple-touch-icon" href="/docs/4.2/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> -<link rel="icon" href="/docs/4.2/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> -<link rel="icon" href="/docs/4.2/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> -<link rel="manifest" href="/docs/4.2/assets/img/favicons/manifest.json"> -<link rel="mask-icon" href="/docs/4.2/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> <link rel="icon" href="/favicon.ico"> -<meta name="msapplication-config" content="/docs/4.2/assets/img/favicons/browserconfig.xml"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> <meta name="theme-color" content="#563d7c"> <!-- Twitter --> @@ -32,15 +37,15 @@ <meta name="twitter:creator" content="@getbootstrap"> <meta name="twitter:title" content="Versions"> <meta name="twitter:description" content="An appendix of hosted documentation for nearly every release of Bootstrap, from v1 through v4."> -<meta name="twitter:image" content="https://getbootstrap.com/docs/4.2/assets/brand/bootstrap-social-logo.png"> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social-logo.png"> <!-- Facebook --> <meta property="og:url" content="https://getbootstrap.com/docs/versions/"> <meta property="og:title" content="Versions"> <meta property="og:description" content="An appendix of hosted documentation for nearly every release of Bootstrap, from v1 through v4."> <meta property="og:type" content="website"> -<meta property="og:image" content="http://getbootstrap.com/docs/4.2/assets/brand/bootstrap-social.png"> -<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.2/assets/brand/bootstrap-social.png"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> <meta property="og:image:type" content="image/png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="630"> @@ -50,7 +55,7 @@ ga('create', 'UA-146052-10', 'getbootstrap.com'); ga('send', 'pageview'); </script> -<script async src='https://www.google-analytics.com/analytics.js'></script> +<script async src="https://www.google-analytics.com/analytics.js"></script> </head> @@ -61,8 +66,7 @@ <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> - <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg class="d-block" width="36" height="36" viewbox="0 0 612 612" xmlns="http://www.w3.org/2000/svg" focusable="false" role="img"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg> -</a> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> <div class="navbar-nav-scroll"> <ul class="navbar-nav bd-navbar-nav flex-row"> @@ -70,10 +74,10 @@ <a class="nav-link " href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> </li> <li class="nav-item"> - <a class="nav-link " href="/docs/4.2/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + <a class="nav-link " href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> </li> <li class="nav-item"> - <a class="nav-link " href="/docs/4.2/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> </li> <li class="nav-item"> <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> @@ -90,11 +94,11 @@ <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> <li class="nav-item dropdown"> <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> - v4.2 + v4.3 </a> <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> - <a class="dropdown-item active" href="/docs/4.2/">Latest (4.2.x)</a> - <a class="dropdown-item" href="https://getbootstrap.com/docs/4.1/">v4.1.3</a> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> <div class="dropdown-divider"></div> <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> @@ -107,20 +111,20 @@ </li> <li class="nav-item"> - <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg class="navbar-nav-svg" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 512 499.36" focusable="false" role="img"><title>GitHub</title><path d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z" fill="currentColor" fill-rule="evenodd"/></svg> -</a> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> </li> <li class="nav-item"> - <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg class="navbar-nav-svg" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 512 416.32" focusable="false" role="img"><title>Twitter</title><path d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92" fill="currentColor"/></svg> -</a> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> </li> <li class="nav-item"> - <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg class="navbar-nav-svg" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 512 512" focusable="false" role="img"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z" fill="currentColor"/></svg> -</a> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> </li> </ul> - <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.2/getting-started/download/">Download</a> + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> </header> @@ -140,52 +144,53 @@ <h2>v1.x</h2> <p>Every minor and patch release from v1 is listed below.</p> + <div class="list-group"> - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/1.0.0/"> - 1.0.0 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/1.4.0/"> + 1.4.0 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/1.1.0/"> - 1.1.0 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/1.3.0/"> + 1.3.0 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/1.1.1/"> - 1.1.1 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/1.2.0/"> + 1.2.0 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/1.2.0/"> - 1.2.0 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/1.1.1/"> + 1.1.1 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/1.3.0/"> - 1.3.0 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/1.1.0/"> + 1.1.0 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/1.4.0/"> - 1.4.0 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/1.0.0/"> + 1.0.0 + </a> + </div> </div> @@ -194,108 +199,109 @@ <h2>v2.x</h2> <p>Every minor and patch release from v2 is listed below.</p> + <div class="list-group"> - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.0.0/"> - 2.0.0 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.3.2/"> + 2.3.2 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.0.1/"> - 2.0.1 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.3.1/"> + 2.3.1 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.0.2/"> - 2.0.2 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.3.0/"> + 2.3.0 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.0.3/"> - 2.0.3 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.2.2/"> + 2.2.2 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.0.4/"> - 2.0.4 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.2.1/"> + 2.2.1 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.1.0/"> - 2.1.0 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.2.0/"> + 2.2.0 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.1.1/"> - 2.1.1 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.1.1/"> + 2.1.1 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.2.0/"> - 2.2.0 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.1.0/"> + 2.1.0 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.2.1/"> - 2.2.1 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.0.4/"> + 2.0.4 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.2.2/"> - 2.2.2 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.0.3/"> + 2.0.3 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.3.0/"> - 2.3.0 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.0.2/"> + 2.0.2 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.3.1/"> - 2.3.1 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.0.1/"> + 2.0.1 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.3.2/"> - 2.3.2 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/2.0.0/"> + 2.0.0 + </a> + </div> </div> @@ -304,51 +310,61 @@ <h2>v3.x</h2> <p>Our previous major release and its minor versions. Last update was v3.4.0.</p> + <div class="list-group"> - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/docs/3.3/"> - 3.3 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/docs/3.4/"> + 3.4 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/docs/3.4/"> - 3.4 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/docs/3.3/"> + 3.3 + </a> + </div> </div> <div class="col-md"> <h2>v4.x</h2> - <p>Current major release with two minor releases. Last update was v4.2.1.</p> + <p>Current major release with two minor releases. Last update was v4.3.0.</p> + <div class="list-group"> - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/docs/4.0/"> - 4.0 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary d-flex justify-content-between align-items-center" href="https://getbootstrap.com/docs/4.3/"> + 4.3 + <span class="badge badge-primary">Latest</span> + </a> + + + + + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/docs/4.2/"> + 4.2 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/docs/4.1/"> - 4.1 - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/docs/4.1/"> + 4.1 + </a> + - - <a class="list-group-item list-group-item-action py-2 text-primary d-flex justify-content-between align-items-center" href="https://getbootstrap.com/docs/4.2/"> - 4.2 - <span class="badge badge-primary">Latest</span> - </a> - + + <a class="list-group-item list-group-item-action py-2 text-primary" href="https://getbootstrap.com/docs/4.0/"> + 4.0 + </a> + </div> </div> @@ -364,15 +380,15 @@ <ul class="bd-footer-links"> <li><a href="https://github.com/twbs/bootstrap">GitHub</a></li> <li><a href="https://twitter.com/getbootstrap">Twitter</a></li> - <li><a href="/docs/4.2/examples/">Examples</a></li> - <li><a href="/docs/4.2/about/overview/">About</a></li> + <li><a href="/docs/4.3/examples/">Examples</a></li> + <li><a href="/docs/4.3/about/overview/">About</a></li> </ul> - <p>Designed and built with all the love in the world by <a href="https://twitter.com/mdo" target="_blank" rel="noopener">@mdo</a> and <a href="https://twitter.com/fat" target="_blank" rel="noopener">@fat</a>. Maintained by the <a href="https://github.com/orgs/twbs/people">core team</a> with the help of <a href="https://github.com/twbs/bootstrap/graphs/contributors">our contributors</a>.</p> - <p>Currently v4.2.1. Code licensed <a href="https://github.com/twbs/bootstrap/blob/master/LICENSE" target="_blank" rel="license noopener">MIT</a>, docs <a href="https://creativecommons.org/licenses/by/3.0/" target="_blank" rel="license noopener">CC BY 3.0</a>.</p> + <p>Designed and built with all the love in the world by the <a href="/docs/4.3/about/team/">Bootstrap team</a> with the help of <a href="https://github.com/twbs/bootstrap/graphs/contributors">our contributors</a>.</p> + <p>Currently v4.3.0. Code licensed <a href="https://github.com/twbs/bootstrap/blob/master/LICENSE" target="_blank" rel="license noopener">MIT</a>, docs <a href="https://creativecommons.org/licenses/by/3.0/" target="_blank" rel="license noopener">CC BY 3.0</a>.</p> </div> </footer> <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> -<script>window.jQuery || document.write('<script src="/docs/4.2/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-zDnhMsjVZfS3hiP7oCBRmfjkQC4fzxVxFhBx8Hkz2aZX8gEvA/jsP3eXRCvzTofP" crossorigin="anonymous"></script><script src="/docs/4.2/assets/js/docs.min.js"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> </body> </html> diff --git a/examples/index.html b/examples/index.html index 9b5721979e..9398a9525e 100644 --- a/examples/index.html +++ b/examples/index.html @@ -2,10 +2,10 @@ <html lang="en-US"> <meta charset="utf-8"> <title>Redirecting…</title> - <link rel="canonical" href="https://getbootstrap.com/docs/4.2/examples/"> - <script>location="https://getbootstrap.com/docs/4.2/examples/"</script> - <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.2/examples/"> + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/examples/"> + <script>location="https://getbootstrap.com/docs/4.3/examples/"</script> + <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.3/examples/"> <meta name="robots" content="noindex"> <h1>Redirecting…</h1> - <a href="https://getbootstrap.com/docs/4.2/examples/">Click here if you are not redirected.</a> + <a href="https://getbootstrap.com/docs/4.3/examples/">Click here if you are not redirected.</a> </html> diff --git a/getting-started/index.html b/getting-started/index.html index 6cbf01f39a..770ddbcef0 100644 --- a/getting-started/index.html +++ b/getting-started/index.html @@ -1,10 +1,11 @@ <!DOCTYPE html> <html lang="en-US"> <meta charset="utf-8"> - <title>Redirecting…</title> - <link rel="canonical" href="https://getbootstrap.com/docs/3.3/getting-started/"> - <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/3.3/getting-started/"> - <h1>Redirecting…</h1> - <a href="https://getbootstrap.com/docs/3.3/getting-started/">Click here if you are not redirected.</a> - <script>location="https://getbootstrap.com/docs/3.3/getting-started/"</script> + <title>Redirecting…</title> + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/getting-started/introduction/"> + <script>location="https://getbootstrap.com/docs/4.3/getting-started/introduction/"</script> + <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.3/getting-started/introduction/"> + <meta name="robots" content="noindex"> + <h1>Redirecting…</h1> + <a href="https://getbootstrap.com/docs/4.3/getting-started/introduction/">Click here if you are not redirected.</a> </html> diff --git a/index.html b/index.html index e22fb3d84a..76c719c3f3 100644 --- a/index.html +++ b/index.html @@ -7,23 +7,28 @@ <meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> <meta name="generator" content="Jekyll v3.8.5"> +<meta name="docsearch:language" content="en"> +<meta name="docsearch:version" content="4.3"> + <title>Bootstrap · The most popular HTML, CSS, and JS library in the world.</title> +<link rel="canonical" href="https://getbootstrap.com/"> + <!-- Bootstrap core CSS --> -<link href="/docs/4.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-GJzZqFGwb1QTTN6wy59ffF1BuGJpLSa9DkKMp0DgiMDm4iYMj70gZWKYbI706tWS" crossorigin="anonymous"> +<link href="/docs/4.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous"> <!-- Documentation extras --> -<link href="/docs/4.2/assets/css/docs.min.css" rel="stylesheet"> +<link href="/docs/4.3/assets/css/docs.min.css" rel="stylesheet"> <!-- Favicons --> -<link rel="apple-touch-icon" href="/docs/4.2/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> -<link rel="icon" href="/docs/4.2/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> -<link rel="icon" href="/docs/4.2/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> -<link rel="manifest" href="/docs/4.2/assets/img/favicons/manifest.json"> -<link rel="mask-icon" href="/docs/4.2/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> +<link rel="apple-touch-icon" href="/docs/4.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png"> +<link rel="icon" href="/docs/4.3/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png"> +<link rel="manifest" href="/docs/4.3/assets/img/favicons/manifest.json"> +<link rel="mask-icon" href="/docs/4.3/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c"> <link rel="icon" href="/favicon.ico"> -<meta name="msapplication-config" content="/docs/4.2/assets/img/favicons/browserconfig.xml"> +<meta name="msapplication-config" content="/docs/4.3/assets/img/favicons/browserconfig.xml"> <meta name="theme-color" content="#563d7c"> <!-- Twitter --> @@ -32,15 +37,15 @@ <meta name="twitter:creator" content="@getbootstrap"> <meta name="twitter:title" content="Bootstrap"> <meta name="twitter:description" content="The most popular HTML, CSS, and JS library in the world."> -<meta name="twitter:image" content="https://getbootstrap.com/docs/4.2/assets/brand/bootstrap-social.png"> +<meta name="twitter:image" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> <!-- Facebook --> <meta property="og:url" content="https://getbootstrap.com/"> <meta property="og:title" content="Bootstrap"> <meta property="og:description" content="The most popular HTML, CSS, and JS library in the world."> <meta property="og:type" content="website"> -<meta property="og:image" content="http://getbootstrap.com/docs/4.2/assets/brand/bootstrap-social.png"> -<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.2/assets/brand/bootstrap-social.png"> +<meta property="og:image" content="http://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> +<meta property="og:image:secure_url" content="https://getbootstrap.com/docs/4.3/assets/brand/bootstrap-social.png"> <meta property="og:image:type" content="image/png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="630"> @@ -50,7 +55,7 @@ ga('create', 'UA-146052-10', 'getbootstrap.com'); ga('send', 'pageview'); </script> -<script async src='https://www.google-analytics.com/analytics.js'></script> +<script async src="https://www.google-analytics.com/analytics.js"></script> </head> @@ -61,8 +66,7 @@ <header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar"> - <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg class="d-block" width="36" height="36" viewbox="0 0 612 612" xmlns="http://www.w3.org/2000/svg" focusable="false" role="img"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg> -</a> + <a class="navbar-brand mr-0 mr-md-2" href="/" aria-label="Bootstrap"><svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" class="d-block" viewBox="0 0 612 612" role="img" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg></a> <div class="navbar-nav-scroll"> <ul class="navbar-nav bd-navbar-nav flex-row"> @@ -70,10 +74,10 @@ <a class="nav-link active" href="/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a> </li> <li class="nav-item"> - <a class="nav-link " href="/docs/4.2/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> + <a class="nav-link " href="/docs/4.3/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a> </li> <li class="nav-item"> - <a class="nav-link " href="/docs/4.2/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> + <a class="nav-link " href="/docs/4.3/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a> </li> <li class="nav-item"> <a class="nav-link" href="https://themes.getbootstrap.com/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a> @@ -90,11 +94,11 @@ <ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex"> <li class="nav-item dropdown"> <a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> - v4.2 + v4.3 </a> <div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions"> - <a class="dropdown-item active" href="/docs/4.2/">Latest (4.2.x)</a> - <a class="dropdown-item" href="https://getbootstrap.com/docs/4.1/">v4.1.3</a> + <a class="dropdown-item active" href="/docs/4.3/">Latest (4.3.x)</a> + <a class="dropdown-item" href="https://getbootstrap.com/docs/4.2/">v4.2.1</a> <a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a> <div class="dropdown-divider"></div> <a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a> @@ -107,20 +111,20 @@ </li> <li class="nav-item"> - <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg class="navbar-nav-svg" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 512 499.36" focusable="false" role="img"><title>GitHub</title><path d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z" fill="currentColor" fill-rule="evenodd"/></svg> -</a> + <a class="nav-link p-2" href="https://github.com/twbs/bootstrap" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> </li> <li class="nav-item"> - <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg class="navbar-nav-svg" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 512 416.32" focusable="false" role="img"><title>Twitter</title><path d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92" fill="currentColor"/></svg> -</a> + <a class="nav-link p-2" href="https://twitter.com/getbootstrap" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a> </li> <li class="nav-item"> - <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg class="navbar-nav-svg" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 512 512" focusable="false" role="img"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z" fill="currentColor"/></svg> -</a> + <a class="nav-link p-2" href="https://bootstrap-slack.herokuapp.com/" target="_blank" rel="noopener" aria-label="Slack"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 512" role="img" focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path fill="currentColor" d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z"/></svg></a> + </li> + <li class="nav-item"> + <a class="nav-link p-2" href="https://opencollective.com/bootstrap/" target="_blank" rel="noopener" aria-label="Open Collective"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" fill-rule="evenodd" class="navbar-nav-svg" viewBox="0 0 40 41" role="img" focusable="false"><title>Open Collective</title><path fill-opacity=".4" d="M32.8 21c0 2.4-.8 4.9-2 6.9l5.1 5.1c2.5-3.4 4.1-7.6 4.1-12 0-4.6-1.6-8.8-4-12.2L30.7 14c1.2 2 2 4.3 2 7z"/><path d="M20 33.7a12.8 12.8 0 0 1 0-25.6c2.6 0 5 .7 7 2.1L32 5a20 20 0 1 0 .1 31.9l-5-5.2a13 13 0 0 1-7 2z"/></svg></a> </li> </ul> - <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.2/getting-started/download/">Download</a> + <a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="/docs/4.3/getting-started/download/">Download</a> </header> @@ -128,7 +132,7 @@ <div class="container"> <div class="row align-items-center"> <div class="col-6 mx-auto col-md-6 order-md-2"> - <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" class="img-fluid mb-3 mb-md-0" width="512" height="430" viewBox="0 0 1024 860" focusable="false" role="img"><title>Bootstrap</title><defs><linearGradient id="c" x1="50%" x2="50%" y1="0%" y2="100%"><stop offset="0%" stop-color="#5C24AE"/><stop offset="100%" stop-color="#30135A"/></linearGradient><path id="b" d="M355.967 242.807l-322 216.395c-44.275 29.754-44.275 78.443 0 108.197l322 216.395c44.275 29.754 116.725 29.754 161 0l322-216.395c44.275-29.754 44.275-78.443 0-108.197l-322-216.395c-44.275-29.754-116.725-29.754-161 0z"/><filter id="a" width="108%" height="112%" x="-4%" y="-4.3%" filterUnits="objectBoundingBox"><feOffset dy="10" in="SourceAlpha" result="shadowOffsetOuter1"/><feGaussianBlur in="shadowOffsetOuter1" result="shadowBlurOuter1" stdDeviation="10"/><feColorMatrix in="shadowBlurOuter1" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0"/></filter><linearGradient id="f" x1="50%" x2="50%" y1="-17.303%" y2="100%"><stop offset="0%" stop-color="#7331D4"/><stop offset="100%" stop-color="#461B84"/></linearGradient><path id="e" d="M355.967 132.807l-322 216.395c-44.275 29.754-44.275 78.443 0 108.197l322 216.395c44.275 29.754 116.725 29.754 161 0l322-216.395c44.275-29.754 44.275-78.443 0-108.197l-322-216.395c-44.275-29.754-116.725-29.754-161 0z"/><filter id="d" width="108%" height="112%" x="-4%" y="-4.3%" filterUnits="objectBoundingBox"><feOffset dy="10" in="SourceAlpha" result="shadowOffsetOuter1"/><feGaussianBlur in="shadowOffsetOuter1" result="shadowBlurOuter1" stdDeviation="10"/><feColorMatrix in="shadowBlurOuter1" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0"/></filter><linearGradient id="i" x1="50%" x2="50%" y1="0%" y2="100%"><stop offset="0%" stop-color="#905BDD"/><stop offset="100%" stop-color="#5521A0"/></linearGradient><path id="h" d="M355.967 22.807l-322 216.395c-44.275 29.754-44.275 78.443 0 108.197l322 216.395c44.275 29.754 116.725 29.754 161 0l322-216.395c44.275-29.754 44.275-78.443 0-108.197l-322-216.395c-44.275-29.754-116.725-29.754-161 0z"/><filter id="g" width="108%" height="112%" x="-4%" y="-4.3%" filterUnits="objectBoundingBox"><feOffset dy="10" in="SourceAlpha" result="shadowOffsetOuter1"/><feGaussianBlur in="shadowOffsetOuter1" result="shadowBlurOuter1" stdDeviation="10"/><feColorMatrix in="shadowBlurOuter1" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0"/></filter></defs><g fill="none"><g transform="translate(75 23)"><use fill="#000" filter="url(#a)" xlink:href="#b"/><use fill="url(#c)" xlink:href="#b"/></g><g transform="translate(75 23)"><use fill="#000" filter="url(#d)" xlink:href="#e"/><use fill="url(#f)" xlink:href="#e"/></g><g transform="translate(75 23)"><use fill="#000" filter="url(#g)" xlink:href="#h"/><use fill="url(#i)" xlink:href="#h"/></g><path fill="#FFF" d="M558.273 447.667L308.036 279.5l97.982-65.847c42.83-28.784 96.789-31.483 134.245-6.311 26.044 17.502 31.214 46.615 11.444 65.724l1.389.934c38.324-19.932 84.107-18.527 117.396 3.845 44.046 29.6 38.671 68.419-14.561 104.193l-97.658 65.629zM447.112 331.01l49.942-33.562c36.935-24.822 42.31-48.249 15.224-66.451-24.798-16.665-55.49-14.453-85.851 5.95l-59.641 40.081 80.326 53.982zm176.532 35.663c37.63-25.289 42.136-48.832 13.203-68.276-28.932-19.444-64.163-15.614-104.042 11.186l-58.789 39.508 87.92 59.084 61.708-41.502z"/></g></svg> + <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="512" height="430" class="img-fluid mb-3 mb-md-0" role="img" viewBox="0 0 1024 860" focusable="false"><title>Bootstrap</title><defs><linearGradient id="c" x1="50%" x2="50%" y1="0%" y2="100%"><stop offset="0%" stop-color="#5C24AE"/><stop offset="100%" stop-color="#30135A"/></linearGradient><path id="b" d="M355.967 242.807l-322 216.395c-44.275 29.754-44.275 78.443 0 108.197l322 216.395c44.275 29.754 116.725 29.754 161 0l322-216.395c44.275-29.754 44.275-78.443 0-108.197l-322-216.395c-44.275-29.754-116.725-29.754-161 0z"/><filter id="a" width="108%" height="112%" x="-4%" y="-4.3%" filterUnits="objectBoundingBox"><feOffset dy="10" in="SourceAlpha" result="shadowOffsetOuter1"/><feGaussianBlur in="shadowOffsetOuter1" result="shadowBlurOuter1" stdDeviation="10"/><feColorMatrix in="shadowBlurOuter1" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0"/></filter><linearGradient id="f" x1="50%" x2="50%" y1="-17.303%" y2="100%"><stop offset="0%" stop-color="#7331D4"/><stop offset="100%" stop-color="#461B84"/></linearGradient><path id="e" d="M355.967 132.807l-322 216.395c-44.275 29.754-44.275 78.443 0 108.197l322 216.395c44.275 29.754 116.725 29.754 161 0l322-216.395c44.275-29.754 44.275-78.443 0-108.197l-322-216.395c-44.275-29.754-116.725-29.754-161 0z"/><filter id="d" width="108%" height="112%" x="-4%" y="-4.3%" filterUnits="objectBoundingBox"><feOffset dy="10" in="SourceAlpha" result="shadowOffsetOuter1"/><feGaussianBlur in="shadowOffsetOuter1" result="shadowBlurOuter1" stdDeviation="10"/><feColorMatrix in="shadowBlurOuter1" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0"/></filter><linearGradient id="i" x1="50%" x2="50%" y1="0%" y2="100%"><stop offset="0%" stop-color="#905BDD"/><stop offset="100%" stop-color="#5521A0"/></linearGradient><path id="h" d="M355.967 22.807l-322 216.395c-44.275 29.754-44.275 78.443 0 108.197l322 216.395c44.275 29.754 116.725 29.754 161 0l322-216.395c44.275-29.754 44.275-78.443 0-108.197l-322-216.395c-44.275-29.754-116.725-29.754-161 0z"/><filter id="g" width="108%" height="112%" x="-4%" y="-4.3%" filterUnits="objectBoundingBox"><feOffset dy="10" in="SourceAlpha" result="shadowOffsetOuter1"/><feGaussianBlur in="shadowOffsetOuter1" result="shadowBlurOuter1" stdDeviation="10"/><feColorMatrix in="shadowBlurOuter1" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0"/></filter></defs><g fill="none"><g transform="translate(75 23)"><use fill="#000" filter="url(#a)" xlink:href="#b"/><use fill="url(#c)" xlink:href="#b"/></g><g transform="translate(75 23)"><use fill="#000" filter="url(#d)" xlink:href="#e"/><use fill="url(#f)" xlink:href="#e"/></g><g transform="translate(75 23)"><use fill="#000" filter="url(#g)" xlink:href="#h"/><use fill="url(#i)" xlink:href="#h"/></g><path fill="#FFF" d="M558.273 447.667L308.036 279.5l97.982-65.847c42.83-28.784 96.789-31.483 134.245-6.311 26.044 17.502 31.214 46.615 11.444 65.724l1.389.934c38.324-19.932 84.107-18.527 117.396 3.845 44.046 29.6 38.671 68.419-14.561 104.193l-97.658 65.629zM447.112 331.01l49.942-33.562c36.935-24.822 42.31-48.249 15.224-66.451-24.798-16.665-55.49-14.453-85.851 5.95l-59.641 40.081 80.326 53.982zm176.532 35.663c37.63-25.289 42.136-48.832 13.203-68.276-28.932-19.444-64.163-15.614-104.042 11.186l-58.789 39.508 87.92 59.084 61.708-41.502z"/></g></svg> </div> <div class="col-md-6 order-md-1 text-center text-md-left pr-md-5"> <h1 class="mb-3 bd-text-purple-bright">Bootstrap</h1> @@ -140,14 +144,14 @@ </p> <div class="row mx-n2"> <div class="col-md px-2"> - <a href="/docs/4.2/getting-started/introduction/" class="btn btn-lg btn-bd-primary w-100 mb-3" onclick="ga('send', 'event', 'Jumbotron actions', 'Get started', 'Get started');">Get started</a> + <a href="/docs/4.3/getting-started/introduction/" class="btn btn-lg btn-bd-primary w-100 mb-3" onclick="ga('send', 'event', 'Jumbotron actions', 'Get started', 'Get started');">Get started</a> </div> <div class="col-md px-2"> - <a href="/docs/4.2/getting-started/download/" class="btn btn-lg btn-outline-secondary w-100 mb-3" onclick="ga('send', 'event', 'Jumbotron actions', 'Download', 'Download 4.2.1');">Download</a> + <a href="/docs/4.3/getting-started/download/" class="btn btn-lg btn-outline-secondary w-100 mb-3" onclick="ga('send', 'event', 'Jumbotron actions', 'Download', 'Download 4.3.0');">Download</a> </div> </div> <p class="text-muted mb-0"> - Currently v4.2.1 + Currently v4.3.0 </p> </div> </div> @@ -159,48 +163,45 @@ <div class="masthead-followup row m-0 border border-white"> <div class="col-12 col-md-4 p-3 p-md-5 bg-light border border-white"> <!-- Icon by Bytesize https://github.com/danklammer/bytesize-icons --> - <svg xmlns="http://www.w3.org/2000/svg" focusable="false" width="32" height="32" fill="none" stroke="currentcolor" stroke-width="2" class="text-primary mb-2" viewBox="0 0 32 32" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><title>Import</title><path d="M28 22v8H4v-8M16 4v20m-8-8l8 8 8-8"/></svg> - + <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" aria-hidden="true" class="text-primary mb-2" viewBox="0 0 32 32" focusable="false"><title>Import</title><path d="M28 22v8H4v-8M16 4v20m-8-8l8 8 8-8"/></svg> <h3>Installation</h3> <p>Include Bootstrap’s source Sass and JavaScript files via npm, Composer or Meteor. Package managed installs don’t include documentation, but do include our build system and readme.</p> <figure class="highlight"><pre><code class="language-sh" data-lang="sh">npm <span class="nb">install </span>bootstrap</code></pre></figure> -<figure class="highlight"><pre><code class="language-sh" data-lang="sh">gem <span class="nb">install </span>bootstrap <span class="nt">-v</span> 4.2.1</code></pre></figure> +<figure class="highlight"><pre><code class="language-sh" data-lang="sh">gem <span class="nb">install </span>bootstrap <span class="nt">-v</span> 4.3.0</code></pre></figure> <hr class="half-rule"> - <a class="btn btn-outline-primary" href="/docs/4.2/getting-started/download/">Read installation docs</a> + <a class="btn btn-outline-primary" href="/docs/4.3/getting-started/download/">Read installation docs</a> </div> <div class="col-12 col-md-4 p-3 p-md-5 bg-light border border-white"> <!-- Icon by Bytesize https://github.com/danklammer/bytesize-icons --> - <svg xmlns="http://www.w3.org/2000/svg" focusable="false" width="32" height="32" fill="none" stroke="currentcolor" stroke-width="2" class="text-primary mb-2" viewBox="0 0 32 32" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><title>Download</title><path d="M9 22c-9 1-8-10 0-9C6 2 23 2 22 10c10-3 10 13 1 12m-12 4l5 4 5-4m-5-10v14"/></svg> - + <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" aria-hidden="true" class="text-primary mb-2" viewBox="0 0 32 32" focusable="false"><title>Download</title><path d="M9 22c-9 1-8-10 0-9C6 2 23 2 22 10c10-3 10 13 1 12m-12 4l5 4 5-4m-5-10v14"/></svg> <h3>BootstrapCDN</h3> <p>When you only need to include Bootstrap’s compiled CSS or JS, you can use <a href="https://www.bootstrapcdn.com/">BootstrapCDN</a>.</p> <h5>CSS only</h5> -<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><link</span> <span class="na">rel=</span><span class="s">"stylesheet"</span> <span class="na">href=</span><span class="s">"https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css"</span> <span class="na">integrity=</span><span class="s">"sha384-GJzZqFGwb1QTTN6wy59ffF1BuGJpLSa9DkKMp0DgiMDm4iYMj70gZWKYbI706tWS"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></span></code></pre></figure> +<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><link</span> <span class="na">rel=</span><span class="s">"stylesheet"</span> <span class="na">href=</span><span class="s">"https://stackpath.bootstrapcdn.com/bootstrap/4.3.0/css/bootstrap.min.css"</span> <span class="na">integrity=</span><span class="s">"sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></span></code></pre></figure> <h5>JS, Popper.js, and jQuery</h5> <figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><script </span><span class="na">src=</span><span class="s">"https://code.jquery.com/jquery-3.3.1.slim.min.js"</span> <span class="na">integrity=</span><span class="s">"sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></script></span> -<span class="nt"><script </span><span class="na">src=</span><span class="s">"https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.6/umd/popper.min.js"</span> <span class="na">integrity=</span><span class="s">"sha384-wHAiFfRlMFy6i5SRaxvfOCifBUQy1xHdJ/yoi7FRNXMRBu5WHdZYu1hA6ZOblgut"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></script></span> -<span class="nt"><script </span><span class="na">src=</span><span class="s">"https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js"</span> <span class="na">integrity=</span><span class="s">"sha384-B0UglyR+jN6CkvvICOB2joaf5I4l3gm9GU6Hc1og6Ls7i6U/mkkaduKaBhlAXv9k"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></script></span></code></pre></figure> +<span class="nt"><script </span><span class="na">src=</span><span class="s">"https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"</span> <span class="na">integrity=</span><span class="s">"sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></script></span> +<span class="nt"><script </span><span class="na">src=</span><span class="s">"https://stackpath.bootstrapcdn.com/bootstrap/4.3.0/js/bootstrap.min.js"</span> <span class="na">integrity=</span><span class="s">"sha384-7aThvCh9TypR7fIc2HV4O/nFMVCBwyIUKL8XCtKE+8xgCgl/PQGuFsvShjr74PBp"</span> <span class="na">crossorigin=</span><span class="s">"anonymous"</span><span class="nt">></script></span></code></pre></figure> <hr class="half-rule"> - <a class="btn btn-outline-primary" href="/docs/4.2/layout/overview/">Explore the docs</a> + <a class="btn btn-outline-primary" href="/docs/4.3/layout/overview/">Explore the docs</a> </div> <div class="col-12 col-md-4 p-3 p-md-5 bg-light border border-white"> <!-- Icon by Bytesize https://github.com/danklammer/bytesize-icons --> - <svg xmlns="http://www.w3.org/2000/svg" focusable="false" width="32" height="32" fill="none" stroke="currentcolor" stroke-width="2" class="text-primary mb-2" viewBox="0 0 32 32" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><title>Lightning</title><path d="M18 13l8-11L8 13l6 6-8 11 18-11z"/></svg> - + <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" aria-hidden="true" class="text-primary mb-2" viewBox="0 0 32 32" focusable="false"><title>Lightning</title><path d="M18 13l8-11L8 13l6 6-8 11 18-11z"/></svg> <h3>Official Themes</h3> <p> Take Bootstrap 4 to the next level with official premium themes—toolkits built on Bootstrap with new components and plugins, docs, and build tools. </p> - <img class="img-fluid mt-3 mx-auto" srcset="/docs/4.2/assets/img/bootstrap-themes.png, - /docs/4.2/assets/img/bootstrap-themes@2x.png 2x" - src="/docs/4.2/assets/img/bootstrap-themes.png" alt="Bootstrap Themes" width="500" height="200"> + <img class="img-fluid mt-3 mx-auto" srcset="/docs/4.3/assets/img/bootstrap-themes.png, + /docs/4.3/assets/img/bootstrap-themes@2x.png 2x" + src="/docs/4.3/assets/img/bootstrap-themes.png" alt="Bootstrap Themes" width="500" height="200"> <hr class="half-rule"> <a href="https://themes.getbootstrap.com/" class="btn btn-outline-primary">Browse themes</a> </div> @@ -212,15 +213,15 @@ <ul class="bd-footer-links"> <li><a href="https://github.com/twbs/bootstrap">GitHub</a></li> <li><a href="https://twitter.com/getbootstrap">Twitter</a></li> - <li><a href="/docs/4.2/examples/">Examples</a></li> - <li><a href="/docs/4.2/about/overview/">About</a></li> + <li><a href="/docs/4.3/examples/">Examples</a></li> + <li><a href="/docs/4.3/about/overview/">About</a></li> </ul> - <p>Designed and built with all the love in the world by <a href="https://twitter.com/mdo" target="_blank" rel="noopener">@mdo</a> and <a href="https://twitter.com/fat" target="_blank" rel="noopener">@fat</a>. Maintained by the <a href="https://github.com/orgs/twbs/people">core team</a> with the help of <a href="https://github.com/twbs/bootstrap/graphs/contributors">our contributors</a>.</p> - <p>Currently v4.2.1. Code licensed <a href="https://github.com/twbs/bootstrap/blob/master/LICENSE" target="_blank" rel="license noopener">MIT</a>, docs <a href="https://creativecommons.org/licenses/by/3.0/" target="_blank" rel="license noopener">CC BY 3.0</a>.</p> + <p>Designed and built with all the love in the world by the <a href="/docs/4.3/about/team/">Bootstrap team</a> with the help of <a href="https://github.com/twbs/bootstrap/graphs/contributors">our contributors</a>.</p> + <p>Currently v4.3.0. Code licensed <a href="https://github.com/twbs/bootstrap/blob/master/LICENSE" target="_blank" rel="license noopener">MIT</a>, docs <a href="https://creativecommons.org/licenses/by/3.0/" target="_blank" rel="license noopener">CC BY 3.0</a>.</p> </div> </footer> <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> -<script>window.jQuery || document.write('<script src="/docs/4.2/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-zDnhMsjVZfS3hiP7oCBRmfjkQC4fzxVxFhBx8Hkz2aZX8gEvA/jsP3eXRCvzTofP" crossorigin="anonymous"></script><script src="/docs/4.2/assets/js/docs.min.js"></script> +<script>window.jQuery || document.write('<script src="/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-VoPFvGr9GxhDT3n8vqqZ46twP5lgex+raTCfICQy73NLhN7ZqSfCtfSn4mLA2EFA" crossorigin="anonymous"></script><script src="/docs/4.3/assets/js/docs.min.js"></script> </body> </html> diff --git a/migration/index.html b/migration/index.html index 8ee1338bcc..56095dcd1a 100644 --- a/migration/index.html +++ b/migration/index.html @@ -1 +1,11 @@ -<!DOCTYPE html> <html lang=en> <head> <meta charset=utf-8> <meta content="IE=edge" http-equiv=X-UA-Compatible> <meta content="width=device-width,initial-scale=1" name=viewport> <meta content="Bootstrap, a sleek, intuitive, and powerful mobile first front-end framework for faster and easier web development." name=description> <meta content="Mark Otto, Jacob Thornton, and Bootstrap contributors" name=author> <title> Migrating to v3.x · Bootstrap </title> <link href=../dist/css/bootstrap.min.css rel=stylesheet> <link href=../assets/css/docs.min.css rel=stylesheet> <!--[if lt IE 9]><script src=../assets/js/ie8-responsive-file-warning.js></script><![endif]--> <script src=../assets/js/ie-emulation-modes-warning.js></script> <!--[if lt IE 9]> <script src=https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js></script> <script src=https://oss.maxcdn.com/respond/1.4.2/respond.min.js></script> <![endif]--> <link href=/apple-touch-icon.png rel=apple-touch-icon> <link href=/favicon.ico rel=icon> <script>!function(e,t,a,n,c,o,s){e.GoogleAnalyticsObject=c,e[c]=e[c]||function(){(e[c].q=e[c].q||[]).push(arguments)},e[c].l=1*new Date,o=t.createElement(a),s=t.getElementsByTagName(a)[0],o.async=1,o.src=n,s.parentNode.insertBefore(o,s)}(window,document,"script","//www.google-analytics.com/analytics.js","ga"),ga("create","UA-146052-10","getbootstrap.com"),ga("send","pageview")</script> </head> <body> <a href=#content class="sr-only sr-only-focusable" id=skippy><div class=container><span class=skiplink-text>Skip to main content</span></div></a> <a href=https://v4-alpha.getbootstrap.com/ class=v4-tease>Aww yeah, Bootstrap 4 is coming!</a> <header class="bs-docs-nav navbar navbar-static-top" id=top> <div class=container> <div class=navbar-header> <button aria-controls=bs-navbar aria-expanded=false class="collapsed navbar-toggle" data-target=#bs-navbar data-toggle=collapse type=button> <span class=sr-only>Toggle navigation</span> <span class=icon-bar></span> <span class=icon-bar></span> <span class=icon-bar></span> </button> <a href=../ class=navbar-brand>Bootstrap</a> </div> <nav class="collapse navbar-collapse" id=bs-navbar> <ul class="nav navbar-nav"> <li> <a href=../getting-started/ >Getting started</a> </li> <li> <a href=../css/ >CSS</a> </li> <li> <a href=../components/ >Components</a> </li> <li> <a href=../javascript/ >JavaScript</a> </li> <li> <a href=../customize/ >Customize</a> </li> </ul> <ul class="nav navbar-nav navbar-right"> <li><a href=https://themes.getbootstrap.com/ onclick='ga("send","event","Navbar","Community links","Themes")'>Themes</a></li> <li><a href=https://expo.getbootstrap.com/ onclick='ga("send","event","Navbar","Community links","Expo")'>Expo</a></li> <li><a href=https://blog.getbootstrap.com/ onclick='ga("send","event","Navbar","Community links","Blog")'>Blog</a></li> </ul> </nav> </div> </header> <div class=bs-docs-header id=content tabindex=-1> <div class=container> <h1>Migrating to v3.x</h1> <p>Guidance on how to upgrade from Bootstrap v2.x to v3.x with emphasis on major changes, what's new, and what's been removed.</p> <div id=carbonads-container><div class=carbonad><div id=azcarbon></div><script>var z=document.createElement("script");z.async=!0,z.src="https://engine.carbonads.com/z/32341/azcarbon_2_1_0_HORIZ";var s=document.getElementsByTagName("script")[0];s.parentNode.insertBefore(z,s)</script></div></div> </div> </div> <div class="container bs-docs-container"> <div class=row> <div class=col-md-9 role=main> <div class=bs-docs-section> <h1 class=page-header>Migrating from 2.x to 3.0</h1> <p class=lead>Bootstrap 3 is not backwards compatible with v2.x. Use this section as a general guide to upgrading from v2.x to v3.0. For a broader overview, see <a href=https://blog.getbootstrap.com/2013/08/19/bootstrap-3-released/ >what's new</a> in the v3.0 release announcement.</p> <h2 id=classes>Major class changes</h2> <p>This table shows the style changes between v2.x and v3.0.</p> <div class=table-responsive> <table class="table table-bordered table-striped"> <thead> <tr> <th>Bootstrap 2.x</th> <th>Bootstrap 3.0</th> </tr> </thead> <tbody> <tr> <td><code>.row-fluid</code></td> <td><code>.row</code></td> </tr> <tr> <td><code>.span*</code></td> <td><code>.col-md-*</code></td> </tr> <tr> <td><code>.offset*</code></td> <td><code>.col-md-offset-*</code></td> </tr> <tr> <td><code>.brand</code></td> <td><code>.navbar-brand</code></td> </tr> <tr> <td><code>.navbar .nav</code></td> <td><code>.navbar-nav</code></td> </tr> <tr> <td><code>.nav-collapse</code></td> <td><code>.navbar-collapse</code></td> </tr> <tr> <td><code>.nav-toggle</code></td> <td><code>.navbar-toggle</code></td> </tr> <tr> <td><code>.btn-navbar</code></td> <td><code>.navbar-btn</code></td> </tr> <tr> <td><code>.hero-unit</code></td> <td><code>.jumbotron</code></td> </tr> <tr> <td><code>.icon-*</code></td> <td><code>.glyphicon .glyphicon-*</code></td> </tr> <tr> <td><code>.btn</code></td> <td><code>.btn .btn-default</code></td> </tr> <tr> <td><code>.btn-mini</code></td> <td><code>.btn-xs</code></td> </tr> <tr> <td><code>.btn-small</code></td> <td><code>.btn-sm</code></td> </tr> <tr> <td><code>.btn-large</code></td> <td><code>.btn-lg</code></td> </tr> <tr> <td><code>.alert</code></td> <td><code>.alert .alert-warning</code></td> </tr> <tr> <td><code>.alert-error</code></td> <td><code>.alert-danger</code></td> </tr> <tr> <td><code>.visible-phone</code></td> <td><code>.visible-xs</code></td> </tr> <tr> <td><code>.visible-tablet</code></td> <td><code>.visible-sm</code></td> </tr> <tr> <td><code>.visible-desktop</code></td> <td>Split into <code>.visible-md .visible-lg</code></td> </tr> <tr> <td><code>.hidden-phone</code></td> <td><code>.hidden-xs</code></td> </tr> <tr> <td><code>.hidden-tablet</code></td> <td><code>.hidden-sm</code></td> </tr> <tr> <td><code>.hidden-desktop</code></td> <td>Split into <code>.hidden-md .hidden-lg</code></td> </tr> <tr> <td><code>.input-block-level</code></td> <td><code>.form-control</code></td> </tr> <tr> <td><code>.control-group</code></td> <td><code>.form-group</code></td> </tr> <tr> <td><code>.control-group.warning .control-group.error .control-group.success</code></td> <td><code>.form-group.has-*</code></td> </tr> <tr> <td><code>.checkbox.inline</code> <code>.radio.inline</code></td> <td><code>.checkbox-inline</code> <code>.radio-inline</code></td> </tr> <tr> <td><code>.input-prepend</code> <code>.input-append</code></td> <td><code>.input-group</code></td> </tr> <tr> <td><code>.add-on</code></td> <td><code>.input-group-addon</code></td> </tr> <tr> <td><code>.img-polaroid</code></td> <td><code>.img-thumbnail</code></td> </tr> <tr> <td><code>ul.unstyled</code></td> <td><code>.list-unstyled</code></td> </tr> <tr> <td><code>ul.inline</code></td> <td><code>.list-inline</code></td> </tr> <tr> <td><code>.muted</code></td> <td><code>.text-muted</code></td> </tr> <tr> <td><code>.label</code></td> <td><code>.label .label-default</code></td> </tr> <tr> <td><code>.label-important</code></td> <td><code>.label-danger</code></td> </tr> <tr> <td><code>.text-error</code></td> <td><code>.text-danger</code></td> </tr> <tr> <td><code>.table .error</code></td> <td><code>.table .danger</code></td> </tr> <tr> <td><code>.bar</code></td> <td><code>.progress-bar</code></td> </tr> <tr> <td><code>.bar-*</code></td> <td><code>.progress-bar-*</code></td> </tr> <tr> <td><code>.accordion</code></td> <td><code>.panel-group</code></td> </tr> <tr> <td><code>.accordion-group</code></td> <td><code>.panel .panel-default</code></td> </tr> <tr> <td><code>.accordion-heading</code></td> <td><code>.panel-heading</code></td> </tr> <tr> <td><code>.accordion-body</code></td> <td><code>.panel-collapse</code></td> </tr> <tr> <td><code>.accordion-inner</code></td> <td><code>.panel-body</code></td> </tr> </tbody> </table> </div> <h2 id=new>What's new</h2> <p>We've added new elements and changed some existing ones. Here are the new or updated styles.</p> <div class=table-responsive> <table class="table table-bordered table-striped"> <thead> <tr> <th>Element</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Panels</td> <td><code>.panel .panel-default</code> <code>.panel-body</code> <code>.panel-title</code> <code>.panel-heading</code> <code>.panel-footer</code> <code>.panel-collapse</code></td> </tr> <tr> <td>List groups</td> <td><code>.list-group</code> <code>.list-group-item</code> <code>.list-group-item-text</code> <code>.list-group-item-heading</code></td> </tr> <tr> <td>Glyphicons</td> <td><code>.glyphicon</code></td> </tr> <tr> <td>Jumbotron</td> <td><code>.jumbotron</code></td> </tr> <tr> <td>Extra small grid (<768px)</td> <td><code>.col-xs-*</code></td> </tr> <tr> <td>Small grid (≥768px)</td> <td><code>.col-sm-*</code></td> </tr> <tr> <td>Medium grid (≥992px)</td> <td><code>.col-md-*</code></td> </tr> <tr> <td>Large grid (≥1200px)</td> <td><code>.col-lg-*</code></td> </tr> <tr> <td>Responsive utility classes (≥1200px)</td> <td><code>.visible-lg</code> <code>.hidden-lg</code></td> </tr> <tr> <td>Offsets</td> <td><code>.col-sm-offset-*</code> <code>.col-md-offset-*</code> <code>.col-lg-offset-*</code></td> </tr> <tr> <td>Push</td> <td><code>.col-sm-push-*</code> <code>.col-md-push-*</code> <code>.col-lg-push-*</code></td> </tr> <tr> <td>Pull</td> <td><code>.col-sm-pull-*</code> <code>.col-md-pull-*</code> <code>.col-lg-pull-*</code></td> </tr> <tr> <td>Input height sizes</td> <td><code>.input-sm</code> <code>.input-lg</code></td> </tr> <tr> <td>Input groups</td> <td><code>.input-group</code> <code>.input-group-addon</code> <code>.input-group-btn</code></td> </tr> <tr> <td>Form controls</td> <td><code>.form-control</code> <code>.form-group</code></td> </tr> <tr> <td>Button group sizes</td> <td><code>.btn-group-xs</code> <code>.btn-group-sm</code> <code>.btn-group-lg</code></td> </tr> <tr> <td>Navbar text</td> <td><code>.navbar-text</code></td> </tr> <tr> <td>Navbar header</td> <td><code>.navbar-header</code></td> </tr> <tr> <td>Justified tabs / pills</td> <td><code>.nav-justified</code></td> </tr> <tr> <td>Responsive images</td> <td><code>.img-responsive</code></td> </tr> <tr> <td>Contextual table rows</td> <td><code>.success</code> <code>.danger</code> <code>.warning</code> <code>.active</code> <code>.info</code></td> </tr> <tr> <td>Contextual panels</td> <td><code>.panel-success</code> <code>.panel-danger</code> <code>.panel-warning</code> <code>.panel-info</code></td> </tr> <tr> <td>Modal</td> <td><code>.modal-dialog</code> <code>.modal-content</code></td> </tr> <tr> <td>Thumbnail image</td> <td><code>.img-thumbnail</code></td> </tr> <tr> <td>Well sizes</td> <td><code>.well-sm</code> <code>.well-lg</code></td> </tr> <tr> <td>Alert links</td> <td><code>.alert-link</code></td> </tr> </tbody> </table> </div> <h2 id=dropped>What's removed</h2> <p>The following elements have been dropped or changed in v3.0.</p> <div class=table-responsive> <table class="table table-bordered table-striped"> <thead> <tr> <th>Element</th> <th>Removed from 2.x</th> <th>3.0 Equivalent</th> </tr> </thead> <tbody> <tr> <td>Form actions</td> <td><code>.form-actions</code></td> <td class=text-muted>N/A</td> </tr> <tr> <td>Search form</td> <td><code>.form-search</code></td> <td class=text-muted>N/A</td> </tr> <tr> <td>Form group with info</td> <td><code>.control-group.info</code></td> <td class=text-muted>N/A</td> </tr> <tr> <td>Fixed-width input sizes</td> <td><code>.input-mini</code> <code>.input-small</code> <code>.input-medium</code> <code>.input-large</code> <code>.input-xlarge</code> <code>.input-xxlarge</code></td> <td>Use <a href=../css/#forms-controls><code>.form-control</code></a> and <a href=../css/#grid>the grid system</a> instead.</td> </tr> <tr> <td>Block level form input</td> <td><code>.input-block-level</code></td> <td>No direct equivalent, but <a href=../css/#forms-controls>forms controls</a> are similar.</td> </tr> <tr> <td>Inverse buttons</td> <td><code>.btn-inverse</code></td> <td class=text-muted>N/A</td> </tr> <tr> <td>Fluid row</td> <td><code>.row-fluid</code></td> <td><code>.row</code> (no more fixed grid)</td> </tr> <tr> <td>Controls wrapper</td> <td><code>.controls</code></td> <td class=text-muted>N/A</td> </tr> <tr> <td>Controls row</td> <td><code>.controls-row</code></td> <td><code>.row</code> or <code>.form-group</code></td> </tr> <tr> <td>Navbar inner</td> <td><code>.navbar-inner</code></td> <td class=text-muted>N/A</td> </tr> <tr> <td>Navbar vertical dividers</td> <td><code>.navbar .divider-vertical</code></td> <td class=text-muted>N/A</td> </tr> <tr> <td>Dropdown submenu</td> <td><code>.dropdown-submenu</code></td> <td class=text-muted>N/A</td> </tr> <tr> <td>Tab alignments</td> <td><code>.tabs-left</code> <code>.tabs-right</code> <code>.tabs-below</code></td> <td class=text-muted>N/A</td> </tr> <tr> <td>Pill-based tabbable area</td> <td><code>.pill-content</code></td> <td><code>.tab-content</code></td> </tr> <tr> <td>Pill-based tabbable area pane</td> <td><code>.pill-pane</code></td> <td><code>.tab-pane</code></td> </tr> <tr> <td>Nav lists</td> <td><code>.nav-list</code> <code>.nav-header</code></td> <td>No direct equivalent, but <a href=../components/#list-group>list groups</a> and <a href=../javascript/#collapse><code>.panel-group</code>s</a> are similar.</td> </tr> <tr> <td>Inline help for form controls</td> <td><code>.help-inline</code></td> <td>No exact equivalent, but <code>.help-block</code> is similar.</td> </tr> <tr> <td>Non-bar-level progress colors</td> <td><code>.progress-info</code> <code>.progress-success</code> <code>.progress-warning</code> <code>.progress-danger</code></td> <td>Use <code>.progress-bar-*</code> on the <code>.progress-bar</code> instead.</td> </tr> </tbody> </table> </div> <h2 id=notes>Additional notes</h2> <p>Other changes in v3.0 are not immediately apparent. Base classes, key styles, and behaviors have been adjusted for flexibility and our <em>mobile first</em> approach. Here's a partial list:</p> <ul> <li>By default, text-based form controls now receive only minimal styling. For focus colors and rounded corners, apply the <code>.form-control</code> class on the element to style.</li> <li>Text-based form controls with the <code>.form-control</code> class applied are now 100% wide by default. Wrap inputs inside <code><div class="col-*"></div></code> to control input widths.</li> <li><code>.badge</code> no longer has contextual (-success,-primary,etc..) classes.</li> <li><code>.btn</code> must also use <code>.btn-default</code> to get the "default" button.</li> <li><code>.row</code> is now fluid.</li> <li>Images are no longer responsive by default. Use <code>.img-responsive</code> for fluid <code><img></code> size.</li> <li>The icons, now <code>.glyphicon</code>, are now font based. Icons also require a base and icon class (e.g. <code>.glyphicon .glyphicon-asterisk</code>).</li> <li>Typeahead has been dropped, in favor of using <a href=http://twitter.github.io/typeahead.js/ >Twitter Typeahead</a>.</li> <li>Modal markup has changed significantly. The <code>.modal-header</code>, <code>.modal-body</code>, and <code>.modal-footer</code> sections are now wrapped in <code>.modal-content</code> and <code>.modal-dialog</code> for better mobile styling and behavior. Also, you should no longer apply <code>.hide</code> to <code>.modal</code> in your markup.</li> <li>As of v3.1.0, the HTML loaded by the <code>remote</code> modal option is now injected into the <code>.modal-content</code> (from v3.0.0 to v3.0.3, into the <code>.modal</code>) instead of into the <code>.modal-body</code>. This allows you to also easily vary the header and footer of the modal, not just the modal body.</li> <li>The checkbox and radio features of the button.js plugin now both use <code>data-toggle="buttons"</code> instead of <code>data-toggle="buttons-checkbox"</code> or <code>data-toggle="buttons-radio"</code> in their markup.</li> <li>JavaScript events are namespaced. For example, to handle the modal "show" event, use <code>'show.bs.modal'</code>. For tabs "shown" use <code>'shown.bs.tab'</code>, etc.</li> </ul> <p>For more information on upgrading to v3.0, and code snippets from the community, see <a href=http://bootply.com/ >Bootply</a>.</p> </div> </div> <div class=col-md-3 role=complementary> <nav class="bs-docs-sidebar hidden-print hidden-sm hidden-xs"> <ul class="nav bs-docs-sidenav"> <li> <a href=#classes>Major class changes</a> </li> <li> <a href=#new>What's new</a> </li> <li> <a href=#dropped>What's removed</a> </li> <li> <a href=#notes>Additional notes</a> </li> </ul> <a href=#top class=back-to-top> Back to top </a> </nav> </div> </div> </div> <footer class=bs-docs-footer> <div class=container> <ul class=bs-docs-footer-links> <li><a href=https://github.com/twbs/bootstrap>GitHub</a></li> <li><a href=https://twitter.com/getbootstrap>Twitter</a></li> <li><a href=../getting-started/#examples>Examples</a></li> <li><a href=../about/ >About</a></li> </ul> <p>Designed and built with all the love in the world by <a href=https://twitter.com/mdo target=_blank>@mdo</a> and <a href=https://twitter.com/fat target=_blank>@fat</a>. Maintained by the <a href=https://github.com/orgs/twbs/people>core team</a> with the help of <a href=https://github.com/twbs/bootstrap/graphs/contributors>our contributors</a>.</p> <p>Code licensed <a href=https://github.com/twbs/bootstrap/blob/master/LICENSE target=_blank rel=license>MIT</a>, docs <a href=https://creativecommons.org/licenses/by/3.0/ target=_blank rel=license>CC BY 3.0</a>.</p> </div> </footer> <script src=https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js></script> <script>window.jQuery||document.write('<script src="../assets/js/vendor/jquery.min.js"><\/script>')</script> <script src=../dist/js/bootstrap.min.js></script> <script src=../assets/js/docs.min.js></script> <script src=../assets/js/ie10-viewport-bug-workaround.js></script> <script>var _gauges=_gauges||[];!function(){var e=document.createElement("script");e.async=!0,e.id="gauges-tracker",e.setAttribute("data-site-id","4f0dc9fef5a1f55508000013"),e.src="//secure.gaug.es/track.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)}()</script> \ No newline at end of file +<!DOCTYPE html> +<html lang="en-US"> + <meta charset="utf-8"> + <title>Redirecting…</title> + <link rel="canonical" href="https://getbootstrap.com/docs/4.3/migration/"> + <script>location="https://getbootstrap.com/docs/4.3/migration/"</script> + <meta http-equiv="refresh" content="0; url=https://getbootstrap.com/docs/4.3/migration/"> + <meta name="robots" content="noindex"> + <h1>Redirecting…</h1> + <a href="https://getbootstrap.com/docs/4.3/migration/">Click here if you are not redirected.</a> +</html> diff --git a/redirects.json b/redirects.json index 9fe9b9d6be..2efae95050 100644 --- a/redirects.json +++ b/redirects.json @@ -1 +1 @@ -{"/docs/4.2/utilities/":"https://getbootstrap.com/docs/4.2/utilities/borders/","/docs/4.2/components/":"https://getbootstrap.com/docs/4.2/components/buttons/","/examples/":"https://getbootstrap.com/docs/4.2/examples/","/docs/4.0/examples/tooltip-viewport/":"https://getbootstrap.com/docs/4.2/examples/","/docs/4.1/examples/tooltip-viewport/":"https://getbootstrap.com/docs/4.2/examples/","/docs/4.2/extend/":"https://getbootstrap.com/docs/4.1/extend/approach/","/docs/":"https://getbootstrap.com/docs/4.2/getting-started/introduction/","/docs/4.2/":"https://getbootstrap.com/docs/4.2/getting-started/introduction/","/docs/4.2/getting-started/":"https://getbootstrap.com/docs/4.2/getting-started/introduction/","/docs/getting-started/":"https://getbootstrap.com/docs/4.2/getting-started/introduction/","/docs/4.2/layout/":"https://getbootstrap.com/docs/4.2/layout/overview/","/docs/4.2/content/":"https://getbootstrap.com/docs/4.2/content/reboot/"} \ No newline at end of file +{"/components/":"https://getbootstrap.com/docs/4.3/components/alerts/","/docs/4.3/components/":"https://getbootstrap.com/docs/4.3/components/alerts/","/docs/4.3/extend/":"https://getbootstrap.com/docs/4.3/extend/approach/","/docs/4.3/utilities/":"https://getbootstrap.com/docs/4.3/utilities/borders/","/browser-bugs/":"https://getbootstrap.com/docs/4.3/browser-bugs/","/examples/":"https://getbootstrap.com/docs/4.3/examples/","/docs/":"https://getbootstrap.com/docs/4.3/getting-started/introduction/","/docs/4.3/":"https://getbootstrap.com/docs/4.3/getting-started/introduction/","/docs/4.3/getting-started/":"https://getbootstrap.com/docs/4.3/getting-started/introduction/","/docs/getting-started/":"https://getbootstrap.com/docs/4.3/getting-started/introduction/","/getting-started/":"https://getbootstrap.com/docs/4.3/getting-started/introduction/","/migration/":"https://getbootstrap.com/docs/4.3/migration/","/about/":"https://getbootstrap.com/docs/4.3/about/overview/","/docs/4.3/about/":"https://getbootstrap.com/docs/4.3/about/overview/","/docs/4.3/layout/":"https://getbootstrap.com/docs/4.3/layout/overview/","/docs/4.3/content/":"https://getbootstrap.com/docs/4.3/content/reboot/"} \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml index 6cf5e62ab5..3ac6073d99 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -1,282 +1,285 @@ <?xml version="1.0" encoding="UTF-8"?> <urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url> -<loc>https://getbootstrap.com/docs/4.2/getting-started/accessibility/</loc> +<loc>https://getbootstrap.com/docs/4.3/getting-started/accessibility/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/alerts/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/alerts/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/extend/approach/</loc> +<loc>https://getbootstrap.com/docs/4.3/extend/approach/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/badge/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/badge/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/getting-started/best-practices/</loc> +<loc>https://getbootstrap.com/docs/4.3/getting-started/best-practices/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/borders/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/borders/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/about/brand/</loc> +<loc>https://getbootstrap.com/docs/4.3/about/brand/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/breadcrumb/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/breadcrumb/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/browser-bugs/</loc> +<loc>https://getbootstrap.com/docs/4.3/browser-bugs/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/getting-started/browsers-devices/</loc> +<loc>https://getbootstrap.com/docs/4.3/getting-started/browsers-devices/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/getting-started/build-tools/</loc> +<loc>https://getbootstrap.com/docs/4.3/getting-started/build-tools/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/button-group/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/button-group/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/buttons/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/buttons/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/card/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/card/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/carousel/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/carousel/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/clearfix/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/clearfix/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/close-icon/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/close-icon/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/content/code/</loc> +<loc>https://getbootstrap.com/docs/4.3/content/code/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/collapse/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/collapse/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/colors/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/colors/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/getting-started/contents/</loc> +<loc>https://getbootstrap.com/docs/4.3/getting-started/contents/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/display/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/display/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/getting-started/download/</loc> +<loc>https://getbootstrap.com/docs/4.3/getting-started/download/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/dropdowns/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/dropdowns/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/embed/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/embed/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/content/figures/</loc> +<loc>https://getbootstrap.com/docs/4.3/content/figures/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/flex/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/flex/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/float/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/float/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/forms/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/forms/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/layout/grid/</loc> +<loc>https://getbootstrap.com/docs/4.3/layout/grid/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/extend/icons/</loc> +<loc>https://getbootstrap.com/docs/4.3/extend/icons/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/image-replacement/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/image-replacement/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/content/images/</loc> +<loc>https://getbootstrap.com/docs/4.3/content/images/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/sticky-footer/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/sticky-footer/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/navbar-static/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/navbar-static/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/floating-labels/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/floating-labels/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/offcanvas/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/offcanvas/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/navbar-bottom/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/navbar-bottom/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/sticky-footer-navbar/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/sticky-footer-navbar/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/navbar-fixed/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/navbar-fixed/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/product/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/product/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/carousel/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/carousel/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/checkout/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/checkout/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/blog/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/blog/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/dashboard/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/dashboard/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/starter-template/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/starter-template/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/sign-in/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/sign-in/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/album/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/album/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/jumbotron/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/jumbotron/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/pricing/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/pricing/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/navbars/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/navbars/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/grid/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/grid/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/cover/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/cover/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/examples/</loc> +<loc>https://getbootstrap.com/docs/4.3/examples/</loc> </url> <url> <loc>https://getbootstrap.com/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/input-group/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/input-group/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/getting-started/introduction/</loc> +<loc>https://getbootstrap.com/docs/4.3/getting-started/introduction/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/getting-started/javascript/</loc> +<loc>https://getbootstrap.com/docs/4.3/getting-started/javascript/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/jumbotron/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/jumbotron/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/about/license/</loc> +<loc>https://getbootstrap.com/docs/4.3/about/license/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/list-group/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/list-group/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/media-object/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/media-object/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/migration/</loc> +<loc>https://getbootstrap.com/docs/4.3/migration/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/modal/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/modal/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/navbar/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/navbar/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/navs/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/navs/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/overflow/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/overflow/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/layout/overview/</loc> +<loc>https://getbootstrap.com/docs/4.3/about/overview/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/about/overview/</loc> +<loc>https://getbootstrap.com/docs/4.3/layout/overview/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/pagination/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/pagination/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/popovers/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/popovers/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/position/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/position/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/progress/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/progress/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/content/reboot/</loc> +<loc>https://getbootstrap.com/docs/4.3/content/reboot/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/screenreaders/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/screen-readers/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/scrollspy/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/scrollspy/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/shadows/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/shadows/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/sizing/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/sizing/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/spacing/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/spacing/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/spinners/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/spinners/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/content/tables/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/stretched-link/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/about/team/</loc> +<loc>https://getbootstrap.com/docs/4.3/content/tables/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/text/</loc> +<loc>https://getbootstrap.com/docs/4.3/about/team/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/getting-started/theming/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/text/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/toasts/</loc> +<loc>https://getbootstrap.com/docs/4.3/getting-started/theming/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/components/tooltips/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/toasts/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/about/translations/</loc> +<loc>https://getbootstrap.com/docs/4.3/components/tooltips/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/content/typography/</loc> +<loc>https://getbootstrap.com/docs/4.3/about/translations/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/layout/utilities-for-layout/</loc> +<loc>https://getbootstrap.com/docs/4.3/content/typography/</loc> +</url> +<url> +<loc>https://getbootstrap.com/docs/4.3/layout/utilities-for-layout/</loc> </url> <url> <loc>https://getbootstrap.com/docs/versions/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/vertical-align/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/vertical-align/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/utilities/visibility/</loc> +<loc>https://getbootstrap.com/docs/4.3/utilities/visibility/</loc> </url> <url> -<loc>https://getbootstrap.com/docs/4.2/getting-started/webpack/</loc> +<loc>https://getbootstrap.com/docs/4.3/getting-started/webpack/</loc> </url> </urlset> -- GitLab