如何让文字元素说'<'

时间:2014-08-10 04:00:38

标签: xml svg

我目前正在绘制SVG,我想要一个包含小于符号的文本元素。当我尝试:

    <svg xmlns="http://www.w3.org/2000/svg">
    <text x="40" y="40" fill="Black" font-size="25" font-weight="bold" font-family="courier new" ><</text>
    </svg>

我收到以下错误:&#34; StartTag:无效的元素名称&#34;

2 个答案:

答案 0 :(得分:4)

<>字符是HTML和SVG中的特殊字符,用于表示标记,例如<svg><text>。当您在代码中使用<时,渲染器会认为您正在尝试启动新标记。这就是您收到错误"StartTag: invalid element name"

的原因

要告诉渲染器您要打印<字符而不启动标记,您需要使用&#34;转义代码。&#34;在这种情况下,您需要的转义码是&lt;

<svg xmlns="http://www.w3.org/2000/svg">
    <text x="40" y="40" fill="Black" font-size="25" font-weight="bold" font-family="courier new" >&lt;</text>
</svg>

Here's a jsFiddle演示使用该转义码。

也有many other escape codes you can use。如果您的键盘缺少某些特殊字符(例如英镑),或者如果您想输出特殊字符而不影响渲染器解析HTML或SVG的方式,它们会非常有用。

答案 1 :(得分:0)

我通常会引用this page,您也可以使用十六进制等效词,例如<转换为&#x3C;,即Unicode U+003C