annotate default/assets/scss/vendors/bootstrap/mixins/_image.scss @ 0:1d038bc9b3d2 default tip

Up:default
author Liny <dev@neowd.com>
date Sat, 31 May 2025 09:21:51 +0800
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
1 // Image Mixins
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
2 // - Responsive image
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
3 // - Retina image
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
4
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
5
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
6 // Responsive image
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
7 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
8 // Keep images from scaling beyond the width of their parents.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
9
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
10 @mixin img-fluid {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
11 // Part 1: Set a maximum relative to the parent
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
12 max-width: 100%;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
13 // Part 2: Override the height to auto, otherwise images will be stretched
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
14 // when setting a width and height attribute on the img element.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
15 height: auto;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
16 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
17
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
18
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
19 // Retina image
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
20 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
21 // Short retina mixin for setting background-image and -size.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
22
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
23 @mixin img-retina($file-1x, $file-2x, $width-1x, $height-1x) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
24 background-image: url($file-1x);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
25
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
26 // Autoprefixer takes care of adding -webkit-min-device-pixel-ratio and -o-min-device-pixel-ratio,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
27 // but doesn't convert dppx=>dpi.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
28 // There's no such thing as unprefixed min-device-pixel-ratio since it's nonstandard.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
29 // Compatibility info: http://caniuse.com/#feat=css-media-resolution
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
30 @media
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
31 only screen and (min-resolution: 192dpi), // IE9-11 don't support dppx
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
32 only screen and (min-resolution: 2dppx) { // Standardized
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
33 background-image: url($file-2x);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
34 background-size: $width-1x $height-1x;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
35 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
36 }