- From: Paul LeBeau <paul.lebeau@gmail.com>
- Date: Fri, 15 Nov 2013 12:26:48 +1300
- To: Alex Bell <alex@bellandwhistle.net>
- Cc: www-svg <www-svg@w3.org>, "Dr. Olaf Hoffmann" <Dr.O.Hoffmann@gmx.de>
- Message-ID: <CACfsppBbwWKmMG1=SBbE2oUAXdeTWETovO+t3KHrUimZ3hW4ug@mail.gmail.com>
Alex write: > What about adding ‘stroke-color’ to both SVG and CSS, and changing “stroke” to a shorthand across the board? And breakage could be additionally mitigated if SVG2 renderers didn't honour the reset behaviour if the document version="1.1". On 15 November 2013 10:49, <alex@bellandwhistle.net> wrote: > On 2013-11-14 03:09, Dr. Olaf Hoffmann wrote: > If one provides an alternative view of such > >> SVG 1.1 documents with an external stylesheet, this will >> typically contain only the stroke property to be changed. >> Because the stroke-dasharray is content and strongly related >> to the curve, it would corrupt the meaning of the document to >> reset this with the set of stroke in the stylesheet. >> And if new viewers would do this by ignoring, that the stylesheet >> is applied to an SVG 1.1 document, the presentation of such >> existing documents is simply corrupted. >> Another related issue - if the stroke-dasharray presentation >> attribute is animated and a viewer resets the value, because >> in a stylesheet just the stroke property is set, there will be no >> visible effect of the animation anymore - never intented by >> an author of an SVG 1.1 document. >> > > To summarize Olaf’s point as I understand it: Authors who want to change > the color of a dashed line created in SVG using CSS might declare “stroke: > green” and inadvertently wipe out a stroke-dasharray effect. Even if the > author redeclares a matching stroke-dasharray in CSS, this would wipe out > any existing animations on the dasharray. This is a genuine compatibility > problem. There ought to be a simple way to change a stroke’s color in CSS > without changing anything else. > > On the other hand, I really don’t like the idea of ‘stroke-shorthand’ as a > CSS property. It feels contorted, and wildly inconsistent with existing CSS > shorthand patterns. It works, but there’s something just really ugly about > it. > > I also agree with Tab about the usefulness of shorthands as reset. This > should be seen as a positive feature, one that CSS authors are accustomed > to expect. There should be no exceptions made to this rule. > > In retrospect, it would have made the most sense in the beginning to have > named the “stroke” attribute “stroke-color” instead. It’s more > descriptive, more consistent with the CSS “background” and “border” > property naming conventions, and it frees up the ‘stroke’ term for a > shorthand. If that had been the case from the beginning, we wouldn’t be > having this discussion now. > > Of course, things didn’t happen that way. But isn’t there a way to get > there from here? What about adding ‘stroke-color’ to both SVG and CSS, and > changing “stroke” to a shorthand across the board? This is somewhat > draconian, I realize, and probably off of the table for procedural reasons, > but it might be functionally better than the alternatives. Going forward, > legacy SVG ‘stroke’ attributes that only supply a color would be treated as > a shorthand, and would still work with most legacy-content, which in my > experience supplies “stroke” values before “stroke-width”, > “stroke-miterlimit”, et al. I virtually never see those properties > specified in the opposite order. There would be occasional breakage, of > course, but achieving a strong, highly consistent alignment with CSS might > be worth that price. And those breakages would be very easy to fix. This > solution would also completely avoid the problem Olaf describes. > > FWIW I would rather see a few ancient pages break than watch a mongrel > like “stroke-shorthand’ find its way into the spec, or create a set of CSS > properties with no independent way to exclusively target a stroke’s color. > At some point the concern with legacy content has to give. > > Cheers, > Alex > >
Received on Thursday, 14 November 2013 23:27:36 UTC