diff --git a/packages/radio/src/radio-button.vue b/packages/radio/src/radio-button.vue
index a834e0ad..0f995f15 100644
--- a/packages/radio/src/radio-button.vue
+++ b/packages/radio/src/radio-button.vue
@@ -6,6 +6,11 @@
{ 'is-active': value === label },
{ 'is-disabled': isDisabled }
]"
+ role="radio"
+ :aria-checked="value === label"
+ :aria-disabled="isDisabled"
+ :tabindex="tabIndex"
+ @keydown.space.stop.prevent="value = label"
>
+ :disabled="isDisabled"
+ tabindex="-1"
+ >
{{label}}
@@ -62,6 +69,9 @@
},
isDisabled() {
return this.disabled || this._radioGroup.disabled;
+ },
+ tabIndex() {
+ return !this.isDisabled ? (this._radioGroup ? (this.value === this.label ? 0 : -1) : 0) : -1;
}
}
};
diff --git a/packages/radio/src/radio-group.vue b/packages/radio/src/radio-group.vue
index 72486a8d..731a0435 100644
--- a/packages/radio/src/radio-group.vue
+++ b/packages/radio/src/radio-group.vue
@@ -1,11 +1,21 @@
-