site.scss 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. html, body {
  2. height: 100vh;
  3. margin: 0;
  4. padding: 0;
  5. }
  6. body {
  7. display: grid;
  8. grid-template-rows: auto 1fr;
  9. grid-template-columns: minmax(200px, 0.17fr) 1fr;
  10. grid-gap: 0;
  11. &.hidden-aside {
  12. grid-template-columns: 0 auto;
  13. aside {
  14. transform: translateX(-100%);
  15. opacity: 0;
  16. }
  17. }
  18. aside {
  19. position: relative;
  20. height: inherit;
  21. background-color: #f9f9f9;
  22. border-right: 1px solid #ddd;
  23. overflow-y: auto;
  24. transition: transform 0.3s ease, opacity 0.3s ease;
  25. transform: translateX(0);
  26. display: flex;
  27. -ms-flex-direction: inherit;
  28. -webkit-flex-direction: inherit;
  29. flex-direction: column;
  30. > ul.nav {
  31. flex-grow: 1;
  32. > li.nav-item {
  33. &:first-of-type {
  34. > a {
  35. border-bottom: 1px solid #ddd;
  36. }
  37. }
  38. &:not(:first-of-type) {
  39. border-bottom: 1px solid #ddd;
  40. > a:not(.collapsed) {
  41. background-color: #f1f1f1;
  42. }
  43. }
  44. > ul {
  45. padding: 0.625rem 0.625rem 0.625rem 0;
  46. border-top: 1px solid #ddd;
  47. }
  48. ul {
  49. transition: none;
  50. }
  51. a {
  52. display: block;
  53. padding: 0.438rem 0.781rem;
  54. color: #333;
  55. text-decoration: none;
  56. cursor: pointer;
  57. &:hover {
  58. background-color: #f0f0f0;
  59. }
  60. &.active {
  61. background-color: #e9e9e9;
  62. outline: 1px solid #ddd;
  63. }
  64. }
  65. }
  66. }
  67. footer {
  68. padding: 0.781rem;
  69. text-align: center;
  70. border-top: 1px solid #ddd;
  71. a {
  72. color: #333;
  73. text-decoration: none;
  74. &:hover {
  75. color: blue;
  76. text-decoration: underline;
  77. }
  78. }
  79. }
  80. }
  81. main {
  82. background-color: #ffffff;
  83. height: inherit;
  84. overflow-y: auto;
  85. > header {
  86. border-bottom: 1px solid #ddd;
  87. padding: 0.313rem 0.781rem;
  88. .logo {
  89. color: #333;
  90. text-decoration: none;
  91. &:hover {
  92. text-decoration: underline;
  93. }
  94. img {
  95. position: relative;
  96. top: -2px;
  97. }
  98. }
  99. .profile-icon {
  100. display: none;
  101. }
  102. }
  103. > div.container-fluid {
  104. padding: 0.781rem;
  105. }
  106. }
  107. }
  108. @media (max-width: 768px) {
  109. body {
  110. main {
  111. > header {
  112. .profile-text {
  113. display: none;
  114. }
  115. .profile-icon {
  116. display: inline-block;
  117. }
  118. }
  119. }
  120. }
  121. }