The style of a tagged document segment dictates its apearance: font color, paragraph width, line spacing, etc. In the Cascading Style Sheets (CSS) standard, a style is described as a semi-colon-separated list of property-colon-value pairs. Red text, larger than normal, with hanging indentation could have these properties
color: red; font-size: 110%; margin-left: 12pt; text-indent: -12pt;
Many values have a unit specifier like cm
for centimeters, pt
for points, and em
for em-width. There are 72 points per inch and 28.3 per centimeter. On a screen with 96 pixels per inch, one point is 4/3 pixels.
Here are some common properties and typical values.
|
property |
sample value |
notes |
Color |
|
color |
#DFF |
light blue text |
|
background-color |
#FF6 |
yellow background |
|
border |
1pt solid #0F0 |
border of solid green line 1pt wide |
Font |
|
font-family |
"Lucida Console", Monaco, "Courier New", Courier, monospace |
|
font-size |
110% |
|
|
font-style |
italic |
|
|
font-weight |
bold |
|
Position |
|
margin |
0pt 0pt 3pt 6pt |
top right bottom left |
|
text-indent |
-18pt; |
1/4 inch outdent of first line;
relative to padding |
|
text-align |
center |
|
|
vertical-align |
middle |
|
Size |
|
width |
55pt |
<div> size |
|
height |
35pt |
<div> size |
See /GeneralStyles.css
for more examples. That file is the default styles for Pictools documents.
The first and most direct route to associate a list of style properties with a tagged segment is to add a style
attribute to the tag. The value of the attribute is the list itself, as in
<span style="background-color: #99FFCC;">
text on green</span>
which produces text on green.
All other routes to define styles associate a selectorwith a list of style properties. The the property list is bracketed after the selector as in
.pdoc-dent {
margin-left: 24pt;
padding: 0pt;
}
Common selector syntaxes are
- tagname
- Applies to all elements with the given tag name. Example:
h1
- . classname
- Applies to all elements having the given class. Example:
.pdoc-dent
- # id
- Applies to the one element having the given id. Example:
#top-title
The second route to defining styles applies to styles within a single document. The selector-styles list is the conents oe a <style> tag within the document's "HeadAdditions"
section, as in
<style type="text/css">
.pdoc-dent {
margin-left: 24pt;
padding: 0pt;
}
pre {
font-family: "Lucida Console", monospace;
}
</style>
The third route to defining styles is to place them in a .css
file. The file contents are the selector-styles list, without the <style> tag. Usually the file is invoked for a Pictools document with a link in the "HeadAdditions"
area, as in
<link href="style-file.css"
rel="stylesheet" type="text/css"/>
However, the Pictools template always links in /GeneralStyles.css
and styles.css
from the current and parent directories, so no <link>
to these style files is needed.
In CSS, the last encountered definition for a given style property overrides prior definitions. For Pictools, this means that styles for dir
/file
have priority in this order.
- Inline within an element's tag
- Within a
<style>
element in file
's "HeadAdditions"
area
- In a separate file linked from the
"HeadAdditions"
(and preceding the <style>
element)
- In
dir/styles.css
- In
styles.css
in a parent of dir
(up to SRCROOT
)
- In
/GeneralStyles.css