sidebar.css 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541
  1. /*!
  2. * # Semantic UI 2.5.0 - Sidebar
  3. * http://github.com/semantic-org/semantic-ui/
  4. *
  5. *
  6. * Released under the MIT license
  7. * http://opensource.org/licenses/MIT
  8. *
  9. */
  10. /*******************************
  11. Sidebar
  12. *******************************/
  13. /* Sidebar Menu */
  14. .ui.sidebar {
  15. position: fixed;
  16. top: 0;
  17. left: 0;
  18. -webkit-backface-visibility: hidden;
  19. backface-visibility: hidden;
  20. transition: none;
  21. will-change: transform;
  22. transform: translate3d(0, 0, 0);
  23. visibility: hidden;
  24. -webkit-overflow-scrolling: touch;
  25. height: 100% !important;
  26. max-height: 100%;
  27. border-radius: 0em !important;
  28. margin: 0em !important;
  29. overflow-y: auto !important;
  30. z-index: 102;
  31. }
  32. /* GPU Layers for Child Elements */
  33. .ui.sidebar > * {
  34. -webkit-backface-visibility: hidden;
  35. backface-visibility: hidden;
  36. }
  37. /*--------------
  38. Direction
  39. ---------------*/
  40. .ui.left.sidebar {
  41. right: auto;
  42. left: 0px;
  43. transform: translate3d(-100%, 0, 0);
  44. }
  45. .ui.right.sidebar {
  46. right: 0px !important;
  47. left: auto !important;
  48. transform: translate3d(100%, 0%, 0);
  49. }
  50. .ui.top.sidebar,
  51. .ui.bottom.sidebar {
  52. width: 100% !important;
  53. height: auto !important;
  54. }
  55. .ui.top.sidebar {
  56. top: 0px !important;
  57. bottom: auto !important;
  58. transform: translate3d(0, -100%, 0);
  59. }
  60. .ui.bottom.sidebar {
  61. top: auto !important;
  62. bottom: 0px !important;
  63. transform: translate3d(0, 100%, 0);
  64. }
  65. /*--------------
  66. Pushable
  67. ---------------*/
  68. .pushable {
  69. height: 100%;
  70. overflow-x: hidden;
  71. padding: 0em !important;
  72. }
  73. /* Whole Page */
  74. body.pushable {
  75. background: #545454 !important;
  76. }
  77. /* Page Context */
  78. .pushable:not(body) {
  79. transform: translate3d(0, 0, 0);
  80. }
  81. .pushable:not(body) > .ui.sidebar,
  82. .pushable:not(body) > .fixed,
  83. .pushable:not(body) > .pusher:after {
  84. position: absolute;
  85. }
  86. /*--------------
  87. Fixed
  88. ---------------*/
  89. .pushable > .fixed {
  90. position: fixed;
  91. -webkit-backface-visibility: hidden;
  92. backface-visibility: hidden;
  93. transition: transform 500ms ease;
  94. will-change: transform;
  95. z-index: 101;
  96. }
  97. /*--------------
  98. Page
  99. ---------------*/
  100. .pushable > .pusher {
  101. position: relative;
  102. -webkit-backface-visibility: hidden;
  103. backface-visibility: hidden;
  104. overflow: hidden;
  105. min-height: 100%;
  106. transition: transform 500ms ease;
  107. z-index: 2;
  108. }
  109. body.pushable > .pusher {
  110. background: #FFFFFF;
  111. }
  112. /* Pusher should inherit background from context */
  113. .pushable > .pusher {
  114. background: inherit;
  115. }
  116. /*--------------
  117. Dimmer
  118. ---------------*/
  119. .pushable > .pusher:after {
  120. position: fixed;
  121. top: 0px;
  122. right: 0px;
  123. content: '';
  124. background-color: rgba(0, 0, 0, 0.4);
  125. overflow: hidden;
  126. opacity: 0;
  127. transition: opacity 500ms;
  128. will-change: opacity;
  129. z-index: 1000;
  130. }
  131. /*--------------
  132. Coupling
  133. ---------------*/
  134. .ui.sidebar.menu .item {
  135. border-radius: 0em !important;
  136. }
  137. /*******************************
  138. States
  139. *******************************/
  140. /*--------------
  141. Dimmed
  142. ---------------*/
  143. .pushable > .pusher.dimmed:after {
  144. width: 100% !important;
  145. height: 100% !important;
  146. opacity: 1 !important;
  147. }
  148. /*--------------
  149. Animating
  150. ---------------*/
  151. .ui.animating.sidebar {
  152. visibility: visible;
  153. }
  154. /*--------------
  155. Visible
  156. ---------------*/
  157. .ui.visible.sidebar {
  158. visibility: visible;
  159. transform: translate3d(0, 0, 0);
  160. }
  161. /* Shadow Direction */
  162. .ui.left.visible.sidebar,
  163. .ui.right.visible.sidebar {
  164. box-shadow: 0px 0px 20px rgba(34, 36, 38, 0.15);
  165. }
  166. .ui.top.visible.sidebar,
  167. .ui.bottom.visible.sidebar {
  168. box-shadow: 0px 0px 20px rgba(34, 36, 38, 0.15);
  169. }
  170. /* Visible On Load */
  171. .ui.visible.left.sidebar ~ .fixed,
  172. .ui.visible.left.sidebar ~ .pusher {
  173. transform: translate3d(260px, 0, 0);
  174. }
  175. .ui.visible.right.sidebar ~ .fixed,
  176. .ui.visible.right.sidebar ~ .pusher {
  177. transform: translate3d(-260px, 0, 0);
  178. }
  179. .ui.visible.top.sidebar ~ .fixed,
  180. .ui.visible.top.sidebar ~ .pusher {
  181. transform: translate3d(0, 36px, 0);
  182. }
  183. .ui.visible.bottom.sidebar ~ .fixed,
  184. .ui.visible.bottom.sidebar ~ .pusher {
  185. transform: translate3d(0, -36px, 0);
  186. }
  187. /* opposite sides visible forces content overlay */
  188. .ui.visible.left.sidebar ~ .ui.visible.right.sidebar ~ .fixed,
  189. .ui.visible.left.sidebar ~ .ui.visible.right.sidebar ~ .pusher,
  190. .ui.visible.right.sidebar ~ .ui.visible.left.sidebar ~ .fixed,
  191. .ui.visible.right.sidebar ~ .ui.visible.left.sidebar ~ .pusher {
  192. transform: translate3d(0, 0, 0);
  193. }
  194. /*--------------
  195. iOS
  196. ---------------*/
  197. /*******************************
  198. Variations
  199. *******************************/
  200. /*--------------
  201. Width
  202. ---------------*/
  203. /* Left / Right */
  204. .ui.thin.left.sidebar,
  205. .ui.thin.right.sidebar {
  206. width: 150px;
  207. }
  208. .ui[class*="very thin"].left.sidebar,
  209. .ui[class*="very thin"].right.sidebar {
  210. width: 60px;
  211. }
  212. .ui.left.sidebar,
  213. .ui.right.sidebar {
  214. width: 260px;
  215. }
  216. .ui.wide.left.sidebar,
  217. .ui.wide.right.sidebar {
  218. width: 350px;
  219. }
  220. .ui[class*="very wide"].left.sidebar,
  221. .ui[class*="very wide"].right.sidebar {
  222. width: 475px;
  223. }
  224. /* Left Visible */
  225. .ui.visible.thin.left.sidebar ~ .fixed,
  226. .ui.visible.thin.left.sidebar ~ .pusher {
  227. transform: translate3d(150px, 0, 0);
  228. }
  229. .ui.visible[class*="very thin"].left.sidebar ~ .fixed,
  230. .ui.visible[class*="very thin"].left.sidebar ~ .pusher {
  231. transform: translate3d(60px, 0, 0);
  232. }
  233. .ui.visible.wide.left.sidebar ~ .fixed,
  234. .ui.visible.wide.left.sidebar ~ .pusher {
  235. transform: translate3d(350px, 0, 0);
  236. }
  237. .ui.visible[class*="very wide"].left.sidebar ~ .fixed,
  238. .ui.visible[class*="very wide"].left.sidebar ~ .pusher {
  239. transform: translate3d(475px, 0, 0);
  240. }
  241. /* Right Visible */
  242. .ui.visible.thin.right.sidebar ~ .fixed,
  243. .ui.visible.thin.right.sidebar ~ .pusher {
  244. transform: translate3d(-150px, 0, 0);
  245. }
  246. .ui.visible[class*="very thin"].right.sidebar ~ .fixed,
  247. .ui.visible[class*="very thin"].right.sidebar ~ .pusher {
  248. transform: translate3d(-60px, 0, 0);
  249. }
  250. .ui.visible.wide.right.sidebar ~ .fixed,
  251. .ui.visible.wide.right.sidebar ~ .pusher {
  252. transform: translate3d(-350px, 0, 0);
  253. }
  254. .ui.visible[class*="very wide"].right.sidebar ~ .fixed,
  255. .ui.visible[class*="very wide"].right.sidebar ~ .pusher {
  256. transform: translate3d(-475px, 0, 0);
  257. }
  258. /*******************************
  259. Animations
  260. *******************************/
  261. /*--------------
  262. Overlay
  263. ---------------*/
  264. /* Set-up */
  265. .ui.overlay.sidebar {
  266. z-index: 102;
  267. }
  268. /* Initial */
  269. .ui.left.overlay.sidebar {
  270. transform: translate3d(-100%, 0%, 0);
  271. }
  272. .ui.right.overlay.sidebar {
  273. transform: translate3d(100%, 0%, 0);
  274. }
  275. .ui.top.overlay.sidebar {
  276. transform: translate3d(0%, -100%, 0);
  277. }
  278. .ui.bottom.overlay.sidebar {
  279. transform: translate3d(0%, 100%, 0);
  280. }
  281. /* Animation */
  282. .animating.ui.overlay.sidebar,
  283. .ui.visible.overlay.sidebar {
  284. transition: transform 500ms ease;
  285. }
  286. /* End - Sidebar */
  287. .ui.visible.left.overlay.sidebar {
  288. transform: translate3d(0%, 0%, 0);
  289. }
  290. .ui.visible.right.overlay.sidebar {
  291. transform: translate3d(0%, 0%, 0);
  292. }
  293. .ui.visible.top.overlay.sidebar {
  294. transform: translate3d(0%, 0%, 0);
  295. }
  296. .ui.visible.bottom.overlay.sidebar {
  297. transform: translate3d(0%, 0%, 0);
  298. }
  299. /* End - Pusher */
  300. .ui.visible.overlay.sidebar ~ .fixed,
  301. .ui.visible.overlay.sidebar ~ .pusher {
  302. transform: none !important;
  303. }
  304. /*--------------
  305. Push
  306. ---------------*/
  307. /* Initial */
  308. .ui.push.sidebar {
  309. transition: transform 500ms ease;
  310. z-index: 102;
  311. }
  312. /* Sidebar - Initial */
  313. .ui.left.push.sidebar {
  314. transform: translate3d(-100%, 0, 0);
  315. }
  316. .ui.right.push.sidebar {
  317. transform: translate3d(100%, 0, 0);
  318. }
  319. .ui.top.push.sidebar {
  320. transform: translate3d(0%, -100%, 0);
  321. }
  322. .ui.bottom.push.sidebar {
  323. transform: translate3d(0%, 100%, 0);
  324. }
  325. /* End */
  326. .ui.visible.push.sidebar {
  327. transform: translate3d(0%, 0, 0);
  328. }
  329. /*--------------
  330. Uncover
  331. ---------------*/
  332. /* Initial */
  333. .ui.uncover.sidebar {
  334. transform: translate3d(0, 0, 0);
  335. z-index: 1;
  336. }
  337. /* End */
  338. .ui.visible.uncover.sidebar {
  339. transform: translate3d(0, 0, 0);
  340. transition: transform 500ms ease;
  341. }
  342. /*--------------
  343. Slide Along
  344. ---------------*/
  345. /* Initial */
  346. .ui.slide.along.sidebar {
  347. z-index: 1;
  348. }
  349. /* Sidebar - Initial */
  350. .ui.left.slide.along.sidebar {
  351. transform: translate3d(-50%, 0, 0);
  352. }
  353. .ui.right.slide.along.sidebar {
  354. transform: translate3d(50%, 0, 0);
  355. }
  356. .ui.top.slide.along.sidebar {
  357. transform: translate3d(0, -50%, 0);
  358. }
  359. .ui.bottom.slide.along.sidebar {
  360. transform: translate3d(0%, 50%, 0);
  361. }
  362. /* Animation */
  363. .ui.animating.slide.along.sidebar {
  364. transition: transform 500ms ease;
  365. }
  366. /* End */
  367. .ui.visible.slide.along.sidebar {
  368. transform: translate3d(0%, 0, 0);
  369. }
  370. /*--------------
  371. Slide Out
  372. ---------------*/
  373. /* Initial */
  374. .ui.slide.out.sidebar {
  375. z-index: 1;
  376. }
  377. /* Sidebar - Initial */
  378. .ui.left.slide.out.sidebar {
  379. transform: translate3d(50%, 0, 0);
  380. }
  381. .ui.right.slide.out.sidebar {
  382. transform: translate3d(-50%, 0, 0);
  383. }
  384. .ui.top.slide.out.sidebar {
  385. transform: translate3d(0%, 50%, 0);
  386. }
  387. .ui.bottom.slide.out.sidebar {
  388. transform: translate3d(0%, -50%, 0);
  389. }
  390. /* Animation */
  391. .ui.animating.slide.out.sidebar {
  392. transition: transform 500ms ease;
  393. }
  394. /* End */
  395. .ui.visible.slide.out.sidebar {
  396. transform: translate3d(0%, 0, 0);
  397. }
  398. /*--------------
  399. Scale Down
  400. ---------------*/
  401. /* Initial */
  402. .ui.scale.down.sidebar {
  403. transition: transform 500ms ease;
  404. z-index: 102;
  405. }
  406. /* Sidebar - Initial */
  407. .ui.left.scale.down.sidebar {
  408. transform: translate3d(-100%, 0, 0);
  409. }
  410. .ui.right.scale.down.sidebar {
  411. transform: translate3d(100%, 0, 0);
  412. }
  413. .ui.top.scale.down.sidebar {
  414. transform: translate3d(0%, -100%, 0);
  415. }
  416. .ui.bottom.scale.down.sidebar {
  417. transform: translate3d(0%, 100%, 0);
  418. }
  419. /* Pusher - Initial */
  420. .ui.scale.down.left.sidebar ~ .pusher {
  421. transform-origin: 75% 50%;
  422. }
  423. .ui.scale.down.right.sidebar ~ .pusher {
  424. transform-origin: 25% 50%;
  425. }
  426. .ui.scale.down.top.sidebar ~ .pusher {
  427. transform-origin: 50% 75%;
  428. }
  429. .ui.scale.down.bottom.sidebar ~ .pusher {
  430. transform-origin: 50% 25%;
  431. }
  432. /* Animation */
  433. .ui.animating.scale.down > .visible.ui.sidebar {
  434. transition: transform 500ms ease;
  435. }
  436. .ui.visible.scale.down.sidebar ~ .pusher,
  437. .ui.animating.scale.down.sidebar ~ .pusher {
  438. display: block !important;
  439. width: 100%;
  440. height: 100%;
  441. overflow: hidden !important;
  442. }
  443. /* End */
  444. .ui.visible.scale.down.sidebar {
  445. transform: translate3d(0, 0, 0);
  446. }
  447. .ui.visible.scale.down.sidebar ~ .pusher {
  448. transform: scale(0.75);
  449. }
  450. /*******************************
  451. Theme Overrides
  452. *******************************/
  453. /*******************************
  454. Site Overrides
  455. *******************************/