HTML iFrame element on mobile: is it possible to control fullscreen behavior or iframe sizing?

Hi Wix team :waving_hand:

I’m embedding a custom widget using the HTML iFrame element (Embed Code) in Wix Studio. The widget is a Custom Element (Web Component) that mounts a React app inside the iframe.

Context

  • The widget loads correctly on desktop.

  • On mobile, Wix renders the HTML element as a fullscreen overlay iframe.

  • Any CSS or JS I apply only affects the HTML inside the iframe (as expected), not the iframe container created by Wix.

Question
Is there any supported way to:

  1. Control or override the iframe sizing/positioning on mobile, or

  2. Prevent the HTML iFrame element from becoming fullscreen on mobile, or

  3. Programmatically interact with or configure the iframe container created by Wix (via Velo / Custom Code)?

From the documentation, I understand that:

  • HTML Embed elements are always rendered inside a sandboxed iframe

  • Even Wix Custom Elements / Velo Custom Elements still run inside that iframe

  • CSS/JS cannot reach the parent document

I just want to confirm officially:

:backhand_index_pointing_right: Is the mobile fullscreen behavior of HTML iFrame elements hard-coded and non-configurable?
:backhand_index_pointing_right: Or is there any recommended pattern (flags, settings, APIs) to handle this use case?

What I’m trying to achieve

  • On mobile: open the widget in a controlled “fullscreen-like” mode only when the user interacts

  • Avoid Wix forcing fullscreen immediately when the iframe loads

If the answer is “this is not possible and must be handled inside the iframe UI”, that’s totally fine — I just want to be sure before redesigning the widget UX.

Thanks in advance :folded_hands:
Any clarification or official guidance would be super helpful.

Hi, @lucas_curto !!

Personally, I don’t recall iframes being automatically rendered in full-screen mode on mobile—I wonder if it’s been changed to work like that lately? :thinking: Also, regarding Wix Custom Elements, my understanding is that they run within an iframe inside the editor, but behave differently on the live site. :innocent: