Czy można ustawić poziom przezroczystości lub alfa dla kolorów wypełnienia SVG?
Próbowałem dodać dwie wartości do tagu fill (zmieniając go z fill="#044B94"
na fill="#044B9466"
), ale to nie działa.
Czy można ustawić poziom przezroczystości lub alfa dla kolorów wypełnienia SVG?
Próbowałem dodać dwie wartości do tagu fill (zmieniając go z fill="#044B94"
na fill="#044B9466"
), ale to nie działa.
Odpowiedzi:
Używasz dodatkowego atrybutu; fill-opacity
: Ten atrybut przyjmuje liczbę dziesiętną od 0,0 do 1,0 włącznie; gdzie 0.0 jest całkowicie przezroczysty.
Na przykład:
<rect ... fill="#044B94" fill-opacity="0.4"/>
Dodatkowo masz następujące elementy:
stroke-opacity
atrybut obrysuopacity
dla całego obiektufill_opacity
, ale w SVG i CSS tak jest fill-opacity
.
Jako jeszcze nie w pełni ustandaryzowane rozwiązanie (choć w zgodzie ze składnią kolorów w CSS3) możesz użyć np fill="rgba(124,240,10,0.5)"
. Działa dobrze w Firefox, Opera, Chrome.
rgba
do rgb
automatycznie dodaje fill-opacity
atrybut do niego. Nie jestem pewien, czy tak też działa normalne pliki SVG, ale tak to tam działało. Tak czy inaczej, dzięki.
fill="#044B9466"
Jest to kolor RGBA w zapisie szesnastkowym wewnątrz SVG, zdefiniowany za pomocą wartości szesnastkowych. Jest to poprawne, ale nie wszystkie programy mogą wyświetlać go poprawnie ...
Wsparcie przeglądarki dla tej składni można znaleźć tutaj: https://caniuse.com/#feat=css-rrggbbaa
Od sierpnia 2017: kolory wypełnienia RGBA będą wyświetlane poprawnie w przeglądarkach Mozilla Firefox (54), Apple Safari (10.1) i Mac OS X Finder „Szybki podgląd”. Jednak Google Chrome nie obsługiwał tej składni aż do wersji 62 (wcześniej był obsługiwany od wersji 54 z włączoną flagą Funkcje platformy eksperymentalnej).
Aby wypełnienie było całkowicie przezroczyste, fill="transparent"
wydaje się działać w nowoczesnych przeglądarkach. Ale to nie działało w Microsoft Word (dla komputerów Mac), musiałem użyć fill-opacity="0"
.
fill="none"
działa, ale fill="transparent"
nie działa.
Użyj atrybutu fill-opacity
w swoim elemencie SVG.
Wartość domyślna to 1, minimum to 0, w kroku użyj wartości dziesiętnych EX: 0,5 = 50% alfa. Uwaga: Konieczne jest zdefiniowanie fill
koloru do zastosowania fill-opacity
.
Zobacz mój przykład .
fill="none"
zpointer-events="visible"
.