Re: Detailed proposal for layered fill and stroke

Thanks for the feedback Dirk,

I realize that there was a desire to use the same syntax as CSS
backgrounds, but there wasn't any detailed explanation of how it would
actually work.  It does not seem practical to insist on a common syntax
given the existing differences that must be supported.

The *-paint properties are analogous to background-image and the *-color
properties are analagous to background-color.  However, they are not
exactly equivalent, because of the following underlying differences:

-  We need to support the current behavior, where a color can be specified
as a fallback but not drawn.
-  We need to support the current behavior, where a reference object
bounding box sets the scale of the content but does not define a clipped
region or repeating tile.
-  Particularly for strokes of different widths, it is preferable to allow
multiple solid color layers without needing hacks such as single color
gradients or extra markup to create a solidColor paint server element.
-  It would be very useful to create paint server elements that can be
customized by passing a color property at the time they are used.

The idea of the *-index properties came from the need to control the
layering of three different stacks of paint content (fill, strokes, and
markers) rather than a single stack for background images.

If there is a strong desire to add back in the other background properties
(e.g., *-position, *-origin, *-clip, *-repeat, *-attachment, *-size), I'd
be happy to hear those arguments.  However, I really think they confuse
things with unnecessary complexity more than they simplify things with
similarity to the background shorthand.

I'm not sure why there would be a need for CSS WG review first, since these
would be SVG-specific properties.  However, I would be happy to have
additional feedback if you want to suggest that group members take a look
at the proposal.  I definitely want to discuss the *-box properties with
those active on the FX specs that use SVG graphical effects elements with
objectBoundingBox vs userSpaceOnUse units.


On 11 May 2015 at 23:16, Dirk Schulze <> wrote:

>  Hi Amelia,
>  The idea of the layered fill and strokes were to follow the exact same
> syntax that ‘background’ uses. The same is the case for the ‘mask’
> property. We want to make sure that people coming from the HTML/CSS world
> know how to use ‘fill’ and ’stroke’ immediately. From an implementer point
> of view this is the easiest way to do it as well since most parsing and
> style rules can be shared between these properties.
>  If I understand your proposal correctly, you want to provide some
> additional properties that help specifying certain parts of it? I am not so
> sure if *-paint, *-color or *-index would be useful at the beginning and
> suggest that we wait for initial implementations and feedback from authors.
> More over, *-paint and *-index should be brought to the CSS WG for review
> first if we decide to have these extra properties.
>  Greetings,
> Dirk

Received on Tuesday, 12 May 2015 13:43:20 UTC