visible child in hidden parent
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Inkscape |
Invalid
|
Low
|
Unassigned |
Bug Description
In the following example:
<svg>
<g style="
<rect style="
y="100" width="50" height="50"/>
<rect style="fill:yellow" x="200" y="100" width="50"
height="50"/>
</g>
</svg>
we believe the "correct" rendering[*1] is to draw the
red rectangle but not the yellow one, whereas various
versions of inkscape draw either both or neither
(before/after mental's sp-item.cpp and style.cpp
changes committed 2004-10-16 07:21:01 UTC).
[One complication in evaluating inkscape's behaviour
with that one-line test case I gave on jabber is that
until Sunday, Inkscape wasn't reading visibility
attributes, it only consulted visibility in style strings.]
[*1] This is what batik and adobe's viewer do (Bulia
you may wish to confirm that this is still the case
with this revised example), and is in line with one
sentence in
http://
("Setting 'visibility' to hidden on a 'g' will make its
children invisible as long as the children do not
specify their own 'visibility' properties as
visible."), though elsewhere there is some confusion as
to whether or not visibility is an inherited property.
The very next sentence claims that it is not, but the
table below it claims that it is. CSS2
(http://
has a different table for visibility (inherited: no,
but initial value: inherit). The SVG spec says that
the CSS2 definition is normative "Except for any
additional information provided in this specification",
which to me is unclear as to which is authoritative
where the two specs conflict.
Confirm that batik/adobe show red but not yellow. Inkscape
currently shows none.