рд╢реЗрдб: рдЯреНрд░реЗрдВрдбреА рдлреНрд▓реИрдЯ рд╕реАрдПрд╕рдПрд╕ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреА рд▓рдВрдмреА рдЫрд╛рдпрд╛

рд╢реБрдн рджрд┐рди рдкреНрд░рд┐рдп рд╣рд░рдЬрд┐рддрд╛рд▓реАред рдореИрдВрдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ SCSS рдкрд░ рдПрдХ рдмрд╣реБрдд рд╣реА рджрд┐рд▓рдЪрд╕реНрдк рдЙрджрд╛рд╣рд░рдг рдкрд╛рдпрд╛ рдФрд░ рдЗрд╕реЗ рдХрдо рд╕реЗ рдХрдо рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ LESS рдЕрдзрд┐рдХ рдкрд╕рдВрдж рд╣реИ :

lessshade
рдЙрджрд╛рд╣рд░рдг LESS 1.5.0 рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдХреЛрдбрдкреЗрди рдпрд╛ jsfiddle рдкрд░ рд░рдЦрдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред

.shade(@type, @color, @depth, @angle, @long, @fade); 



 #facebook { .shade(box, #1B2733, 20, 135deg, true, false); .shade(text, #253960, 50, 135deg, true, false); background: #4161A2; &:before { content: "\e000"; } } ... #dribble { .shade(box, #1B2733, 20, 135deg, true, false); .shade(text, #9B2E58, 15, 135deg, false, false); background: #C23B6F; &:before { content: "\e00f"; } } 


рдХрдо рд╕реЗ рдХрдо 1.5.0


Shade.less рд╢реБрджреНрдз рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдХреЗрд╡рд▓ рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред
рдЕрдиреНрдпрдерд╛, рдЖрдкрдХреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
  @shade: ~`(function (depth,x,y, ... thislightness) { var shadow = ""; for(var i=1; i<depth; i++) { if (i != depth) { shadow += i*x+"px "+i*y+"px 0 hsla("+thishue+", "+thissaturation+", "+thislightness - (i*darken)+", "+1 - (i * opacify)+"), "; } else { shadow += i*x+"px "+i*y+"px 0 hsla("+thishue+", "+thissaturation+", "+thislightness - (i*darken)+", "+1 - (i * opacify)+");"; } } return shadow; })("@{depth}", "@{x}", "@{y}", ... "@{thislightness}")`; 


1.5.0 рдмреАрдЯрд╛ 1 (2013-09-01) рдореЗрдВ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдПрдБ



shade.less



 .shade(@type, @color: #3498db, @depth: 20, @angle: 135deg, @long: true, @fade: false) { @ang: (@angle - 90deg); @x: 1.5px * cos(@ang); @y: 1.5px * sin(@ang); .shade(@type, @color, @depth, @x, @y, @long, @fade, (lightness(@color)/@depth)/2, (alpha(@color)/@depth)); } /*  "",     */ .shade(@type, @color, @depth, @x, @y, @long, @fade, @darken, @opacify) when (@long = true) { .shade(@type, @color, @depth, @x, @y, @fade, 0, @opacify); } /*          */ .shade(@type, @color, @depth, @x, @y, @long, @fade, @darken, @opacify) when (@long = false) { .shade(@type, @color, @depth, @x, @y, @fade, @darken, @opacify); // } .shade(@type, @color, @depth, @x, @y, @long, @darken, @opacify) when (@fade = true) { .shade(@type, @color, @depth, @x, @y, @darken, @opacify); } /*   ""       */ .shade(@type, @color, @depth, @x, @y, @long, @darken, @opacify) when (@fade = false) { .shade(@type, @color, @depth, @x, @y, @darken, 0); } /*    HSLA   .        http://habrahabr.ru/qa/46440/ */ .shade(@type, @color, @depth, @x, @y, @darken, @opacify) { @hue: hue(@color); @sat: saturation(@color); @lightness: lightness(@color); .shade-recursive(@type, 1, @depth, @x, @y, @darken, @opacify, @hue, @sat, @lightness); } .shade-recursive(@type, @i, @depth, @x, @y, @darken, @opacify, @hue, @sat, @lightness) when (@i < @depth) and (@type = text) { text-shadow+: (@i * @x) (@i * @y) 0 hsla(@hue, @sat, (@lightness - (@i * @darken)), (1 - (@i * @opacify))); .shade-recursive(@type, @i + 1, @depth, @x, @y, @darken, @opacify, @hue, @sat, @lightness); } .shade-recursive(@type, @i, @depth, @x, @y, @darken, @opacify, @hue, @sat, @lightness) when (@i < @depth) and (@type = box) { box-shadow+: (@i * @x) (@i * @y) 0 hsla(@hue, @sat, (@lightness - (@i * @darken)), (1 - (@i * @opacify))); .shade-recursive(@type, @i + 1, @depth, @x, @y, @darken, @opacify, @hue, @sat, @lightness); } 


рдЧрд┐рдердм ред

рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рдФрд░ рд╕реБрдВрджрд░ рд╕рдкрд╛рдЯ рдЫрд╛рдпрд╛ рдХреЗ рд▓рд┐рдП рдЖрдк рд╕рднреА рдХрд╛ рдзрдиреНрдпрд╡рд╛рджред

Source: https://habr.com/ru/post/In193300/


All Articles