I should also add that the reason I say this is that IE8 is not the only browser that doesn't support media queries. There are many browsers that were written before IE8 and installed on phones with no upgrade path. This is just one of the biggest ones. On 15 Nov 2015 7:08 a.m., jdlrobson@gmail.com wrote:
The solution to this is to do true mobile first development e.g. wrap your desktop and tablet styles in media queries. Rendering a mobile site in IE8 is an acceptable trade off and ensures the content remains readable which is the most important thing here.
We (Wikimedia devs) still build desktop first in all our major projects and we really need to shift away from this. We can't simply build for desktop and then adapt it to work on mobile which seems to be a common misconception by anyone who hasn't built things for mobile. This approach is costly as we end up rebuilding things we've already built to make them work on mobile. We used to have a mobile department that pretty much did this as a full time job but now that has gone we really need to adopt this tried and tested approach. On 13 Nov 2015 2:20 a.m., "Isarra Yos" zhorishna@gmail.com wrote:
Perhaps I should clarify why this is a problem. In fully responsive skins, you generally have separate stylesheets for desktop, mobile, really big desktop, whatever in order to keep the CSS rules simple and not redundant (to avoid having mobile overriding desktop rules or visa versa, you just only send the mobile styles to mobile, the desktop to desktop). You do this by setting maximum and minimum screen sizes in the @media queries, but the problem is, IE8 does not support this, and will not load a stylesheet at all if these sizes are set. So you need to give it the desktop styles some other way, without the @media size rules present.
While it is possible to simply add CSS to the page header using outputPage, probably bypassing RL and all that entirely, this only works with CSS, not LESS, because all the LESS magic is happening within RL. So without RL, that means you need to render your desktop stylesheet into CSS for this, which means you now need to maintain it in two different places even though it's the same rules in both.
Using js got around this whole problem as with that you can simply check the browser there and then conditionally mw.loader.load a size-free module for IE8.
Is there any other way around this?
On 12/11/15 02:56, Isarra Yos wrote:
Is there a way to conditionally load RL modules for folks using IE8? Because I couldn't figure out any proper way to do that in my skins and I've just been using js to do it instead as a result.
But that's not going to work anymore. But it's also stupid regardless.
On 12/11/15 02:11, Krinkle wrote:
Hey all,
Starting in January 2016, MediaWiki will end JavaScript support for Microsoft Internet Explorer 8. This raises the cut-off up from MSIE 7. Users with this browser will still be able to browse, edit, and otherwise contribute to the site. However, some features will not be available to them. For example, the enhanced edit toolbar will not appear, and the notification buttons will take you to a page rather than a pop-out.
This change will affect roughly 0.89% of all traffic to Wikimedia wikis (as of October 2015). For comparison, 0.33% of traffic comes from Internet Explorer 6, and 1.46% from Internet Explorer 7. Support for these was dropped in August and September 2014 respectively.
Providing JavaScript for IE 8 adds a significant maintenance burden. It also bloats the software we ship to all users, without proportionate benefit. This enables us to simplify and streamline the JavaScript codebase for all other users. Users unable to upgrade from Internet Explorer 8 will have a faster experience going forward, based on well-tested and more stable code.
This change will land in the development branch in January, and so will be part of MediaWiki 1.27 (to be released around May 2016).
Tech News will announce this change as well, but please help carry this message into your communities. In January, we will send a reminder before the change happens.
Yours, -- Krinkle
For details about the JavaScript-less experience, see https://www.mediawiki.org/wiki/Compatibility _______________________________________________ Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l
_______________________________________________ Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l
On 2015-11-14 2:39 PM, Jon Robson wrote:
While it is possible to simply add CSS to the page header using outputPage, probably bypassing RL and all that entirely, this only works with CSS, not LESS, because all the LESS magic is happening within RL. So without RL, that means you need to render your desktop stylesheet into CSS for this, which means you now need to maintain it in two different places even though it's the same rules in both.
Is there any other way around this?
If you were ok with IE8 support requiring Node.js, the PostCSS ecosystem has a bunch of plugins to transform CSS (which someone could try and plug into RL).
Such as: https://github.com/jonathantneal/oldie
~Daniel Friesen (Dantman, Nadir-Seen-Fire) [http://danielfriesen.name/]
wikitech-l@lists.wikimedia.org