قالب:صندوق رسالة مقالة/شرح
قالب:Template shortcut قالب:Mbox templates This is the {{bmbox}} or book message box meta-template.
It is used to build article message box templates. It offers several different colors, uses default images if no image parameter is given and it has some other features.
This meta-template uses the ambox CSS classes in ميدياويكي:Common.css/Mboxes.css. The classes can also be used directly in a wikitable if special functionality is needed. See the how-to guide for that.
Usage
عدلSimple usage example:
{{bmbox | text = Some text.}}
Complex example:
{{bmbox | type = style | small = left | image = [[ملف:Emblem-question-yellow.svg|40px]] | smallimage = [[ملف:Emblem-question-yellow.svg|20px]] | textstyle = color: red; font-weight: bold; font-style: italic; | text = Text for a big box, for the top of articles. | smalltext = Text for the top of article sections. }}
But you are not really supposed to use red bold italic text.
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.
قالب:Bmbox قالب:Bmbox قالب:Bmbox قالب:Bmbox قالب:Bmbox قالب:Bmbox قالب:Ambox
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.
More examples
عدلSome other parameter combinations.
Parameters
عدلList of all parameters:
{{bmbox | type = speedy / delete / content / style / notice / move / protection | image = none / [[ملف:Some image.svg|40px]] | imageright = [[ملف:Some image.svg|40px]] | style = CSS values | textstyle = CSS values | text = The message body text. | small = {{{small|}}} / left | smallimage = none / [[ملف:Some image.svg|20px]] | smallimageright = none / [[ملف:Some image.svg|20px]] | smalltext = A shorter message body text. }}
type
- If no type parameter is given the template defaults to type notice. That means it gets a blue side bar.
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. (Images over 52 pixels width will cause padding problems.) For example:
image = [[ملف:Unbalanced scales.svg|40px]]
- none = Means that no image is used.
blank= This parameter is now deprecated. If you see it in use, change it to "image=none".
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. (Images over 52 pixels width will cause padding problems.) For example:
imageright = [[ملف: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
عدلThe small article message boxes are meant for the top of sections. Normally they should only contain one or two lines of text.
قالب:Bmbox قالب:Bmbox small
- left = Makes it a smaller left aligned 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=left". To make it so your template also understands the small parameter you can use this code:
small = {{{small|}}}
قالب:Bmbox 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. 20px width is usually about right for boxes with one line of text, while 25px width is usually about right for boxes with two lines of text. For example:
smallimage = [[ملف:Gnome globe current event.svg|20px]]
- none = Means that no image is used. This overrides any image fed to image, when "small=left".
قالب:Bmbox 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. 20px - 25px width is usually about right. For example:
smallimageright = [[ملف:Nuvola apps bookcase.png|20px]]
- 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=left".
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:
{{bmbox | 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> }}
The <div>
tags that surround the text in the example above are usually not needed. But if the text contains line breaks then sometimes we get weird line spacing. This especially happens when using vertical dotted lists. Then use the div tags to fix that.
This template uses CSS classes in ميدياويكي:Common.css/Mboxes.css for most of its looks, thus it is fully skinnable.
This template calls {{ambox/core}} which holds most of the code for {{ambox}}, while {{ambox}} itself does parameter preprocessing.
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 parser functions and some special characters in parameters.