Template:Ppoem/styles.css
Appearance
.ws-poem {
display:table;
/* Centre in page. */
margin:0 auto;
/* If someone sets an explicit width, don't let it overflow the page. */
max-width:100%;
}
.ws-poem-fl, .ws-poem-fn {
margin-left:0;
vertical-align:top;
}
.ws-poem-fr{
margin-left:auto;
margin-right:0;
vertical-align:top;
}
.ws-poem-stanza {
/* Avoid breaking stanzas over pages if we can */
page-break-inside:avoid;
break-inside:avoid;
}
.ws-poem-stanza.ws-poem-left {
display:table;
margin-right:auto;
}
.ws-poem-stanza.ws-poem-right {
display:table;
margin-left:auto;
}
.ws-poem-stanza.ws-poem-center {
display:table;
margin:0 auto;
}
.ws-poem-line {
display:block;
position:relative;
}
.ws-poem-hi .ws-poem-line {
text-indent:-4em;
margin-left:4em;
}
/* Take line breaks out of the flow—they copy-paste but don't do anything. */
.ws-poem-break {
position:absolute;
}
.ws-poem-line.ws-poem-right {
text-align:right;
}
.ws-poem-hi .ws-poem-line.ws-poem-right {
text-indent:0;
}
.ws-poem-line.ws-poem-center {
text-align:center;
}
.ws-poem-hi .ws-poem-line.ws-poem-center {
text-indent:0;
margin-left:0;
}
.ws-poem-linenum {
float:right;
text-indent:0;
user-select:none;
}
/* the default padding for the right gutter (to fit the line numbers) */
.ws-poem-right-gutter .ws-poem-line {
padding-right:2em;
}
.ws-poem-versenum {
float:left;
text-indent:0;
user-select:none;
}
/* the default padding for the left gutter (to fit the verse numbers) */
.ws-poem-left-gutter .ws-poem-line {
padding-left:2em;
}
/* inter-stanza spaces */
.ws-poem-stanza:not(:last-child) {
margin-bottom:1em;
}
/* indent padding spans */
.ws-poem-indent {
display:inline-block;
text-indent:0;
/* width set inline on each one */
/* allow the user to set a bigger font-size
to adjust the size of a single ":"
but don't let the indent inflate the overall line height */
line-height:0;
overflow:hidden;
}
/* ============================================================================
* Adjustment of other templates within ppoems.
* This is naughty, but at least it keeps the hacks in one place.
*/
.ws-poem .wst-fqm {
position:absolute;
}
.ws-poem-hi .dropinitial {
margin-left:-4em;
}
/* Force drop initials to "shunt" hanging-indent content rightwards. */
/* This has to be done on the MIDDLE span,
because the font size of the inner dropinitial-initial span
is independent to the indentation of the outer environment. */
.ws-poem-hi .dropinitial-mid {
margin-right:4em;
}
.ws-poem .pagenum {
/* Float out of the space between the span blocks,
or it makes a gap without the pagenumbers gadget. */
float:left;
}
/* ============================================================================
* Pre-defined formatting classes
* For use with the {class} syntax (line or stanza)
*/
.ws-poem-blackletter, .ws-poem-fractur {
font-family:UnifrakturMaguntia, UnifrakturCook, Unifraktur, serif;
font-size:113%;
font-feature-settings:'cv01', 'cv02', 'cv03', 'cv04', 'cv05', 'cv06', 'cv07', 'cv08', 'cv09', 'cv10';
}
.ws-poem-bl-ls {
font-family:UnifrakturMaguntia, UnifrakturCook, Unifraktur, serif;
font-size:113%;
font-feature-settings:'cv11', 'cv01','cv02', 'cv03', 'cv04', 'cv05', 'cv06', 'cv07', 'cv08', 'cv09', 'cv10';
}
.ws-poem-cursive, .ws-poem-handwriting {
font-family:Petit Formal Script, cursive;
}
.ws-poem-italic, .ws-poem.italic {
font-style:italic;
}
.ws-poem-bold, .ws-poem.bold {
font-weight:bold;
}
.ws-poem-smallcaps, .ws-poem-sc, .ws-poem.smallcaps, .ws-poem.sc {
font-variant:small-caps;
}
/* The text size classes, from xxs to xxxxl. */
.ws-poem-xxsmaller, .ws-poem-xxs {
font-size:58%;
}
.ws-poem-x-smaller, .ws-poem-xs {
font-size:69%;
}
.ws-poem-smaller, .ws-poem-sm {
font-size:83%;
}
.ws-poem-fine {
font-size:92%;
}
.ws-poem-larger, .ws-poem-lg {
font-size:120%;
}
.ws-poem-x-larger, .ws-poem-xl {
font-size:144%;
}
.ws-poem-xx-larger, .ws-poem-xxl {
font-size:182%;
}
.ws-poem-xxx-larger, .ws-poem-xxxl {
font-size:207%;
}
.ws-poem-xxxx-larger, .ws-poem-xxxxl {
font-size:249%;
}
.ws-poem-center, .ws-poem-c {
text-align:center;
}
/* Classes facilitating using ppoem for play scripts
by abusing versenums for speech prefixes.
The sizes are meant to cover the most common widths for prefixes,
_not_ all possible sizes.
If none of these fit you should look for other solutions instead.
This is _not_ a "table style"-like unbounded set of size classes.
Use the custom class + Index Styles facility instead. */
.ws-poem-speech-prefix-xsmaller .ws-poem-line, .ws-poem-speech-prefix-xs .ws-poem-line {
margin-left:10em;
}
.ws-poem-speech-prefix-smaller .ws-poem-line {
margin-left:3em;
}
.ws-poem-speech-prefix .ws-poem-line {
margin-left:5em;
}
.ws-poem-speech-prefix-larger .ws-poem-line {
margin-left:7em;
}
.ws-poem-speech-prefix-xlarger .ws-poem-line, .ws-poem-speech-prefix-xl .ws-poem-line {
margin-left:10em;
}