|
- ---
- name: TextInput
- route: /components/textinput
- menu: Components
- ---
-
- import { Playground, Props, Link } from 'docz'
- import TextInput from './TextInput'
-
- # TextInput
-
- Component for inputting textual values.
-
- <Playground>
- <TextInput label="Username" placeholder="johndoe" hint="the name you use to log in" />
- </Playground>
-
- ## Props
-
- <Props of={TextInput} />
-
- ## Usage Notes
-
- The component will behave as `block`, i.e. it takes the remaining of the horizontal space.
- To use the component together with layouts, see the following examples.
-
- ### Inline
-
- The components are surrounded by `inline-block` elements. These surrounding elements have specified widths, which could
- act as guide to the user on how long the expected input values are.
-
- <Playground>
- <form>
- I am <span style={{ display: 'inline-block', width: '16rem', }}><TextInput label="Full name" hint="given and family name" /></span> and I live in <span style={{ display: 'inline-block', width: '24rem', }}><TextInput label="Address" hint="city, state and country" /></span>.
- </form>
- </Playground>
-
- ### Grid
-
- It is advisable to put surrounding elements instead of the `TextInput` components themselves as children of the
- element specified as `grid`. This is to be able to add complementing content to the components, if for example there are
- some content that is best displayed outside the component instead of putting in the `hint` prop.
-
- <Playground>
- <form
- style={{ display: 'grid', gridTemplateColumns: '4fr 4fr 5fr', gap: '1rem', }}
- >
- <div style={{ gridColumnStart: 1, gridColumnEnd: 4, }}>
- <TextInput label="Address line 1" hint="unit/house number, building" />
- </div>
- <div style={{ gridColumnStart: 1, gridColumnEnd: 4, }}>
- <TextInput label="Address line 2" hint="street, area" />
- </div>
- <div>
- <TextInput size="large" label="City/Town" />
- </div>
- <div>
- <TextInput size="large" label="State/Province" />
- </div>
- <div>
- <TextInput size="large" label="Country" hint="abbreviations are accepted" />
- <small>
- Consult the <a href="#">fees table</a> for shipping fee details.
- </small>
- </div>
- </form>
- </Playground>
-
- ## See Also
-
- - <Link to="../select">Select</Link> for a graphically-similar component suitable for selecting more values.
|