Difference between revisions of "Template:Infobox/row"

From Twinsuniverse
Jump to: navigation, search
m (testing substitution for themestyles)
m (testing substitution for themestyles)
Line 4: Line 4:
 
     |<th colspan="2" {{
 
     |<th colspan="2" {{
 
         #if: {{{class|}}} | class="{{{class}}}" | class="subtitle"}} {{
 
         #if: {{{class|}}} | class="{{{class}}}" | class="subtitle"}} {{
         #ifeq: {{lc:{{{class|}}}}} | title | style="{{{titlestyle|/*wha?*/}}}" | style="{{{headstyle|}}}" }}>{{{header}}}</th>
+
         #ifeq: {{lc:{{{class|}}}}} | title | style="{{{titlestyle|}}}" | style="{{{headstyle|}}}" }}>{{{header}}}</th>
 
     |{{#if: {{{label|}}}
 
     |{{#if: {{{label|}}}
 
         |<th style="{{{headstyle|}}}">{{{label}}}</th><td  
 
         |<th style="{{{headstyle|}}}">{{{label}}}</th><td  

Revision as of 23:54, 5 January 2013

This template is used by Template:Infobox to add a row to a table. A row can be a full-row header, a half-row label with data, or a (multi-line) data-only row.

To use this template, to be able to add rows to a table, there should be <table>...</table> tags surrounding it. The infobox does this automatically though. It also automatically calls this template appropriately. So it isn't necessary to call this template directly, but this page describes how it works regardless.

Parameters

These parameters procide the row with structure:

  • header: Specifying this parameter makes this row a header, and further ignores any data or label (case sensitive, defaults to non-header row)
  • label: Specifying this parameter if the row isn't a header, adds a half-row label in front of the data (case sensitive, defaults to data-only row)
  • data: Specify this parameter to make the row display data, if it isn't a header row (case sensitive, defaults to nothing displayed)
  • class: The class of the header tablecell if the row is a header, or the data tablecell otherwise (case sensitive, defaults to "subtitle" for header, or no specific class for data)

These parameters provide the row with theme-specific styles:

  • titlestyle: This style is used when the row specifies a header and class "title" (CSS statements, optional)
  • headstyle: This style is used for headers and labels (CSS statements, optional)
  • datastyle: This style is used for data cells (CSS statements, optional)


Note: When neither data nor header are specified, the row will fully collapse and ignore any other specified values.

Note: Even if the header parameter is used, the row will still have similar style as the half-row label with data, albeit full-row without data, unless it is paired with the 'subtitle' class.

Note: The data may contain multiple lines of text, but if the label is also specified, the label will render stretched across the height of the data. So only specify a label if the data contains just a single line.

Syntax

When specifying a header row, use this syntax:

{{Infobox/row
 |header=some header text
 |class=subtitle
}}

Otherwise, when specifying a row that contains data:

{{Infobox/row
 |label=some optional label text
 |data=text
 |class=
}}

Examples

To show how the different uses of this template work out, the following is a simple example of an infobox using rows in various ways. The actual Infobox is a little more complex, but it all comes down to this:

Twinsun
Example?

Yes, of cource!

Theme

Land

Some Tests
Header no class
Header with data
Tall label

Does this
look
Right?

Hello

world!

This is a better way
of showing multiple lines,
just a data-only row.

<table class="infobox side land">
{{Infobox/row |header=Twinsun          |class=title}}
{{Infobox/row |label=Example?          |data=Yes, of cource!}}
{{Infobox/row |label=Theme             |data=Land}}
{{Infobox/row |header=Some Tests       |class=subtitle}}
{{Infobox/row |header=Header no class}}
{{Infobox/row |header=Header with data |data=Invisible?!}}
{{Infobox/row |label=Tall label        |data=Does this<br>look<br>Right?}}
{{Infobox/row |label=Hello             |data=world!}}
{{Infobox/row |data=This is a better way<br>of showing multiple lines,<br>just a data-only row.}}
</table>