# Page Styles

RHCore includes a cascading style sheet (CSS) to render tables in a style consistent with Content Server. The stylesheet can be used in any HTML rendering context (RHTemplate, WebLingo, WebReports, etc.).

The stylesheet also contains a number of helper classes (e.g., alignRight, floatLeft, width100, etc.) for formatting.

The stylesheet is located at support/rhcore/core/rhcore.css. An alternative support/rhcore/core/rhcore-16.2.6.css is included that adheres to some of the UI changes in CS 16.2.6.

# List Views

A list view can be rendered with rhcore.css and looks something like the following:

<table class="rhtable rhstriped">
    <thead>
        <tr>
            <td class="minWidth">{% usemacro sortheader "subtype" "Type" %}</td>
            <td class="width70">{% usemacro sortheader "name" "Name" %}</td>
            <td class="alignRight">{% usemacro sortheader "size" "Size" %}</td>
            <td class="alignCenter">{% usemacro sortheader "modifydate" "Modified" %}</td>
        </tr>
    </thead>	
    <tbody>
        {% for child in node.children|sort:request.sort %}
            <tr>
                <td>{{ child.img }}</td>
                <td>{% usemacro browselink child %}</td>
                <td class="alignRight nowrap">{{ child.size }}</td>
                <td class="alignCenter nowrap">{{ child.modifydate|date }} ({{ child.modifydate|timesince }})</td>
            </tr>
        {% endfor %}
    </tbody>
</table>

This renders as follows:

The main style is applied by the rhtable class, which cascades various styling rules to the table and its child elements. Namely, it:

  • adds a border around the table;
  • sets a grey background on the header row;
  • adds a line below the header to separate it from the rows;
  • removes the underline on the header sort links; and
  • sets padding within the cells.

Additional presentational styles are used to do specific formatting:

  • rhstriped - alternates the row colours;
  • minWidth - sets the width to 1%;
  • width70 - sets the width to 70%;
  • alignRight - aligns the cell contents to the right;
  • alignCenter - aligns the cell contents in the center; and
  • nowrap - prevents wrapping of the cell contents.

# Detail Views

Detail views (or property views) are also possible:

<table class="rhtable rhproperties">
	<tbody>
		<tr>
			<td>Key A:</td>
			<td>Value A</td>
		</tr>
		<tr>
			<td>Key B:</td>
			<td>Value B</td>
		</tr>
	</tbody>
</table>

This renders as follows:

The rhproperties class supports multiple columns by adding additional columns:

<table class="rhtable rhproperties">
	<tbody>
		<tr>
			<td>Key A:</td>
			<td>Value A</td>
			<td>Key B:</td>
			<td>Value B</td>
		</tr>
		<tr>
			<td>Key C:</td>
			<td>Value C</td>
			<td>Key D:</td>
			<td>Value D</td>
		</tr>
	</tbody>
</table>

This renders as follows:

A button bar can be added with a <tfoot> section:

<tfoot>
	<tr class="buttonBar">
		<td colspan="4">
			<input type="submit" value="Save" />
			<input type="reset" />
		</td>
	</tr>
</tfoot>

Last Updated: 5/20/2019, 11:42:35 AM