-
-
Notifications
You must be signed in to change notification settings - Fork 7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug Report][3.3.4] Elements that overflow are covered by those under them, even ignoring z-index #17628
Comments
VCard also has
Seems like a firefox bug with grid,
Intentional, the most recently opened one is on top
Yeah you'll get that if it's in another element that creates a stacking context, that's exactly why stuff like teleport exists. |
I'd expect that we can at least set
Yeah, sadly height isn't sufficient for my use-case. I'm mostly curious as to what "new CSS feature" had been used, as it's not intuitive how a feature as simple/old as this can possibly cause a breaking change.
It really doesn't work though, I wasn't able to reproduce a deterministic behavior. In any case, I illustrate a use-case of defining a set of multiple snackbar types with priority, as in
Does Vuetify 3 now create stacking contexts that intentionally cannot be overridden by any library? I wonder what kinds of workaround steps could be documented for beginners. |
It already has it
https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_grid_layout
An example of this would help. It reuses the same code as dialogs and menus so it should be fine
Typically you would have a single snackbar component and switch between them with a script, might be some ideas for you in #2384
No, it's just a consequence of CSS that's needed for other reasons |
well it gets covered by z-index: 99
Sadly, I'm only able to debug it in the inspector as part of the entire project (where I see that one VOverlay gets 2010 and keeps it even after the snackbar is closed/reopened). I was only able to reproduce the behavior I wanted: where this issue doesn't appear, i.e. the priority works as I'd need it to.
|
The existing z-index: 0 creates a new stacking context |
@KaelWD what is the workaround then? How can we make it work like it did in Vuetify 2? I believe that higher z-index values should be able to override lower ones. |
I found a workaround: it gets fixed once I add |
Environment
Vuetify Version: 3.3.4
Last working version: 2.5.7
Vue Version: 3.3.4
Browsers: Opera, Google Chrome, Mozilla Firefox
OS: Windows 10
Steps to reproduce
Create
<v-card style="overflow: initial">
, place an element inside and make it overflow, for example bystyle="transform: scale(7)
.Expected Behavior
Element covers anything outside the container, especially when using higher
z-index
.Actual Behavior
z-index
is also ignored - in general, it works way worse compared to Vuetify 2, and the rules behind how some components sometimes have increasedz-index
seem too arbitrary.Reproduction Link
https://play.vuetifyjs.com/#...
Other comments
overflow: initial
onv-card
as recommended in [Bug Report][3.3.3] VOverlay contained is cropped if content is larger than container #17593 causes the same behavior as Vuetify 2, where this worked flawlessly.On
.v-system-bar
I usez-index: 0 !important;
to address this issue, as mentioned in [Bug Report][3.3.3] VSystemBar forcibly displays at the top of a page and covers content #17580. Do we have to use this workaround everywhere?✨ When using
![image](https://private-user-images.githubusercontent.com/3118390/246202080-03f59970-6541-4a08-9439-890cbf8914c5.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk4MjE5MDgsIm5iZiI6MTczOTgyMTYwOCwicGF0aCI6Ii8zMTE4MzkwLzI0NjIwMjA4MC0wM2Y1OTk3MC02NTQxLTRhMDgtOTQzOS04OTBjYmY4OTE0YzUucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIxNyUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMTdUMTk0NjQ4WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9OTU3MmMxMTYxNGRmMzQxZmQwNDhjZjhiZTYzNWJkZmM5ZTgzYjcwMzlkYmRiNjZlMDJlMzI3Yjc0OTlkYTZjOCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.QHso5pIW4724zaS89zNiKgxj95H5gBEpEmjxapTEGGg)
max-height
, the width is supposed to reduce, but in old browser (reproduced in Firefox 106), the image gets cut instead, keeping full width. The old Vuetify 2 version behaved as supposed even in old browser, so why does an element as simple asv-img
need a breaking change? Is there no way to make it backwards compatible?✨ There is also a strange behavior of stacking order of
v-snackbar
- when I enable more of them, one unexpectedly gets astyle="z-index: 2010; "
(instead of 2000), causing their order to change. I wasn't able to reproduce a minimal example for this, but it always happens in my project. In any case, this side-effect is too arbitrary and seems to be introduced to VOverlay in #05290fe3. It requires a workaround ofIn general,
z-index
override used by libraries doesn't seem to have effect (for example, fullscreen mode of Trumbowyg).The text was updated successfully, but these errors were encountered: