Confirmed users
1,567
edits
(taxonomy page.) |
(reorganizing the content and adding cases) |
||
| Line 2: | Line 2: | ||
Explore the reasons why a site fails in a browser. | Explore the reasons why a site fails in a browser. | ||
'''The Web site is…''' | |||
* | |||
* | == Using a specific vendor technology == | ||
* | |||
=== Examples === | |||
** | * prefixed CSS and JavaScript (<nowiki>-webkit-*</nowiki>, <nowiki>webKit*</nowiki>). | ||
* | * Specific codec for video supported only in one browser, platform, | ||
* … | |||
** | === What can be done? === | ||
* | |||
* Outreach to the site. Long process and not always successful | |||
** | * Shim it inside Firefox while attempting to do outreach. (Site Interventions) | ||
* Fix it in Firefox if really widespread on too may sites. It becomes (unfortunately) part of the Web reality. | |||
** | |||
** We can | |||
== Sending a specific working version of the site == | |||
Often based on user agent sniffing both on the client side or/and the server side. | |||
These can be very difficult to solve. It's more business related than a technical issue. | |||
=== Examples === | |||
* Different tier version for different browsers (Google search, Baidu, etc.). | |||
=== What can be done? === | |||
* Outreach to the site, if we can demonstrate that the "fancier version" is working well in Firefox. | |||
* create a UA override in some circumstances. Drawback: we disappear from the statistics. (Site Interventions) | |||
== Sending to a specific interactions of the site through features detections == | |||
Basically the sites are doing the right thing here, but someone having a degraded UX behavior compared to someone using a different browser will report it as the browser not working. | |||
=== Examples === | |||
* Sending a video with a codec with lower definitions | |||
=== What can be done? === | |||
* Outreach to the site. | |||
* Shim it. (Site Interventions) | |||
== Using a standard technology not yet supported by Firefox == | |||
The Webcompat issues of today are sometimes created by the lack of support of technologies of yesterdays. | |||
=== Examples === | |||
* SpeechRecognition. This creates a load of secondary issues such as adding future code detection legacies. | |||
=== What can be done? === | |||
* Implement it in Firefox | |||
== Using a NON-standard technology not yet supported by Firefox == | |||
These are hard to fix. When we fix it in Firefox, we create secondary compatibility issues. Sites sometimes use these as signals for codepath selection to trigger different user experiences. | |||
=== Examples === | |||
* innerText (FIXED) | |||
* window.event (FIXED) | |||
* CSS Zoom | |||
=== What can be done? === | |||
* Implement it in Firefox, but we need to deal with the consequences too. Example: using window.event, to target the detection of keyCode. | |||
* Outreach if the problem is not widespread. | |||
== Relying on a bug of another browsers == | |||
There is a spec but specs are sometimes not implemented exactly the same. Not every corner cases and spec interactions are tested. But market shares have a strong influence on which bugs become de facto normative as developers rely and test on the main market share browsers of the moment. | |||
=== Examples === | |||
* Some sites were broken because Firefox implemented the flexbox spec and Chrome had a different way of doing things. | |||
=== What can be done? === | |||
* Outreach '''if''' the behavior/usage is not well-spread | |||
* File a bug on Blink and/or WebKit repos to help them fix the issue. (The decision will be adjusted depending on Counter stats) | |||
* Change the firefox behavior to match the other browser behavior and change the spec to reflect the reality of implementations. | |||
== breaking because of Mozilla technology choices == | |||
=== Examples === | |||
* Enhanced Tracking Protection (ETP) will block resources online and hence will break websites in unexpected ways. | |||
=== What can be done? === | |||
* Outreach to the site '''but''' only in limited ways. We can't ask a website to not track users if it's part of their business models. It's their choice. | |||
* Explain people using firefox they made the choice to use ETP strict and that breakage is expected. | |||
* Shim it so the site doesn't break. This is borderline in some cases. | |||
[[Category: Web Compatibility]] | [[Category: Web Compatibility]] | ||