Skip to content

Commit 464d257

Browse files
tmorehousejacobmllr95
authored andcommitted
feat(dropdown): add role=presentation to <li> elements for improved a11y (#3996)
* chore(dropdown): add `role=presentation` to `<li>` elements * Update dropdown-form.js * Update dropdown-group.js * Update dropdown-header.js * Update dropdown-item-button.js * Update dropdown-item.js * Update dropdown-text.js
1 parent 484f012 commit 464d257

File tree

7 files changed

+8
-7
lines changed

7 files changed

+8
-7
lines changed

src/components/dropdown/dropdown-divider.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export const BDropdownDivider = /*#__PURE__*/ Vue.extend({
1515
inheritAttrs: false,
1616
props,
1717
render(h, { props, data }) {
18-
return h('li', [
18+
return h('li', { attrs: { role: 'presentation' } }, [
1919
h(
2020
props.tag,
2121
mergeData(data, {

src/components/dropdown/dropdown-form.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ export const BDropdownForm = /*#__PURE__*/ Vue.extend({
1414
}
1515
},
1616
render(h, { props, data, children }) {
17-
return h('li', [
17+
return h('li', { attrs: { role: 'presentation' } }, [
1818
h(
1919
BForm,
2020
mergeData(data, {

src/components/dropdown/dropdown-group.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,14 +62,15 @@ export const BDropdownGroup = /*#__PURE__*/ Vue.extend({
6262
.join(' ')
6363
.trim()
6464

65-
return h('li', [
65+
return h('li', { attrs: { role: 'presentation' } }, [
6666
header || h(),
6767
h(
6868
'ul',
6969
mergeData(data, {
7070
staticClass: 'list-unstyled',
7171
attrs: {
7272
id: props.id || null,
73+
role: 'group',
7374
'aria-describedby': adb || null
7475
}
7576
}),

src/components/dropdown/dropdown-header.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ export const BDropdownHeader = /*#__PURE__*/ Vue.extend({
2323
inheritAttrs: false,
2424
props,
2525
render(h, { props, data, children }) {
26-
return h('li', [
26+
return h('li', { attrs: { role: 'presentation' } }, [
2727
h(
2828
props.tag,
2929
mergeData(data, {

src/components/dropdown/dropdown-item-button.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ export const BDropdownItemButton = /*#__PURE__*/ Vue.extend({
4343
}
4444
},
4545
render(h) {
46-
return h('li', [
46+
return h('li', { attrs: { role: 'presentation' } }, [
4747
h(
4848
'button',
4949
{

src/components/dropdown/dropdown-item.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ export const BDropdownItem = /*#__PURE__*/ Vue.extend({
3737
}
3838
},
3939
render(h) {
40-
return h('li', [
40+
return h('li', { attrs: { role: 'presentation' } }, [
4141
h(
4242
BLink,
4343
{

src/components/dropdown/dropdown-text.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ export const BDropdownText = /*#__PURE__*/ Vue.extend({
1717
}
1818
},
1919
render(h, { props, data, children }) {
20-
return h('li', [
20+
return h('li', { attrs: { role: 'presentation' } }, [
2121
h(
2222
props.tag,
2323
mergeData(data, {

0 commit comments

Comments
 (0)