@mixin utils-user-select($value) { -moz-user-select: $value; -webkit-user-select: $value; -ms-user-select: $value; } @mixin utils-clearfix { $selector: &; @at-root { #{$selector}::before, #{$selector}::after { display: table; content: ''; } #{$selector}::after { clear: both; } } } @mixin utils-vertical-center { $selector: &; @at-root { #{$selector}::after { display: inline-block; content: ''; height: 100%; vertical-align: middle; } } } @mixin utils-ellipsis { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } @function joinVarName($list) { $name: '--' + 'el'; @each $item in $list { @if $item != '' { $name: $name + '-' + $item; } } @return $name; } // getCssVarName('button', 'text-color') => '--el-button-text-color' @function getCssVarName($args...) { @return joinVarName($args); }