Skip to content

Commit

Permalink
relnote(116): SVG q unit supported (defined in CSS length units) (#27950
Browse files Browse the repository at this point in the history
)

* relnote(116): SVG q unit supported (defined in CSS length units)

* relnote(116): revert SVG type formatting

* Update files/en-us/mozilla/firefox/releases/116/index.md

Co-authored-by: Hamish Willee <[email protected]>

* Update files/en-us/web/svg/content_type/index.md

* relnote(116): clarify SVG2 and SVG1.1 case sensitivity

---------

Co-authored-by: Hamish Willee <[email protected]>
  • Loading branch information
bsmth and hamishwillee authored Jul 24, 2023
1 parent b5f301c commit d5e9826
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 16 deletions.
2 changes: 2 additions & 0 deletions files/en-us/mozilla/firefox/releases/116/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@ This article provides information about the changes in Firefox 116 that affect d

### SVG

- The `q` [length unit](/en-US/docs/Web/SVG/Content_type#length) (`1q = 1/40th of 1cm`) is now supported ([Firefox bug 1836995](https://bugzil.la/1836995)).

#### Removals

### HTTP
Expand Down
26 changes: 10 additions & 16 deletions files/en-us/web/svg/content_type/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -186,34 +186,28 @@ SVG makes use of a number of data types. This article lists these types along wi

SVG supports two types of _IRI_ references:

- **local _IRI_ references**, where the IRI reference does not contain an `<absoluteIRI>` or `<relativeIRI>` and thus only contains a fragment identifier (i.e., `#<elementID>` or `#xpointer(id<elementID>)`).
- **non-local _IRI_ references**, where the _IRI_ reference does contain an `<absoluteIRI>` or `<relativeIRI>`.
- **local _IRI_ references**, where the IRI reference does not contain an \<absoluteIRI> or \<relativeIRI> and thus only contains a fragment identifier (i.e., `#<elementID>` or `#xpointer(id<elementID>)`).
- **non-local _IRI_ references**, where the _IRI_ reference does contain an \<absoluteIRI> or \<relativeIRI>.

For the full specification of IRI references in SVG, see [SVG 1.1 (2nd Edition): IRI references](https://www.w3.org/TR/SVG/linking.html#IRIReference).

## Length

- \<length>

- : A length is a distance measurement, given as a number along with a unit. Lengths are specified in one of two ways. When used in a stylesheet, a \<length> is defined as follows:
- : A length is a distance measurement, given as a number along with a unit.
The SVG2 specification aligns with CSS [`<length>`](/en-US/docs/Web/CSS/length) data types and units for the attribute syntax and values.
A length unit identifier must be provided and the values of the length unit identifiers are case-insensitive.
The syntax follows the CSS `<length>` syntax:

```plain
length ::= number (~"em" | ~"ex" | ~"px" | ~"in" | ~"cm" | ~"mm" | ~"pt" | ~"pc")?
length ::= <number> (<absolute-length> | <relative-length>)?
```

[See the CSS2 specification](https://www.w3.org/TR/2008/REC-CSS2-20080411/syndata.html#length-units) for the meanings of the unit identifiers.
For SVG-specific properties defined in SVG1.1 and their corresponding presentation attributes, the unit identifiers in values are optional. If not provided, the length value represents a distance in the current user coordinate system. Length identifiers must be in lower case when used in presentation attributes for all properties whether they are defined in SVG or in CSS. This case sensitivity is relaxed in SVG2 to align with CSS.

For properties defined in CSS2, a length unit identifier must be provided. For length values in SVG-specific properties and their corresponding presentation attributes, the length unit identifier is optional. If not provided, the length value represents a distance in the current user coordinate system. In presentation attributes for all properties, whether defined in SVG1.1 or in CSS2, the length identifier, if specified, must be in lower case.

When lengths are used in an SVG attribute, a \<length> is instead defined as follows:

```plain
length ::= number ("em" | "ex" | "px" | "in" | "cm" | "mm" | "pt" | "pc" | "%")?
```

The unit identifiers in such \<length> values must be in lower case.

Note that the non-property \<length> definition also allows a percentage unit identifier. The meaning of a percentage length value depends on the attribute for which the percentage length value has been specified. Two common cases are:
Note that the non-property \<length> definition also allows a percentage (`%`) unit identifier.
The meaning of a percentage length value depends on the attribute for which the percentage length value has been specified. Two common cases are:

- when a percentage length value represents a percentage of the viewport width or height
- when a percentage length value represents a percentage of the bounding box width or height on a given object.
Expand Down

0 comments on commit d5e9826

Please sign in to comment.