Page MenuHomePhabricator

Extension style-sheets are loaded after user style-sheets.
Closed, ResolvedPublic

Description

I have just switched from REL_1_16 to trunk. I have the CodeReview extension installed, and have a bunch of local CSS rules (in [[MediaWiki:Common.css]]) which customise the styling of the CodeReview output.

In 1.16, before the resource loader was added, the load order for CSS stylesheets was extensions, then core, then user styles.

In trunk, this appears to have changed to be core, user styles, extensions.

The correct order shold be core, extensions, user styles.

The current situation means that my local styles are being over-ridden by the default CodeReview stylings, and there is no way to get round this - I can't even use !important, as the CodeReview styles are already using this!


Version: 1.17.x
Severity: major

Details

Reference
bz26131

Event Timeline

bzimport raised the priority of this task from to Medium.Nov 21 2014, 11:22 PM
bzimport set Reference to bz26131.
  • Bug 26128 has been marked as a duplicate of this bug. ***

(From bug 26128, comment #1, by Aaron Schulz)

Probably caused by r75331.

We should force user scripts and styles to be the absolute last thing on the page; apparently we're not doing a good enough job of that right now.

a.d.bergi wrote:

Its the same with the liquid-thread-extension (tried at http://translatewiki.net). I needed to put a !important behind the "corrections".

r77693 resolves this by adding user and user.options scripts at the end of the body, and pushing any user* modules to the end of the head.

(In reply to comment #5)

r77693 resolves this by adding user and user.options scripts at the end of the
body, and pushing any user* modules to the end of the head.

This didn't actually work because dynamically added <style> tags were still being added below the <link> tag for user styles. Really fixed in r78943.