styles/xf.mixins.less (141 lines of code) (raw):
.bg-gradient(@color: #F5F5F5, @start: #EEE, @stop: #FFF) {
background: @color;
background: -webkit-gradient(linear,
left bottom,
left top,
color-stop(0, @start),
color-stop(1, @stop));
background: -ms-linear-gradient(bottom,
@start,
@stop);
background: -moz-linear-gradient(center bottom,
@start 0%,
@stop 100%);
background: -o-linear-gradient(@stop,
@start);
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@stop,@start));
}
.clearfix(...) {
*zoom: 1;
&:before,
&:after {
content: '';
display: table;
clear: both;
}
}
.box-shadow(...) {
-webkit-box-shadow: @arguments;
-moz-box-shadow: @arguments;
box-shadow: @arguments;
}
.transform(...) {
-webkit-transform: @arguments;
-moz-transform: @arguments;
-ms-transform: @arguments;
-o-transform: @arguments;
transform: @arguments;
}
.background-size(...) {
-webkit-background-size: @arguments;
-moz-background-size: @arguments;
background-size: @arguments;
}
.box-sizing-border-box {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.overflow-ellipsis {
overflow: hidden;
white-space: nowrap;
-webkit-text-overflow: ellipsis;
text-overflow: ellipsis;
}
.bgclip(@clip: padding-box){
-webkit-background-clip: @clip;
-moz-background-clip: @clip;
background-clip: @clip;
}
// Button backgrounds
// ------------------
.buttonBackground(@startColor, @endColor) {
// gradientBar will set the background to a pleasing blend of these, to support IE<=9
//*background-color: @endColor; /* Darken IE7 buttons by default so they stand out more given they won't have borders */
.reset-filter();
// in these cases the gradient won't cover the background, so we override
&:hover, &:active, &.xf-button-active, &.disabled, &[disabled] {
background-color: @endColor;
*background-color: darken(@endColor, 5%);
.background-size(130%)
}
// IE 7 + 8 can't handle box-shadow to show active, so we darken a bit ourselves
&:active,
&.active {
background-color: darken(@endColor, 10%);
}
}
.reset-filter() {
filter: e(%("progid:DXImageTransform.Microsoft.gradient(enabled = false)"));
}
/* corner rounding classes
--------------------------------------------*/
.border-radius(...) {
-webkit-border-radius: @arguments;
-moz-border-radius: @arguments;
border-radius: @arguments;
}
.xf-corner-tl {
-moz-border-radius-topleft: @global-border-radius;;
-webkit-border-top-left-radius: @global-border-radius;;
border-top-left-radius: @global-border-radius;;
}
.xf-corner-tr {
-moz-border-radius-topright: @global-border-radius;;
-webkit-border-top-right-radius: @global-border-radius;;
border-top-right-radius: @global-border-radius;;
}
.xf-corner-bl {
-moz-border-radius-bottomleft: @global-border-radius;;
-webkit-border-bottom-left-radius: @global-border-radius;;
border-bottom-left-radius: @global-border-radius;;
}
.xf-corner-br {
-moz-border-radius-bottomright: @global-border-radius;;
-webkit-border-bottom-right-radius: @global-border-radius;;
border-bottom-right-radius: @global-border-radius;;
}
.xf-corner-top {
-moz-border-radius-topleft: @global-border-radius;;
-webkit-border-top-left-radius: @global-border-radius;;
border-top-left-radius: @global-border-radius;;
-moz-border-radius-topright: @global-border-radius;;
-webkit-border-top-right-radius: @global-border-radius;;
border-top-right-radius: @global-border-radius;;
}
.xf-corner-bottom {
-moz-border-radius-bottomleft: @global-border-radius;;
-webkit-border-bottom-left-radius: @global-border-radius;;
border-bottom-left-radius: @global-border-radius;;
-moz-border-radius-bottomright: @global-border-radius;;
-webkit-border-bottom-right-radius: @global-border-radius;;
border-bottom-right-radius: @global-border-radius;;
}
.xf-corner-right {
-moz-border-radius-topright: @global-border-radius;;
-webkit-border-top-right-radius: @global-border-radius;;
border-top-right-radius: @global-border-radius;;
-moz-border-radius-bottomright: @global-border-radius;;
-webkit-border-bottom-right-radius: @global-border-radius;;
border-bottom-right-radius: @global-border-radius;
}
.xf-corner-left {
-moz-border-radius-topleft: @global-border-radius;
-webkit-border-top-left-radius: @global-border-radius;
border-top-left-radius: @global-border-radius;
-moz-border-radius-bottomleft: @global-border-radius;
-webkit-border-bottom-left-radius: @global-border-radius;
border-bottom-left-radius: @global-border-radius;
}
.xf-corner-all {
-moz-border-radius: @global-border-radius;
-webkit-border-radius: @global-border-radius;
border-radius: @global-border-radius;
}
.xf-corner-none {
-moz-border-radius: 0;
-webkit-border-radius: 0;
border-radius: 0;
}