1
0
mirror of https://github.com/twbs/bootstrap.git synced 2025-08-12 08:34:08 +02:00

Fix: isVisible function behavior in case of a <details> element, on chrome 97 (#35682)

This commit is contained in:
Ryan Berliner
2022-01-13 03:55:05 -05:00
committed by GitHub
parent d581737f78
commit 14c7dc1e88
2 changed files with 56 additions and 1 deletions

View File

@@ -128,7 +128,26 @@ const isVisible = element => {
return false
}
return getComputedStyle(element).getPropertyValue('visibility') === 'visible'
const elementIsVisible = getComputedStyle(element).getPropertyValue('visibility') === 'visible'
// Handle `details` element as its content may falsie appear visible when it is closed
const closedDetails = element.closest('details:not([open])')
if (!closedDetails) {
return elementIsVisible
}
if (closedDetails !== element) {
const summary = element.closest('summary')
if (summary && summary.parentNode !== closedDetails) {
return false
}
if (summary === null) {
return false
}
}
return elementIsVisible
}
const isDisabled = element => {