Hi there, I am trying to craft a modal that does not take the full screen. I went through most of the options in Custom modal / alert (with HTML, form...) and none of them seem to be working for me. Can someone post working code? I tried creating my own “.modal-wrapper” or overriding “modal” in my home.ts scss - none of them seemed to affect the modal
Here is what I have so far (after trying several options in the above thread)
home.ts
let im = this.modal.create(AlertModalPage, {}, {cssClass:"mymodal"});
im.present();
home.scss
page-home {
.mymodal{
position: absolute !important;
width: 90% !important;
height: 65% !important;
top: 20% !important;
left: 5% !important;
}
}
AlertModalPage is a stock generated empty page
1 Like
Is the modal with the class mymodal
actually created under the <page-home>
component? Use your browser’s dev tools to find out.
2 Likes
Good gosh, you are right. I naively assumed that since I am instantiating the modal inside home.ts
, it would be under home.scss
style def. It’s not. Moving mymodal
to app.scss
worked. Which brings me to my next question - is a global style the only way? I really want all of this to be scoped inside a single component (styles included)
Side note on checking using dev tools:
I wish I could. I am limited to using Dev Tools of safari (my code needs to run on an iOS device) and for some reason, it only occasionally shows inspectable apps on my device and when it does, the element view is completely blank (I am not using --prod
or any income optimizations either that trigger prod mode)
1 Like
Yes. In the DOM, modals live outside of page components.
2 Likes