tabs.css 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316
  1. /*!
  2. * AngularJS Material Design
  3. * https://github.com/angular/material
  4. * @license MIT
  5. * v1.1.8-master-aba7b2b
  6. */
  7. @-webkit-keyframes md-tab-content-hide {
  8. 0% {
  9. opacity: 1; }
  10. 50% {
  11. opacity: 1; }
  12. 100% {
  13. opacity: 0; } }
  14. @keyframes md-tab-content-hide {
  15. 0% {
  16. opacity: 1; }
  17. 50% {
  18. opacity: 1; }
  19. 100% {
  20. opacity: 0; } }
  21. md-tab-data {
  22. position: absolute;
  23. top: 0;
  24. left: 0;
  25. right: 0;
  26. bottom: 0;
  27. z-index: -1;
  28. opacity: 0; }
  29. md-tabs {
  30. display: block;
  31. margin: 0;
  32. border-radius: 2px;
  33. overflow: hidden;
  34. position: relative;
  35. -webkit-flex-shrink: 0;
  36. flex-shrink: 0; }
  37. md-tabs:not(.md-no-tab-content):not(.md-dynamic-height) {
  38. min-height: 248px; }
  39. md-tabs[md-align-tabs="bottom"] {
  40. padding-bottom: 48px; }
  41. md-tabs[md-align-tabs="bottom"] md-tabs-wrapper {
  42. position: absolute;
  43. bottom: 0;
  44. left: 0;
  45. right: 0;
  46. height: 48px;
  47. z-index: 2; }
  48. md-tabs[md-align-tabs="bottom"] md-tabs-content-wrapper {
  49. top: 0;
  50. bottom: 48px; }
  51. md-tabs.md-dynamic-height md-tabs-content-wrapper {
  52. min-height: 0;
  53. position: relative;
  54. top: auto;
  55. left: auto;
  56. right: auto;
  57. bottom: auto;
  58. overflow: visible; }
  59. md-tabs.md-dynamic-height md-tab-content.md-active {
  60. position: relative; }
  61. md-tabs[md-border-bottom] md-tabs-wrapper {
  62. border-width: 0 0 1px;
  63. border-style: solid; }
  64. md-tabs[md-border-bottom]:not(.md-dynamic-height) md-tabs-content-wrapper {
  65. top: 49px; }
  66. md-tabs-wrapper {
  67. display: block;
  68. position: relative;
  69. -webkit-transform: translate3d(0, 0, 0);
  70. transform: translate3d(0, 0, 0); }
  71. md-tabs-wrapper md-prev-button, md-tabs-wrapper md-next-button {
  72. height: 100%;
  73. width: 32px;
  74. position: absolute;
  75. top: 50%;
  76. -webkit-transform: translateY(-50%);
  77. transform: translateY(-50%);
  78. line-height: 1em;
  79. z-index: 2;
  80. cursor: pointer;
  81. font-size: 16px;
  82. background: transparent no-repeat center center;
  83. -webkit-transition: all 0.5s cubic-bezier(0.35, 0, 0.25, 1);
  84. transition: all 0.5s cubic-bezier(0.35, 0, 0.25, 1); }
  85. md-tabs-wrapper md-prev-button:focus, md-tabs-wrapper md-next-button:focus {
  86. outline: none; }
  87. md-tabs-wrapper md-prev-button.md-disabled, md-tabs-wrapper md-next-button.md-disabled {
  88. opacity: 0.25;
  89. cursor: default; }
  90. md-tabs-wrapper md-prev-button.ng-leave, md-tabs-wrapper md-next-button.ng-leave {
  91. -webkit-transition: none;
  92. transition: none; }
  93. md-tabs-wrapper md-prev-button md-icon, md-tabs-wrapper md-next-button md-icon {
  94. position: absolute;
  95. top: 50%;
  96. left: 50%;
  97. -webkit-transform: translate3d(-50%, -50%, 0);
  98. transform: translate3d(-50%, -50%, 0); }
  99. [dir="rtl"] md-tabs-wrapper md-prev-button, [dir="rtl"] md-tabs-wrapper md-next-button {
  100. -webkit-transform: rotateY(180deg) translateY(-50%);
  101. transform: rotateY(180deg) translateY(-50%); }
  102. md-tabs-wrapper md-prev-button {
  103. left: 0;
  104. background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE3LjEuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPiA8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPiA8c3ZnIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjI0cHgiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMjQgMjQiIHhtbDpzcGFjZT0icHJlc2VydmUiPiA8ZyBpZD0iSGVhZGVyIj4gPGc+IDxyZWN0IHg9Ii02MTgiIHk9Ii0xMjA4IiBmaWxsPSJub25lIiB3aWR0aD0iMTQwMCIgaGVpZ2h0PSIzNjAwIi8+IDwvZz4gPC9nPiA8ZyBpZD0iTGFiZWwiPiA8L2c+IDxnIGlkPSJJY29uIj4gPGc+IDxwb2x5Z29uIHBvaW50cz0iMTUuNCw3LjQgMTQsNiA4LDEyIDE0LDE4IDE1LjQsMTYuNiAxMC44LDEyIAkJIiBzdHlsZT0iZmlsbDp3aGl0ZTsiLz4gPHJlY3QgZmlsbD0ibm9uZSIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ii8+IDwvZz4gPC9nPiA8ZyBpZD0iR3JpZCIgZGlzcGxheT0ibm9uZSI+IDxnIGRpc3BsYXk9ImlubGluZSI+IDwvZz4gPC9nPiA8L3N2Zz4NCg=="); }
  105. [dir=rtl] md-tabs-wrapper md-prev-button {
  106. left: auto;
  107. right: 0; }
  108. md-tabs-wrapper md-next-button {
  109. right: 0;
  110. background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE3LjEuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPiA8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPiA8c3ZnIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjI0cHgiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMjQgMjQiIHhtbDpzcGFjZT0icHJlc2VydmUiPiA8ZyBpZD0iSGVhZGVyIj4gPGc+IDxyZWN0IHg9Ii02MTgiIHk9Ii0xMzM2IiBmaWxsPSJub25lIiB3aWR0aD0iMTQwMCIgaGVpZ2h0PSIzNjAwIi8+IDwvZz4gPC9nPiA8ZyBpZD0iTGFiZWwiPiA8L2c+IDxnIGlkPSJJY29uIj4gPGc+IDxwb2x5Z29uIHBvaW50cz0iMTAsNiA4LjYsNy40IDEzLjIsMTIgOC42LDE2LjYgMTAsMTggMTYsMTIgCQkiIHN0eWxlPSJmaWxsOndoaXRlOyIvPiA8cmVjdCBmaWxsPSJub25lIiB3aWR0aD0iMjQiIGhlaWdodD0iMjQiLz4gPC9nPiA8L2c+IDxnIGlkPSJHcmlkIiBkaXNwbGF5PSJub25lIj4gPGcgZGlzcGxheT0iaW5saW5lIj4gPC9nPiA8L2c+IDwvc3ZnPg0K"); }
  111. [dir=rtl] md-tabs-wrapper md-next-button {
  112. right: auto;
  113. left: 0; }
  114. md-tabs-wrapper md-next-button md-icon {
  115. -webkit-transform: translate3d(-50%, -50%, 0) rotate(180deg);
  116. transform: translate3d(-50%, -50%, 0) rotate(180deg); }
  117. md-tabs-wrapper.md-stretch-tabs md-pagination-wrapper {
  118. width: 100%;
  119. -webkit-box-orient: horizontal;
  120. -webkit-box-direction: normal;
  121. -webkit-flex-direction: row;
  122. flex-direction: row; }
  123. md-tabs-wrapper.md-stretch-tabs md-pagination-wrapper md-tab-item {
  124. -webkit-box-flex: 1;
  125. -webkit-flex-grow: 1;
  126. flex-grow: 1; }
  127. md-tabs-canvas {
  128. position: relative;
  129. overflow: hidden;
  130. display: block;
  131. height: 48px; }
  132. md-tabs-canvas:after {
  133. content: '';
  134. display: table;
  135. clear: both; }
  136. md-tabs-canvas .md-dummy-wrapper {
  137. position: absolute;
  138. top: 0;
  139. left: 0; }
  140. [dir=rtl] md-tabs-canvas .md-dummy-wrapper {
  141. left: auto;
  142. right: 0; }
  143. md-tabs-canvas.md-paginated {
  144. margin: 0 32px; }
  145. md-tabs-canvas.md-center-tabs {
  146. display: -webkit-box;
  147. display: -webkit-flex;
  148. display: flex;
  149. -webkit-box-orient: vertical;
  150. -webkit-box-direction: normal;
  151. -webkit-flex-direction: column;
  152. flex-direction: column;
  153. text-align: center; }
  154. md-tabs-canvas.md-center-tabs .md-tab {
  155. float: none;
  156. display: inline-block; }
  157. md-pagination-wrapper {
  158. height: 48px;
  159. display: -webkit-box;
  160. display: -webkit-flex;
  161. display: flex;
  162. -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.35, 0, 0.25, 1);
  163. transition: -webkit-transform 0.5s cubic-bezier(0.35, 0, 0.25, 1);
  164. transition: transform 0.5s cubic-bezier(0.35, 0, 0.25, 1);
  165. transition: transform 0.5s cubic-bezier(0.35, 0, 0.25, 1), -webkit-transform 0.5s cubic-bezier(0.35, 0, 0.25, 1);
  166. position: absolute;
  167. left: 0;
  168. -webkit-transform: translate3d(0, 0, 0);
  169. transform: translate3d(0, 0, 0); }
  170. md-pagination-wrapper:after {
  171. content: '';
  172. display: table;
  173. clear: both; }
  174. [dir=rtl] md-pagination-wrapper {
  175. left: auto;
  176. right: 0; }
  177. md-pagination-wrapper.md-center-tabs {
  178. position: relative;
  179. -webkit-box-pack: center;
  180. -webkit-justify-content: center;
  181. justify-content: center; }
  182. md-tabs-content-wrapper {
  183. display: block;
  184. position: absolute;
  185. top: 48px;
  186. left: 0;
  187. right: 0;
  188. bottom: 0;
  189. overflow: hidden; }
  190. md-tab-content {
  191. display: -webkit-box;
  192. display: -webkit-flex;
  193. display: flex;
  194. position: absolute;
  195. top: 0;
  196. left: 0;
  197. right: 0;
  198. bottom: 0;
  199. -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.35, 0, 0.25, 1);
  200. transition: -webkit-transform 0.5s cubic-bezier(0.35, 0, 0.25, 1);
  201. transition: transform 0.5s cubic-bezier(0.35, 0, 0.25, 1);
  202. transition: transform 0.5s cubic-bezier(0.35, 0, 0.25, 1), -webkit-transform 0.5s cubic-bezier(0.35, 0, 0.25, 1);
  203. overflow: auto;
  204. -webkit-transform: translate3d(0, 0, 0);
  205. transform: translate3d(0, 0, 0); }
  206. md-tab-content.md-no-scroll {
  207. bottom: auto;
  208. overflow: hidden; }
  209. md-tab-content.ng-leave, md-tab-content.md-no-transition {
  210. -webkit-transition: none;
  211. transition: none; }
  212. md-tab-content.md-left:not(.md-active) {
  213. -webkit-transform: translateX(-100%);
  214. transform: translateX(-100%);
  215. -webkit-animation: 1s md-tab-content-hide;
  216. animation: 1s md-tab-content-hide;
  217. visibility: hidden; }
  218. [dir=rtl] md-tab-content.md-left:not(.md-active) {
  219. -webkit-transform: translateX(100%);
  220. transform: translateX(100%); }
  221. md-tab-content.md-left:not(.md-active) * {
  222. -webkit-transition: visibility 0s linear;
  223. transition: visibility 0s linear;
  224. -webkit-transition-delay: 0.5s;
  225. transition-delay: 0.5s;
  226. visibility: hidden; }
  227. md-tab-content.md-right:not(.md-active) {
  228. -webkit-transform: translateX(100%);
  229. transform: translateX(100%);
  230. -webkit-animation: 1s md-tab-content-hide;
  231. animation: 1s md-tab-content-hide;
  232. visibility: hidden; }
  233. [dir=rtl] md-tab-content.md-right:not(.md-active) {
  234. -webkit-transform: translateX(-100%);
  235. transform: translateX(-100%); }
  236. md-tab-content.md-right:not(.md-active) * {
  237. -webkit-transition: visibility 0s linear;
  238. transition: visibility 0s linear;
  239. -webkit-transition-delay: 0.5s;
  240. transition-delay: 0.5s;
  241. visibility: hidden; }
  242. md-tab-content > div {
  243. -webkit-box-flex: 1;
  244. -webkit-flex: 1 0 100%;
  245. flex: 1 0 100%;
  246. min-width: 0; }
  247. md-tab-content > div.ng-leave {
  248. -webkit-animation: 1s md-tab-content-hide;
  249. animation: 1s md-tab-content-hide; }
  250. md-ink-bar {
  251. position: absolute;
  252. left: auto;
  253. right: auto;
  254. bottom: 0;
  255. height: 2px; }
  256. md-ink-bar.md-left {
  257. -webkit-transition: left 0.125s cubic-bezier(0.35, 0, 0.25, 1), right 0.25s cubic-bezier(0.35, 0, 0.25, 1);
  258. transition: left 0.125s cubic-bezier(0.35, 0, 0.25, 1), right 0.25s cubic-bezier(0.35, 0, 0.25, 1); }
  259. md-ink-bar.md-right {
  260. -webkit-transition: left 0.25s cubic-bezier(0.35, 0, 0.25, 1), right 0.125s cubic-bezier(0.35, 0, 0.25, 1);
  261. transition: left 0.25s cubic-bezier(0.35, 0, 0.25, 1), right 0.125s cubic-bezier(0.35, 0, 0.25, 1); }
  262. md-tab {
  263. position: absolute;
  264. z-index: -1;
  265. left: -9999px; }
  266. .md-tab {
  267. font-size: 14px;
  268. text-align: center;
  269. line-height: 24px;
  270. padding: 12px 24px;
  271. -webkit-transition: background-color 0.35s cubic-bezier(0.35, 0, 0.25, 1);
  272. transition: background-color 0.35s cubic-bezier(0.35, 0, 0.25, 1);
  273. cursor: pointer;
  274. white-space: nowrap;
  275. position: relative;
  276. text-transform: uppercase;
  277. float: left;
  278. font-weight: 500;
  279. box-sizing: border-box;
  280. overflow: hidden;
  281. text-overflow: ellipsis; }
  282. [dir=rtl] .md-tab {
  283. float: right; }
  284. .md-tab.md-focused, .md-tab:focus {
  285. box-shadow: none;
  286. outline: none; }
  287. .md-tab.md-active {
  288. cursor: default; }
  289. .md-tab.md-disabled {
  290. pointer-events: none;
  291. touch-action: pan-y;
  292. -webkit-user-select: none;
  293. -moz-user-select: none;
  294. -ms-user-select: none;
  295. user-select: none;
  296. -webkit-user-drag: none;
  297. opacity: 0.5;
  298. cursor: default; }
  299. .md-tab.ng-leave {
  300. -webkit-transition: none;
  301. transition: none; }
  302. md-toolbar + md-tabs, md-toolbar + md-dialog-content md-tabs {
  303. border-top-left-radius: 0;
  304. border-top-right-radius: 0; }