2014-01-13 1 views
2

Я пытаюсь установить линейный градиент на div от красного до прозрачного, но результат немного странный: . CSSКак установить (хороший) линейный градиент от любого цвета до прозрачного?

скрипки в:

background: -webkit-linear-gradient(transparent, red); 
background: -moz-linear-gradient(transparent, red); 
background:  -ms-linear-gradient(transparent, red); 
background:  -o-linear-gradient(transparent, red); 
background:   linear-gradient(transparent, red); 

Как вы можете видеть, переход между двумя цветами в сером цвете, в то время как я ожидал только красную градацию.

Кто-нибудь знает, как улучшить этот выход (не заменяя «прозрачный» на «желтый» в скрипке)?

PS: пытался в Chrome 23.0.1271.64

+0

вы можете перейти по адресу http://www.colorzilla.com/gradient-editor/ – Anup

+1

Исходное поведение на самом деле правильное: http://www.w3.org/TR/css3-color/#transparent-def – DrCopyPaste

+0

@DrCopyPaste Хорошо, это объясняет это, спасибо, что указали это;) – sp00m

ответ

6

попробуйте изменить transparent в rgba(255,0,0, 0)

например скрипку: http://jsfiddle.net/9MpNM/

+0

мм .... из любопытства .... почему так бывает или объяснение вашего ответа на работу? – NoobEditor

+0

вы устанавливаете полностью прозрачный красный цвет в качестве первого цвета. – fcalderan

+1

Скрипт в вопросе и ваша скрипка выглядят одинаково. – Anup

0

Я только изменил свой jsfiddle

Проверьте, как вы хотите

background: -webkit-linear-gradient(rgba(255,0,0,1) 0%,rgba(255,255,255,0) 100%); 
background: -moz-linear-gradient(rgba(255,0,0,1) 0%,rgba(255,255,255,0) 100%); 
background:  -ms-linear-gradient(rgba(255,0,0,1) 0%,rgba(255,255,255,0) 100%); 
background:  -o-linear-gradient(rgba(255,0,0,1) 0%,rgba(255,255,255,0) 100%); 
background:   linear-gradient(rgba(255,0,0,1) 0%,rgba(255,255,255,0) 100%); 
+0

это приближается, но все же это не« красный прозрачный », это« белый прозрачный »;) – DrCopyPaste