tabs.css 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322
  1. /* ----------------------------------
  2. * Tabs
  3. * ---------------------------------- */
  4. .bb-tablist:before {
  5. content: "";
  6. position: absolute;
  7. bottom: 4.5rem;
  8. left: 0;
  9. width: 100%;
  10. height: 0;
  11. border-top: 0.1rem solid rgba(189,189,189, 0.2);
  12. }
  13. .bb-tablist {
  14. display: flex;
  15. align-items: flex-end;
  16. position: absolute;
  17. bottom: 0;
  18. width: 100%;
  19. height: 100%;
  20. margin: 0;
  21. padding: 0;
  22. pointer-events: none;
  23. z-index: 0;
  24. }
  25. .bb-tablist > li {
  26. -moz-box-sizing: content-box;
  27. margin: 0;
  28. padding: 0;
  29. height: 4.5rem;
  30. background-color: #ffffff;
  31. list-style: none;
  32. pointer-events: all;
  33. flex: 1 1 0;
  34. }
  35. .bb-tablist > li > a,
  36. .bb-tablist > li > button {
  37. position: relative;
  38. -moz-box-sizing: content-box;
  39. display: block;
  40. width: 100%;
  41. height: 100%;
  42. margin: 0;
  43. padding: 0;
  44. color: #5f5f5f;
  45. font-size: 1.6rem;
  46. text-decoration: none;
  47. text-align: center;
  48. line-height: 4.5rem;
  49. border: 0;
  50. background-color: transparent;
  51. background-size: 3rem auto;
  52. background-repeat: no-repeat;
  53. outline: none;
  54. }
  55. .bb-tablist > li > button {
  56. background-image: none;
  57. }
  58. .bb-tablist > li > button::-moz-focus-inner {
  59. border: none;
  60. outline: none;
  61. }
  62. .bb-tablist > li > .icon {
  63. font-size: 0;
  64. background-position: 50% 0;
  65. }
  66. .bb-tablist > li > a:active,
  67. .bb-tablist > li > button:active {
  68. border-radius: 0;
  69. background-color: #00aacc;
  70. }
  71. /* ----------------------------------
  72. * Skin: dark
  73. * ---------------------------------- */
  74. .bb-tablist.skin-dark:before {
  75. border-color: rgba(189,189,189, 0.1);
  76. }
  77. .bb-tablist.skin-dark > li:before {
  78. content: "";
  79. position: absolute;
  80. right: 0;
  81. bottom: 0;
  82. left: 0;
  83. height: 4.5rem;
  84. background-color: #000000;
  85. z-index: -1;
  86. }
  87. .bb-tablist.skin-dark > li {
  88. background-color: transparent;
  89. }
  90. .bb-tablist.skin-dark > li > a,
  91. .bb-tablist.skin-dark > li > button {
  92. color: #ffffff;
  93. background-color: transparent;
  94. }
  95. .bb-tablist.skin-dark > li > a:active,
  96. .bb-tablist.skin-dark > li > button:active {
  97. background-color: rgb(0,170,204);
  98. }
  99. /* Selected state */
  100. .bb-tablist > li > a:after,
  101. .bb-tablist > li > button:after {
  102. display: none;
  103. }
  104. .bb-tablist > li > a:target,
  105. .bb-tablist > li > button:target,
  106. .bb-tablist > li > a[aria-selected="true"],
  107. .bb-tablist > li > button[aria-selected="true"] {
  108. color: #00aacc;
  109. font-weight: 500;
  110. background-position: 50% 100%;
  111. }
  112. .bb-tablist > li > a:target:after,
  113. .bb-tablist > li > button:target:after,
  114. .bb-tablist > li > a[aria-selected="true"]:after,
  115. .bb-tablist > li > button[aria-selected="true"]:after {
  116. display: inline-block;
  117. content: "";
  118. position: absolute;
  119. width: 100%;
  120. left: 0;
  121. height: calc(100% - 0.3rem);
  122. border-bottom: 0.3rem solid rgba(0,202,242, 0.75);
  123. }
  124. .bb-tablist > li > a:target:active,
  125. .bb-tablist > li > button:target:active {
  126. color: #5f5f5f;
  127. background-position: 50% 0;
  128. }
  129. .bb-tablist > li > a:target:active:after,
  130. .bb-tablist > li > button:target:active:after,
  131. .bb-tablist.skin-dark > li > a:target:active:after,
  132. .bb-tablist.skin-dark > li > button:target:active:after {
  133. border-bottom-color: transparent;
  134. }
  135. .bb-tablist.skin-dark > li > a:target:active,
  136. .bb-tablist.skin-dark > li > button:target:active,
  137. .bb-tablist.skin-dark > li > a[aria-selected="true"]:active,
  138. .bb-tablist.skin-dark > li > button[aria-selected="true"]:active {
  139. color: #ffffff !important;
  140. }
  141. .bb-tablist.skin-dark > li > a:target:after,
  142. .bb-tablist.skin-dark > li > button:target:after {
  143. border-bottom-color: rgba(0,202,242, 0.75);
  144. }
  145. /* Disabled state */
  146. .bb-tablist > li[aria-disabled="true"] > a,
  147. .bb-tablist > li[aria-disabled="true"] > button,
  148. .bb-tablist > li[disabled] > a,
  149. .bb-tablist > li[disabled] > button,
  150. .bb-tablist > li > a[aria-disabled="true"],
  151. .bb-tablist > li > button[aria-disabled="true"],
  152. .bb-tablist > li > a[disabled],
  153. .bb-tablist > li > button[disabled] {
  154. color: #333333;
  155. opacity: 0.25;
  156. pointer-events: none;
  157. }
  158. .bb-tablist.skin-dark > li[aria-disabled="true"] > a,
  159. .bb-tablist.skin-dark > li[aria-disabled="true"] > button,
  160. .bb-tablist.skin-dark > li[disabled] > a,
  161. .bb-tablist.skin-dark > li[disabled] > button,
  162. .bb-tablist.skin-dark > li > a[aria-disabled="true"],
  163. .bb-tablist.skin-dark > li > button[aria-disabled="true"],
  164. .bb-tablist.skin-dark > li > a[disabled],
  165. .bb-tablist.skin-dark > li > button[disabled] {
  166. opacity: 0.35;
  167. }
  168. .bb-tablist .bb-tabpanel {
  169. position: absolute;
  170. top: 0;
  171. right: 0;
  172. bottom: 4.5rem;
  173. left: 0;
  174. visibility: hidden;
  175. z-index: -2;
  176. overflow: auto;
  177. }
  178. .bb-tablist :target ~.bb-tabpanel,
  179. .bb-tablist [aria-selected="true"] ~.bb-tabpanel {
  180. z-index: -1;
  181. visibility: visible;
  182. }
  183. /* ----------------------------------
  184. * Filters
  185. * ---------------------------------- */
  186. .bb-tablist[data-type="filter"] {
  187. display: flex;
  188. position: relative;
  189. height: 4rem;
  190. }
  191. .bb-tablist[data-type="filter"] > li {
  192. height: 4rem;
  193. background: none;
  194. }
  195. .bb-tablist[data-type="filter"] > li > a,
  196. .bb-tablist[data-type="filter"] > li > button {
  197. height: 3.9rem;
  198. border: none;
  199. }
  200. .bb-tablist[data-type="filter"].bottom > li > a,
  201. .bb-tablist[data-type="filter"].bottom > li > button {
  202. top: calc(100% - 4rem);
  203. }
  204. .bb-tablist[data-type="filter"] > li:before,
  205. .bb-tablist[data-type="filter"] > li > a:target:after,
  206. .bb-tablist[data-type="filter"] > li > button:target:after {
  207. display: none;
  208. }
  209. .bb-tablist[data-type="filter"] > li {
  210. color: #737272;
  211. text-align: center;
  212. border-left: 0.1rem solid #b6b6b6;
  213. }
  214. .bb-tablist[data-type="filter"] > li > a,
  215. .bb-tablist[data-type="filter"] > li > button {
  216. width: calc(100% - 1rem);
  217. padding: 0 0.5rem;
  218. color: #333333;
  219. line-height: 3.9rem;
  220. text-decoration: none;
  221. text-overflow: ellipsis;
  222. border-bottom: 0.1rem solid #b6b6b6;
  223. background-color: #eee;
  224. }
  225. .bb-tablist[data-type="filter"] > li:first-child {
  226. border-left: none;
  227. }
  228. /* Selected state */
  229. .bb-tablist[data-type="filter"] > li > a:target,
  230. .bb-tablist[data-type="filter"] > li > button:target,
  231. .bb-tablist[data-type="filter"] > li > a[aria-selected="true"],
  232. .bb-tablist[data-type="filter"] > li > button[aria-selected="true"] {
  233. color: #000000;
  234. background: #ffffff;
  235. border-bottom-color: transparent;
  236. }
  237. .bb-tablist[data-type="filter"] > li > a[aria-selected="true"]:after,
  238. .bb-tablist[data-type="filter"] > li > button[aria-selected="true"]:after {
  239. display: none;
  240. }
  241. .bb-tablist[data-type="filter"] > li > a:active,
  242. .bb-tablist[data-type="filter"] > li > button:active {
  243. color: #ffffff;
  244. background-color: #00aacc;
  245. }
  246. /* Skin Grey */
  247. .bb-tablist[data-type="filter"].skin-grey > li {
  248. border-color: #a6a6a6;
  249. }
  250. .bb-tablist[data-type="filter"].skin-grey > li > a,
  251. .bb-tablist[data-type="filter"].skin-grey > li > button {
  252. border-color: #a6a6a6;
  253. background-color: #cdcdcd;
  254. }
  255. .bb-tablist[data-type="filter"].skin-grey > li > a:target,
  256. .bb-tablist[data-type="filter"].skin-grey > li > button:target,
  257. .bb-tablist[data-type="filter"].skin-grey > li > a[aria-selected="true"],
  258. .bb-tablist[data-type="filter"].skin-grey > li > button[aria-selected="true"] {
  259. border-bottom-color: #e7e7e7;
  260. background-color: #e7e7e7;
  261. }
  262. .bb-tablist[data-type="filter"].skin-grey > li > a:active,
  263. .bb-tablist[data-type="filter"].skin-grey > li > button:active {
  264. border-color: #00aacc;
  265. background-color: #00aacc;
  266. }
  267. /* Position bottom */
  268. .bb-tablist[data-type="filter"].bottom > li > a,
  269. .bb-tablist[data-type="filter"].bottom > li > button {
  270. border-top: 0.1rem solid #a6a6a6;
  271. border-bottom: none;
  272. }
  273. .bb-tablist[data-type="filter"].bottom > li > a:target,
  274. .bb-tablist[data-type="filter"].bottom > li > button:target,
  275. .bb-tablist[data-type="filter"].bottom > li > a[aria-selected="true"],
  276. .bb-tablist[data-type="filter"].bottom > li > button[aria-selected="true"] {
  277. border-top-color: transparent;
  278. }