When XBL was a thing, it used Layout semantics to determine when to attach a binding.
This resulted in "interesting" behaviour, where one would either have to wait for layout to run before calling into binding code, or force layout to run synchronously.
Oftentimes, we went with the latter, using something like
el.clientTop; or some such.
emilio just got rid of some of those in bug 1596800, but I think there are more.
clientTop; in searchfox yields a number of examples: https://searchfox.org/mozilla-central/search?q=clientTop%3B&path=
I'll link to some non-test ones here (excluding the one that emilio is removing in bug 1596800):
There might be more, but these are the ones I found within a few minutes of searching.