summaryrefslogtreecommitdiff
path: root/resources/mediawiki.less/mediawiki.mixins.less
diff options
context:
space:
mode:
Diffstat (limited to 'resources/mediawiki.less/mediawiki.mixins.less')
-rw-r--r--resources/mediawiki.less/mediawiki.mixins.less46
1 files changed, 46 insertions, 0 deletions
diff --git a/resources/mediawiki.less/mediawiki.mixins.less b/resources/mediawiki.less/mediawiki.mixins.less
new file mode 100644
index 00000000..19a715b9
--- /dev/null
+++ b/resources/mediawiki.less/mediawiki.mixins.less
@@ -0,0 +1,46 @@
+/**
+ * Common LESS mixin library for MediaWiki
+ *
+ * By default the folder containing this file is included in $wgResourceLoaderLESSImportPaths,
+ * which makes this file importable by all less files via '@import "mediawiki.mixins";'.
+ *
+ * The mixins included below are considered a public interface for MediaWiki extensions.
+ * The signatures of parametrized mixins should be kept as stable as possible.
+ *
+ * See <http://lesscss.org/#-mixins> for more information about how to write mixins.
+ */
+
+.background-image(@url) when (embeddable(@url)) {
+ background-image: embed(@url);
+ background-image: url(@url)!ie;
+}
+
+.background-image(@url) when not (embeddable(@url)) {
+ background-image: url(@url);
+}
+
+/* Note gzip compression means that it is okay to embed twice */
+.background-image-svg(@svg, @fallback) {
+ background-image: url(@fallback);
+ /* SVG support using a transparent gradient to guarantee cross-browser
+ * compatibility (browsers able to understand gradient syntax support also SVG) */
+ /* @embed */ background-image: -webkit-linear-gradient(transparent, transparent), url(@svg);
+ /* @embed */ background-image: linear-gradient(transparent, transparent), url(@svg);
+}
+
+/* Caution: Does not support localisable images */
+.list-style-image(@url) when (embeddable(@url)) {
+ list-style-image: embed(@url);
+ list-style-image: url(@url)!ie;
+}
+
+.list-style-image(@url) when not (embeddable(@url)) {
+ list-style-image: url(@url);
+}
+
+.transition(@string) {
+ -webkit-transition: @string;
+ -moz-transition: @string;
+ -o-transition: @string;
+ transition: @string;
+}