2016-07-15 1 views
0

Je suis l'application d'un linéaire à gradient de base comme celui-ci:bug linéaire-gradient à transparent dans le dernier safari?

background-image: linear-gradient(to top, red, rgba(0,0,0,0)); 

ce se comporte comme il est censé partout, sauf dans safari où la transparence est rendu comme une couleur noirâtre/gris:

est ici chrome (comment il est censé être):

enter image description here

et ici safari

enter image description here

J'ai essayé préfixant avec -webkit-, en changeant le rgba-rgba(0,0,0,0.001) mais il va jamais transparent solide. est-ce un bug? Y'a t'il un moyen d'arranger cela?

est ici un violon https://jsfiddle.net/2Lrp3sv1/2/

+2

ne serait-il pas préférable de régler rgba (255,0,0,0)? (pour tous les navigateurs?) – vals

+0

@vals qui rend une couleur rouge dans mon css. c'est bizarre .. fonctionne sur jsfiddle bien. J'ai essayé rgba (255,255,255,0) mais quand même, il devient de grisâtre à blancâtre :) pas exactement transparent – valerio0999

+0

D'abord, décidez quelle couleur ** solide ** vous voulez dans le point du milieu. Ensuite, nous pouvons calculer quelle sera la couleur finale ... – vals

Répondre

2

je vois cela dans Safari, aussi. Pour moi, il passe à un rouge clair, même si aucune des couleurs que j'utilise n'est rouge. J'ai résolu le problème en utilisant «transparent» comme valeur. Une fois que j'ai arrêté d'utiliser rgba, cela semblait prévisible.

+1

Et une fois que j'ai arrêté d'utiliser transparent, et utilisé rgba, il semblait comme prévu. Qu'est-ce qui se passe ici: D –

+1

Peut-être que vous avez des attentes différentes! –

4

Cela a à voir avec la façon dont les navigateurs rendent transparent.

Pour la plupart des navigateurs,

transparent === rgba(255,255,255,0)

Mais Safari il rend comme

transparent === rgba(0,0,0,0)

Donc, si vous avez un gradient transparent-white (ou rgba(255,255,255,1)), pour la plupart des navigateurs ne changez que l'alpha de 0 à 1 le long du gradient.

Mais pour Safari, vous changez l'alpha de 0 à 1 et la couleur 255-0, de sorte que vous obtenez un dégradé de gris.

Cela m'a rendu fou pendant un moment.

+1

Vous ne savez pas. C'est une innovation d'Apple. – Nirmal