webcompat / web-bugs

A place to report bugs on websites.
https://webcompat.com
Mozilla Public License 2.0
739 stars 63 forks source link

www.nytimes.com - design is broken #38439

Open digitarald opened 5 years ago

digitarald commented 5 years ago

URL: https://www.nytimes.com/interactive/2019/08/19/magazine/history-slavery-smithsonian.html?mtrref=undefined&gwh=64FB479E5853130AFEA7A7B63D9B7F15&gwt=pay

Browser / Version: Firefox 70.0 Operating System: Mac OS X 10.14 Tested Another Browser: Yes

Problem type: Design is broken Description: Broken capital letters in the title Steps to Reproduce: Some script tries to make the capitals fancy, but breaks in FF. Works in Chrome. Screenshot Description

Browser Configuration
  • mixed active content blocked: false
  • image.mem.shared: true
  • buildID: 20190822095439
  • tracking content blocked: true (basic)
  • gfx.webrender.blob-images: true
  • hasTouchScreen: false
  • mixed passive content blocked: false
  • gfx.webrender.enabled: true
  • gfx.webrender.all: false
  • channel: nightly

Console Messages:

[{u'log': [u'Content Security Policy: Directive child-src has been deprecated. Please use directive worker-src to control workers, or directive frame-src to control frames respectively.'], u'level': u'warn', u'uri': u'', u'pos': u'0:0'}, {u'log': [u'The resource at https://cdn.optimizely.com/public/3013110282/s/article_prod.js was blocked because content blocking is enabled.'], u'level': u'warn', u'uri': u'https://www.nytimes.com/interactive/2019/08/19/magazine/history-slavery-smithsonian.html?mtrref=undefined&gwh=64FB479E5853130AFEA7A7B63D9B7F15&gwt=pay', u'pos': u'0:0'}, {u'log': [u'The resource at https://contextual.media.net/bidexchange.js?cid=8CU2553YN&https=1 was blocked because content blocking is enabled.'], u'level': u'warn', u'uri': u'https://www.nytimes.com/interactive/2019/08/19/magazine/history-slavery-smithsonian.html?mtrref=undefined&gwh=64FB479E5853130AFEA7A7B63D9B7F15&gwt=pay', u'pos': u'0:0'}, {u'log': [u'The resource at https://c.amazon-adsystem.com/aax2/apstag.js was blocked because content blocking is enabled.'], u'level': u'warn', u'uri': u'https://www.nytimes.com/interactive/2019/08/19/magazine/history-slavery-smithsonian.html?mtrref=undefined&gwh=64FB479E5853130AFEA7A7B63D9B7F15&gwt=pay', u'pos': u'0:0'}, {u'log': [u'The resource at https://tags.bluekai.com/site/50550?ret=js&limit=1 was blocked because content blocking is enabled.'], u'level': u'warn', u'uri': u'https://www.nytimes.com/interactive/2019/08/19/magazine/history-slavery-smithsonian.html?mtrref=undefined&gwh=64FB479E5853130AFEA7A7B63D9B7F15&gwt=pay', u'pos': u'0:0'}, {u'log': [u'The resource at https://cdn.optimizely.com/public/3013110282/s/article_prod.js was blocked because content blocking is enabled.'], u'level': u'warn', u'uri': u'https://www.nytimes.com/interactive/2019/08/19/magazine/history-slavery-smithsonian.html?mtrref=undefined&gwh=64FB479E5853130AFEA7A7B63D9B7F15&gwt=pay', u'pos': u'0:0'}, {u'log': [u'downloadable font: Layout: bad start coverage index. (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:0) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: Layout: Failed to parse backtrack coverage 0 in chain context format 3 (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:0) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: Layout: Failed to parse chaining context format 3 subtable (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:0) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: Layout: Failed to parse lookup subtable 5 (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:0) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: Layout: Failed to parse subtable 0 (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:0) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: Layout: Failed to parse lookup 2 (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:0) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: GSUB: Failed to parse lookup list table (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:0) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: GSUB: Failed to parse table (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:0) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: rejected by sanitizer (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:0) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: Layout: bad start coverage index. (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:1) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff2'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: Layout: Failed to parse backtrack coverage 0 in chain context format 3 (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:1) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff2'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: Layout: Failed to parse chaining context format 3 subtable (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:1) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff2'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: Layout: Failed to parse lookup subtable 5 (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:1) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff2'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: Layout: Failed to parse subtable 0 (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:1) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff2'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: Layout: Failed to parse lookup 2 (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:1) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff2'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: GSUB: Failed to parse lookup list table (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:1) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff2'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: GSUB: Failed to parse table (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:1) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff2'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u'downloadable font: rejected by sanitizer (font-family: "NYTMag Serif Text Light Italic" style:italic weight:300 stretch:100 src index:1) source: https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff2'], u'level': u'error', u'uri': u'unknown', u'pos': u'918:11'}, {u'log': [u"\n       0000000                         000        0000000\n     111111111      11111111100          000      111111111\n     00000        111111111111111111      00000      000000\n     000        1111111111111111111111111100000         000\n     000        1111       1111111111111111100          000\n     000         11       0     1111111100              000\n     000          1      00             1               000\n     000               00      00       1               000\n     000             000    00000       1               000\n  00000            0000  00000000       1                00000\n11111            000 00    000000      000                 11111\n  00000          0000      000000     00000              00000\n     000        10000      000000      000              0000\n     000        00000      000000       1               000\n     000        000000     10000        1     0         000\n     000        1000000 00              1    00         000\n     000         1111111                1 0000          000\n     000          1111111100           000000           000\n     0000          111111111111111110000000            0000\n     111111111        111111111111100000          111111111\n       0000000              00000000              0000000\n\n\n\nNYTimes.com: All the code that's fit to printf()\nWe're hiring: developers.nytimes.com/careers\n\n\n"], u'level': u'log', u'uri': u'https://www.nytimes.com/vi-assets/static-assets/nyt5/20190415-145957-cqe9o/js/interactive/main.js', u'pos': u'14:10133'}, {u'log': [u'The resource at https://www.googletagservices.com/tag/js/gpt.js was blocked because content blocking is enabled.'], u'level': u'warn', u'uri': u'https://www.nytimes.com/interactive/2019/08/19/magazine/history-slavery-smithsonian.html?mtrref=undefined&gwh=64FB479E5853130AFEA7A7B63D9B7F15&gwt=pay', u'pos': u'0:0'}, {u'log': [u'Content Security Policy: Directive child-src has been deprecated. Please use directive worker-src to control workers, or directive frame-src to control frames respectively.'], u'level': u'warn', u'uri': u'', u'pos': u'0:0'}, {u'log': [u'Content Security Policy: Directive child-src has been deprecated. Please use directive worker-src to control workers, or directive frame-src to control frames respectively.'], u'level': u'warn', u'uri': u'', u'pos': u'0:0'}, {u'log': [u'Content Security Policy: Directive child-src has been deprecated. Please use directive worker-src to control workers, or directive frame-src to control frames respectively.'], u'level': u'warn', u'uri': u'', u'pos': u'0:0'}, {u'log': [u'Content Security Policy: Directive child-src has been deprecated. Please use directive worker-src to control workers, or directive frame-src to control frames respectively.'], u'level': u'warn', u'uri': u'', u'pos': u'0:0'}, {u'log': [u'Content Security Policy: Directive child-src has been deprecated. Please use directive worker-src to control workers, or directive frame-src to control frames respectively.'], u'level': u'warn', u'uri': u'', u'pos': u'0:0'}, {u'log': [u'The resource at https://www.google-analytics.com/analytics.js was blocked because content blocking is enabled.'], u'level': u'warn', u'uri': u'https://www.nytimes.com/interactive/2019/08/19/magazine/history-slavery-smithsonian.html?mtrref=undefined&gwh=64FB479E5853130AFEA7A7B63D9B7F15&gwt=pay', u'pos': u'0:0'}, {u'log': [u'The resource at https://tags.bluekai.com/site/50550?ret=js&limit=1 was blocked because content blocking is enabled.'], u'level': u'warn', u'uri': u'https://www.nytimes.com/interactive/2019/08/19/magazine/history-slavery-smithsonian.html?mtrref=undefined&gwh=64FB479E5853130AFEA7A7B63D9B7F15&gwt=pay', u'pos': u'0:0'}, {u'log': [u'The resource at https://5290727.fls.doubleclick.net/activityi;src=5290727;type=allpa0;cat=nyti-0;ord=1;num=1016096255028;gtm=2wg8e1;auiddc=1503337343.1566515484;u4=;u5=;u6=;u7=flVmb8vLfIsFJT0hm_a7Mo;u8=undefined;u10=https%3A%2F%2Fwww.nytimes.com%2Finteractive%2F2019%2F08%2F19%2Fmagazine%2Fhistory-slavery-smithsonian.html;u11=5;u12=100000006663406;u13=;u14=;u15=;u16=nyt-v5;u17=https%3A%2F%2Fwww.nytimes.com%2Finteractive%2F2019%2F08%2F19%2Fmagazine%2Fhistory-slavery-smithsonian.html%3Fmtrref%3Dundefined%26gwh%3D64FB479E5853130AFEA7A7B63D9B7F15%26gwt%3Dpay;u1=;u2=;u3=;~oref=https%3A%2F%2Fwww.nytimes.com%2Finteractive%2F2019%2F08%2F19%2Fmagazine%2Fhistory-slavery-smithsonian.html%3Fmtrref%3Dundefined%26gwh%3D64FB479E5853130AFEA7A7B63D9B7F15%26gwt%3Dpay? was blocked because content blocking is enabled.'], u'level': u'warn', u'uri': u'https://www.nytimes.com/interactive/2019/08/19/magazine/history-slavery-smithsonian.html?mtrref=undefined&gwh=64FB479E5853130AFEA7A7B63D9B7F15&gwt=pay', u'pos': u'0:0'}, {u'log': [u'The resource at https://tags.bkrtx.com/js/bk-coretag.js was blocked because content blocking is enabled.'], u'level': u'warn', u'uri': u'https://www.nytimes.com/interactive/2019/08/19/magazine/history-slavery-smithsonian.html?mtrref=undefined&gwh=64FB479E5853130AFEA7A7B63D9B7F15&gwt=pay', u'pos': u'0:0'}, {u'log': [u'The resource at https://static.chartbeat.com/js/chartbeat.js was blocked because content blocking is enabled.'], u'level': u'warn', u'uri': u'https://www.nytimes.com/interactive/2019/08/19/magazine/history-slavery-smithsonian.html?mtrref=undefined&gwh=64FB479E5853130AFEA7A7B63D9B7F15&gwt=pay', u'pos': u'0:0'}, {u'log': [u'The resource at https://sb.scorecardresearch.com/beacon.js was blocked because content blocking is enabled.'], u'level': u'warn', u'uri': u'https://www.nytimes.com/interactive/2019/08/19/magazine/history-slavery-smithsonian.html?mtrref=undefined&gwh=64FB479E5853130AFEA7A7B63D9B7F15&gwt=pay', u'pos': u'0:0'}, {u'log': [u'vhs', u' For complete VHS debug info: ', u"localStorage.debug = 'vhs*'"], u'level': u'info', u'uri': u'https://static01.nyt.com/video-static/vhs3/vhs.min.js', u'pos': u'1:85417'}, {u'log': [u'desktop'], u'level': u'log', u'uri': u'https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/1fd2cd65e4a9c6ed45092852905f21265f947f75/build.js', u'pos': u'11709:13'}, {u'log': [u'TypeError: userInfo is undefined'], u'level': u'error', u'uri': u'https://www.nytimes.com/vi-assets/static-assets/nyt5/20190415-145957-cqe9o/js/foundation/main.js line 75 > eval', u'pos': u'1:254'}, {u'log': [u'downloadable font: OS/2: Bad sTypoLineGap, setting it to 0: -538 (font-family: "franklin-normal-600" style:normal weight:600 stretch:100 src index:1) source: https://g1.nyt.com/fonts/family/franklin/franklin-normal-600.woff'], u'level': u'error', u'uri': u'unknown', u'pos': u'1:300'}, {u'log': [u'downloadable font: hhea: bad linegap: -538 (font-family: "franklin-normal-600" style:normal weight:600 stretch:100 src index:1) source: https://g1.nyt.com/fonts/family/franklin/franklin-normal-600.woff'], u'level': u'error', u'uri': u'unknown', u'pos': u'1:300'}, {u'log': [u'Content Security Policy: Directive child-src has been deprecated. Please use directive worker-src to control workers, or directive frame-src to control frames respectively.'], u'level': u'warn', u'uri': u'', u'pos': u'0:0'}, {u'log': [u'Content Security Policy: Directive child-src has been deprecated. Please use directive worker-src to control workers, or directive frame-src to control frames respectively.'], u'level': u'warn', u'uri': u'', u'pos': u'0:0'}, {u'log': [u'Content Security Policy: Directive child-src has been deprecated. Please use directive worker-src to control workers, or directive frame-src to control frames respectively.'], u'level': u'warn', u'uri': u'', u'pos': u'0:0'}]

From webcompat.com with ❤️

karlcow commented 5 years ago
.g-swash {
    font-family: 'NYTMag Serif Text Light Italic', "nyt-mag-serif-headline", georgia, helvetica, sans-serif;
    font-style: italic;
    font-weight: 300;
}

.cap-f::before {
    content: '\e01C';
}

.cap-a::before {
    content: '\e017';
}

.cap-v::before {
    content: '\e02E';
}
<div class="rad-summary g-photoessay-specialchar">
  <span class="g-swash cap-f"></span>our hundred years after enslaved
  <span class="g-swash cap-a"></span>fricans were first brought to
  <span class="g-swash cap-v"></span>irginia, most
  <span class="g-swash cap-a"></span>mericans still don’t know the full story of slavery.</div>

https://www.compart.com/en/unicode/U+E017 https://www.compart.com/en/unicode/U+E01C https://www.compart.com/en/unicode/U+E02E which are all in the private use area plane.

I guess they are defined in the nyt-mag-serif-headline https://typeface.nyt.com/fonts/nyt-mag-serif-headline-700-normal.woff

@font-face {
  font-family: "nyt-mag-serif-headline";
  src: local("☺︎"), url("/fonts/nyt-mag-serif-headline-700-normal.woff") format("woff");
  font-style: normal;
  font-weight: 700;
}          

Using http://validator.fontbureau.com/ doesn't detect any issues.

@jfkthame do you know what is happening with this font?

jfkthame commented 5 years ago

The font involved for the capitals is actually https://static01.nyt.com/newsgraphics/2019/07/18/mag-1619/assets/fonts/NYTMagSerifTextEXT-LightItalicWEB.woff.

Using http://validator.fontbureau.com/ doesn't detect any issues.

That just validates the WOFF packaging/compression of the font. It doesn't validate all the font data inside. For a more thorough validation, see the OpenType Sanitizer (https://github.com/khaledhosny/ots).

Sure enough, OTS reports problems:

./ots-sanitize NYTMagSerifTextEXT-LightItalicWEB.woff 
ERROR at ../src/layout.cc:402 (ParseCoverageFormat2)
ERROR: Layout: bad start coverage index.
ERROR at ../src/layout.cc:1142 (ParseChainContextFormat3)
ERROR: Layout: Failed to parse backtrack coverage 0 in chain context format 3
ERROR at ../src/layout.cc:1460 (ParseChainingContextSubtable)
ERROR: Layout: Failed to parse chaining context format 3 subtable
ERROR at ../src/layout.cc:1178 (Parse)
ERROR: Layout: Failed to parse lookup subtable 5
ERROR at ../src/layout.cc:240 (ParseLookupTable)
ERROR: Layout: Failed to parse subtable 0
ERROR at ../src/layout.cc:1328 (ParseLookupListTable)
ERROR: Layout: Failed to parse lookup 2
ERROR: GSUB: Failed to parse lookup list table
ERROR at ../src/ots.cc:693 (ProcessGeneric)
ERROR: GSUB: Failed to parse table
Failed to sanitize file!

The font has broken OpenType layout tables. This is also reported in the Firefox web console when you load the page.

If you set gfx.downloadable_fonts.otl_validation : false in about:config, validation of these tables will be skipped and the font loads successfully. (This is the default setting on release builds, so it'll work for most users, it only fails on Nightly/Developer builds.) Nevertheless, the root of the problem is that the font resource is broken, so this should be reported to the site.

karlcow commented 5 years ago

Thanks a lot. Let's contact them.

karlcow commented 4 years ago

Sent an email to the partner mailing-list about this issue. Moving to sitewait.