diff --git a/dist/css/bootstrap.css b/dist/css/bootstrap.css index 654f20d95..0111a171e 100644 --- a/dist/css/bootstrap.css +++ b/dist/css/bootstrap.css @@ -5678,6 +5678,20 @@ button.close { .visible-lg { display: none !important; } +.visible-xs-block, +.visible-xs-inline, +.visible-xs-inline-block, +.visible-sm-block, +.visible-sm-inline, +.visible-sm-inline-block, +.visible-md-block, +.visible-md-inline, +.visible-md-inline-block, +.visible-lg-block, +.visible-lg-inline, +.visible-lg-inline-block { + display: none !important; +} @media (max-width: 767px) { .visible-xs { display: block !important; @@ -5693,6 +5707,21 @@ button.close { display: table-cell !important; } } +@media (max-width: 767px) { + .visible-xs-block { + display: block !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline { + display: inline !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline-block { + display: inline-block !important; + } +} @media (min-width: 768px) and (max-width: 991px) { .visible-sm { display: block !important; @@ -5708,6 +5737,21 @@ button.close { display: table-cell !important; } } +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-block { + display: block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline { + display: inline !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline-block { + display: inline-block !important; + } +} @media (min-width: 992px) and (max-width: 1199px) { .visible-md { display: block !important; @@ -5723,6 +5767,21 @@ button.close { display: table-cell !important; } } +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-block { + display: block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline { + display: inline !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline-block { + display: inline-block !important; + } +} @media (min-width: 1200px) { .visible-lg { display: block !important; @@ -5738,6 +5797,21 @@ button.close { display: table-cell !important; } } +@media (min-width: 1200px) { + .visible-lg-block { + display: block !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline { + display: inline !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline-block { + display: inline-block !important; + } +} @media (max-width: 767px) { .hidden-xs { display: none !important; @@ -5776,6 +5850,30 @@ button.close { display: table-cell !important; } } +.visible-print-block { + display: none !important; +} +@media print { + .visible-print-block { + display: block !important; + } +} +.visible-print-inline { + display: none !important; +} +@media print { + .visible-print-inline { + display: inline !important; + } +} +.visible-print-inline-block { + display: none !important; +} +@media print { + .visible-print-inline-block { + display: inline-block !important; + } +} @media print { .hidden-print { display: none !important; diff --git a/docs/assets/css/docs.css b/docs/assets/css/docs.css index 30daae5a2..bebfd33b5 100644 --- a/docs/assets/css/docs.css +++ b/docs/assets/css/docs.css @@ -1165,14 +1165,14 @@ h1[id] { color: #999; border: 1px solid #ddd; } -.visible-on .col-xs-6 .visible-xs, -.visible-on .col-xs-6 .visible-sm, -.visible-on .col-xs-6 .visible-md, -.visible-on .col-xs-6 .visible-lg, -.hidden-on .col-xs-6 .visible-xs, -.hidden-on .col-xs-6 .visible-sm, -.hidden-on .col-xs-6 .visible-md, -.hidden-on .col-xs-6 .visible-lg { +.visible-on .col-xs-6 .visible-xs-block, +.visible-on .col-xs-6 .visible-sm-block, +.visible-on .col-xs-6 .visible-md-block, +.visible-on .col-xs-6 .visible-lg-block, +.hidden-on .col-xs-6 .visible-xs-block, +.hidden-on .col-xs-6 .visible-sm-block, +.hidden-on .col-xs-6 .visible-md-block, +.hidden-on .col-xs-6 .visible-lg-block { color: #468847; background-color: #dff0d8; border: 1px solid #d6e9c6; diff --git a/docs/css.html b/docs/css.html index 32204c4f4..7d646a2a8 100644 --- a/docs/css.html +++ b/docs/css.html @@ -302,7 +302,7 @@ lead: "Global CSS settings, fundamental HTML elements styled and enhanced with e
<section> should be wrapped as inline.
For faster mobile-friendly development, use these utility classes for showing and hiding content by device via media query. Also included are utility classes for toggling content when printed.
-Try to use these on a limited basis and avoid creating entirely different versions of the same site. Instead, use them to complement each device's presentation. Responsive utilities are currently only available for block and table toggling. Use with inline and table elements is currently not supported.
+Try to use these on a limited basis and avoid creating entirely different versions of the same site. Instead, use them to complement each device's presentation.
<section> should be wrapped as inline.
.visible-xs.visible-xs-*.visible-sm.visible-sm-*.visible-md.visible-md-*.visible-lg.visible-lg-*<section> should be wrapped as inline.
+ The .visible-*-* classes for each breakpoint come in 3 variations, depending on the CSS display property value applied when the element is visible:
| Group of classes | +CSS display |
+
|---|---|
.visible-*-block |
+ display: block; |
+
.visible-*-inline |
+ display: inline; |
+
.visible-*-inline-block |
+ display: inline-block; |
+
So, for extra small (xs) screens for example, the available .visible-*-* classes are: .visible-xs-block, .visible-xs-inline, and .visible-xs-inline-block.
The classes .visible-xs, .visible-sm, .visible-md, and .visible-lg also exist, but are deprecated as of v3.1.0. They are approximately equivalent to .visible-*-block, except with additional special cases for <table>-related elements.
Similar to the regular responsive classes, use these for toggling content for print.
@@ -2667,14 +2694,18 @@ For example,<section> should be wrapped as inline.
| Class | +Classes | Browser | |
|---|---|---|---|
.visible-print |
+
+ .visible-print-block+ .visible-print-inline+ .visible-print-inline-block
+ |
Hidden | Visible |
The class .visible-print also exists but is deprecated as of v3.1.0. It is approximately equivalent to .visible-print-block, except with additional special cases for <table>-related elements.
<section> should be wrapped as inline.
<section> should be wrapped as inline.
diff --git a/less/mixins.less b/less/mixins.less
index 33117f2ce..397da934a 100644
--- a/less/mixins.less
+++ b/less/mixins.less
@@ -632,6 +632,7 @@
// Responsive utilities
// -------------------------
// More easily include all the states for responsive-utilities.less.
+// Note: Deprecated .responsive-visibility() as of v3.2.0
.responsive-visibility() {
display: block !important;
table& { display: table; }
@@ -640,6 +641,7 @@
td& { display: table-cell !important; }
}
+// Note: Deprecated .responsive-invisibility() as of v3.2.0
.responsive-invisibility() {
display: none !important;
}
diff --git a/less/responsive-utilities.less b/less/responsive-utilities.less
index 027a26410..93f2e8ea8 100644
--- a/less/responsive-utilities.less
+++ b/less/responsive-utilities.less
@@ -23,6 +23,7 @@
// Visibility utilities
+// Note: Deprecated .visible-xs, .visible-sm, .visible-md, and .visible-lg as of v3.2.0
.visible-xs,
.visible-sm,
.visible-md,
@@ -30,26 +31,104 @@
.responsive-invisibility();
}
+.visible-xs-block,
+.visible-xs-inline,
+.visible-xs-inline-block,
+.visible-sm-block,
+.visible-sm-inline,
+.visible-sm-inline-block,
+.visible-md-block,
+.visible-md-inline,
+.visible-md-inline-block,
+.visible-lg-block,
+.visible-lg-inline,
+.visible-lg-inline-block {
+ display: none !important;
+}
+
.visible-xs {
@media (max-width: @screen-xs-max) {
.responsive-visibility();
}
}
+.visible-xs-block {
+ @media (max-width: @screen-xs-max) {
+ display: block !important;
+ }
+}
+.visible-xs-inline {
+ @media (max-width: @screen-xs-max) {
+ display: inline !important;
+ }
+}
+.visible-xs-inline-block {
+ @media (max-width: @screen-xs-max) {
+ display: inline-block !important;
+ }
+}
+
.visible-sm {
@media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {
.responsive-visibility();
}
}
+.visible-sm-block {
+ @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {
+ display: block !important;
+ }
+}
+.visible-sm-inline {
+ @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {
+ display: inline !important;
+ }
+}
+.visible-sm-inline-block {
+ @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {
+ display: inline-block !important;
+ }
+}
+
.visible-md {
@media (min-width: @screen-md-min) and (max-width: @screen-md-max) {
.responsive-visibility();
}
}
+.visible-md-block {
+ @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {
+ display: block !important;
+ }
+}
+.visible-md-inline {
+ @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {
+ display: inline !important;
+ }
+}
+.visible-md-inline-block {
+ @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {
+ display: inline-block !important;
+ }
+}
+
.visible-lg {
@media (min-width: @screen-lg-min) {
.responsive-visibility();
}
}
+.visible-lg-block {
+ @media (min-width: @screen-lg-min) {
+ display: block !important;
+ }
+}
+.visible-lg-inline {
+ @media (min-width: @screen-lg-min) {
+ display: inline !important;
+ }
+}
+.visible-lg-inline-block {
+ @media (min-width: @screen-lg-min) {
+ display: inline-block !important;
+ }
+}
.hidden-xs {
@media (max-width: @screen-xs-max) {
@@ -77,6 +156,7 @@
//
// Media queries are placed on the inside to be mixin-friendly.
+// Note: Deprecated .visible-print as of v3.2.0
.visible-print {
.responsive-invisibility();
@@ -84,6 +164,27 @@
.responsive-visibility();
}
}
+.visible-print-block {
+ display: none !important;
+
+ @media print {
+ display: block !important;
+ }
+}
+.visible-print-inline {
+ display: none !important;
+
+ @media print {
+ display: inline !important;
+ }
+}
+.visible-print-inline-block {
+ display: none !important;
+
+ @media print {
+ display: inline-block !important;
+ }
+}
.hidden-print {
@media print {