ionic-team / ionic-team/ionic-framework

bug: Backdrop only visible for first modal

Open
#29,815 5 comments 0 reactions 0 assignees View on GitHub
package: core type: bug
Dominant language
TypeScript
Stars
52.7k
Forks
13.3k
Avg merge
1d 15h
Merged PRs (30d)
51

Description

### Prerequisites

- [X] I have read the [Contributing Guidelines](https://github.com/ionic-team/ionic-framework/blob/main/docs/CONTRIBUTING.md#creating-an-issue).
- [X] I agree to follow the [Code of Conduct](https://ionicframework.com/code-of-conduct).
- [X] I have searched for [existing issues](https://github.com/ionic-team/ionic-framework/issues) that already report this problem, without success.

### Ionic Framework Version

v8.x

### Current Behavior

It seems that the backdrop of e.g. modal is only visible for the first modal. This makes neasted modals look confusing. It's not about fullscreen modals.

### Expected Behavior

In ealier versions the backdrops were visible for each modal. I guess this has been changed, because multiple modals with each have it's own backdrop visible, leads to darker and darker background (up to black).

But I would rather show the last backdrop and not the first one. Otherwise, the nested modals are on top of each other and it is difficult to see what the topmost modal is.

My current workaround is:

```scss
ion-modal.modal-default.show-modal:last-of-type {
// I set --ion-backdrop-opacity in variables theme dependent.
--backdrop-opacity: var(--ion-backdrop-opacity, 0.33) !important;
}
```

### Steps to Reproduce

1. Create modals; not fullscreen; different sizes.
2. In a modal, open another.
3. See that the backdrop is only visible on the first modal. Not on the second one.

### Code Reproduction URL

https://codepen.io/fudom/pen/zYVLXxO

### Ionic Info

No Ionic repo (no ionic info available). But it does not matter in this case. I use Angular with Ionic 8.2.x. But see CodePen too.

### Additional Information

With my workaround and proposal, you see this effect.

| Before | After |
| --- | --- |
|![before](https://github.com/user-attachments/assets/3d2ad892-5038-41c3-a6ea-7cf81758e283)|![after](https://github.com/user-attachments/assets/100058e5-3815-4fd5-a7c9-bae13642889b)|

@liamdebeasi cc

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.