Template:Stack: Difference between revisions
Ozycaevias (talk | contribs) m (1 revision imported: Uploading templates: Br separated entries, Imgur, Smallsup) |
m (1 revision imported) |
||
(One intermediate revision by one other user not shown) | |||
Line 1: | Line 1: | ||
< | <templatestyles src="Stack/styles.css"/><div class="mw-stack stack-container {{#switch:{{{float|right}}}|left=stack-{{#switch:{{{margin|}}}|1|true|y|yes=margin-}}{{#switch:{{{clear|}}}|left|true=clear-}}left|right=stack-{{#switch:{{{margin|}}}|1|true|y|yes=margin-}}{{#switch:{{{clear|}}}|right|true=clear-}}right}}"><!-- | ||
-->{{#if:{{{1|}}}|<div class="stack-item" {{#if:{{{cellspacing|}}}|style="margin: {{{cellspacing|1}}}px"}}>{{{1}}}</div> | |||
}}{{#if:{{{2|}}}|<div class="stack-item" {{#if:{{{cellspacing|}}}|style="margin: {{{cellspacing|1}}}px"}}>{{{2}}}</div> | |||
}}{{#if:{{{3|}}}|<div class="stack-item" {{#if:{{{cellspacing|}}}|style="margin: {{{cellspacing|1}}}px"}}>{{{3}}}</div> | |||
}}{{#if:{{{4|}}}|<div style="overflow: hidden; margin: {{{cellspacing|1}}}px;">{{{4}}}</div> | |||
}}{{#if:{{{5|}}}|<div class="stack-item" {{#if:{{{cellspacing|}}}|style="margin: {{{cellspacing|1}}}px"}}>{{{5}}}</div> | |||
}}{{#if:{{{6|}}}|<div class="stack-item" {{#if:{{{cellspacing|}}}|style="margin: {{{cellspacing|1}}}px"}}>{{{6}}}</div> | |||
}}{{#if:{{{7|}}}|<div class="stack-item" {{#if:{{{cellspacing|}}}|style="margin: {{{cellspacing|1}}}px"}}>{{{7}}}</div> | |||
}}{{#if:{{{8|}}}|<div class="stack-item" {{#if:{{{cellspacing|}}}|style="margin: {{{cellspacing|1}}}px"}}>{{{8}}}</div> | |||
}}{{#if:{{{9|}}}|<div class="stack-item" {{#if:{{{cellspacing|}}}|style="margin: {{{cellspacing|1}}}px"}}>{{{9}}}</div> | |||
}}</div>{{#invoke:Check for unknown parameters|check|unknown=[[Category:Pages using stack with unknown parameters|_VALUE_{{PAGENAME}}]]|preview=Page using [[Template:Stack]] with unknown parameter "_VALUE_"|ignoreblank=y| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | cellspacing | clear | float | margin | |||
}}<noinclude> | |||
{{documentation}} | |||
</noinclude> | |||
Latest revision as of 17:39, 8 November 2020
null
This template can be used to stack images and other floating content such as infobox templates without causing problems with spacing and floating. Enter a string of images/templates as the first parameter to have them stack without generating floating errors or spacing errors. You can stack many objects from the top of a section and not force further subsections to space out.
Usage
At its simplest:
{{stack|<objects>}}
Alternatively, using {{stack begin}}
and {{stack end}}
:
{{stack begin}}
<objects>
{{stack end}}
The <object>
may simply be a string of wikicode for many images/templates.
Optional parameters
{{stack| <object(s)> | float=left or right | clear=true or false}}
or
{{stack begin | float=left or right | clear=true or false}}
where
- float= left or right (default is right)
- This option can be used to float the stack to the left or right of the page
- clear= true or false (default is false)
- This option can be used to force the stack to the far left or right (e.g., near an infobox).
- margin= true or false (default is false)
- This option can be used to add a 1em margin to the left (for float right) or right (for float left).
You can also explicitly list multiple arguments:
{{stack| float=left or right | clear=true or false
|1=<object(s)>
|2=<object(s)>, etc. up to 9 parameters in the current version
}}
- This multiple argument version does include extra vertical whitespace between each (set of)
<object(s)>
.
Examples
To illustrate the utility of the stack templates, consider the following situation. We would like to have two right floating images at the top of the first section of our article (here, the Lipsum section), and one left floating image at the top of the second section (here, the Lorem section). To achieve this layout, without using a stack template, we could try the following code:=====''Lipsum''=====
[[File:Simple shapes example.png|thumb|right|Example 1a]]
[[File:Simple shapes example.png|thumb|right|Example 1b]]
... text ...
=====''Lorem''=====
[[File:Simple shapes example.png|thumb|left|Example 1c]]
... text ...
=====''Ipsum''=====
... text ...
=====''Lipsum''=====
{{stack |[[File:Simple shapes example.png|thumb|right|Example 2a]] [[File:Simple shapes example.png|thumb|right|Example 2b]]}}
... text ...
=====''Lorem''=====
[[File:Simple shapes example.png|thumb|left|Example 2c]]
... text ...
=====''Ipsum''=====
... text ...
Without {{stack}}
Lipsum
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Ipsum
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
With {{stack}}
Lipsum
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Ipsum
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
With {{stack begin}} and {{stack end}}
Lipsum with second table wider
Sample table 1 |
---|
Example 1a |
Example 1b |
Sample wider table 2 |
---|
Example 2a |
Example 2b |
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem
Sample table 3 |
---|
Example 3a |
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Ipsum
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lipsum with first table wider
Sample wider table 1 |
---|
Example 1a |
Example 1b |
Sample table 2 |
---|
Example 2a |
Example 2b |
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem
Sample table 3 |
---|
Example 3a |
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Ipsum
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
More examples
{{Stack}} can also be used to float one or more images across a page.
{{stack|[[File:Simple shapes example.png|80px]]}} {{stack|[[File:Simple shapes example.png|120px]]}}
It might take some experience to learn how the box area floats, in combination with various images or wikitables on a page. {{Stack}}'s operation is very quick, as it uses an HTML <table> to achieve its effects.
Floating portal boxes
{{Stack}} can be used to float a portal box beside an infobox (or other right-aligned item) when other methods might not work as anticipated.
Infobox
|
This is a wikitable serving as a typical left-aligned table. The overlap on left-aligned tables had been a frequent problem when other boxes nearby were set to "float:right". So this is a test of how well a floating portal-box would avoid overlapping onto a left-side table. |
The example here uses {{stack}}
to float two portal boxes (Animals, Cats) as follows:
{{stack |{{portal|Animals}}{{portal|Cats}} }}
The two portal-boxes are stacked and floated together by both being listed as {{stack}}
's (first) parameter. Because the infobox and image were also stacked together, {{stack}}
moved the two portal-boxes alongside the infobox despite their being specified after the image.
Normally, a portal-box would be stuck below the Mona Lisa image, causing this entire text section to format further below, and causing a large text-gap of empty whitespace to appear near the infobox. There is no limit to the number of portalboxes (or Commonscat boxes) which can be listed within a {{stack}}
call, such as in a stub or an article with many stacked images near the bottom. Using {{stack}}
is extremely efficient, due to being a short template which uses builtin tag <table> to float the boxes.
Stack template family
- {{Stack}}
- {{Stack begin}}
- {{Stack end}}
Tracking category
See also
- {{Multiple image}}, providing both vertical and horizontal layouts for multiple images.
- {{Superimpose}}, which places one image over another.
- {{Superimpose2}}, which can place up to fifty image layers over one another.
- Wikipedia:Extended image syntax#The many-floating-objects problem
No description.
Parameter | Description | Type | Status | |||
---|---|---|---|---|---|---|
No parameters specified |