@@ -93,6 +93,88 @@ registerStyles('vaadin-form-layout', formLayoutStyles, { moduleId: 'vaadin-form-
93
93
* </vaadin-form-layout>
94
94
* ```
95
95
*
96
+ * ### Auto Responsive Mode
97
+ *
98
+ * To avoid manually dealing with responsive breakpoints, Form Layout provides an auto-responsive mode
99
+ * that automatically creates and adjusts fixed-width columns based on the container's available space.
100
+ * The [`columnWidth`](#/elements/vaadin-form-layout#property-columnWidth) and
101
+ * [`maxColumns`](#/elements/vaadin-form-layout#property-maxColumns) properties control the column width
102
+ * (13em by default) and the maximum number of columns (10 by default) that the Form Layout can create.
103
+ *
104
+ * ```html
105
+ * <vaadin-form-layout auto-responsive>
106
+ * <vaadin-text-field label="First Name"></vaadin-text-field>
107
+ * <vaadin-text-field label="Last Name"></vaadin-text-field>
108
+ * <vaadin-text-area label="Address" colspan="2"></vaadin-text-area>
109
+ * </vaadin-form-layout>
110
+ * ```
111
+ *
112
+ * #### Organizing Fields into Rows
113
+ *
114
+ * By default, each field is placed on a new row. To organize fields into rows, you can either:
115
+ *
116
+ * 1. Manually wrap fields into [`<vaadin-form-row>`](#/elements/vaadin-form-row) elements.
117
+ *
118
+ * 2. Enable the [`autoRows`](#/elements/vaadin-form-layout#property-autoRows) property to
119
+ * let Form Layout automatically arrange fields in available columns, wrapping to a new
120
+ * row when necessary. `<br>` elements can be used to force a new row.
121
+ *
122
+ * Here is an example of using `<vaadin-form-row>`:
123
+ *
124
+ * ```html
125
+ * <vaadin-form-layout auto-responsive>
126
+ * <vaadin-form-row>
127
+ * <vaadin-text-field label="First Name"></vaadin-text-field>
128
+ * <vaadin-text-field label="Last Name"></vaadin-text-field>
129
+ * </vaadin-form-row>
130
+ * <vaadin-form-row>
131
+ * <vaadin-text-area label="Address" colspan="2"></vaadin-text-area>
132
+ * </vaadin-form-row>
133
+ * </vaadin-form-layout>
134
+ * ```
135
+ *
136
+ * #### Expanding Columns and Fields
137
+ *
138
+ * You can configure Form Layout to expand columns to evenly fill any remaining space after
139
+ * all fixed-width columns have been created.
140
+ * To enable this, set the [`expandColumns`](#/elements/vaadin-form-layout#property-expandColumns)
141
+ * property to `true`.
142
+ *
143
+ * Also, Form Layout can stretch fields to make them take up all available space within columns.
144
+ * To enable this, set the [`expandFields`](#/elements/vaadin-form-layout#property-expandFields)
145
+ * property to `true`.
146
+ *
147
+ * #### Customizing Label Position
148
+ *
149
+ * By default, Form Layout displays labels above the fields. To position labels beside fields, you
150
+ * need to wrap each field in a `<vaadin-form-item>` element and define its labels on the wrapper.
151
+ * Then, you can enable the [`labelsAside`](#/elements/vaadin-form-layout#property-labelsAside)
152
+ * property:
153
+ *
154
+ * ```html
155
+ * <vaadin-form-layout auto-responsive labels-aside>
156
+ * <vaadin-form-row>
157
+ * <vaadin-form-item>
158
+ * <label slot="label">First Name</label>
159
+ * <vaadin-text-field></vaadin-text-field>
160
+ * </vaadin-form-item>
161
+ * <vaadin-form-item>
162
+ * <label slot="label">Last Name</label>
163
+ * <vaadin-text-field></vaadin-text-field>
164
+ * </vaadin-form-item>
165
+ * </vaadin-form-row>
166
+ * <vaadin-form-row>
167
+ * <vaadin-form-item colspan="2">
168
+ * <label slot="label">Address</label>
169
+ * <vaadin-text-area></vaadin-text-area>
170
+ * </vaadin-form-item>
171
+ * </vaadin-form-row>
172
+ * </vaadin-form-layout>
173
+ * ```
174
+ *
175
+ * With this, FormLayout will display labels beside fields, falling back to
176
+ * the default position above the fields only when there isn't enough space.
177
+ *
96
178
* ### CSS Properties Reference
97
179
*
98
180
* The following custom CSS properties are available on the `<vaadin-form-layout>`
0 commit comments