Skip to content

Commit ed0f426

Browse files
committed
[css-transforms] Incorrect autolinking of "transform" w3c#1336
Fix links to point to the SVG Transform attribute where appropriate.
1 parent f5f655b commit ed0f426

1 file changed

Lines changed: 18 additions & 18 deletions

File tree

css-transforms-1/Overview.bs

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,11 @@ Ignored terms: calcMode, viewBox, baseVal, animVal
2323
</pre>
2424

2525
<pre class=anchors>
26+
text: transform; type: element-attr; for: ; spec: svg1.1; url: https://www.w3.org/TR/SVG11/coords.html#TransformAttribute
2627
text: patternTransform; type: element-attr; for: pattern; spec: svg1.1; url: https://www.w3.org/TR/SVG11/pservers.html#PatternElementPatternTransformAttribute
2728
text: patternUnits; type: element-attr; for: pattern; spec: svg1.1; url: https://www.w3.org/TR/SVG/pservers.html#PatternElementPatternUnitsAttribute
2829
text: gradientTransform; type: element-attr; for: linearGradient; spec: svg1.1; url: https://www.w3.org/TR/SVG11/pservers.html#LinearGradientElementGradientTransformAttribute
2930
text: gradientUnits; type: element-attr; for: linearGradient; spec: svg1.1; url: https://www.w3.org/TR/SVG/pservers.html#LinearGradientElementGradientUnitsAttribute
30-
3131
</pre>
3232

3333
<pre class='link-defaults'>
@@ -122,7 +122,7 @@ When used in this specification, terms have the meanings assigned in this sectio
122122
: <dfn>transformable element</dfn>
123123
:: A transformable element is an element in one of these categories:
124124
* an element whose layout is governed by the CSS box model which is either a <a href="https://www.w3.org/TR/CSS2/visuren.html#block-level">block-level</a> or <a href="https://www.w3.org/TR/CSS2/visuren.html#x13">atomic inline-level element</a>, or whose 'display' property computes to ''table-row'', ''table-row-group'', ''table-header-group'', ''table-footer-group'', ''table-cell'', or ''table-caption'' [[!CSS2]]
125-
* an element in the SVG namespace and not governed by the CSS box model which has the attributes 'transform', <{pattern/patternTransform}> or <{linearGradient/gradientTransform}> [[!SVG11]].
125+
* an element in the SVG namespace and not governed by the CSS box model which has the attributes <a element-attr for>transform</a>, <{pattern/patternTransform}> or <{linearGradient/gradientTransform}> [[!SVG11]].
126126

127127
: <dfn>transformed element</dfn>
128128
:: An element with a computed value other than ''transform/none'' for the 'transform' property.
@@ -365,21 +365,21 @@ For SVG elements without an associated CSS layout box, the [=used value=] for <a
365365
For elements with an associated CSS layout box, the [=used value=] for <a value for=transform-box>fill-box</a> and <a value for=transform-box>view-box</a> is <a value for=transform-box>border-box</a>.
366366

367367

368-
The SVG 'transform' Attribute {#svg-transform}
368+
The SVG <a element-attr for>transform</a> Attribute {#svg-transform}
369369
=============================
370370

371-
The SVG 1.1 specification did not specify the attributes "transform", <{linearGradient/gradientTransform}> or <{pattern/patternTransform}> as <a>presentation attributes</a> [[!SVG11]]. In order to improve the integration of SVG and HTML, this specification makes these SVG attributes presentation attributes and makes the 'transform' property one that applies to [=transformable elements=] in the SVG namespace.
371+
The SVG 1.1 specification did not specify the attributes <a element-attr for>transform</a>, <{linearGradient/gradientTransform}> or <{pattern/patternTransform}> as <a>presentation attributes</a> [[!SVG11]]. In order to improve the integration of SVG and HTML, this specification makes these SVG attributes presentation attributes and makes the 'transform' property one that applies to [=transformable elements=] in the SVG namespace.
372372

373373
This specification will also introduce the new presentation attribute 'transform-origin'. Values on this presentation attribute get parsed following the syntax rules on <a href="#svg-data-types">SVG Data Types</a> [[!SVG11]].
374374

375-
SVG 'transform' attribute specificity {#transform-attribute-specificity}
375+
SVG <a element-attr for>transform</a> attribute specificity {#transform-attribute-specificity}
376376
-------------------------------------
377377

378378
Since the previously named SVG attributes become presentation attributes, their participation in the CSS cascade is determined by the specificity of <a>presentation attributes</a> in the SVG specification.
379379

380380
<div class="example">
381381

382-
This example shows the combination of the 'transform' style property and the 'transform' presentation attribute.
382+
This example shows the combination of the 'transform' style property and the <a element-attr for>transform</a> presentation attribute.
383383

384384
<pre>
385385
&lt;svg xmlns="http://www.w3.org/2000/svg">
@@ -399,18 +399,18 @@ This example shows the combination of the 'transform' style property and the 'tr
399399
<img src="examples/svg-translate1.svg" width="470" height="240" alt="Translated SVG container element.">
400400
</div>
401401

402-
Because of the participation to the CSS cascade, the 'transform' style property overrides the 'transform' presentation attribute. Therefore the container gets translated by ''100px'' in both the horizontal and the vertical directions, instead of ''200px''.
402+
Because of the participation to the CSS cascade, the 'transform' style property overrides the <a element-attr for>transform</a> presentation attribute. Therefore the container gets translated by ''100px'' in both the horizontal and the vertical directions, instead of ''200px''.
403403

404404
</div>
405405

406-
Syntax of the SVG 'transform' attribute {#svg-syntax}
406+
Syntax of the SVG <a element-attr for>transform</a> attribute {#svg-syntax}
407407
---------------------------------------
408408

409-
To provide backwards compatibility, the syntax of the 'transform' presentation attribute differs from the syntax of the 'transform' style property as shown in the example above. However, the syntax used for the 'transform' style property can be used for a 'transform' presentation attribute value. Authors are advised to follow the rules of CSS Values and Units Module [[!CSS-VALUES-3]]. Therefore an author should write ''transform="translate(200px, 200px)"'' instead of ''transform="translate (200 200)"'' because the second example with the spaces before the ''('', the missing comma between the arguments and the values without the explicit unit notation would be valid for the attribute only.
409+
To provide backwards compatibility, the syntax of the <a element-attr for>transform</a> presentation attribute differs from the syntax of the 'transform' style property as shown in the example above. However, the syntax used for the 'transform' style property can be used for a '<a element-attr for>transform</a> presentation attribute value. Authors are advised to follow the rules of CSS Values and Units Module [[!CSS-VALUES-3]]. Therefore an author should write ''transform="translate(200px, 200px)"'' instead of ''transform="translate (200 200)"'' because the second example with the spaces before the ''('', the missing comma between the arguments and the values without the explicit unit notation would be valid for the attribute only.
410410

411411
### Transform List ### {#svg-transform-list}
412412

413-
The value for the 'transform' attribute consists of a transform list with zero or more transform functions using <a href="#svg-functional-notation">functional notation</a>. If the transform list consists of more than one transform function, these functions are separated by optional whitespace, an optional comma ('','') and optional whitespace. The transform list can have optional whitespace characters before and after the list.
413+
The value for the <a element-attr for>transform</a> attribute consists of a transform list with zero or more transform functions using <a href="#svg-functional-notation">functional notation</a>. If the transform list consists of more than one transform function, these functions are separated by optional whitespace, an optional comma ('','') and optional whitespace. The transform list can have optional whitespace characters before and after the list.
414414

415415
### Functional Notation ### {#svg-functional-notation}
416416

@@ -438,13 +438,13 @@ SVG supports scientific notations for numbers. Therefore a number gets parsed li
438438
The SVG <{linearGradient/gradientTransform}> and <{pattern/patternTransform}> attributes {#svg-gradient-transform-pattern-transform}
439439
----------------------------------------------------------------------------------------
440440

441-
SVG specifies the attributes <{linearGradient/gradientTransform}> and <{pattern/patternTransform}>. This specification makes both attributes presentation attributes. Both attributes use the same <a href="#svg-syntax">syntax</a> as the SVG 'transform' attribute. This specification does not introduce corresponding CSS style properties. Both, the <{linearGradient/gradientTransform}> and the <{pattern/patternTransform}> attribute, are presentation attributes for the 'transform' property.
441+
SVG specifies the attributes <{linearGradient/gradientTransform}> and <{pattern/patternTransform}>. This specification makes both attributes presentation attributes. Both attributes use the same <a href="#svg-syntax">syntax</a> as the SVG <a element-attr for>transform</a> attribute. This specification does not introduce corresponding CSS style properties. Both the <{linearGradient/gradientTransform}> and the <{pattern/patternTransform}> attribute are presentation attributes for the 'transform' property.
442442

443443

444444
SVG transform functions {#svg-transform-functions}
445445
-----------------------
446446

447-
For backwards compatibility with existing SVG content, this specification supports all transform functions defined by <a href="https://www.w3.org/TR/SVG/coords.html#TransformAttribute">The ‘transform’ attribute</a> in [[SVG11]]. Therefore the two-dimensional transform function ''rotate(&lt;angle>)'' is extended as follows:
447+
For backwards compatibility with existing SVG content, this specification supports all transform functions defined by <a href="https://www.w3.org/TR/SVG/coords.html#TransformAttribute">the ‘transform’ attribute</a> in [[SVG11]]. Therefore the two-dimensional transform function ''rotate(&lt;angle>)'' is extended as follows:
448448

449449
<dl>
450450
<dt id="rotate-three-function">
@@ -460,11 +460,11 @@ User agents are just required to support the two optional arguments for translat
460460
User coordinate space {#svg-user-coordinate-space}
461461
---------------------
462462

463-
For the <{pattern}>, <{linearGradient}>, <{radialGradient}> and <{clipPath}> elements the 'transform', <{pattern/patternTransform}>, <{linearGradient/gradientTransform}> presentation attributes represents values in the current user coordinate system in place at the time when these elements are referenced (i.e., the user coordinate system for the element referencing the <{pattern}> element via a 'fill' or 'stroke' property). Percentage values are relative to the [=reference box=] of the referencing element.
463+
For the <{pattern}>, <{linearGradient}>, <{radialGradient}> and <{clipPath}> elements the <a element-attr for>transform</a>, <{pattern/patternTransform}>, <{linearGradient/gradientTransform}> presentation attributes represents values in the current user coordinate system in place at the time when these elements are referenced (i.e., the user coordinate system for the element referencing the <{pattern}> element via a 'fill' or 'stroke' property). Percentage values are relative to the [=reference box=] of the referencing element.
464464

465465
In particular the <{pattern/patternUnits}>, <{linearGradient/gradientUnits}> and <{mask/maskUnits}> attributes don't affect the user coordinate system used for transformations [[SVG11]].
466466

467-
For all other [=transformable elements=] the 'transform' presentation attribute represents values in the current user coordinate system of the parent. All percentage values of the 'transform' presentation attribute are relative to the element's [=reference box=].
467+
For all other [=transformable elements=] the <a element-attr for>transform</a> presentation attribute represents values in the current user coordinate system of the parent. All percentage values of the <a element-attr for>transform</a> presentation attribute are relative to the element's [=reference box=].
468468

469469
<div class="example">
470470

@@ -493,12 +493,12 @@ An SVG <{pattern}> element doesn't have a bounding box. The [=reference box=] of
493493

494494
</div>
495495

496-
SVG DOM interface for the 'transform' attribute {#transform-attribute-dom}
496+
SVG DOM interface for the <a element-attr for>transform</a> attribute {#transform-attribute-dom}
497497
-----------------------------------------------
498498

499-
The SVG specification defines the "<a href="https://www.w3.org/TR/2011/REC-SVG11-20110816/coords.html#InterfaceSVGAnimatedTransformList">SVGAnimatedTransformList</a>" interface in the SVG DOM to provide access to the animated and the base value of the SVG 'transform', <{linearGradient/gradientTransform}> and <{pattern/patternTransform}> attributes. To ensure backwards compatibility, this API must still be supported by user agents.
499+
The SVG specification defines the "<a href="https://www.w3.org/TR/2011/REC-SVG11-20110816/coords.html#InterfaceSVGAnimatedTransformList">SVGAnimatedTransformList</a>" interface in the SVG DOM to provide access to the animated and the base value of the SVG <a element-attr for>transform</a>, <{linearGradient/gradientTransform}> and <{pattern/patternTransform}> attributes. To ensure backwards compatibility, this API must still be supported by user agents.
500500

501-
The 'transform' property contributes to the CSS cascade. According to SVG 1.1 user agents conceptually insert a <a href="https://www.w3.org/TR/SVG/styling.html#UsingPresentationAttributes">new author style sheet</a> for presentation attributes, which is the first in the author style sheet collection. {{baseVal}} gives the author the possibility to access and modify the values of the SVG 'transform' attribute. To provide the necessary backwards compatibility to the SVG DOM, {{baseVal}} must reflect the values of this author style sheet. All modifications to SVG DOM objects of {{baseVal}} must affect this author style sheet immediately.
501+
The 'transform' property contributes to the CSS cascade. According to SVG 1.1 user agents conceptually insert a <a href="https://www.w3.org/TR/SVG/styling.html#UsingPresentationAttributes">new author style sheet</a> for presentation attributes, which is the first in the author style sheet collection. {{baseVal}} gives the author the possibility to access and modify the values of the SVG <a element-attr for>transform</a> attribute. To provide the necessary backwards compatibility to the SVG DOM, {{baseVal}} must reflect the values of this author style sheet. All modifications to SVG DOM objects of {{baseVal}} must affect this author style sheet immediately.
502502

503503
{{animVal}} represents the computed style of the 'transform' property. Therefore it includes all applied <a href="https://www.w3.org/TR/css3-transitions/">CSS3 Transitions</a>, <a href="https://www.w3.org/TR/css3-animations/">CSS3 Animations</a> or <a href="#svg-animation">SVG Animations</a> if any of those are underway. The computed style and SVG DOM objects of {{animVal}} can not be modified.
504504

@@ -522,7 +522,7 @@ The value "paced" is undefined for the attribute <{animate/calcMode}> on <{anima
522522

523523
Note: The following paragraphs extend <a href="https://www.w3.org/TR/SVG/animate.html#complexDistances">Elements, attributes and properties that can be animated</a> [[SVG11]].
524524

525-
The introduce presentation attributes 'transform' and 'transform-origin' are animatable.
525+
The introduced presentation attributes <a element-attr for>transform</a> and 'transform-origin' are animatable.
526526

527527
With this specification the SVG basic data type <<transform-list>> is equivalent to a list of <<transform-function>>s. <<transform-list>> is animatable and additive. The data type can be animated using the SVG <{animate}> element and the SVG <{set}> element. SVG animations must run the same animation steps as described in section <a href="#interpolation-of-transforms">Transitions and Animations between Transform Values</a>.
528528

0 commit comments

Comments
 (0)