2016-07-15 7 views
0

Ich bin ein Grund linear-Gradienten wie folgt Anwendung:linear-gradient zu transparenten Bug in der neuesten Safari?

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

dies verhält, wie es außer in Safari überall angenommen hat, wo die transparente als schwärzlich/graue Farbe wiedergegeben wird:

hier ist Chrom (wie es sein soll):

enter image description here

und hier ist Safari

enter image description here

Ich habe versucht, es mit -webkit- prefixing, die rgba-rgba(0,0,0,0.001) ändern, aber es geht nie zu festen transparent. Ist das ein Fehler? Gibt es eine Möglichkeit, das zu beheben?

hier eine Geige https://jsfiddle.net/2Lrp3sv1/2/

+2

wäre es nicht besser, rgba (255,0,0,0) zu setzen? (für alle Browser?) – vals

+0

@vals, die eine rote Farbe in meinem CSS rendert. das ist komisch .. funktioniert aber auf jsfiddle. Ich habe versucht rgba (255,255,255,0), aber immer noch, es wird von gräulich zu weißlich :) nicht genau transparent – valerio0999

+0

Entscheiden Sie zuerst, welche ** solid ** Farbe Sie in der Mitte wollen. Dann können wir berechnen, welche die endgültige Farbe wäre ... – vals

Antwort

2

ich dies in Safari bin zu sehen, auch. Für mich verblasst es zu einem hellen Rot, obwohl keine der Farben, die ich verwende, rot ist.

Ich löste es mit 'transparent' als Wert. Sobald ich aufgehört habe, rgba zu verwenden, sah es wie erwartet aus.

+1

Und sobald ich aufgehört habe transparent zu benutzen, und rgba benutzt habe, sah es wie erwartet aus. Was passiert hier: D –

+1

Vielleicht hast du andere Erwartungen! –

4

Dies hat mit der Art zu tun, wie Browser transparent rendern.

Bei den meisten Browsern

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

Aber Safari macht es als

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

Wenn Sie also ein Gradient transparent-white (oder rgba(255,255,255,1)) haben, für die meisten Browser Sie Ändern Sie nur den Alpha von 0 zu 1 entlang des Gradienten.

Aber für Safari, sind Sie die Alpha von 0 bis 1 und die Farbe 255-0 zu ändern, so dass Sie ein Gradient von Graustufen erhalten.

Das hat mich eine Weile verrückt gemacht.

+1

Sie wissen es nicht. Das ist eine Innovation von Apple. – Nirmal

Verwandte Themen