模板:Cmbox/doc
{{#ifeq:doc |doc
|
{{#ifeq:show |show
|
40px | This is a documentation subpage for 模板:Cmbox. It contains usage information, categories and other content that is not part of the original {{#if: |{{{text2}}} |{{#if: |{{{text1}}} |{{#ifeq:模板 |用户 |模板 template page |{{#if:模板 |模板 page|article}}}}}}}}. |
}}{{#if: | | {{#ifexist:模板:Cmbox | [[Category:{{#switch:模板 |Template=Template |Module=Module |User=User |#default=Wikipedia}} documentation pages]] | }} }} | }}
40px | This template is used on 330,000+ pages. To avoid major disruption and server load, any changes should be tested in the template's /sandbox or /testcases subpages, or in your own user subpage. The tested changes can be added to this page in a single edit. Consider discussing changes on the talk page before implementing them. Transclusion count updated automatically (see documentation). |
30px | This template uses Lua: |
Message box meta-templates | |
---|---|
template | context |
{{Ambox}} | article |
{{Cmbox}} | category |
{{Imbox}} | image |
{{Tmbox}} | talk |
{{Fmbox}} | footer / header |
{{Ombox}} | other pages |
{{Mbox}} | auto-detect |
{{Asbox}} | article stub |
{{Dmbox}} | disambiguation |
{{#switch:
{{#if: | {{{demospace}}} | {{#ifeq:模板|模板 | template | other }} }}
| template = {{#ifeq:Cmbox/doc|Infobox||{{#ifeq:docdocd|Infobox|[[Category:Infobox templates|模板:Remove first word]]}}}} | other | #default = }}
This is the {{Cmbox}} ([C]ategory [m]essage [box]) metatemplate.
It is used to build message box templates such as {{Category diffuse}} for category pages. It offers several different colours, uses default images if no image parameter is given, and it has some other features.
This template works almost exactly like {{Ambox}} and uses the same parameters.
Usage
Simple usage example:
{{cmbox | text = Some text.}}
40x40px | Some text. |
Complex example:
{{cmbox | type = style | image = [[File: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. |
Category 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 such as {{db-c1}}. |
40x40px | type=delete – Deletion templates such as {{cfd}}. |
40x40px | type=content – Major warnings and problems such as {{Categorization of people disputed}}. |
40x40px | type=style – Minor warnings and problems such as {{Overpopulated category}}. |
40x40px | type=notice – Notices and messages of any kind, both permanent and temporary. |
40x40px | type=move – Move, merge, and split messages and proposals such as {{Category redirect}}. |
40x40px | type=protection – Protection templates such as {{pp}} when shown on a category page. |
Other images
The default images shown above are mostly for convenience. In many cases it is more appropriate to use more specific images. These examples use the image parameter to specify an image other than the default images.
40px | type = style image = [[File:Sub-arrows.svg|40px]] This image is used for {{Overpopulated category}} and {{Category diffuse}}. |
52px | type = move image = [[File:Redirect arrow.svg|52px]] This image is used for {{Category redirect}}. |
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. |
42px | image = [[File:Gnome globe current event.svg|42px]] imageright = [[File:Nuvola apps bookcase.svg|40px]] | 40px |
42px | This category lists articles about current and recent spaceflights. It is populated by the {{Current spaceflight}} template. | 20px |
Parameters
List of all parameters:
{{cmbox | name = name of the template | type = speedy / delete / content / style / notice / move / protection | image = none / [[File:Some image.svg|40px]] | imageright = [[File:Some image.svg|40px]] | class = A custom CSS class to apply to the box | 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 notice. That means it gets a blue 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 is usually about right depending on the image height-to-width ratio (but the message box can handle images of any size).
- For example:
image = [[File:Sub-arrows.svg|40px]]
- For example:
- none = Means that no image is used.
imageright
- No parameter = If no imageright parameter is given, no image is shown on the right side.
- An image = Should be an image with usual wiki notation. 40px - 50px width is usually about right depending on the image height-to-width ratio (but the message box can handle images of any size).
- For example:
imageright = [[File:Nuvola apps bookcase.png|40px]]
- For example:
- Anything = Any other object that you want to show on the right side.
style
- An optional CSS value used by the entire message box table. Without quotation marks
" "
.- For example:
style = margin-bottom: 0.5em;
- For example:
textstyle
- An optional CSS value used by the text cell.
- For example:
textstyle = text-align: center;
- For example:
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
|{{SAFESUBST:#if:plainlinks|plainlinks=}}no
.
text
- The message body text.
Technical details
If you need to use special characters in the text parameter then you need to escape them like this:
{{cmbox | 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 cmbox CSS classes in MediaWiki:Common.css for most of its looks, thus it is fully skinnable.
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.
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.
For more technical details see the talk page. Since this template works almost exactly like the other mboxes, their talk pages and related pages might also contain more details (see the See also section below).
See also
- {{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.
- {{Ivory messagebox}}, 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:
- {{Ombox/shortcut}}, an alternative to {{Shortcut}} for use in Mbox templates