The segment layout is a grid with 12 columns. The number and the proportion of the columns can be set with the attributes extraSmall, small, medium, large, extraLarge and extra2Large. The value is a space separated list. Allowed are '1seg' to '12seg', 'auto' and '1fr'.
extraSmall
small
medium
large
extraLarge
extra2Large
The following examples show a segment layout with four and three columns and a segment layout with 'auto' and '1fr'.
The sum of the values is 12.
<tc:segmentLayout extraSmall="2seg 3seg 4seg 3seg">
The sum of the values is 8. After the third element, the sequence starts from the beginning. So the fourth element got a value of 2.
<tc:segmentLayout extraSmall="2seg 2seg 4seg">
<tc:segmentLayout extraSmall="1fr auto 1fr">
the remaining space
width of the content
For the different kinds of screen sizes, the segment layout has the attributes: extraSmall, small, medium, large, extraLarge and extra2Large.
In the following example, all attributes are used. If you are on a desktop you can see the different behavior by changing the size of the browser window.
<tc:segmentLayout extra2Large="1seg" extraLarge="2seg" large="3seg" medium="4seg" small="5seg" extraSmall="6seg"> ...
A margin can be set for the different proportions with the attributes marginExtraSmall, marginSmall, marginMedium, marginLarge, marginExtraLarge and marginExtra2Large.
marginExtraSmall
marginSmall
marginMedium
marginLarge
marginExtraLarge
marginExtra2Large
Possible values are none, left, right and both.
none
left
right
both
<tc:segmentLayout extraSmall="5seg 3seg" marginExtraSmall="none both left both"> ...
An offset can be set for the different proportions with the <tc:segmentLayoutConstraint/> tag which can have the attributes offsetExtraSmall, offsetSmall, offsetMedium, offsetLarge, offsetExtraLarge and offsetExtra2Large.
<tc:segmentLayoutConstraint/>
offsetExtraSmall
offsetSmall
offsetMedium
offsetLarge
offsetExtraLarge
offsetExtra2Large
Possible values are from 1 to 11 for offsetExtraSmall. For the other attributes possible values are from 0 to 11. A offsetMedium="0" overwrite the offset from smaller proportions.
offsetMedium="0"
<tc:segmentLayout extraSmall="2seg 2seg 2seg 2seg 2seg 2seg"> <tc:in value="1"/> <tc:in value="2"> <tc:segmentLayoutConstraint offsetExtraSmall="1" offsetSmall="2" offsetMedium="3" offsetLarge="4" offsetExtraLarge="5"/> </tc:in> ... </tc:segmentLayout>
The default layout and margins can be overwritten by the <tc:segmentLayoutConstraint/> tag. Possible attributes are extraSmall, small, medium, large, extraLarge and extra2Large for the layout. And: marginExtraSmall, marginSmall, marginMedium, marginLarge, marginExtraLarge and marginExtra2Large for the margins.
<tc:segmentLayout extraSmall="4seg 8seg"> <tc:in value="4"/> <tc:in value="8"/> <tc:in value="3 - both"> <tc:segmentLayoutConstraint extraSmall="3seg" marginExtraSmall="both"/> </tc:in> <tc:in value="8"/> </tc:segmentLayout>
The horizontal alignment can be set with justify. Possible attributes are none, start, center, end, around and between. The default value is none.
justify
<tc:segmentLayout extraSmall="4seg 4seg" justify="none"> <tc:in value="A"/> <tc:in value="B"/> </tc:segmentLayout> <tc:segmentLayout extraSmall="4seg 4seg" justify="start"> <tc:in value="A"/> <tc:in value="B"/> </tc:segmentLayout> <tc:segmentLayout extraSmall="4seg 4seg" justify="center"> <tc:in value="A"/> <tc:in value="B"/> </tc:segmentLayout> <tc:segmentLayout extraSmall="4seg 4seg" justify="end"> <tc:in value="A"/> <tc:in value="B"/> </tc:segmentLayout> <tc:segmentLayout extraSmall="4seg 4seg" justify="around"> <tc:in value="A"/> <tc:in value="B"/> </tc:segmentLayout> <tc:segmentLayout extraSmall="4seg 4seg" justify="between"> <tc:in value="A"/> <tc:in value="B"/> </tc:segmentLayout>