Template:Nowraplinks/doc
This is a documentation subpage for Template:Nowraplinks. It may contain usage information, categories and other content that is not part of the original template page. |
This is the {{nowraplinks}} template.
This template works in conjunction with {{nowraplinks end}} to prevent word wraps (line breaks) inside links that include a space or spaces while allowing wraps between links and in normal text. This can be useful, for instance, in long lists of links. It is similar to {{nowrap begin}}...{{nowrap end}}.
Reading Wikipedia:Line-break handling is recommended before starting to use this template.
Usage
[edit]{{nowraplinks}}
[[This link will not wrap]] - [[This link also won't wrap]] -
[[And so on]] - But this sentence might word wrap.
{{nowraplinks end}}
{{nowraplinks | [[This link will not wrap]] - [[This link also won't wrap]] -
[[And so on]] - But this sentence might word wrap. }}
Both examples will render something like this:
- This link will not wrap -
- This link also won't wrap -
- And so on - But this sentence
- might word wrap.
But they will not render like this:
- This link will not wrap - This link
- shouldn't have wrapped - And so on -
- But this sentence might word wrap.
Advanced usage
[edit]Most of the functionality in this template is implemented as a CSS class in common.css. That class can be used together with pretty much any HTML tag or any box to prevent links to word wrap. For instance like this:
<div class="nowraplinks"> Lots of text and links </div>
Or like this:
<span class="nowraplinks"> Lots of text and links </span>
If the nowraplinks class is applied in the header of a table it will prevent line wrapping of links in all cells in the table. Note that in a table header there usually is a need to apply several classes. Then the class names should be separated by spaces in the class tag, not by commas or semicolons. Like this:
{| class="wikitable nowraplinks"
|
[[This link will not wrap]]{{·}}
[[This link also won't wrap]]{{·}}
[[And so on]]{{·}}
But this sentence might word wrap.
|
[[This link will not wrap]]{{·}}
[[This link also won't wrap]]{{·}}
[[And so on]]{{·}}
But this sentence might word wrap.
|}
It will render this:
This link will not wrap · This link also won't wrap · And so on · But this sentence might word wrap. |
This link will not wrap · This link also won't wrap · And so on · But this sentence might word wrap. |
To really see the nowrap effect on the links above you can drag the width of your web browser window so it becomes smaller and smaller.
Technical details
[edit]The actual code that does the job is this CSS code in Common.css.
.nowraplinks a,
.nowraplinks .selflink {
white-space: nowrap;
}
It simply means that any white-space inside links (HTML A tags) and bold "links" to the page itself are not allowed to wrap.
It is then invoked like this:
<span class="nowraplinks"> Lots of text and links </span>
That span code is what the {{nowraplinks}} and {{nowraplinks end}} tags are packaging in an easy to use way.
The standard navboxes use the .nowraplinks class, thus automatically handling most wrapping problems in those navboxes.
See also
[edit]- {{nowrap}} prevents wrapping within a single template (i.e. not suitable for relatively complex or lengthy content).
- {{nowraplinks}} ... {{nowraplinks end}} prevents wraps inside links while allowing wraps between links and in normal text. Very useful for link lists and easy to use.
- {{nowrap begin}} ... {{nowrap end}} prevents wraps in both text and links. For the trickier wrapping cases when you need full control, for instance in very complex link lists.
- {{word joiner}} prevents wraps for both two adjacent characters.
- {{avoid wrap}} prevents wraps unless the space is too narrow to display the text on one line.
- {{inline block}} does the same and allows further style customization, but does not automatically add the "avoidwrap" CSS class.
- {{spaces}} produces multiple non-breaking spaces (or a single one).
- {{wrap}} can be used to provide a (brief) exception within a no-wrapping area.
- {{normalwraplink}} allows links to wrap when they otherwise would not.
- {{·}} and {{•}}, spaced and wrap-sensitive interpunct (dot) and bullet.
- Help:Line-break handling, Wikipedia's how-to guide about word wrapping and line breaks.
- In particular, to avoid line wrapping when quoting a passage such as a poem or computer code, see Template:Quote § Line breaks – e.g. Template:Blockquote with "poem" tag.