Files
textual/docs/styles/max_width.md
Rodrigo Girão Serrão 8c0f1dc83c Fix links to CSS types.
2022-12-22 18:13:36 +00:00

61 lines
1.4 KiB
Markdown

# Max-width
The `max-width` rule sets a maximum width for a widget.
## Syntax
--8<-- "docs/snippets/syntax_block_start.md"
max-width: <a href="../../css_types/scalar">&lt;scalar&gt;</a>;
--8<-- "docs/snippets/syntax_block_end.md"
The `max-width` rule accepts a [`<scalar>`](../../css_types/scalar) that defines an upper bound for the [`width`](./width) of a widget.
That is, the width of a widget is never allowed to exceed `max-width`.
### Values
--8<-- "docs/snippets/type_syntax/scalar.md"
## Example
The example below shows some placeholders that were defined to span horizontally from the top edge of the terminal to the bottom edge.
Then, we set `max-width` individually on each placeholder.
=== "Output"
```{.textual path="docs/examples/styles/max_width.py"}
```
=== "max_width.py"
```py
--8<-- "docs/examples/styles/max_width.py"
```
=== "max_width.css"
```scss
--8<-- "docs/examples/styles/max_width.css"
```
1. This won't affect the placeholder because its width is less than the maximum width.
## CSS
```sass
/* Set the maximum width to 10 rows */
max-width: 10;
/* Set the maximum width to 25% of the viewport width */
max-width: 25vh;
```
## Python
```python
# Set the maximum width to 10 rows
widget.styles.max_width = 10
# Set the maximum width to 25% of the viewport width
widget.styles.max_width = "25vh"
```