SVG tspan元素+字体家族样式?

时间:2018-10-22 19:10:05

标签: html css svg

我正在尝试在svg按钮内的tspan元素内指定字体系列。它似乎没有注册,而且我还没有找到任何文档。我只在svg中找到有关text元素的文档。我的大量尝试都没有使文本与网站其余部分的样式匹配。我需要它来使用Google的Raleway字体的精简版。

HTML

<svg viewbox="0 0 86 20" version="1.1" baseProfile="full" width="200" height="200" xmlns="http://www.w3.org/2000/svg">
  <g>
    <path id="thisID" d="M 80 5 A 100 100 0 0 0 22.2 27.2 L 37.58 42.58 A 80 80 0 0 1 80 27.2 Z"></path>
    <text font-family:"Raleway:thin" fill="gold">
        <defs>
    <style type="text/css">@import url('https://fonts.googleapis.com/css?family=Raleway:thin');</style>
</defs>
         <textPath style="font-size:6pt;" xlink:href="#thisID" startOffset="63%" >
            <tspan dy="-6">Home</tspan>
      </textPath>
    </text>
  </g>
</svg>

新尝试

嗯,我尝试使用下面的方法没有成功。我在这里想念什么?

<svg viewbox="0 0 86 20" version="1.1" baseProfile="full" width="200" height="200" xmlns="http://www.w3.org/2000/svg">
          <style type="text/css">
        <![CDATA[   

  @import url('https://fonts.googleapis.com/css?family=Raleway:thin');
              {font-family:Raleway}

             ]]> 
  </style>
  <g>
    <path onclick="window.location='index.html';" id="thisID" d="M 80 5 A 100 100 0 0 0 22.2 27.2 L 37.58 42.58 A 80 80 0 0 1 80 27.2 Z"></path>
    <text font-family:"Raleway:thin" fill="gold">
         <textPath style="font-size:6pt;" xlink:href="#thisID" startOffset="63%" >
            <tspan dy="-6">Home</tspan>
      </textPath>
    </text>
  </g>
</svg>

1 个答案:

答案 0 :(得分:1)

您忘了声明字体系列。

<svg viewbox="0 0 86 20" version="1.1" baseProfile="full" width="200" height="200" xmlns="http://www.w3.org/2000/svg">
   <style type="text/css">
        <![CDATA[   
  
  @import url('https://fonts.googleapis.com/css?family=Raleway:thin');
     text{font-family:Raleway}
     
             ]]> 
  </style>
  <g>
    <path id="thisID" d="M 80 5 A 100 100 0 0 0 22.2 27.2 L 37.58 42.58 A 80 80 0 0 1 80 27.2 Z"></path>
    <text font-family:"Raleway:thin" fill="gold">
<textPath style="font-size:6pt;" xlink:href="#thisID" startOffset="63%" >
            <tspan dy="-6">Home</tspan>
      </textPath>
    </text>
  </g>
</svg>