I noticed that when a wrapper of this template is called on the page the title parameter links to, the title renders as the link color despite not actually being a link. This doesn't align with the default behavior when a page links to itself (e.g.: Module talk:Sidebar) or the behavior when a non-title link in a sidebar links to the page it's placed on. It's also possible that this violates the Links should be clearly identifiable as links for readers clause of MOS:COLOR (it doesn't conform to the inverse, i.e. that non-links shouldn't appear as links).
My Lua knowledge is limited at best so I have no idea what/who (and, by extension, why) caused this. Any thoughts?
First noticed it on Mathematics. – Daℤyzzos (✉️ • 📤) 23:22, 29 July 2025 (UTC) P.S. Just realized this—only happens on dark mode (probably should've checked that earlier, but oh well.) Also: using Chrome but also shows up in Safari on my phone (again only in dark mode). – Daℤyzzos (✉️ • 📤) 23:28, 29 July 2025 (UTC)[reply]
This also occurs using Firefox, again dark mode only. The HTML that is served has
<tableclass="sidebar nomobile nowraplinks hlist"><tbody><tr><tdclass="sidebar-pretitle">Part of a series on</td></tr><tr><thclass="sidebar-title-with-pretitle"><aclass="mw-selflink selflink">Mathematics</a></th></tr>
...
</tbody></table>
In both dark and light mode, this comes with the following CSS:
which is what makes the word "Mathematics" appear black and boldface. But in dark mode only, the following CSS (found in Module:Sidebar/styles.css) is used in addition:
The last three simple selectors (.sidebar:not(.notheme) .sidebar-title-with-pretitle a) are what's causing the color to be overridden. The color value (var(--color-progressive)) is read from a variable that is set elsewhere. Why it's written that way, I don't know. --Redrose64 🌹 (talk) 07:10, 30 July 2025 (UTC)[reply]
I did some WikiBlame-ing and discovered that the last bit of CSS in your comment (the @media screen one) was added in this edit to the style page by @Jdlrobson (pinging to find the reasons for the addition as the link in the edit summary is broken and a search for "Fall of Constantinople dark mode error" on talk pages turned up blank). – Daℤyzzos (✉️ • 📤) 13:20, 30 July 2025 (UTC)[reply]
it's supposed to be full wiki syntax Assuming without evidence that people follow the documentation or any expectations at all is a bad idea. :) That's how we got a failed "divification" of this template (and I'm sure many other failed rollouts of other software over the years).
a link (or links) in the if branch I realize I read this wrong in hindsight, but I think it rolls back around to the first comment about assuming the documentation is king.
We need/want to substantiate your claim that the documentation reflects reality about the use of the image arguments or make something a bit more resilient to all the fun things users do. Izno (talk) 18:57, 2 September 2025 (UTC)[reply]
With <img src="Kylix Theseus Aison MNA Inv11365 n1.jpg">class=notopimage]] it shows up as <img src="Kylix Theseus Aison MNA Inv11365 n1.jpg">class=notopimage]] which isn't much worse than without the "class=notopimage]]" bit. I seriously doubt that's actually used for that parameter.
Why would we expect raw image HTML, which is distinctly not a possibility in this environment?
I'm talking the basic <div class=""> or {| class="", either of which one might find in this element (possibly by transcluded content - as a particular example, {{Politics sidebar title}}, which is supposed to be put in |title= but that doesn't stop people).
And I think the former case is precisely something to concern oneself with. Users on this wiki if nowhere else don't like anything breaking, whether or not their understanding is calibrated correctly.
NB I am not trying to make your life difficult. I am pointing out that the masses will come for anyone who didn't consider factors like the above and account for them directly in what is deployed. Izno (talk) 21:47, 2 September 2025 (UTC)[reply]
That specific example {{Politics sidebar title}} wouldn't matter because it doesn't use the image arg, but I get your point.
I've added a sanity check for [[File: or [[Image:.
This edit request has been answered. Set the |answered= parameter to no to reactivate your request.
Hi, per WIA-ARIA, can the parent <table> HTML element with classes sidebar sidebar-collapse nomobile nowraplinks please get an ARIA role. Like the Mbox templates (see Module:Message box, I was thinking role="none" is most appropriate. Although, in this case since most sidebars are navigation boxes it may be helpful to able to pass a boolean parameter to change the ARIA role given to role="navigation".
@Izno What do you think? Sorry, I'm browsing around with my screenreader and noticed the sidebar also uses HTML tables still... Are you also on-board with role="none" and a boolean argument to switch this to role="navigation"?
(P.S. future me or someone else kind enough I can proof it—will have to also explain clearly and succinctly in sidebar and sidebar with collapsible lists template docs how to use lists (that expose <ul>, <li>, etc.) and be ARIA-friendly i.e. grouping them so they're read out usefully, labelling (!!) so important as otherwise a long babelling electronic voice of hyperlinks is all the visually impaired has for reference etc. if this is even possible to achieve on WP...) waddie96 ★ (talk)02:47, 1 September 2025 (UTC)[reply]
Sidebars are either nav or aside, if we were to use HTML elements that I don't current have access to. I'll mark it up as nav for now in the sandbox. Izno (talk) 16:57, 1 September 2025 (UTC)[reply]
Thanks. I'm pretty confident that this particular WIA-ARIA work such as assigning roles to HTML elements whose semantics are incongruent to their use-case is an uncontroversial edit despite it being such a high-use page. Placing edit request.
Kindly at the HTML attribute role="navigation" to the parent <table> element please. This will replace the implicit semantics of a data table with the explicit semantics of a navigation group/group of links (the identical semantics as <nav>) to accessibility technology.
I guessed this, so please don't slate me:
−
:css('width', args.width or nil)
:cssText(args.bodystyle or args.style)
+
:css('width', args.width or nil)
:cssText(args.bodystyle or args.style)
:attr("role", "navigation")
Good day @Izno. Please can you just insert the code I posted below for now. There's no timeline how long it may take the sandbox editing/testing to finish, and this edit won't need much testing beyond me checking ten or so use-cases that it actually shows up... At line 156, insert the highlighted code:
root=root:tag('table')ifnotchildthenroot:addClass(cfg.i18n.class.sidebar)-- force collapsibleclass to be sidebar-collapse otherwise output nothing:addClass(collapsibleClass==cfg.i18n.class.collapseandcfg.i18n.class.collapseornil):addClass('nomobile'):addClass(args.float==cfg.i18n.float_noneandcfg.i18n.class.float_noneornil):addClass(args.float==cfg.i18n.float_leftandcfg.i18n.class.float_leftornil):addClass(args.wraplinks~=cfg.i18n.wrap_trueandcfg.i18n.class.wraplinksornil):addClass(args.bodyclassorargs.class):css('width',args.widthornil):attr('role','presentation'):cssText(args.bodystyleorargs.style)
The reason I have not done so is because we expect to have two changes and I'm preventing the WP:Job queue from having to swallow two in some relatively quick procession (editing highly used modules has been observed by the WMF before). Users have lived with the change for many many years and is relatively minor at the end of the day. There is also 0 reason to test it any further. You should move on to more productive activities. And lastly, setting role to presentation is already what we're not doing. Izno (talk) 16:29, 7 September 2025 (UTC)[reply]
Ah ok got you. Thanks for the education 😄. Observed meaning it was able to cause enough performance issues that WMF was able to track the cause all the way down to a module? Insane.
If it’s in retaliation because I came across with tone I do apologise, the web doesn’t come with emotion semantics unless you use an emoticon 😅 waddie96 ★ (talk)20:21, 7 September 2025 (UTC)[reply]
This template must be followed by a complete and specific description of the request, so that an editor unfamiliar with the subject matter could complete the requested edit immediately.
Edit requests to template-protected pages should only be used for edits that are either uncontroversial or supported by consensus. If the proposed edit might be controversial, discuss it on the protected page's talk page before using this template. Consider making changes first to the module's sandbox before submitting an edit request. To request that a page be protected or unprotected, make a protection request. When the request has been completed or denied, please add the |answered=yes parameter to deactivate the template.
Please adjust line-height to be in keeping with the increase at {{infobox}}.
Reason being: Currently, links etc. will be too bunched together, and it actually makes it 'harder' to read from an usability perspective since it appears busy/cluttered and 'a lot'. waddie96 ★ (talk)04:49, 14 September 2025 (UTC)[reply]