elemental
Version:
React UI Framework
80 lines (68 loc) • 1.55 kB
text/less
//
// Flexbox Mixins
// ==============================
// Gratefully taken from https://github.com/philipwalton/solved-by-flexbox
// Container
// ------------------------------
.display-flex {
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
}
.display-inline-flex {
display: -webkit-inline-flex;
display: -ms-inline-flexbox;
display: inline-flex;
}
.flex-flow(@values: 'row nowrap') {
-webkit-flex-flow: @values;
-ms-flex-flow: @values;
flex-flow: @values;
}
.flex-direction(@value: row) {
-webkit-flex-direction: @value;
-ms-flex-direction: @value;
flex-direction: @value;
}
.flex-wrap(@value: nowrap) {
// No Webkit Box fallback.
-webkit-flex-wrap: @value;
-ms-flex-wrap: @value;
flex-wrap: @value;
}
.align-items(@value: stretch) {
-webkit-align-items: @value;
-ms-flex-align: @value;
align-items: @value;
}
.align-content(@value: stretch) {
-webkit-align-content: @value;
-ms-flex-line-pack: @value;
align-content: @value;
}
.justify-content(@value: stretch) {
-webkit-justify-content: @value;
-ms-flex-pack: @value;
justify-content: @value;
}
// Children
// ------------------------------
.flex(@fg: 1, @fs: '', @fb: '') {
-webkit-flex: @fg @fs @fb;
-ms-flex: @fg @fs @fb;
flex: @fg @fs @fb;
}
.flex-basis(@fb) {
-webkit-flex-basis: @fb;
-ms-flex-basis: @fb;
flex-basis: @fb;
}
.flex-grow(@grow: 1) {
-webkit-flex-grow: @grow;
-ms-flex-grow: @grow;
flex-grow: @grow;
}
.align-self(@value: auto) {
-webkit-align-self: @value;
align-self: @value;
}