如何在iOS上使用具有透明性的Fontello图标

时间:2019-05-20 13:30:53

标签: ios svg fonts icons fontello

我使用fontello从svg生成的自定义字体图标存在问题。在PC上,图标可以正常工作,但是在iOS浏览器上,我没有透明度。所有源svg均包含填充规则:evenodd。

我找不到解决问题的方法,如果您知道如何解决此问题,请提供帮助。

在PC上自定义fontello图标可以正常工作,但是在iOS上却存在问题。我不确定Android是否运作良好,但iOS的优先级更高。

<svg xmlns="http://www.w3.org/2000/svg" width="72" height="72" viewBox="0 0 72 72">
  <defs>
    <style>
      .cls-1 {
        fill-rule: evenodd;
      }
    </style>
  </defs>
  <path class="cls-1" d="M0,20V33l2,5,2,4,4,4,3,3,6,3,3,1H33l3-1,6-3,1-2h2v1l1,4L66,72h1l5-5V66L52,46l-2-1-2-1V43l2-3,1-1,1-3,1-3V20l-2-5-2-4L45,7,40,3,38,2,33,0H20L15,2,10,5,7,8,5,10,3,13,1,17Zm16-9-3,3-3,4L9,21,8,27l1,6,2,4,4,4,3,2,2,1,5,1h4l4-1,4-2,4-3,2-4,2-6V25l-1-5-1-2-2-3-3-3-3-2L28,8,21,9l-3,1Z"/>
</svg>

在桌面上的效果(可以):https://ibb.co/9pfZFnf 对iOS的影响(不正常):https://ibb.co/Y846vb0

1 个答案:

答案 0 :(得分:0)

显然它没有css规则。请尝试像这样使用css,尽管我不太确定这是否可行。

<style type="text/css">
        <![CDATA[
       .cls-1 {
        fill-rule: evenodd;
        }
        ]]> 
  </style>

或者,您可以反转d属性的第二部分(孔),这样就不必使用fill-rule: evenodd;

<svg xmlns="http://www.w3.org/2000/svg" width="72" height="72" viewBox="0 0 72 72">
  <path class="cls-1" d="M0,20V33l2,5,2,4,4,4,3,3,6,3,3,1H33l3-1,6-3,1-2h2v1l1,4L66,72h1l5-5V66L52,46l-2-1-2-1V43l2-3,1-1,1-3,1-3V20l-2-5-2-4L45,7,40,3,38,2,33,0H20L15,2,10,5,7,8,5,10,3,13,1,17Z
M18,10L21,9L28,8L35,10L38,12L41,15L43,18L44,20L45,25L45,29L43,35L41,39L37,42L33,44L29,45L25,45L20,44L18,43L15,41L11,37L9,33L8,27L9,21L10,18L13,14L16,11z"/>
</svg>