11@import ' ../core/style/variables' ;
2+ @import ' ../core/style/vendor-prefixes' ;
23@import ' ../../cdk/a11y/a11y' ;
34
45$mat-tab-bar-height : 48px !default ;
@@ -50,14 +51,7 @@ $mat-tab-animation-duration: 500ms !default;
5051 }
5152}
5253
53- // Mixin styles for the top section of the view; contains the tab labels.
54- @mixin tab-header {
55- overflow : hidden ;
56- position : relative ;
57- flex-shrink : 0 ;
58- }
59-
60- // Mixin styles for the ink bar that displays near the active tab in the header.
54+ // The ink bar that displays under the active tab label
6155@mixin ink-bar {
6256 $height : 2px ;
6357
@@ -76,3 +70,85 @@ $mat-tab-animation-duration: 500ms !default;
7670 height : 0 ;
7771 }
7872}
73+
74+ // Structural styles for a tab header.
75+ @mixin paginated-tab-header {
76+ .mat-tab-header {
77+ display : flex ;
78+ overflow : hidden ;
79+ position : relative ;
80+ flex-shrink : 0 ;
81+ }
82+
83+ .mat-tab-header-pagination {
84+ @include user-select (none );
85+ position : relative ;
86+ display : none ;
87+ justify-content : center ;
88+ align-items : center ;
89+ min-width : 32px ;
90+ cursor : pointer ;
91+ z-index : 2 ;
92+ -webkit-tap-highlight-color : transparent ;
93+ touch-action : none ;
94+
95+ .mat-tab-header-pagination-controls-enabled & {
96+ display : flex ;
97+ }
98+ }
99+
100+ // The pagination control that is displayed on the left side of the tab header.
101+ .mat-tab-header-pagination-before , .mat-tab-header-rtl .mat-tab-header-pagination-after {
102+ padding-left : 4px ;
103+ .mat-tab-header-pagination-chevron {
104+ transform : rotate (-135deg );
105+ }
106+ }
107+
108+ // The pagination control that is displayed on the right side of the tab header.
109+ .mat-tab-header-rtl .mat-tab-header-pagination-before , .mat-tab-header-pagination-after {
110+ padding-right : 4px ;
111+ .mat-tab-header-pagination-chevron {
112+ transform : rotate (45deg );
113+ }
114+ }
115+
116+ .mat-tab-header-pagination-chevron {
117+ border-style : solid ;
118+ border-width : 2px 2px 0 0 ;
119+ content : ' ' ;
120+ height : 8px ;
121+ width : 8px ;
122+ }
123+
124+ .mat-tab-header-pagination-disabled {
125+ box-shadow : none ;
126+ cursor : default ;
127+ }
128+
129+ .mat-tab-list {
130+ flex-grow : 1 ;
131+ position : relative ;
132+ transition : transform 500ms cubic-bezier (0.35 , 0 , 0.25 , 1 );
133+ }
134+ }
135+
136+ // Structural styles for the element that wraps the paginated header items.
137+ @mixin paginated-tab-header-item-wrapper {
138+ display : flex ;
139+
140+ [mat-align-tabs = ' center' ] & {
141+ justify-content : center ;
142+ }
143+
144+ [mat-align-tabs = ' end' ] & {
145+ justify-content : flex-end ;
146+ }
147+ }
148+
149+ @mixin paginated-tab-header-container {
150+ display : flex ;
151+ flex-grow : 1 ;
152+ overflow : hidden ;
153+ z-index : 1 ;
154+ }
0 commit comments