Template:Fmbox/doc: Difference between revisions

From Zoophilia Wiki
Jump to navigationJump to search
meta>Sperxios
Add forgotten Template:lua sign.
Ookami (talk | contribs)
m 71 revisions imported
 
(17 intermediate revisions by 12 users not shown)
Line 1: Line 1:
{{Documentation subpage}}
{{Documentation subpage}}
{{used in system| in many system messages }}
{{for|the message box for File: pages|Template:imbox}}
{{lua}}
{{Used in system |in many system messages}}
<!-- PLEASE ADD CATEGORIES AND INTERWIKIS AT THE BOTTOM OF THIS PAGE -->
{{high-risk|12900+}}
{{Lua|Module:Message box}}
<!-- PLEASE ADD CATEGORIES WHERE INDICATED AT THE BOTTOM OF THIS PAGE -->
{{Mbox templates (small)}}


{{mbox templates}}
This is the {{tl|Fmbox}} (['''F''']ooter and header ['''m''']essage ['''box''']) template.
This is the {{tl|fmbox}} or '''footer & header message box''' template.


It can be used to build message boxes for system messages such as [[MediaWiki:Sp-contributions-footer-anon]]. It can also be used for footer and header boxes on user pages and for [[Wikipedia:Editnotice|editnotices]].
It can be used to build message boxes for system messages such as [[MediaWiki:Sp-contributions-footer-anon]]. It can also be used for footer and header boxes on user pages and for [[Wikipedia:Editnotice|editnotices]].


This template works similarly to {{tl|ambox}} and mostly uses the same parameters. The main differences are that this box is 100% wide and has different colour styles.
This template works similarly to {{tl|Ambox}} and mostly uses the same parameters. The main differences are that this box is 100% wide and has different colour styles.
{{TOC limit|3}}


=== Usage ===
===Usage===
 
Simple usage example:


'''Simple example'''
<pre>
<pre>
{{fmbox | text = Some text.}}
{{Fmbox |text=Some text.}}
</pre>
</pre> produces:
 
{{Fmbox |text=Some text.}}
{{fmbox | text = Some text.}}
 
 
Complex example:


'''Complex example'''
<pre>
<pre>
{{fmbox
{{Fmbox
| type     = editnotice
| type = editnotice
| image     = [[Image:Emblem-question-yellow.svg|40px]]
| image = [[File:Emblem-question-yellow.svg|40px]]
| style     = border: 1px solid #f4c430;
| style = border:1px solid #f4c430;
| textstyle = color: red; font-weight: bold; font-style: italic;
| textstyle = font-style:italic; font-weight:bold; color:red;
| text     = The message body text.
| text = The message's text.
}}
}}
</pre>
</pre> produces:
 
{{Fmbox
{{fmbox
| type = editnotice
| type = editnotice
| image = [[File:Emblem-question-yellow.svg|40px]]
| image     = [[Image:Emblem-question-yellow.svg|40px]]
| style = border:1px solid #f4c430;
| style     = border: 1px solid #f4c430;
| textstyle = font-style:italic; font-weight:bold; color:red;
| textstyle = color: red; font-weight: bold; font-style: italic;
| text = The message's text.
| text     = The message body text.
}}
}}


=== Footer and header message box types ===
===Footer and header message box types===


The following examples use different '''type''' parameters but use no image parameters thus they use the default images for each type.
The following examples use different {{mono|type}} parameters but no image parameters, i.e. they use the default image for each type.


{{fmbox
{{Fmbox |type=warning |text={{mono|type {{=}} warning}}<br/>For system warning notices such as [[MediaWiki:Revision-info]] and [[MediaWiki:Protectedpagewarning]].}}
| type = warning
{{Fmbox |type=editnotice |text={{mono|type {{=}} editnotice}}<br/>Provides a transparent background for [[Wikipedia:Editnotice|editnotices]].}}
| text = type=<u>warning</u> – System warning notices such as [[MediaWiki:Revision-info]] and [[MediaWiki:Protectedpagewarning]].
{{Fmbox |type=system |text={{mono|type {{=}} system}}<br/>Default light-grey system-message background.}}
}}


{{fmbox
===Non-default images===
| type = editnotice
| text = type=<u>editnotice</u> – Transparent background for [[Wikipedia:Editnotice|editnotices]].
}}


{{fmbox
The default images shown above are mostly for testing and demonstration. In most cases, it is more appropriate to use a more specific image or no image at all. The following examples use the {{mono|image}} parameter to specify an image other than the default.
| type = system
| text = type=<u>system</u> – Light grey system message background (default).
}}


=== Other images ===
{{Fmbox |image=[[File:User-info.svg|40px]] |text={{mono|image<nowiki> = [[File:User-info.svg|40px]]</nowiki>}}<br/>[[MediaWiki:Sp-contributions-footer]] image.}}
{{Fmbox |image=[[File:Commons-logo.svg|40x40px]] |text={{mono|image<nowiki> = [[File:Commons-logo.svg|40x40px]]</nowiki>}}<br/>[[MediaWiki:Sharedupload-desc-here]] image. The "40x40px" parameter within the File: link sets the height as well as the width of the image.}}


The default images shown above are mostly for testing and demonstration. In most cases it is more appropriate to use a more specific image or no image at all. These examples use the '''image''' parameter to specify an image other than the default image.
===Other examples===


{{fmbox
{{Fmbox |text=Fmbox's default image (i.e. {{mono|image}} left unspecified).}}
| image = [[Image:User-info.svg|40px]]
{{Fmbox |image=none |text=Setting {{mono|image {{=}} none}} means that the {{mono|text}} uses the whole of the message box.}}
| text = image = <nowiki>[[Image:User-info.svg|40px]]</nowiki> <br> This image is used for [[MediaWiki:Sp-contributions-footer]].  
{{Fmbox |image=[[File:User-info.svg|40px]] |imageright=[[File:Nuvola apps bookcase.svg|40px]] |text={{mono|image<nowiki> = [[File:User-info.svg|40px]]</nowiki>}}<br/>{{mono|imageright<nowiki> = [[File:Nuvola apps bookcase.svg|40px]]</nowiki>}} }}
}}
{{fmbox
| image = [[Image:Commons-logo.svg|40x40px]]
| text = image = <nowiki>[[Image:Commons-logo.svg|40x40px]]</nowiki> <br> Note the use of "40x40px" to also limit the height of the image. This image is used for [[MediaWiki:Sharedupload-desc-here]].
}}
 
=== Special ===
 
Some other parameter combinations.
 
{{fmbox
| text  = Default image given (no '''image=''' specified)
}}
{{fmbox
| image = none
| text = '''image=none''' – No image is used and the '''text''' uses the whole message box area.
}}
{{fmbox
| image = [[Image:User-info.svg|40px]]
| imageright = [[Image:Nuvola apps bookcase.svg|40px]]
| text = image = <nowiki>[[Image:User-info.svg|40px]]</nowiki> <br> imageright = <nowiki>[[Image:Nuvola apps bookcase.svg|40px]]</nowiki>
}}
 
=== Parameters ===


===Parameters===
List of all parameters:
List of all parameters:


<pre>
<pre>
{{fmbox
{{fmbox
| name = name of the template
| type  = system / editnotice / warning
| type  = system / editnotice / warning
| image = none / [[Image:Some image.svg|40px]]
| image = none / [[Image:Some image.svg|40px]]
Line 104: Line 74:
| style = CSS values
| style = CSS values
| textstyle = CSS values
| textstyle = CSS values
| plainlinks  = no
| text  = The message body text.
| text  = The message body text.
}}
}}
</pre>
</pre>
'''name'''
:(Optional) Name of the template. This adds a CSS class with name <code>box-''name''</code> to the HTML element, for use by bots or scripts.


'''type'''
'''type'''
Line 138: Line 112:
:Optional [[Cascading Style Sheets|CSS]] values used by the text cell. For example:
:Optional [[Cascading Style Sheets|CSS]] values used by the text cell. For example:
::<code>textstyle = font-size: 90%; text-align: center;</code>
::<code>textstyle = font-size: 90%; text-align: center;</code>
'''plainlinks'''
:Normally on Wikipedia, external links have an arrow icon next to them, like this: [http://www.example.com Example.com]. However, in message boxes, the arrow icon is suppressed by default, like this: <span class="plainlinks">[http://www.example.com Example.com]</span>. To get the normal style of external link with the arrow icon, use {{para|plainlinks|no}}.


'''text'''
'''text'''
:The message body text.
:The message body text.


=== Technical details ===
===Technical details===


This template currently uses hard coded styles and class names. Later it will only use CSS classes making it easier to skin. (In the meantime it can be skinned by using the "<code>!important</code>" keyword.)
This template currently uses hard coded styles and class names. Later it will only use CSS classes making it easier to skin. (In the meantime it can be skinned by using the "<code>!important</code>" keyword.)


If you need to make a box that is less than 100% wide, then do ''not'' use this box, instead use the {{tl|ombox}}. Since this box doesn't have the "1px empty image cell" code that makes it so the other mboxes get proper box flow in all browsers when less than 100% wide.
If you need to make a box that is less than 100% wide, then do ''not'' use this box; instead, use {{tl|Ombox}}. Since this box doesn't have the "1px empty image cell" code that makes it so the other mboxes get proper box flow in all browsers when less than 100% wide.
 
If you need to use special characters in the text parameter then you need to escape them like this:


If you need to use special characters in the {{mono|text}} parameter, then you need to "escape" them like this:
<pre>
<pre>
{{fmbox
{{Fmbox
| text = <div>
| text = <div>
Equal sign = and a start and end brace { } work fine as they are.  
Equal sign = and a start and end brace { } work fine as they are.  
But here is a pipe {{!}} and two end braces &lt;nowiki>}}&lt;/nowiki>.  
But here is a pipe {{!}} and two end braces &lt;nowiki>}}&lt;/nowiki&gt;.  
And now a pipe and end braces &lt;nowiki>|}}&lt;/nowiki>.
And now a pipe and end braces &lt;nowiki>|}}&lt;/nowiki&gt;.
</div>
</div>
}}
}}
</pre>
</pre>
 
This produces:
{{fmbox
{{Fmbox
| text = <div>
| text = <div>
Equal sign = and a start and end brace { } work fine as they are.  
Equal sign = and a start and end brace { } work fine as they are.  
But here is a pipe {{!}} and two end braces <nowiki>}}</nowiki>.  
But here is a pipe {{!}} and two end braces <nowiki>}}</nowiki>.  
Line 168: Line 144:
}}
}}


Internally this meta-template uses HTML wikimarkup instead of wikimarkup for the table code. That is the usual way we make meta-templates since wikimarkup has several drawbacks. For instance it makes it harder to use [[m:Help:ParserFunctions|parser functions]] and some special characters in parameters.  
To avoid potential difficulties with e.g. [[Help:ParserFunctions|parser functions]] or [[Help:Special characters|special characters]], this metatemplate uses HTML rather than [[wiki markup]] to produce the table carrying its output.


The default images for this meta-template are in png format instead of svg format. The main reason is that some older web browsers have trouble with the transparent background that MediaWiki renders for svg images. The png images here have hand optimised transparent background colour so they look good in all browsers. Note that svg icons only look somewhat bad in the old browsers, thus such hand optimisation is only worth the trouble for very widely used icons.
As some older browsers have difficulty rendering SVG transparency, the default images for this metatemplate are in PNG rather than SVG format and have been optimised by hand to ensure they work across a wide range and age of browsers. (SVG icons only look somewhat bad in older browsers, thus such optimisation is only worthwhile for very widely used icons.)


'''Note to admins:''' MediaWiki does not parse and convert HTML wikimarkup in system messages the same way as it does for normal pages. This means for instance that <code>&lt;br></code> is not automatically converted to <code>&lt;br /></code> and missing <code>&lt;/td></code> and <code>&lt;/tr></code> tags are not automatically added. Thus see to that any HTML code you use in system messages are valid XHTML. That is, close all tags that you begin. However, regular wikimarkup works fine in most system messages.
'''''Admins:''''' MediaWiki's parsing and converting HTML markup for system messages is not the same as for normal pages: <code><nowiki><br></nowiki></code> for instance, is not automatically converted to {{tag|style=plain|br|single}} and missing {{tag|style=plain|td|close}} and {{tag|style=plain|tr|close}} tags are not added automatically. Any HTML code used in system messages, therefore, must already be valid (include all complementary close tags, etc.).


For more technical details see the [[Template talk:Fmbox|talk page]]. Since this template works almost exactly like {{tl|ambox}}, {{tl|tmbox}}, {{tl|imbox}}, {{tl|cmbox}} and {{tl|ombox}} their talk pages and related pages might also contain more details.
For more details, see [[Template talk:Fmbox|the talk page]]. Since this template works in almost the same way as {{tl|Ambox}}, {{tl|Tmbox}}, {{tl|Imbox}}, {{tl|Cmbox}} and {{tl|Ombox}}, further information found on their talk pages may also be relevant.


=== See also ===
===See also===
* {{tl|fmbox warning ruler}} – A horizontal ruler in the same colour as the red border for the warning type. Used inside some system warning notices.
* {{tl|Fmbox warning ruler}}, a horizontal ruler, used within some system warning notices, that uses the same red as this template's {{mono|warning}} type.


{{Mbox templates see also}}
{{Mbox templates see also}}


{{mbox template family}}
<includeonly>{{Sandbox other|
 
| <!-- CATEGORIES BELOW THIS LINE, PLEASE: -->
<includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox||
[[Category:Mbox and messagebox templates]]
<!-- CATEGORIES AND INTERWIKIS HERE, THANKS -->
[[Category:Wikipedia metatemplates|{{PAGENAME}}]]
 
}}</includeonly>
}}</includeonly>

Latest revision as of 04:30, 3 September 2020

Message box
meta-templates
templatecontext
{{Ambox}}article
{{Cmbox}}category
{{Imbox}}image
{{Tmbox}}talk
{{Fmbox}}footer / header
{{Ombox}}other pages
{{Mbox}}auto-detect
{{Asbox}}article stub
{{Dmbox}}disambiguation

This is the {{Fmbox}} ([F]ooter and header [m]essage [box]) template.

It can be used to build message boxes for system messages such as MediaWiki:Sp-contributions-footer-anon. It can also be used for footer and header boxes on user pages and for editnotices.

This template works similarly to {{Ambox}} and mostly uses the same parameters. The main differences are that this box is 100% wide and has different colour styles.

Usage

Simple example

{{Fmbox |text=Some text.}}

produces: Page Module:Message box/fmbox.css has no content.

Complex example

{{Fmbox
 | type = editnotice
 | image = [[File:Emblem-question-yellow.svg|40px]]
 | style = border:1px solid #f4c430;
 | textstyle = font-style:italic; font-weight:bold; color:red;
 | text = The message's text.
}}

produces: Page Module:Message box/fmbox.css has no content.

Footer and header message box types

The following examples use different type parameters but no image parameters, i.e. they use the default image for each type.

Page Module:Message box/fmbox.css has no content.

Page Module:Message box/fmbox.css has no content.

Page Module:Message box/fmbox.css has no content.

Non-default images

The default images shown above are mostly for testing and demonstration. In most cases, it is more appropriate to use a more specific image or no image at all. The following examples use the image parameter to specify an image other than the default.

Page Module:Message box/fmbox.css has no content.

Page Module:Message box/fmbox.css has no content.

Other examples

Page Module:Message box/fmbox.css has no content.

Page Module:Message box/fmbox.css has no content.

Page Module:Message box/fmbox.css has no content.

Parameters

List of all parameters:

{{fmbox
| name = name of the template
| type  = system / editnotice / warning
| image = none / [[Image:Some image.svg|40px]]
| imageright = [[Image:Some image.svg|40px]]
| id = CSS id
| class = CSS class names
| style = CSS values
| textstyle = CSS values
| plainlinks  = no
| text  = The message body text.
}}

name

(Optional) Name of the template. This adds a CSS class with name box-name to the HTML element, for use by bots or scripts.

type

If no type parameter is given the template defaults to type system. That means it gets a light grey background.

image

No parameter = If no image parameter is given the template uses a default image. Which default image it uses depends on the type parameter.
An image = Should be an image with usual wiki notation. 40px - 50px width are usually about right depending on the image height to width ratio. (But the message box can handle images of any size.) For example:
image = [[Image:User-info.svg|40px]]
none = Means that no image is used.

imageright

No parameter = If no imageright parameter is given then no image is shown on the right side.
An image = Should be an image with usual wiki notation. 40px - 50px width are usually about right depending on the image height to width ratio. (But the message box can handle images of any size.) For example:
imageright = [[Image:Nuvola apps bookcase.png|40px]]
Anything = Any other object that you want to show on the right side.

id

Optional CSS id used by the entire message box table. Without quotation marks " ". Mostly meant to be used to tag a message box with its name, to make it easy to detect the presence of the message from javascript. For instance MediaWiki:Sp-contributions-footer would use:
id = sp-contributions-footer

class

Optional CSS class names used by the entire message box table. Without quotation marks " ". Mostly meant to be used to tag a message box with its name so it can be individually skinned. For instance MediaWiki:Sp-contributions-footer would use:
class = sp-contributions-footer

style

Optional CSS values used by the entire message box table. Without quotation marks " " but with the ending semicolons ;. For example:
style = margin-top: 1em;

textstyle

Optional CSS values used by the text cell. For example:
textstyle = font-size: 90%; text-align: center;

plainlinks

Normally on Wikipedia, external links have an arrow icon next to them, like this: Example.com. However, in message boxes, the arrow icon is suppressed by default, like this: Example.com. To get the normal style of external link with the arrow icon, use |plainlinks=no.

text

The message body text.

Technical details

This template currently uses hard coded styles and class names. Later it will only use CSS classes making it easier to skin. (In the meantime it can be skinned by using the "!important" keyword.)

If you need to make a box that is less than 100% wide, then do not use this box; instead, use {{Ombox}}. Since this box doesn't have the "1px empty image cell" code that makes it so the other mboxes get proper box flow in all browsers when less than 100% wide.

If you need to use special characters in the text parameter, then you need to "escape" them like this:

{{Fmbox
| text = <div>
Equal sign = and a start and end brace { } work fine as they are. 
But here is a pipe {{!}} and two end braces <nowiki>}}</nowiki>. 
And now a pipe and end braces <nowiki>|}}</nowiki>.
</div>
}}

This produces:

Page Module:Message box/fmbox.css has no content.

To avoid potential difficulties with e.g. parser functions or special characters, this metatemplate uses HTML rather than wiki markup to produce the table carrying its output.

As some older browsers have difficulty rendering SVG transparency, the default images for this metatemplate are in PNG rather than SVG format and have been optimised by hand to ensure they work across a wide range and age of browsers. (SVG icons only look somewhat bad in older browsers, thus such optimisation is only worthwhile for very widely used icons.)

Admins: MediaWiki's parsing and converting HTML markup for system messages is not the same as for normal pages: <br> for instance, is not automatically converted to <br /> and missing </td> and </tr> tags are not added automatically. Any HTML code used in system messages, therefore, must already be valid (include all complementary close tags, etc.).

For more details, see the talk page. Since this template works in almost the same way as {{Ambox}}, {{Tmbox}}, {{Imbox}}, {{Cmbox}} and {{Ombox}}, further information found on their talk pages may also be relevant.

See also

  • {{Fmbox warning ruler}}, a horizontal ruler, used within some system warning notices, that uses the same red as this template's warning type.
There are seven metatemplates in the Module:Message box family:
  • {{Ambox}}, for messageboxes on article pages.
  • {{Cmbox}}, for messageboxes on category pages.
  • {{Imbox}}, for messageboxes on file (image) pages.
  • {{Tmbox}}, for messageboxes on talk pages.
  • {{Fmbox}}, for header and footer messageboxes.
  • {{Ombox}}, for messageboxes on other types of page.
  • {{Mbox}}, for messageboxes that are used in different namespaces and change their presentation accordingly.

Closely related metatemplates:

  • {{Asbox}}, for messageboxes in article stubs.
  • {{Dmbox}}, for messageboxes on disambiguation or set-index pages.
  • {{Ivmbox}}, a simple full-width box with default ivory background intended to frame important messages or notices.

Templates intended to be used in conjunction with Mboxes: