Extension:TemplateStylesExtender
TemplateStylesExtender Release status: stable |
|
---|---|
Implementation | Parser extension |
Description | Extends Extension:TemplateStyles with new selectors |
Author(s) | Octfxtalk |
Latest version | 1.2.0 (2023-07-19) |
MediaWiki | 1.39+ |
PHP | >=8.0 |
Composer | octfx/template-styles-extender |
License | GNU General Public License 2.0 or later |
Download | GitHub: Note: |
|
|
The TemplateStylesExtender extension extends Extension:TemplateStyles with new selectors and matchers.
Features
editAdd support for:
- CSS variables:
- Example
color: var( --color-base )
- Example
image-rendering
ruby-position
ruby-align
scroll-margin-*
andscroll-padding-*
@media (prefers-color-scheme: dark/light)
media queriesmask-image
clamp
revert / revert-layer
aspect-ratio
Installation
edit- Download and place the file(s) in a directory called
TemplateStylesExtender
in yourextensions/
folder. - Add the following code at the bottom of your LocalSettings.php file:
wfLoadExtension( 'TemplateStyles' ); wfLoadExtension( 'TemplateStylesExtender' );
- Configure as required.
- Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.
Configuration
editKey | Description | Example | Default |
---|---|---|---|
$wgTemplateStylesExtenderEnablePrefersColorScheme | Flag to enable @media (prefers-color-scheme: dark/light) media queries
|
false | true |
$wgTemplateStylesExtenderEnableCssVars | Flag to enable CSS vars | false | true |
$wgTemplateStylesExtenderEnableUnscopingSupport | Flag to enable unscoping of CSS by users with editinterface permissions | true | false |
Note CSS Vars
editCurrently using :root
selectors won't work due to template styles prepending .mw-parser-output
.
One possible fix is to wrap the entire content into a 'div' element and adding the declarations to this, e.g.
div#content-wrap { --padding: 10px } .content { padding: var( --padding ) }
Wikitext
<div id="content-wrap"> <div class="content"> The WikiText... </div> </div>
Unscoping of CSS
editExample: <templatestyles src="Foo/style.css" wrapclass="mediawiki" />
results in the CSS being scoped to .mediawiki
instead of .mw-parser-output
.
Including such a call in a page essentially limits editing to users with the
editinterface
right. You can alternatively include a call to a template that includes the styles.See also
editThis extension is included in the following wiki farms/hosts and/or packages: This is not an authoritative list. Some wiki farms/hosts and/or packages may contain this extension even if they are not listed here. Always check with your wiki farms/hosts or bundle to confirm. |