9.4 Spacing, conditionality , and precedence Many components of compound properties specify the space before or after formatting objects. -
space-before and space-after are used for block-level constructs. -
space-start and space-end are used for inline-level constructs. -
Components offer fine- tuned control over behaviors. -
space .optimum is used for the preferable amount of space; -
space .minimum and space .maximum are used for the limits to the actual amount of space; -
space .conditionality is used for the discarding of unwanted space -
space .precedence is used for the arbitration of conflicting space -
Spacing specifications are conditions to be met, not actions to be performed. You can prevent border, padding, and spacing from being used under certain conditions. -
The pagination of flow may result in space specifications leading or trailing in reference areas; -
It is often easy to write the stylesheet to always specify spacing and arbitrate between two coincident space specifications Conditionality dictates whether space specifications are discarded. -
The value " retain " can be specified to change the initial value of " discard ". -
All contiguous space specifications that can be discarded, if flowed to the start or end of a reference area, are suppressed. -
All space specifications after the first non-discarded area (either space, padding, border, or content) and before the last non-discarded area are not suppressed as a result of conditionality. Precedence dictates arbitration between adjacent space specifications. -
For example, the space-after of a block may be adjacent to the space-before of the following block. -
An integer value (default is zero) is used for arbitration of precedence between adjacent space specifications. -
The value " force " will protect an unsuppressed area from being suppressed due to precedence. Optimum values are used for arbitration between the areas with equal precedence. Resolved minimum and maximum are derived from all remaining unsuppressed areas. -
By arbitration described above, all have the same (greatest) optimum value. -
Resolved minimum is the greatest of all minimums. -
Resolved maximum is the least of all maximums. Figure 9-6 illustrates the interaction of the space specifications between adjacent blocks. Figure 9-6. Optimum size and precedence arbitration |