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:
@@ -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 => {
|
||||
|
Reference in New Issue
Block a user