.transform(@t) { -webkit-transform: @t; transform: @t; } .transform-origin(@to) { -webkit-transform-origin: @to; transform-origin: @to; } .transition(@value) { -webkit-transition: @value; } .hairline-top(@color) { &:before { content: ''; position: absolute; left: 0; top: 0; bottom: auto; right: auto; height: 2px; width: 100%; background-color: transparent; border-top: 1px solid @color; display: block; z-index: 15; .transform-origin(50% 0%); html.pixel-ratio-2 & { .transform(scaleY(0.5)); } html.pixel-ratio-3 & { .transform(scaleY(0.33)); } html.pixel-ratio-4 & { .transform(scaleY(0.25)); } } } .hairline-left(@color) { &:before { content: ''; position: absolute; left: 0; top: 0; bottom: auto; right: auto; width: 1px; height: 100%; background-color: @color; display: block; z-index: 15; .transform-origin(0% 50%); html.pixel-ratio-2 & { .transform(scaleX(0.5)); } html.pixel-ratio-3 & { .transform(scaleX(0.33)); } html.pixel-ratio-4 & { .transform(scaleX(0.25)); } } } .hairline-bottom(@color, @left:0) { &:after { content: ''; position: absolute; left: @left; bottom: 0; right: auto; top: auto; height: 2px; width: 100%; background-color: transparent; border-bottom: 1px solid @color; display: block; z-index: 15; .transform-origin(50% 100%); html.pixel-ratio-2 & { .transform(scaleY(0.5)); } html.pixel-ratio-3 & { .transform(scaleY(0.33)); } html.pixel-ratio-4 & { .transform(scaleY(0.25)); } } } .hairline-right(@color) { &:after { content: ''; position: absolute; right: 0; top: 0; left: auto; bottom: auto; width: 1px; height: 100%; background-color: @color; display: block; z-index: 15; .transform-origin(100% 50%); html.pixel-ratio-2 & { .transform(scaleX(0.5)); } html.pixel-ratio-3 & { .transform(scaleX(0.33)); } html.pixel-ratio-4 & { .transform(scaleX(0.25)); } } } // For right and bottom .hairline-remove-right-bottom { &:after { display: none; } } // For left and top .hairline-remove-left-top { &:before { display: none; } } // Encoded SVG Background .encoded-svg-background(@svg) { @url: `encodeURIComponent(@{svg})`; background-image: url("data:image/svg+xml;charset=utf-8,@{url}"); } .align-self(@as) { -ms-flex-item-align: @as; -webkit-align-self: @as; align-self: @as; } .ellipsis() { width: auto; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .backgroundSize(@width,@height) { -webkit-background-size: @width @height; } .display-box() { display: flex; } .flex-direction(@direction: row) { flex-direction: @direction; } .flex-wrap(@wrap: nowrap) { flex-wrap: @wrap; } .flex-justify(@justify: flex-start) { justify-content: @justify; } .box-align(@align: center) { align-items: @align; } .box-align-content(@alignContent: stretch) { align-content: @alignContent; } .box-flex(@scale: 1) { flex: @scale; } .border-radius(@radius: 0) { border-top-left-radius: @radius; border-top-right-radius: @radius; border-bottom-left-radius: @radius; border-bottom-right-radius: @radius; -webkit-background-clip: padding-box; } .background(@start: #ffffff, @end: #000000) { background: @end; background-image: -webkit-gradient(linear, left top, left bottom, from(@start), to(@end)); /* Saf4+, Chrome */ background-image: linear-gradient(@start, @end); } .border-1px-bottom(@color: #d2d2d2) { background: left bottom repeat-x; background-image: -webkit-gradient(linear, left top, left bottom, color-stop(.5, transparent), color-stop(.5, @color), to(@color)); background-image: linear-gradient(left top, left bottom, color-stop(.5, transparent), color-stop(.5, @color), to(@color)); -webkit-background-size: 100% 1px; background-size: 100% 1px; } .border-1px-top(@color: #d2d2d2) { background: left top repeat-x; background-image: -webkit-gradient(linear, left top, left bottom, from(@color), color-stop(.5, @color), color-stop(.5, transparent)); background-image: linear-gradient(left top, left bottom, from(@color), color-stop(.5, @color), color-stop(.5, transparent)); -webkit-background-size: 100% 1px; background-size: 100% 1px; } .border-1px-both(@color: #d2d2d2) { background-position: left top, left bottom; background-repeat: repeat-x, repeat-x; background-image: -webkit-gradient(linear, left top, left bottom, from(@color), color-stop(.5, @color), color-stop(.5, transparent)), -webkit-gradient(linear, left top, left bottom, color-stop(.5, transparent), color-stop(.5, @color), to(@color)); background-image: linear-gradient(left top, left bottom, from(@color), color-stop(.5, @color), color-stop(.5, transparent)), linear-gradient(left top, left bottom, color-stop(.5, transparent), color-stop(.5, @color), to(@color)); -webkit-background-size: 100% 1px, 100% 1px; background-size: 100% 1px, 100% 1px; } .border-1px-scale(@color: #d2d2d2) { position: relative; &:before { content: ''; position: absolute; bottom: -1px; left: 0px; right: 0px; border-bottom: 1px solid @color; -webkit-transform: scaleY(.5); -webkit-transform-origin: 0px 0px; } } .box-sizing(@sizing: border-box) { -webkit-box-sizing: @sizing; } .box-shadow(@value) { -webkit-box-shadow: @value; } .box-shadow(@value1, @value2) { -webkit-box-shadow: @value1, @value2; } .ellipsis(@w:auto) { width: @w; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; word-wrap: normal; } .float-clear() { &:after { visibility: hidden; display: block; font-size: 0px; content: ' '; clear: both; height: 0px; } } .cursor() { cursor: pointer; } .overflow-scroll() { overflow-y: scroll; -webkit-overflow-scrolling: touch; } @colorMain: #6ac2b6; @prefix: zui;