xlink:href
xlink:href
自SVG 2起弃用
该功能已从Web标准中删除。尽管一些浏览器可能仍然支持,但它正在被废弃。避免使用它并尽可能更新现有的代码; 请参阅本页底部的兼容性表格来指导您的决定。请注意,此功能可能随时停止工作。
«SVG属性参考主页
xlink:href属性像参考<IRI>一样定义到了资源的链接。该链接的确切含义取决于使用它的每个元素的上下文。参见上面更具体的用法。
注意:
SVG 2删除了对xlink
命名空间的需要,所以不xlink:href
应该使用href
。
使用上下文
Categories | Xlink attribute |
---|---|
Value | <IRI> | <funcIRI> |
Animatable | No (with some exceptions) |
Normative document | SVG 1.1 (2nd Edition): Animation elements SVG 1.1 (2nd Edition): a element SVG 1.1 (2nd Edition): altGlyph element SVG 1.1 (2nd Edition): color-profile element SVG 1.1 (2nd Edition): cursor element SVG 1.1 (2nd Edition): feImage element SVG 1.1 (2nd Edition): filter element SVG 1.1 (2nd Edition): font-face-uri element SVG 1.1 (2nd Edition): glyphRef element SVG 1.1 (2nd Edition): image element SVG 1.1 (2nd Edition): linearGradient element SVG 1.1 (2nd Edition): mpath element SVG 1.1 (2nd Edition): pattern element SVG 1.1 (2nd Edition): radialGradient element SVG 1.1 (2nd Edition): script element SVG 1.1 (2nd Edition): textPath element SVG 1.1 (2nd Edition): use element SVG 1.1 (2nd Edition): tref element |
<IRI>
国际化的资源标识符。
在因特网上,使用IRI_s(国际化资源标识符)
来识别资源。例如,位于http://example.com的名为someDrawing.svg的SVG文件可能具有以下_IRI
:
http://example.com/someDrawing.svg
一个IRI
还可以通过包括一个地址的XML文档内的特定元件IRI
片段标识符作为一部分IRI
。一个IRI
,其包括一个IRI
片段标识符由一个可选的碱的IRI
,接着是“#”字符,接着是IRI
片段标识符。例如,以下IRI
可用于指定文件someDrawing.svg中ID为“Lamppost”的元素:
http://example.com/someDrawing.svg#Lamppost
IRI_s在xlink:href属性中使用。一些属性允许_IRI_s和文本字符串作为内容。为了消除来自相对IRI的文本字符串的歧义,使用功能记号<FuncIRI>。这只是一个用功能符号划分的_IRI。注意:由于历史原因,分隔符是“url(”和“)”,以便与CSS规范兼容。该FuncIRI形式在表达属性使用。
SVG广泛使用IRI引用(绝对的和相对的)到其他对象。例如,要用线性渐变填充矩形,首先定义一个<linearGradient>元素并为其指定一个ID,如下所示:
<linearGradient xml:id="MyGradient">...</linearGradient>
然后,您可以将线性渐变引用fill
为矩形属性的值,如下例所示:
<rect fill="url(#MyGradient)"/>
SVG支持两种类型的IRI
引用:
- 本地IRI参考,其中IRI参考不包含<absoluteIRI>或<relativeIRI>因此仅包含片段标识符(即#<elementID>或#xpointer(id<elementID>))
- 非本地IRI参考,其中IRI参考确实包含<absoluteIRI>or<relativeIRI>
有关SVG中IRI参考的完整规范,请参见SVG 1.1(第2版):IRI参考。
元素
以下元素可以使用xlink:href
属性
动画元素»对此动画的目标元素的<IRI>引用,因此将随着时间的推移而被修改。目标元素必须是当前SVG文档的一部分。如果xlink:href未提供该属性,那么目标元素将是当前动画元素的直接父元素。渐变元素< 当前SVG文档中的一个不同<linearGradient>或<radialGradient>元素的<IRI>引用。如果此元素的类型与被引用元素的类型相同,那么在此元素上未定义的任何<linearGradient>或<linearGradient>属性都将被此元素继承。如果这个元素没有定义的渐变停止,并且被引用的元素(可能是由于它自己的xlink:href属性),那么这个元素继承了被引用元素的渐变停止。继承可以是任意级别的间接; 因此,如果被引用的元素由于其自己的xlink:href属性而继承了属性或渐变停止,则当前元素可以继承这些属性或渐变停止。在渐变元素上,xlink:href属性是可以动画的。<a>被引用对象的位置,用<IRI>引用表示。在<a>元素上,xlink:href属性是可以动画的。<altGlyph>对SVG文档中的<glyph>元素或<altGlyphDef>元素的<IRI>引用。
如果引用是一个<glyph>元素并且该字形可用,那么该字形将被呈现,而不是<altGlyph>元素内部的字符。
如果引用是一个<altGlyphDef>元素,那么如果处理该<altGlyphDef>元素找到了一组适当的替代字形,那么这些替代字形将被渲染,而不是<altGlyph>元素内部的字符。<color-profile>ICC配置文件资源的位置。<cursor>提供游标图像的文件或元素的<funcIRI>引用。在<cursor>元素上,xlink:href属性是可以动画的。<feImage>对图像源的<IRI>引用。在<feImage>元素上,xlink:href属性是可以动画的。当前SVG文档中<filter>另一个<filter>元素的<IRI>引用。在引用上定义的任何属性<filter>未在此元素上定义的元素由此元素继承。如果这个元素没有定义的过滤器节点,并且被引用的元素定义了过滤器节点(可能是由于它自己的xlink:href属性),那么这个元素将继承从被引用<filter>元素定义的过滤器节点。继承可以是任意级别的间接; 因此,如果所引用的<filter>元素由于其自己的xlink:href属性而继承了属性或其过滤器节点规范,则当前元素可以继承这些属性或过滤节点规范。在<filter>元素上,xlink:href属性是可以动画的。<font-face-uri>该xlink:href属性指定引用字体的位置。<glyphRef>一个<IRI>的引用<glyph>元素在一个SVG文档中。引用<glyph>被渲染为替代字形。<image>对图像源的<IRI>引用。在<image>元素上,xlink:href属性是可以动画的。定义运动路径<mpath>的<path>元素的<IRI>引用。当前SVG文档中<pattern>一个不同<pattern>元素的<IRI>引用。在被引用的元素上定义的,没有在这个元素上定义的属性被这个元素继承。如果这个元素没有孩子,并且被引用的元素(可能是由于它自己的xlink:href属性),那么这个元素继承了被引用元素的子元素。继承可以是任意级别的间接; 因此,如果被引用的元素由于它自己的xlink:href属性而继承了属性或子元素,那么当前元素可以继承那些属性或子元素。在<pattern>元素上,xlink:href属性是可以动画的。<script>包含脚本代码的外部资源的<IRI>引用。将要呈现文本<textPath>的<path>元素的<IRI>引用。在<textPath>元素上,xlink:href属性是可以动画的。<use>SVG文档中元素/片段的<IRI>引用。在<use>元素上,xlink:href属性是可以动画的。<tref>元素的<IRI>引用,其字符数据内容将被用作此<tref>元素的字符数据。在<tref>元素上,xlink:href属性是可以动画的。