Brion thanks so much for the feedback
A few comments below...
Are more styles damaging or legit? How do we know? I'd encourage keeping all styles by default except for ones known to cause trouble...
The problem is that styles can be extremely damaging render content unreadable. I'd rather have a page that was ugly and readable than a page that is trying to be pretty and unreadable.
This is personally my favourite option and for this reason I'd rather that making content mobile friendly was an additional step. I know this is a big undertaking but as I said readable content should be our priority.
We could also conditionally scrub styles depending on their contents e.g. any styles that contain known problematic properties e.g. width, float, margin for example
Kills backward compatibility with existing pages, so I'd recommend against this.
Agreed.
** one could imagine pages/templates being able to maintain their own stylesheets for desktop and mobile to allow customisations
^^^ this would be very useful!
Is that something that has been discussed before and is feasible? It would certainly be useful for mobile as we could apply page specific hacks where needed to fix bugs on the mobile site rather than putting generic rules elsewhere.
Education is tough, but setting good examples in usage and documentation always helps. Most styles are probably cut-n-pasted from elsewhere, so the more we fix, the more new things will be fixed.
An example that I made a little effort on is the layout of portal pages. I manually fixed up a number of portals (but not all! there's more to go), giving them *inline styles* if any that were mobile-safe, and then using *global styles* in MediaWiki:Common.css to provide for multi-column-style layouts on large screens. I also redid some of the templates from using tables to floats or inline-blocks that fit both large and small screens reasonably.
This is true but it is a slow process.
Especially if this can be combined with <script> blocks attached to templates -- and thus not forced to be manually rewritten -- I think that's the way to go.
How would this work? Sorry I'm not sure but I'm not too clear. This doesn't seem to solve the problem for browsers with javascript disabled though..