Skip to content

Commit 3696858

Browse files
mrozillagatsbybot
and
gatsbybot
authored
fix(gatsby-remark-autolink-headers): include scroll-margin in getTargetOffset (#24018)
* fix: include scroll-margin in getTargetOffset * fix: add safari safeguard * chore: format Co-authored-by: gatsbybot <[email protected]>
1 parent 7878d0f commit 3696858

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

Diff for: packages/gatsby-remark-autolink-headers/src/gatsby-browser.js

+11-1
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,18 @@ const getTargetOffset = hash => {
1111
document.body.scrollTop
1212
let clientTop =
1313
document.documentElement.clientTop || document.body.clientTop || 0
14+
let computedStyles = window.getComputedStyle(element)
15+
let scrollMarginTop =
16+
computedStyles.getPropertyValue(`scroll-margin-top`) ||
17+
computedStyles.getPropertyValue(`scroll-snap-margin-top`) ||
18+
`0px`
19+
1420
return (
15-
element.getBoundingClientRect().top + scrollTop - clientTop - offsetY
21+
element.getBoundingClientRect().top +
22+
scrollTop -
23+
parseInt(scrollMarginTop, 10) -
24+
clientTop -
25+
offsetY
1626
)
1727
}
1828
}

0 commit comments

Comments
 (0)