- From: Erik Dahlstrom <ed@opera.com>
- Date: Fri, 09 Jul 2010 13:37:20 +0200
- To: "Tavmjong Bah" <tavmjong@free.fr>
- Cc: "www-svg@w3.org" <www-svg@w3.org>
On Fri, 09 Jul 2010 13:00:27 +0200, Tavmjong Bah <tavmjong@free.fr> wrote: > >> Opera supports letter-spacing, however the unit (px in this case) must >> be >> specified if it's in a stylesheet or style attribute. Chrome seems to >> not >> require the unit to be specified though, which is a bit odd. > > I am having trouble seeing why Opera requires a unit in the case of a > style attribute. Not just Opera, it's the same in Gecko too. It's easily testable by inspecting the browser's error console to see if the declaration was dropped. > The spec explicitly discusses what to do if no unit is > given for letter-spacing. In CSS the only <length> value that is allowed to not have a unit is 0. > Also, 7.10 (Units) gives an example in the > case of font-size where a unit is not given. Yes. > Inkscape always puts a unit on 'font-size'. There is a comment in the > output code for 'font-size': > > // must specify px, see inkscape bug 1221626, mozilla bug 234789 It's the same for any property that uses CSS <length>, e.g 'letter-spacing'. > I can't find Inkscape bug 1221626 (Inkscape's changed the bug keeping > system since that bug was submitted) and the Mozilla bug refers to a > 2004 discussion where they grapple with how to resolve CSS and SVG spec > differences. It wouldn't be hard for Inkscape to add the unit to avoid > problems but that doesn't answer the question of why Opera requires it. The contents of a style attribute is CSS, and CSS requires units, see: http://www.w3.org/TR/css-style-attr/ For external stylesheets and the content of <svg:style> elements it's the same thing, CSS defines the syntax, not SVG. Cheers /Erik -- Erik Dahlstrom, Core Technology Developer, Opera Software Co-Chair, W3C SVG Working Group Personal blog: http://my.opera.com/macdev_ed
Received on Friday, 9 July 2010 11:37:56 UTC