2013-09-14 1 views
3

Это один из примеров создания градиента CSS. http://www.colorzilla.com/gradient-editor/Можно ли использовать функцию scss в обратном порядке?

background-color: #ffb76b; // Old browsers 
@include filter-gradient(#ffb76b, #ff7f04, vertical); // IE6-9 
@include background-image(linear-gradient(top, #ffb76b 0%,#ffa73d 50%,#ff7c00 51%,#ff7f04 100%)); 

В этом примере #ffb76b является основным цветом.

Я думаю, что есть функция или комбинация функций, которая отображает два цвета. Для exmaple, как function_foo(#ffb76b) -> #ffa73d или function_bar(#ffb76b) -> #ff7c00

function_foo Это и function_bar могут быть выражены с помощью функций SCSS. (Я думаю)

adjust-hue($color, $degrees) 
lighten($color, $amount) 
darken($color, $amount) 
saturate($color, $amount) 
desaturate($color, $amount) 

Есть ли способ определить функцию, если задано входное значение и выходное значение?

+2

У меня такая же проблема. У меня цвет начала и цвет конца. Я хочу знать преобразование sass, необходимое для достижения конечного цвета, чтобы я мог применить одно и то же преобразование к другим цветам в моей палитре. –

ответ

-1

Sass имеет функцию darken, которая делает обратную сторону от lighten. http://sass-lang.com/docs/yardoc/Sass/Script/Functions.html

+0

Спасибо за ваш ответ. Хотел бы я попросить более понятного. Я не хочу знать эту функцию, но если дано два значения, как я могу узнать, какая функция нужна. Есть что-то вроде «мета-функции»? – ironsand

0

Основываясь на ваших комментариях, я не уверен, чего вы пытаетесь достичь с точки зрения программирования. Если вам нужен цвет, который светлее, чем тот, который у вас есть, вы должны использовать функцию lighten(). Если вам нужно что-то более темное, используйте darken().

Вы также можете подумать о значении цвета как RGB или HSL. Это даст вам гораздо более значимое значение цвета, и тогда вы сможете использовать что-то вроде adjust_color() function.

В конечном счете, если вам нужен цвет, я бы сказал, что вы должны явно определить его с помощью переменных. Ничто в Сассе не скажет вам, какую функцию использовать для получения результата.

Если вам нужен инструмент визуального сравнения, возможно, вы можете попробовать использовать A visual guide to Sass & Compass color functions: http://jackiebalzer.com/color;

+0

Спасибо за ваш ответ. В предложении, которое вы написали: «Ничто в САСС сам не скажет вам, какая функция использовать, чтобы получить, какой результат» - это то, что я хочу знать. Но, возможно, есть способ выйти за пределы scss, чтобы выполнить это. Поэтому сделайте этот вопрос открытым. – ironsand

Смежные вопросы