Min-width¶
The min-width
style sets a minimum width for a widget.
Syntax¶
min-width: <scalar>;
The min-width
style accepts a <scalar>
that defines a lower bound for the width
of a widget.
That is, the width of a widget is never allowed to be under min-width
.
Example¶
The example below shows some placeholders with their width set to 50%
.
Then, we set min-width
individually on each placeholder.
from textual.app import App
from textual.containers import VerticalScroll
from textual.widgets import Placeholder
class MinWidthApp(App):
CSS_PATH = "min_width.tcss"
def compose(self):
yield VerticalScroll(
Placeholder("min-width: 25%", id="p1"),
Placeholder("min-width: 75%", id="p2"),
Placeholder("min-width: 100", id="p3"),
Placeholder("min-width: 400h", id="p4"),
)
if __name__ == "__main__":
app = MinWidthApp()
app.run()
CSS¶
/* Set the minimum width to 10 rows */
min-width: 10;
/* Set the minimum width to 25% of the viewport width */
min-width: 25vw;
Python¶
# Set the minimum width to 10 rows
widget.styles.min_width = 10
# Set the minimum width to 25% of the viewport width
widget.styles.min_width = "25vw"