https://github.com/octfx/mediawiki-extensions-templatestylesextender
Extends TemplateStyles with new selectors and matchers.
https://github.com/octfx/mediawiki-extensions-templatestylesextender
mediawiki-extension
Last synced: about 1 year ago
JSON representation
Extends TemplateStyles with new selectors and matchers.
- Host: GitHub
- URL: https://github.com/octfx/mediawiki-extensions-templatestylesextender
- Owner: octfx
- License: gpl-2.0
- Created: 2021-03-19T19:59:50.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-11-17T17:55:15.000Z (over 1 year ago)
- Last Synced: 2025-04-27T06:52:00.411Z (about 1 year ago)
- Topics: mediawiki-extension
- Language: PHP
- Homepage: https://mediawiki.org/wiki/Extension:TemplateStylesExtender
- Size: 201 KB
- Stars: 8
- Watchers: 1
- Forks: 4
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
README
# TemplateStylesExtender
Extends Extension:TemplateStyles by the following new matchers:
* CSS Variables:
* Example: `color: var( --example-var )`
* `image-rendering`
* `ruby-position`
* `ruby-align`
* `scroll-margin-*`, `scroll-padding-*`
* `pointer-events`
* `aspect-ratio`
## Installation
Download the zip file from the [latest release](https://github.com/octfx/mediawiki-extensions-TemplateStylesExtender/releases/latest) page.
Extract the folder to `extensions/TemplateStylesExtender`.
Add the following to `LocalSettings.php`:
```php
wfLoadExtension( 'TemplateStyles' );
wfLoadExtension( 'TemplateStylesExtender' );
```
## Configuration
`$wgTemplateStylesExtenderEnablePrefersColorScheme`
Default: `true`
Enables or disables `@media (prefers-color-scheme)` queries.
`$wgTemplateStylesExtenderEnableCssVars`
Default: `true`
Enables or disables css variable support.
`$wgTemplateStylesExtenderEnableUnscopingSupport`
Default: `false`
Allows users with `editinterface` permissions to unscope css by setting a `wrapclass` attribute.
**Note**: This is potentially expensive, as each templatestyles tag with `wrapclass` set, will attempt to look up the user of the current page revision, and check if this user has the permission to activate css un-scoping.
Example:
`` results in the css being scoped to `.mediawiki` instead of `.mw-parser-output`.
**Note**: 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.
`$wgTemplateStylesExtenderUnscopingPermission`
Default: `editinterface`
Specify a permission group that is allowed to unscope css.
## Notes on CSS vars
Currently 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.
```css
div#content-wrap {
--padding: 10px
}
.content {
padding: var( --padding )
}
```
Wikitext
```html
The WikiText...
```