Bug 234754

Summary: SVG fill property does not cascade into an https: link
Product: WebKit Reporter: Jed Fox <jed>
Component: SVGAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: sabouhallawa, zimmermann
Priority: P2    
Version: Safari Technology Preview   
Hardware: Mac (Apple Silicon)   
OS: macOS 12   
Attachments:
Description Flags
HTML page demonstrating the described behavior. All circles should be green. none

Description Jed Fox 2021-12-30 11:34:48 PST
Created attachment 448103 [details]
HTML page demonstrating the described behavior. All circles should be green.

The 'fill' property correctly cascades through any intervening tags in all cases that I have checked, except when the tag is an anchor tag with an href starting with "https:"

I have tested on:

- macOS 12.1 (21C52) on a MacBook Pro (14-inch, 2021, M1 Pro):
  - fail: Safari Technology Preview (Release 137 (Safari 15.4, WebKit 17613.1.11.8))
  - pass: Chrome (Version 96.0.4664.110 (Official Build) (arm64))
  - pass: Firefox (95.0 (64-bit))
- iOS 15.2 (19C57) on an iPhone 13 Pro (MLTP3LL/A)
  - fail: Safari
  - pass: Chrome for iOS (96.0.4664.116)

The one circle that Safari renders incorrectly has this HTML structure:

    <span style="fill: green">
      <a href="https://example.com">
        <svg width="16" height="16">
          <circle cx="8" cy="8" r="8" />
        </svg>
      </a>
    </span>
Comment 1 Jed Fox 2021-12-30 11:48:08 PST
Update: it looks like it has been fixed in the latest WebKit build (r287484). Apologies for not checking this before reporting!