fn intersect_rectangle( lhs: &Rect<Au, CSSPixel>, rhs: &Rect<Au, CSSPixel>, ) -> Option<Rect<Au, CSSPixel>>
In terms of intersection observer, we consider zero-area rectangles as long as the area is not negative.