SVG 填充属性

3

我的SVG中的fill/stroke/stroke-width属性应该在style="..."内或外。

例如:

<rect x="10" y="10" fill="red" stroke="green" stroke-width="1" width="80px" height="50"/>

-----------------------OR--------------------

<rect x="10" y="10" style="fill:red; stroke:green; stroke-width:1;" width="80px" height="50"/>

哪一个是正确的?两者都可以,并且原因是...

1个回答

2

事实上,两者都是正确的。SVG创建于90年代末期。当时有各种自动生成内容的想法。其中之一是XSL-FO,它使用CSS大部分属性,但将其作为元素的属性:

<fo:block font-size="16px" color="red>Hello</fo:block>

在那个时候,将SVG样式的可能性翻倍似乎是一个好主意。
然而,您需要注意不同属性的级联方式:
1. 如果元素具有style属性,则首先使用该属性。 2. 如果SVG文件具有中央CSS声明(例如在

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接