1
0
mirror of https://github.com/twbs/bootstrap.git synced 2025-08-14 17:44:15 +02:00

Prevent print utils from overriding all other display utils (#25269)

* Prevent print utils from overriding all other display utils

Fixes #25221.

I agree with the referenced issue—this is unexpected and also causes a serious bug when mixed with other utility classes. This wasn't an issue in v3 given we had different utilities for hiding that weren't focused on display property.

* Add printing changes to migration docs

* unrelated heading sentence case change

* List out all .d-print- classes
This commit is contained in:
Mark Otto
2018-01-17 17:29:28 -08:00
committed by GitHub
parent a0936c326f
commit 9b0fcbf9c3
3 changed files with 32 additions and 36 deletions

View File

@@ -6,6 +6,17 @@ group: migration
toc: true toc: true
--- ---
## Stable changes
Moving from Beta 3 to our stable v4.0 release, there are no breaking changes, but there are some notable changes.
### Printing
- Fixed broken print utilities. Previously, using a `.d-print-*` class would unexpectedly overrule any other `.d-*` class. Now, they match our other display utilities and only apply to that media (`@media print`).
- Expanded available print display utilities to match other utilities. Beta 3 and older only had `block`, `inline-block`, `inline`, and `none`. Stable v4 added `flex`, `inline-flex`, `table`, `table-row`, and `table-cell`.
- Fixed print preview rendering across browsers with new print styles that specify `@page` `size`.
## Beta 3 changes ## Beta 3 changes
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. 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.

View File

@@ -45,7 +45,7 @@ The media queries effect screen widths with the given breakpoint *or larger*. Fo
<span class="d-block p-2 bg-dark text-white">d-block</span> <span class="d-block p-2 bg-dark text-white">d-block</span>
{% endexample %} {% endexample %}
## Hiding Elements ## Hiding elements
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 element responsively for each screen size. 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 element responsively for each screen size.
@@ -75,14 +75,17 @@ To show an element only on a given interval of screen sizes you can combine one
## Display in print ## Display in print
Change the `display` value of elements when printing with our print display utility classes. Change the `display` value of elements when printing with our print display utility classes. Includes support for the same `display` values as our responsive `.d-*` utilities.
| Class | Print style | - `.d-print-none`
| --- | --- | - `.d-print-inline`
| `.d-print-block` | Applies `display: block;` to the element when printing | - `.d-print-inline-block`
| `.d-print-inline` | Applies `display: inline;` to the element when printing | - `.d-print-block`
| `.d-print-inline-block` | Applies `display: inline-block;` to the element when printing | - `.d-print-table`
| `.d-print-none` | Applies `display: none;` to the element when printing | - `.d-print-table-row`
- `.d-print-table-cell`
- `.d-print-flex`
- `.d-print-inline-flex`
The print and display classes can be combined. The print and display classes can be combined.

View File

@@ -25,32 +25,14 @@
// Utilities for toggling `display` in print // Utilities for toggling `display` in print
// //
.d-print-block { @media print {
display: none !important; .d-print-none { display: none !important; }
.d-print-inline { display: inline !important; }
@media print { .d-print-inline-block { display: inline-block !important; }
display: 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-inline { .d-print-flex { display: flex !important; }
display: none !important; .d-print-inline-flex { display: inline-flex !important; }
@media print {
display: inline !important;
}
}
.d-print-inline-block {
display: none !important;
@media print {
display: inline-block !important;
}
}
.d-print-none {
@media print {
display: none !important;
}
} }