Docs

Documentation versions (currently viewingVaadin 24)
Documentation translations (currently viewingChinese)

此页面是从官方文档 (http://vaadin.com/docs) 机器翻译而来,可能存在错误、不准确或误述。Vaadin 不保证翻译的准确性、可靠性或及时性。

单选按钮

单选按钮组允许用户在多个选项中选择一个值。

单选按钮组允许用户在多个选项中选择一个值。

Open in a
new tab
Source code
RadioButtonBasic.java
radio-button-basic.tsx
radio-button-basic.ts

状态

只读

当内容需要可访问但不允许编辑时,请使用只读属性。只读元素不可编辑,但仍然是标签顺序的一部分,因此可以获得焦点。只读输入栏中的内容可选中并复制。

Open in a
new tab
Source code
RadioButtonReadonly.java
radio-button-readonly.tsx
radio-button-readonly.ts

禁用

禁用字段以将其标记为当前不可用。禁用状态用于不可编辑且无需查看的字段。禁用元素无法获得焦点,可能对屏幕阅读器等辅助技术不可用。

与隐藏元素相比,禁用元素在改变元素可见性时不会引起布局变化,并且能让用户了解其存在即使当前不可用,因此可能更合适。

Open in a
new tab
Source code
RadioButtonDisabled.java
radio-button-disabled.tsx
radio-button-disabled.ts

排列方向

组件的默认排列是水平的。然而,建议尽可能使用垂直排列,因为用户通常更容易扫描垂直排列的选项列表:

Open in a
new tab
Source code
RadioButtonVertical.java
radio-button-vertical.tsx
radio-button-vertical.ts

在需要节省垂直空间的情况下,可以使用水平排列方向。但建议选项不超过三个:

Open in a
new tab
Source code
RadioButtonHorizontal.java
radio-button-horizontal.tsx
radio-button-horizontal.ts

需要更多选项时,可使用Select组件。

自定义选项展示

单选项可以定制显示多于一行的文本:

Open in a
new tab
Source code
RadioButtonPresentation.java
Card.java
Card.java
DataService.java
DataService.java
radio-button-presentation.tsx
radio-button-presentation.ts

基本特性

以下是大多数输入字段组件都支持的基本特性:

标签

标签用于标识输入字段。其内容为纯文本,并且长度受限于字段的宽度。可使用辅助信息工具提示来提供无法在标签中展示的附加信息。

强烈建议所有输入字段均使用可视化标签。当无法使用内置标签时,可以通过 aria-labelledby 属性将外部元素关联为字段标签。对于没有任何可见标签的字段,应通过 aria-label 属性为辅助技术提供不可见标签。

辅助信息

辅助信息用于在字段下方为用户提供可能需要输入的信息,例如格式要求或字段用途说明。

可以使用样式变体将辅助信息显示在字段上方

除了纯文本之外,辅助信息还可以包含组件和HTML元素。但若内容较为复杂或具有交互性,可能会存在可访问性问题。

工具提示

工具提示是在悬停和键盘聚焦时显示的小型文本弹窗。可用于为字段提供补充信息。这在始终可见的辅助信息不合适的情况下尤其有用。但总体建议优先使用辅助信息,因为它能带来更好的易发现性和移动端支持。更多信息请参阅工具提示文档。

外部及不可见标签(ARIA)

强烈建议所有输入字段使用可视化标签。当无法使用内置标签时,可以通过元素的 id 属性将外部元素关联为字段标签。没有任何可见标签的字段,建议为辅助技术(如屏幕阅读器)提供不可见标签。

Source code
HTML
<!-- 将外部元素关联为标签: -->
<label id="external-label">This is the label</label>
<vaadin-radio-button-group accessible-name-ref="external-label">...

<!-- 为屏幕阅读器提供不可见的标签: -->
<vaadin-radio-button-group accessible-name="This is the label">...
Java
Open in a
new tab
Source code
RadioButtonGroupBasicFeatures.java
radio-button-group-basic-features.tsx
radio-button-group-basic-features.ts

样式变体

可应用以下样式变体:

辅助信息显示于字段上方

辅助信息可显示在字段上方、标签下方。

边框

可通过为 --vaadin-input-field-border-width CSS 属性赋值(如 1px),为字段表面添加边框。可通过 html 选择器为所有输入字段全局应用边框,也可以仅应用于特定组件实例。要获得符合 WCAG 2.1 AA 级 色彩对比标准的默认 Lumo 字段样式,边框是必需的。

可通过 --vaadin-input-field-border-color 属性重写默认边框颜色。

Open in a
new tab
Source code
RadioButtonGroupStyles.java
radio-button-group-styles.tsx
radio-button-group-styles.ts

E1E617CE-F935-451D-885F-CEF94EC0E53A