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
change{{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
changeMost 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
changeThe 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.
Related pages
change- {{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.
- {{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.