3 ms·
If by "standards-compliant" you mean "sometimes standards-compliant, and sometimes riddled with major, painful bugs" (including bugs that usually have already b
by ubertaco 10y ago
If by "standards-compliant" you mean "sometimes standards-compliant, and sometimes riddled with major, painful bugs" (including bugs that usually have already been patched upstream in Webkit long before the patches eventually trickle their way down into Safari).
Pulling from a comment I posted over on Reddit recently:
--
Looking back through my painful history of Safari headaches I've personally encountered in building a single-page app, at least it appears that there's some progress:
* It looks like the pervasive, opaque, and seemingly-random "attempted to assign to readonly property" crap that affected only Safari and broke Angular, Ember, React, and others has been fixed, at least in upstream Webkit (https://bugs.webkit.org/show_bug.cgi?id=138038#c21 https://bugs.webkit.org/show_bug.cgi?id=138038#c21). I guess we can take out our Safari-only monkey-patch fix now, so that's nice. Would be nice if I could get that entire work week of debugging and workarounds back, but c'est la vie. Assuming, of course, that Safari has finally pulled this fix in from upstream, which is far from guaranteed.
* Date parsing (http://stackoverflow.com/questions/4310953/invalid-date-in-safari http://stackoverflow.com/questions/4310953/invalid-date-in-s...) now behaves up to the standard, just like all other browsers; I suppose we no longer need to use Moment.js as "Safari's handicap access ramp" anymore either.
* The broken multi-select bug (http://stackoverflow.com/questions/20039194/multiple-select-in-safari-ios-7?lq=1 http://stackoverflow.com/questions/20039194/multiple-select-...) still seems sporadically there.
* It's unclear whether they've fixed adjacent-element selectors in querySelector (https://github.com/jquery/sizzle/issues/290 https://github.com/jquery/sizzle/issues/290). It's been fixed in Webkit, so maybe in a year or so Safari will have it fixed too.
This is just stuff I've seen in my normal day-to-day of a not-super-complex Angular single-page app. You can see, I'd hope, why I have plenty of room based on Safari's track record to assume their implementation of anything is subtly-but-painfully broken.
Normally, I'd go check the status of these things on a bugtracker, but unlike the Chromium team, the Firefox team, or the Edge team, I guess the Safari team is just too perfect to need a publicly-accessible bugtracker. Or too embarrassed to have one? Yeah, it's one of those.
Having a green (or more often, yellow-green) checkbox on caniuse or kangax doesn't mean the feature is usable, it just means it's technically available.
- cweagans 10y agoOkay, but you have to remember that 95% of the internet isn't a single page app. Most websites are still just simple brochure sites that don't need that kind of complexity, but with IE, even those sites would have problems. If you're primarily working on SPAs, I could see how you might be a bit miffed at some of those behaviors, but can you really point to a list of four bugs (that are fixed now) and say it's as bad as IE6 was?