Remove marker's display property special case.
marker
is the only element that implements set_overridden_properties
, in particular it does:
fn set_overridden_properties(&self, values: &mut SpecifiedValues) {
// markers are always displayed, even if <marker> or its ancestors are display:none
values.set_parsed_property(&ParsedProperty::Display(SpecifiedValue::Specified(
Default::default(),
)));
}
I removed that code and all the test suite still passes.
Reading the spec, it does indeed say:
The ‘display’ property does not apply to the ‘marker’ element; thus, ‘marker’ elements are not directly rendered even if the ‘display’ property is set to a value other than none, and ‘marker’ elements are available for referencing even when the ‘display’ property on the ‘marker’ element or any of its ancestors is set to none
However my understanding is that we are overriding is before we cascade, so the part about its ancestors are display:none
is not solved by this, no?
Should we just get rid of this part and instead handle the special case when rendering?