Fix <mwc-tab-bar> layout issue in Firefox #349
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
If an
<mwc-tab-bar>
's container doesn't fit the bar with all its tabs, then the tabs should not overflow the container, and should automatically scroll horizontally so that the selected tab is displayed, like this:This is what we get in in Chrome 76. But in Firefox 68, we get this:
Changing the style to
:host { display: block; }
makes the behavior match. There seems to be an inconsistency between Firefox and Chrome here -- maybe a Firefox bug? Changingdisplay
to any of:unset
,block
, orinline
works, butflex-inline
has the same problem.I'm also wondering why we put
display:flex
on the host anyway? My (very possibly wrong) understanding was thatdisplay:flex
is equivalent todisplay:block
in terms of the layout of the flex container itself (wheredisplay: inline-flex
would be the equivalent where the flex container isinline
), and also thatdisplay
wouldn't be inherited to any children in the shadow root, so it should have no effect there. If that's true, it doesn't seem thatdisplay:flex
does anything useful vsdisplay:block
?Repro: