Optional alpha0..1, default 1.
Optional bottomDistance from parent's bottom edge to this node's bottom edge.
Optional centerXHorizontal offset from the centre of the parent. 0 = perfectly centred.
Optional centerYVertical offset from the centre of the parent. 0 = perfectly centred.
Optional heightOptional idRequired if the node needs to be targeted by animations or runtime
setters. "frame" is reserved - used by positional tweens as
relativeTo: "frame" to reference the video frame.
Optional leftDistance from parent's left edge to this node's left edge.
Optional marginReserves space on each side of the node by inflating its bounding box. Lives on the child rather than as container-level padding, so the parent needs no declaration to give one of its children breathing room.
child + margin, so
margin effectively enlarges the parent. This drives the
"background plate" pattern: in an auto-sized group, put an
omitted-size Rect next to a Text with margin: "10px" -- the
group hugs text plus margin, the rect autofills the group, and
the text sits visually inset 10 px inside the plate.StackNode margin is added to the child's flow slot on
both sides and compounds with gap: two adjacent children with
margin: "10px" separated by gap: "5px" produce a 25 px visual
gap (10 + 5 + 10).Optional maskId of a RectNode with isMask: true whose bounds clip this node.
The mask rect may live anywhere in the tree; it is resolved by id at
parse time. Only rects may be used as masks.
Optional maxOptional maxOptional minLower bound for the node's computed height. See minWidth.
Optional minLower bound for the node's computed width. Clamps the laid-out size
from below - applies to both auto-sized nodes (hugged size lifted to
minWidth) and explicit-sized nodes (if width < minWidth, wins
minWidth, same as CSS).
Optional rightDistance from parent's right edge to this node's right edge.
Optional styleOptional topDistance from parent's top edge to this node's top edge.
Optional visibleDefault true.
Optional width
Position is set by picking a field from the inset family (
left/rightfor X,top/bottomfor Y) or by usingcenterX/centerYto centre. The chosen field also acts as the anchor - settingrightmeans "right-anchored, distance from parent's right edge".Both insets on the same axis may be set simultaneously:
left: "10px", right: "20px"anchors both edges and derives the size on that axis from the parent -width = parent - left - right. In this dual-inset mode the derived size wins over any explicitwidth(orheightfortop+bottom);min/maxclamping still applies to the derived result.centerX/centerYis mutually exclusive with the inset fields on its axis - when an inset is set,centerXis ignored.Default if nothing is set:
left: 0/top: 0.