SVG fill color transparency / alpha?

后端 未结 5 979
半阙折子戏
半阙折子戏 2020-11-29 15:40

Is it possible to set a transparency or alpha level on SVG fill colours?

I\'ve tried adding two values to the fill tag (changing it from fill=\"#044B94\"

相关标签:
5条回答
  • 2020-11-29 16:00
    fill="#044B9466"
    

    This is an RGBA color in hex notation inside the SVG, defined with hex values. This is valid, but not all programs can display it properly...

    You can find the browser support for this syntax here: https://caniuse.com/#feat=css-rrggbbaa

    As of August 2017: RGBA fill colors will display properly on Mozilla Firefox (54), Apple Safari (10.1) and Mac OS X Finder's "Quick View". However Google Chrome did not support this syntax until version 62 (was previously supported from version 54 with the Experimental Platform Features flag enabled).

    0 讨论(0)
  • 2020-11-29 16:02

    Use attribute fill-opacity in your element of SVG.

    Default value is 1, minimum is 0, in step use decimal values EX: 0.5 = 50% of alpha. Note: It is necessary to define fill color to apply fill-opacity.

    See my example.

    References.

    0 讨论(0)
  • 2020-11-29 16:10

    As a not yet fully standardized solution (though in alignment with the color syntax in CSS3) you can use e.g fill="rgba(124,240,10,0.5)". Works fine in Firefox, Opera, Chrome.

    Here's an example.

    0 讨论(0)
  • 2020-11-29 16:20

    To make a fill completely transparent, fill="transparent" seems to work in modern browsers. But it didn't work in Microsoft Word (for Mac), I had to use fill-opacity="0".

    0 讨论(0)
  • 2020-11-29 16:23

    You use an addtional attribute; fill-opacity: This attribute takes a decimal number between 0.0 and 1.0, inclusive; where 0.0 is completely transparent.

    For example:

    <rect ... fill="#044B94" fill-opacity="0.4"/>
    

    Additionally you have the following:

    • stroke-opacity attribute for the stroke
    • opacity for the entire object
    0 讨论(0)
提交回复
热议问题