yyzone
Version:
yyzone vue components and utils
316 lines (297 loc) • 6.28 kB
text/less
// Icon resize
.@{icon-prefix}-resize-horiz,
.@{icon-prefix}-resize-vert {
&::before,
&::after {
border: @icon-border-width solid currentColor;
border-bottom: 0;
border-right: 0;
content: "";
height: .45em;
width: .45em;
}
&::before {
transform: translate(-50%, -90%) rotate(45deg);
}
&::after {
transform: translate(-50%, -10%) rotate(225deg);
}
}
.@{icon-prefix}-resize-horiz {
&::before {
transform: translate(-90%, -50%) rotate(-45deg);
}
&::after {
transform: translate(-10%, -50%) rotate(135deg);
}
}
// Icon more
.@{icon-prefix}-more-horiz,
.@{icon-prefix}-more-vert {
&::before {
background: currentColor;
box-shadow: -.4em 0, .4em 0;
border-radius: 50%;
content: "";
height: 3px;
width: 3px;
}
}
.@{icon-prefix}-more-vert {
&::before {
box-shadow: 0 -.4em, 0 .4em;
}
}
// Icon plus, minus, cross
.@{icon-prefix}-plus,
.@{icon-prefix}-minus,
.@{icon-prefix}-cross {
&::before {
background: currentColor;
content: "";
height: @icon-border-width;
width: 100%;
}
}
.@{icon-prefix}-plus,
.@{icon-prefix}-cross {
&::after {
background: currentColor;
content: "";
height: 100%;
width: @icon-border-width;
}
}
.@{icon-prefix}-cross {
&::before {
width: 100%;
}
&::after {
height: 100%;
}
&::before,
&::after {
transform: translate(-50%, -50%) rotate(45deg);
}
}
// Icon check
.@{icon-prefix}-check {
&::before {
border: @icon-border-width solid currentColor;
border-right: 0;
border-top: 0;
content: "";
height: .5em;
width: .9em;
transform: translate(-50%, -75%) rotate(-45deg);
}
}
// Icon stop
.@{icon-prefix}-stop {
border: @icon-border-width solid currentColor;
border-radius: 50%;
&::before {
background: currentColor;
content: "";
height: @icon-border-width;
transform: translate(-50%, -50%) rotate(45deg);
width: 1em;
}
}
// Icon shutdown
.@{icon-prefix}-shutdown {
border: @icon-border-width solid currentColor;
border-radius: 50%;
border-top-color: transparent;
&::before {
background: currentColor;
content: "";
height: .5em;
top: .1em;
width: @icon-border-width;
}
}
// Icon refresh
.@{icon-prefix}-refresh {
&::before {
border: @icon-border-width solid currentColor;
border-radius: 50%;
border-right-color: transparent;
content: "";
height: 1em;
width: 1em;
}
&::after {
border: .2em solid currentColor;
border-top-color: transparent;
border-left-color: transparent;
content: "";
height: 0;
left: 80%;
top: 20%;
width: 0;
}
}
// Icon search
.@{icon-prefix}-search {
&::before {
border: @icon-border-width solid currentColor;
border-radius: 50%;
content: "";
height: .75em;
left: 5%;
top: 5%;
transform: translate(0, 0) rotate(45deg);
width: .75em;
}
&::after {
background: currentColor;
content: "";
height: @icon-border-width;
left: 80%;
top: 80%;
transform: translate(-50%, -50%) rotate(45deg);
width: .4em;
}
}
// Icon edit
.@{icon-prefix}-edit {
&::before {
border: @icon-border-width solid currentColor;
content: "";
height: .4em;
transform: translate(-40%, -60%) rotate(-45deg);
width: .85em;
}
&::after {
border: .15em solid currentColor;
border-top-color: transparent;
border-right-color: transparent;
content: "";
height: 0;
left: 5%;
top: 95%;
transform: translate(0, -100%);
width: 0;
}
}
// Icon delete
.@{icon-prefix}-delete {
&::before {
border: @icon-border-width solid currentColor;
border-bottom-left-radius: @icon-border-radius;
border-bottom-right-radius: @icon-border-radius;
border-top: 0;
content: "";
height: .75em;
top: 60%;
width: .75em;
}
&::after {
background: currentColor;
box-shadow: -.25em .2em, .25em .2em;
content: "";
height: @icon-border-width;
top: @icon-border-width/2;
width: .5em;
}
}
// Icon share
.@{icon-prefix}-share {
border: @icon-border-width solid currentColor;
border-radius: @icon-border-radius;
border-right: 0;
border-top: 0;
&::before {
border: @icon-border-width solid currentColor;
border-left: 0;
border-top: 0;
content: "";
height: .4em;
left: 100%;
top: .25em;
transform: translate(-125%, -50%) rotate(-45deg);
width: .4em;
}
&::after {
border: @icon-border-width solid currentColor;
border-bottom: 0;
border-right: 0;
border-radius: 75% 0;
content: "";
height: .5em;
width: .6em;
}
}
// Icon flag
.@{icon-prefix}-flag {
&::before {
background: currentColor;
content: "";
height: 1em;
left: 15%;
width: @icon-border-width;
}
&::after {
border: @icon-border-width solid currentColor;
border-bottom-right-radius: @icon-border-radius;
border-left: 0;
border-top-right-radius: @icon-border-radius;
content: "";
height: .65em;
top: 35%;
left: 60%;
width: .8em;
}
}
// Icon bookmark
.@{icon-prefix}-bookmark {
&::before {
border: @icon-border-width solid currentColor;
border-bottom: 0;
border-top-left-radius: @icon-border-radius;
border-top-right-radius: @icon-border-radius;
content: "";
height: .9em;
width: .8em;
}
&::after {
border: @icon-border-width solid currentColor;
border-bottom: 0;
border-left: 0;
border-radius: @icon-border-radius;
content: "";
height: .5em;
transform: translate(-50%, 35%) rotate(-45deg) skew(15deg, 15deg);
width: .5em;
}
}
// Icon download & upload
.@{icon-prefix}-download,
.@{icon-prefix}-upload {
border-bottom: @icon-border-width solid currentColor;
&::before {
border: @icon-border-width solid currentColor;
border-bottom: 0;
border-right: 0;
content: "";
height: .5em;
width: .5em;
transform: translate(-50%, -60%) rotate(-135deg);
}
&::after {
background: currentColor;
content: "";
height: .6em;
top: 40%;
width: @icon-border-width;
}
}
.@{icon-prefix}-upload {
&::before {
transform: translate(-50%, -60%) rotate(45deg);
}
&::after {
top: 50%;
}
}