mirror of
https://github.com/element-plus/element-plus.git
synced 2025-08-14 18:11:48 +08:00

* feat(components): [form-item]: add `label-position` prop * docs(components): form-item label-position docs * test(components): form-item closed form-item label-position test * Update docs/en-US/component/form.md Co-authored-by: btea <2356281422@qq.com> * Update docs/en-US/component/form.md Co-authored-by: btea <2356281422@qq.com> * Update docs/en-US/component/form.md Co-authored-by: btea <2356281422@qq.com> * fix(components): form-item line-height is overridden by the form style fix(components): form-item label-position style is invalid when label-width is auto * docs(components): update form and form-item alignment examples * Update docs/en-US/component/form.md Co-authored-by: kooriookami <38392315+kooriookami@users.noreply.github.com> * Update docs/en-US/component/form.md Co-authored-by: kooriookami <38392315+kooriookami@users.noreply.github.com> --------- Co-authored-by: btea <2356281422@qq.com> Co-authored-by: kooriookami <38392315+kooriookami@users.noreply.github.com>
52 lines
1.5 KiB
Vue
52 lines
1.5 KiB
Vue
<template>
|
|
<div style="margin: 20px">
|
|
<span>Form Align</span>
|
|
<el-radio-group v-model="labelPosition" aria-label="label position">
|
|
<el-radio-button value="left">Left</el-radio-button>
|
|
<el-radio-button value="right">Right</el-radio-button>
|
|
<el-radio-button value="top">Top</el-radio-button>
|
|
</el-radio-group>
|
|
</div>
|
|
<div>
|
|
<span>First Form Item Align</span>
|
|
<el-radio-group
|
|
v-model="itemLabelPosition"
|
|
aria-label="form item label position"
|
|
>
|
|
<el-radio-button value="left">Left</el-radio-button>
|
|
<el-radio-button value="right">Right</el-radio-button>
|
|
<el-radio-button value="top">Top</el-radio-button>
|
|
</el-radio-group>
|
|
</div>
|
|
<div style="margin: 20px" />
|
|
<el-form
|
|
:label-position="labelPosition"
|
|
label-width="auto"
|
|
:model="formLabelAlign"
|
|
style="max-width: 600px"
|
|
>
|
|
<el-form-item label="Name" :label-position="itemLabelPosition">
|
|
<el-input v-model="formLabelAlign.name" />
|
|
</el-form-item>
|
|
<el-form-item label="Activity zone">
|
|
<el-input v-model="formLabelAlign.region" />
|
|
</el-form-item>
|
|
<el-form-item label="Activity form">
|
|
<el-input v-model="formLabelAlign.type" />
|
|
</el-form-item>
|
|
</el-form>
|
|
</template>
|
|
|
|
<script lang="ts" setup>
|
|
import { reactive, ref } from 'vue'
|
|
import type { FormProps } from 'element-plus'
|
|
|
|
const labelPosition = ref<FormProps['labelPosition']>('right')
|
|
const itemLabelPosition = ref<FormProps['labelPosition']>('right')
|
|
const formLabelAlign = reactive({
|
|
name: '',
|
|
region: '',
|
|
type: '',
|
|
})
|
|
</script>
|