ionic-team / ionic-team/ionic-framework

feat: toast - allow fine grained control over toast position

Open
#29,990 2 comments 0 reactions 0 assignees View on GitHub
triage
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 include this feature request, without success.

### Describe the Feature Request

The toast either gets in the way, or is out of eyesight.

I want to position it as a lower-third.

I have an ion-footer / ion-toolbar in my app, and if I put the toast at the bottom then it covers the ui and gets in the way.

Putting it at the middle or top, even I miss it sometimes, as the app developer. Modern phones are tall and its out of my eyesight when I'm pressing an ok or save button in the footer of the screen.

I wanted to adjust it but the component uses css shadow parts and the positioning is done in a part that is not exposed.

This doesn't work because it just moves the text inside the toast, not the background and actual toast:

```css
.util-brand-toast::part(container) {
transform: translate3d(0, -30%, 0) !important;
}
```

This doesn't work because its not exposed:

```css
.util-brand-toast .toast-wraper.toast-bottom {
transform: translate3d(0, -30%, 0) !important;
}
```

This does "work" but it affects the outer container, and I'm nervous that it's not a clean way of doing things:

```css
.util-brand-toast {
transform: translate3d(0, -30%, 0) !important;
}
```

It ends up like this:

image

### Describe the Use Case

Allow fine grained control over the toast position

### Describe Preferred Solution

Access to the `.toast-wrapper` or some setting method.

### Describe Alternatives

_No response_

### Related Code

_No response_

### Additional Information

_No response_

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.