mirror of
https://github.com/Textualize/textual.git
synced 2025-10-17 02:38:12 +03:00
Textual CSS is better highlighted in SASS code blocks because the SASS parser seems to be more lenient.
1.4 KiB
1.4 KiB
Offset
The offset rule defines an offset for the position of the widget.
Syntax
--8<-- "docs/snippets/syntax_block_start.md" offset: <scalar> <scalar>;
offset-x: <scalar>; offset-y: <scalar> --8<-- "docs/snippets/syntax_block_end.md"
The two <scalar> in the offset define, respectively, the offsets in the horizontal and vertical axes for the widget.
To specify an offset along a single axis, you can use offset-x and offset-y.
Example
In this example, we have 3 widgets with differing offsets.
=== "Output"
```{.textual path="docs/examples/styles/offset.py"}
```
=== "offset.py"
```python
--8<-- "docs/examples/styles/offset.py"
```
=== "offset.css"
```sass
--8<-- "docs/examples/styles/offset.css"
```
CSS
/* Move the widget 8 cells in the x direction and 2 in tye y direction */
offset: 8 2;
/* Move the widget 4 cells in the x direction
offset-x: 4;
/* Move the widget -2 cells in the y direction
offset-y: -2;
Python
You cannot change programmatically the offset for a single axis. You have to set the two axes at the same time.
# Move the widget 2 cells in the x direction, and 4 in the y direction.
widget.styles.offset = (2, 4)