Page MenuHomePhabricator

Skins render differently with templates returning an initial asterisk
Closed, DuplicatePublic

Description

In itwiki we have found a special case which is rendered differently between Vector/Monobook/MinervaNeue group and CologneBlue/Modern/Timeless group.

Example in:

Output with Vector, Monobook, MinervaNeue:

Output with Cologne Blue, Modern, Timeless

As you can see, the first group of skins (Vector, Monobook, MinervaNeue) renders the list correctly.

Instead the second group of skins (Cologne Blue, Modern, Timeless) generates an empty first line (before "element 1").

Our expected behaviour is the same rendering among all skins.

Event Timeline

That is because those skins are likely missing the .mw-empty-elt { display:none; } css rule for empty list items and empty list rows.

The css rule hiding the empty list items is defined in mediawiki core, in mediawiki.skinning/content.css.
Vector, Monobook, and a few other skins add the css via the resource loader module mediawiki.skinning.interface.
Skins which aren't using that module will need to define the rule themselves, like how Minerva has done in its lists.less file.

A significant contributor to empty bullets is T6281: Allow users to set a starting digit in ordered lists (and I think what was my duplicate, T202083). Fixing that would make it possible to setup a linter for the rest and then removal of the CSS/class emission, since I don't know of valid cases otherwise for empty bullets (or possibly we would find that there are other cases that need to be supported).

Change 504670 had a related patch set uploaded (by Isarra; owner: Isarra):
[mediawiki/skins/HasSomeColours@master] Hide empty list items

https://gerrit.wikimedia.org/r/504670

Change 504671 had a related patch set uploaded (by Isarra; owner: Isarra):
[mediawiki/skins/GreyStuff@master] Hide empty list items

https://gerrit.wikimedia.org/r/504671

Change 504762 had a related patch set uploaded (by Isarra; owner: Isarra):
[mediawiki/skins/BlueSky@master] Hide empty list items

https://gerrit.wikimedia.org/r/504762

Change 504763 had a related patch set uploaded (by Isarra; owner: Isarra):
[mediawiki/skins/Modern@master] Hide empty list items

https://gerrit.wikimedia.org/r/504763

Change 504766 had a related patch set uploaded (by Isarra; owner: Isarra):
[mediawiki/skins/Timeless@master] Hide empty list items

https://gerrit.wikimedia.org/r/504766

Change 504775 had a related patch set uploaded (by Isarra; owner: Isarra):
[mediawiki/skins/CologneBlue@master] Hide empty list items

https://gerrit.wikimedia.org/r/504775

Change 504771 had a related patch set uploaded (by Isarra; owner: Isarra):
[mediawiki/skins/Splash@master] Hide empty list items

https://gerrit.wikimedia.org/r/504771

Change 504772 had a related patch set uploaded (by Isarra; owner: Isarra):
[mediawiki/skins/Mask@master] Hide empty list items

https://gerrit.wikimedia.org/r/504772

Change 504821 had a related patch set uploaded (by Jack Phoenix; owner: Jack Phoenix):
[mediawiki/skins/webplatform@master] Hide empty list items

https://gerrit.wikimedia.org/r/504821

Change 504822 had a related patch set uploaded (by Jack Phoenix; owner: Jack Phoenix):
[mediawiki/skins/Truglass@master] Hide empty list items

https://gerrit.wikimedia.org/r/504822

Change 504823 had a related patch set uploaded (by Jack Phoenix; owner: Jack Phoenix):
[mediawiki/skins/Tempo@master] Hide empty list items

https://gerrit.wikimedia.org/r/504823

Change 504762 merged by jenkins-bot:
[mediawiki/skins/BlueSky@master] Hide empty list items

https://gerrit.wikimedia.org/r/504762

Change 504775 merged by jenkins-bot:
[mediawiki/skins/CologneBlue@master] Hide empty list items

https://gerrit.wikimedia.org/r/504775

Change 504671 merged by jenkins-bot:
[mediawiki/skins/GreyStuff@master] Hide empty list items

https://gerrit.wikimedia.org/r/504671

Change 504670 merged by jenkins-bot:
[mediawiki/skins/HasSomeColours@master] Hide empty list items

https://gerrit.wikimedia.org/r/504670

Change 504772 merged by jenkins-bot:
[mediawiki/skins/Mask@master] Hide empty list items

https://gerrit.wikimedia.org/r/504772

Change 504763 merged by jenkins-bot:
[mediawiki/skins/Modern@master] Hide empty list items

https://gerrit.wikimedia.org/r/504763

Change 504771 merged by jenkins-bot:
[mediawiki/skins/Splash@master] Hide empty list items

https://gerrit.wikimedia.org/r/504771

Change 504766 merged by jenkins-bot:
[mediawiki/skins/Timeless@master] Hide empty list items

https://gerrit.wikimedia.org/r/504766

Change 504823 merged by jenkins-bot:
[mediawiki/skins/Tempo@master] Hide empty list items

https://gerrit.wikimedia.org/r/504823

Change 504822 merged by jenkins-bot:
[mediawiki/skins/Truglass@master] Hide empty list items

https://gerrit.wikimedia.org/r/504822

Change 504821 merged by jenkins-bot:
[mediawiki/skins/webplatform@master] Hide empty list items

https://gerrit.wikimedia.org/r/504821

For deployed skins

  • Vector loads the content and legacy feature.
  • Monobook loads the content and legacy feature.
  • CologneBlue loads legacy
  • Modern loads legacy
  • MinervaNeue provides its own style for mw-empty-elt.
  • Timeless provides its own style for mw-empty-elt, but also loads legacy style.

As a result only Cologneblue and Modern impacted. Merging into T150742 and updating that ticket.