Bug 15384 - Value assignment on shorthand properties is not well-defined
Value assignment on shorthand properties is not well-defined
Status: RESOLVED FIXED
Product: CSS
Classification: Unclassified
Component: CSSOM
unspecified
All All
: P2 normal
: ---
Assigned To: Simon Pieters
public-css-bugzilla
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-01-02 13:06 UTC by Anton P
Modified: 2013-08-08 13:26 UTC (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Anton P 2012-01-02 13:06:03 UTC
Reported by Øyvind Stenhaug

Value assignment on shorthand properties is not well-defined.  For example, some combinations of longhand property values cannot be represented by a value on the corresponding shorthand property:

What is the computed value of 'border' given the following computed values of longhand properties?

border-top-style: solid
border-right-style: none
border-bottom-style: none
border-left-style: none

Conversation begins: http://lists.w3.org/Archives/Public/www-style/2011Oct/0473.html

Bug description: http://lists.w3.org/Archives/Public/www-style/2011Oct/0476.html
Comment 1 Anton P 2012-01-02 13:09:13 UTC
Gecko apparently doesn't handle getPropertyValue on computed style for shorthand properties in an ideal manner (cf https://bugzilla.mozilla.org/show_bug.cgi?id=137688 , http://stackoverflow.com/questions/4230022/get-border-value-with-getcomputedstyle-getpropertyvalue-mozilla-ff ) which may be as a result of this issue.
Comment 2 Anton P 2012-01-02 13:13:58 UTC
Related: some implementers think that shorthands should "just work" so that there's no noticeable affect if a property changes from being a longhand to a shorthand property, unless the value specified is one that can't be specified in the original (now shorthand) form.  (eg: http://lists.w3.org/Archives/Public/www-style/2010Feb/0104.html )

That does doesn't solve the hard case described, though.
Comment 3 Anton P 2012-01-02 22:49:14 UTC
Bug 15387 is another example of this bug.