To overlay text on an image in Webflow and ensure the text container matches the image's dimensions (especially for hover effects), use absolute positioning within a relative parent.
1. Set Up the Image Container
- Add a Div Block to act as the image wrapper.
- Set the Div’s position to Relative in the Style panel.
- Add the Image inside this Div.
2. Create the Text Overlay Layer
- Add another Div Block inside the same parent Div (after the image).
- *_Set its position to _Absolute*** and assign **Top: 0, Bottom: 0, Left: 0, Right: 0** — this makes it perfectly overlay the image.
- Set Width: 100% and Height: 100% to ensure it fills the image area.
- Set z-index higher than the image (e.g., z-index: 2).
3. Style the Text Overlay
- Add a Text Block or Heading inside the overlay Div.
- Use Flex: Center Center or Grid to vertically and horizontally center the text if desired.
- Set Background color (optional) and initial Opacity: 0 for hover effects.
4. Add Hover Effects
- Select the image wrapper Div.
- Create a Hover state for it.
- In the Hover state, change the overlay Div’s Opacity to 100% or apply other desired effects.
- You can add transitions to the overlay Div for smooth hover animations (e.g., transition: opacity 200ms ease-in-out).
Summary
Wrap your image and overlay text in a relative-positioned parent, use absolute positioning for the overlay, and match size with 100% width and height. Add hover effects via the parent to reveal or animate the text overlay.