Files
ionic-framework/src/components/picker/picker.scss
Amit Moryossef 2273fb5d47 feat(rtl): add transform and transform-origin support for rtl (#11649)
* feat(rtl): add translate3d support for directions

* feat(rtl): add transform-origin support for directions

* fix(transform): add missing origins

* fix(transform): when given a percentage, calc on rtl

* fix(transform-origin): be same as before

* fix(translate3d): no double minus

* fix(translate3d): use transform instead of cloning code

* style(scss-lint): remove empty line

* fix(merge): fix bad merge

* refactor(transform-origin): nicer logic

* style(): add eof line

* fix(transform): remove unneeded mixin

* feat(rtl): add transform mixin and str-split function

* Merge remote-tracking branch 'remotes/upstream/rtl-transform' into transform-rtl

# Conflicts:
#	src/themes/ionic.mixins.scss

* fix(transform): fix string comparison
2017-06-08 15:27:45 -04:00

153 lines
2.1 KiB
SCSS

@import "../../themes/ionic.globals";
// Picker
// --------------------------------------------------
/// @prop - Width of the picker
$picker-width: 100% !default;
/// @prop - Max width of the picker
$picker-max-width: 500px !default;
ion-picker-cmp {
@include position(0, null, null, 0);
position: absolute;
z-index: $z-index-overlay;
display: block;
width: $picker-width;
height: $picker-width;
contain: strict;
}
.picker-toolbar {
z-index: 1;
width: 100%;
contain: strict;
}
.picker-wrapper {
@include position(null, 0, 0, 0);
@include margin(auto);
@include transform(translate3d(0, 100%, 0));
position: absolute;
z-index: $z-index-overlay-wrapper;
display: flex;
overflow: hidden;
flex-direction: column;
width: $picker-width;
max-width: $picker-max-width;
contain: strict;
}
.picker-columns {
position: relative;
display: flex;
overflow: hidden;
justify-content: center;
contain: strict;
}
.picker-col {
position: relative;
display: flex;
flex: 1;
justify-content: center;
height: 100%;
box-sizing: content-box;
contain: content;
}
.picker-opts {
position: relative;
flex: 1;
max-width: 100%;
}
.picker-prefix {
@include text-align(end);
position: relative;
flex: 2;
min-width: 45%;
max-width: 50%;
white-space: nowrap;
}
.picker-suffix {
@include text-align(start);
position: relative;
flex: 2;
min-width: 45%;
max-width: 50%;
white-space: nowrap;
}
// contain property is supported by Chrome
.picker-opt {
@include position(0, null, null, 0);
@include text-align(center);
position: absolute;
display: block;
overflow: hidden;
width: 100%;
text-overflow: ellipsis;
white-space: nowrap;
will-change: transform;
contain: strict;
}
.picker-opt.picker-opt-disabled {
pointer-events: none;
}
.picker-opt-disabled {
opacity: 0;
}
.picker-opts-left {
justify-content: flex-start;
}
.picker-opts-right {
justify-content: flex-end;
}
.picker-above-highlight,
.picker-below-highlight {
display: none;
pointer-events: none;
}