Template:Tmbox/doc
This is a documentation subpage for Template:Tmbox. It contains usage information, categories, interlanguage links and other content that is not part of the original template page. |
This template is used on 1,000,000+ pages. To avoid large-scale disruption and unnecessary server load, any changes to this template should first be tested in the template's /sandbox or /testcases subpages, or in your own user space. The tested changes can then be added in one single edit to the template. Please consider discussing any changes on the talk page before implementing them. |
Template:Mbox templates This is the {{tmbox}}, or talk page message box, meta-template. This template is called by other templates to give a consistent structure and appearance to boilerplate messages used on talk pages across the project. It may be called directly on a talk page in order to present a one-off message in the same format as boilerplate messages, but this is non-standard (if a message is important enough to be presented in this form, you should consider creating a separate template so that it is easily available to other editors). Tmbox offers several different colors for different purposes, provides default images if no image parameter is given, and has some other pleasant features. This template works similarly to {{ambox}} and uses the same parameters.
This template should not be used for WikiProject banners. Such banners have special programming constraints that merit their own meta-templates. See the "See also" section below for links.
Suggested style standard
The types of talkpage messageboxes follow the same naming convention as the boxes for all other namespaces, but the type of any particular talkpage messagebox may not be as obvious as in other namespaces. When deciding on the type to use for a talkpage messagebox, please consider the following guidelines:
- speedy should only be used for speedy deletion templates.
- delete should only be used for templates relating to ongoing deletion discussions. Please do not use this type just to get a red border for a messagebox.
- content and style should be used for warnings and alerts. Use content (which has an orange border) for more important and immediate alerts, and style (yellow border) for less important warnings. Messageboxes of these types should ideally be transitory: they should not be expected to remain on a talkpage indefinitely.
- move and protection should only be used for messageboxes relating to moves and merges, and page protection, respectively.
- The notice type should be used for the majority of talkpage messageboxes; those that are intended to convey or summarise information. If a talkpage messagebox does not obviously fit into one of the other types, it is probably a notice type.
Usage
Simple usage example:
{{tmbox | text = Some text.}}
40x40px | Some text. |
Complex example:
{{tmbox | type = style | image = [[Image:Emblem-question-yellow.svg|40px]] | style = width: 400px; | textstyle = color: red; font-weight: bold; font-style: italic; | text = The message body text. }}
40px | The message body text. |
Talk page message box types
The following examples use different type parameters but use no image parameters thus they use the default images for each type.
40x40px | type=speedy – Speedy deletion templates. |
40x40px | type=delete – Deletion templates. |
type=content – Major warnings and problems. |
40x40px | type=style – Minor warnings and problems. |
40x40px | type=notice – Notices and messages of any kind, both permanent and temporary. |
40x40px | type=move – Merge, split, rename and transwiki messages and proposals. |
40x40px | type=protection – Protection templates. |
Special
Some other parameter combinations.
40x40px | No type and no image given (default) |
No type and image=none – No image is used and the text uses the whole message box area. |
image = [[Image:Gnome globe current event.svg|42px]] imageright = [[Image:Nuvola apps bookcase.svg|40px]] |
40px |
Parameters
List of all parameters:
{{tmbox | type = speedy / delete / content / style / notice / move / protection | image = none / [[Image:Some image.svg|40px]] | imageright = [[Image:Some image.svg|40px]] | style = CSS values | textstyle = CSS values | text = The message body text. | small = {{{small|}}} / yes | smallimage = none / [[Image:Some image.svg|30px]] | smallimageright = none / [[Image:Some image.svg|30px]] | smalltext = A shorter message body text. }}
type
- If no type parameter is given the template defaults to type notice. That means it gets a gray border.
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:Crystal package settings.png|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.
style
- Optional CSS values used by the entire message box table. Without quotation marks
" "
but with the ending semicolons;
. For example:style = margin-bottom: 0.5em;
textstyle
- Optional CSS values used by the text cell. For example:
textstyle = text-align: center;
text
- The message body text.
The small parameters
30x30px | small = yes |
30x30px | type = style small = yes |
small
- yes = Makes it a smaller right floating message box. This also makes the default images smaller. Note that any data fed to the smallimage, smallimageright and smalltext parameters is only used if "small=yes". To make it so your template also understands the small parameter you can use this code:
small = {{{small|}}}
30px | small = yes image = [[Image:Nuvola apps bookcase.png|40px]] smallimage = [[Image:Nuvola apps bookcase.png|30px]] |
smallimage
- No parameter = If no smallimage parameter is given then this template falls back to use the image parameter. If the image parameter also is empty then a small default image is used.
- An image = Should be an image with usual wiki notation. 30px width is usually about right. For example:
smallimage = [[Image:Crystal package settings.png|30px]]
- none = Means that no image is used. This overrides any image fed to image, when "small=yes".
30x30px | small = yes imageright = [[Image:Nuvola apps bookcase.png|40px]] |
40px |
30x30px | small = yes imageright = [[Image:Nuvola apps bookcase.png|40px]] smallimageright = none |
smallimageright
- No parameter = If no smallimageright parameter is given then this template falls back to use the imageright parameter. If the imageright parameter also is empty then no image is shown on the right side.
- An image = Should be an image with usual wiki notation. 30px width is usually about right. For example:
smallimageright = [[Image:Nuvola apps bookcase.png|30px]]
- Anything = Any other object that you want to show on the right side.
- none = Means that no right side image is used. This overrides any image fed to imageright, when "small=yes".
smalltext
- A shorter version of the message body text. If no smalltext parameter is given then this template falls back to use the text parameter.
Technical details
If you need to use special characters in the text parameter then you need to escape them like this:
{{tmbox | 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> }}
40x40px | Equal sign = and a start and end brace { } work fine as they are. But here is a pipe | and two end braces }}. And now a pipe and end braces |}}. |
This template uses the tmbox CSS classes in MediaWiki:Common.css for most of its looks, thus it is fully skinnable.
This template calls {{tmbox/core}} which holds most of the code for {{tmbox}}, while {{tmbox}} itself does parameter preprocessing.
Internally this meta-template uses HTML markup instead of wiki markup for the table code. That is the usual way we make meta-templates since wiki markup has several drawbacks. For instance it makes it harder to use parser functions and special characters in parameters.
For more technical details see the talk page. Since this template works almost exactly like {{ambox}}, {{imbox}}, {{cmbox}} and {{ombox}} their talk pages and related pages might also contain more details.
See also
Similar templates:
- {{Notice}}
Template:Mbox templates see also
Other pages:
- Wikipedia:Talk page templates – The guideline specifying the styles for talk page message boxes.
WikiProject banners:
- {{WikiProjectBannerShell}} and {{WPBannerMeta}} – A system for collapsing, wrapping and creating WikiProject banners.
- {{WikiProjectBanners}} – Another system for collapsing WikiProject banners.