首页 > 解决方案 > 如何在 svg 的样式部分中为所有 textPath 元素应用 startOffset?

问题描述

startOffset-setting 放在textPath's 标记中确实有效 ( startOffset=" 20%") 但由于我有很多 textPath,我想将此设置放入样式中。

怎么做?可能吗?

<svg width="1059" height="637"  viewBox="0 0 1059 637" xmlns="http://www.w3.org/2000/svg">
<style>  <![CDATA[  * { font-family: Corbel;font-size: 12px;font-weight: normal;font-style: normal;fill: #0000ff;text-anchor: start;white-space: pre;startOffset: 40%;method: align;text-decoration: none none;text-transform: none;font-variant: normal;text-shadow: none;word-spacing: 0px;letter-spacing: 0px;font-stretch: normal; }  
 textPath {  startOffset:" 20%" }     ]]> </style> 
<defs>
    <path id="a131" d="M46.5,172.5L57.5,172.5L63.5,172.5L65.5,172.5L72.5,172.5L73.5,172.5L77.5,172.5L82.5,172.5" />
</defs> 
<text>
    <textPath href="#a131">  Test Text                              Test Text</textPath>
</text> </svg>

是因为它是属性而不是属性吗?

标签: csssvgtextstylessyntax-error

解决方案


startOffset是一个属性而不是 CSS 属性,因此不能通过 CSS 设置。(method似乎是与我的程序相关的另一个属性。)

有一些SVG 表示属性是 CSS 属性,可以用作 SVG 元素的属性。SVG 元素的原始属性可以在 CSS 样式中使用的另一种方式是行不通的。


推荐阅读