diff --git a/packages/core/src/components/app/app.scss b/packages/core/src/components/app/app.scss index 992e98ad75..6fa5f0a1fa 100644 --- a/packages/core/src/components/app/app.scss +++ b/packages/core/src/components/app/app.scss @@ -235,7 +235,7 @@ ion-page, width: 100%; height: 100%; - contain: strict; + contain: layout size style; } // Page Container Structure diff --git a/packages/core/src/components/content/content.tsx b/packages/core/src/components/content/content.tsx index c6b17ec903..a1a3bf678b 100644 --- a/packages/core/src/components/content/content.tsx +++ b/packages/core/src/components/content/content.tsx @@ -87,8 +87,10 @@ export class Content { return; } if (this.fullscreen) { - Context.dom.read(this.readDimensions.bind(this)); - Context.dom.write(this.writeDimensions.bind(this)); + Context.dom.raf(() => { + Context.dom.read(this.readDimensions.bind(this)); + Context.dom.write(this.writeDimensions.bind(this)); + }); } else { this.cTop = this.cBottom = null; Context.dom.write(() => this.scrollEl.removeAttribute('style')); diff --git a/packages/core/src/components/tabs/page-tab.tsx b/packages/core/src/components/tabs/page-tab.tsx index ab5983309b..9d1964968f 100644 --- a/packages/core/src/components/tabs/page-tab.tsx +++ b/packages/core/src/components/tabs/page-tab.tsx @@ -39,7 +39,7 @@ export class PageTab { Tab page , - +

Set tabbar layout

this.setLayout('icon-top')}>icon-top diff --git a/packages/core/src/components/tabs/tabs.scss b/packages/core/src/components/tabs/tabs.scss index aa083afd8a..dbc366c0b7 100644 --- a/packages/core/src/components/tabs/tabs.scss +++ b/packages/core/src/components/tabs/tabs.scss @@ -12,7 +12,7 @@ ion-tabs { flex: 1; - contain: strict; + contain: layout size style; } ion-tab { @@ -25,7 +25,7 @@ ion-tab { width: 100%; height: 100%; - contain: strict; + contain: layout size style; } ion-tab.show-tab { diff --git a/packages/core/src/utils/helpers.ts b/packages/core/src/utils/helpers.ts index db1a8c371e..e04035f783 100644 --- a/packages/core/src/utils/helpers.ts +++ b/packages/core/src/utils/helpers.ts @@ -139,6 +139,10 @@ export function getParentElement(elm: any) { } export function getPageElement(el: HTMLElement) { + const tabs = el.closest('ion-tabs'); + if (tabs) { + return tabs; + } const page = el.closest('ion-page,.ion-page,page-inner'); if (page) { return page;