_responsive-logic.scss 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201
  1. /**
  2. * Page Layout Styles & Repsonsive Styles
  3. */
  4. /* Responsive width-content overrides */
  5. $horizontal-padding: #{2 * map-deep-get($config-global, "spacing", "horizontal")};
  6. $content-width-flex: 100%;
  7. $content-width-sm: calc( #{map-deep-get($config-global, "breakpoint", "sm")} - #{$horizontal-padding} );
  8. $content-width-md: calc( #{map-deep-get($config-global, "breakpoint", "md")} - #{$horizontal-padding} );
  9. $content-width-lg: calc( #{map-deep-get($config-global, "breakpoint", "lg")} - #{$horizontal-padding} );
  10. $content-width-xl: calc( #{map-deep-get($config-global, "breakpoint", "xl")} - #{$horizontal-padding} );
  11. $content-width-xxl: calc( #{map-deep-get($config-global, "breakpoint", "xxl")} - #{$horizontal-padding} );
  12. %responsive-aligndefault {
  13. max-width: $content-width-flex;
  14. margin-left: auto;
  15. margin-right: auto;
  16. @include media(mobile) {
  17. max-width: $content-width-sm;
  18. }
  19. @include media(tablet) {
  20. max-width: $content-width-md;
  21. }
  22. @include media(laptop) {
  23. max-width: $content-width-lg;
  24. }
  25. @include media(desktop) {
  26. max-width: $content-width-lg;
  27. }
  28. @include media(wide) {
  29. max-width: $content-width-lg;
  30. }
  31. }
  32. %responsive-alignwide {
  33. margin-left: auto;
  34. margin-right: auto;
  35. max-width: $content-width-flex;
  36. @include media(mobile) {
  37. max-width: $content-width-sm;
  38. }
  39. @include media(tablet) {
  40. max-width: $content-width-md;
  41. }
  42. @include media(laptop) {
  43. max-width: $content-width-lg;
  44. }
  45. /* Matches normal width until desktop breakpoint */
  46. @include media(desktop) {
  47. @include alignwide-width( $content-width-lg );
  48. }
  49. @include media(wide) {
  50. @include alignwide-width( $content-width-lg );
  51. }
  52. }
  53. %responsive-alignwide-nested {
  54. @include alignwide-width-nested( $content-width-flex );
  55. margin-left: auto;
  56. margin-right: auto;
  57. @include media(mobile) {
  58. @include alignwide-width-nested( $content-width-sm );
  59. }
  60. @include media(tablet) {
  61. @include alignwide-width-nested( $content-width-md );
  62. }
  63. @include media(laptop) {
  64. @include alignwide-width-nested( $content-width-lg );
  65. }
  66. @include media(desktop) {
  67. @include alignwide-width-nested( $content-width-lg );
  68. }
  69. @include media(wide) {
  70. @include alignwide-width-nested( $content-width-lg );
  71. }
  72. }
  73. %responsive-alignfull {
  74. margin-left: #{-1 * map-deep-get($config-global, "spacing", "horizontal")};
  75. margin-right: #{-1 * map-deep-get($config-global, "spacing", "horizontal")};
  76. width: calc(100% + #{$horizontal-padding});
  77. max-width: calc(100% + #{$horizontal-padding});
  78. /* Letting the box-model do most of the work here. */
  79. @include media(mobile) {
  80. margin-left: inherit;
  81. margin-right: inherit;
  82. width: inherit;
  83. max-width: inherit;
  84. }
  85. }
  86. %responsive-alignright {
  87. /*rtl:ignore*/
  88. margin-right: #{map-deep-get($config-global, "spacing", "horizontal")};
  89. @include media(mobile) {
  90. /*rtl:ignore*/
  91. margin-right: calc( 0.5 * (100vw - #{$content-width-sm}) );
  92. }
  93. @include media(tablet) {
  94. /*rtl:ignore*/
  95. margin-right: calc( 0.5 * (100vw - #{$content-width-md}) );
  96. }
  97. @include media(laptop) {
  98. /*rtl:ignore*/
  99. margin-right: calc( 0.5 * (100vw - #{$content-width-lg}) );
  100. }
  101. @include media(desktop) {
  102. /*rtl:ignore*/
  103. margin-right: calc( 0.5 * (100vw - #{$content-width-lg}) );
  104. }
  105. @include media(wide) {
  106. /*rtl:ignore*/
  107. margin-right: calc( 0.5 * (100vw - #{$content-width-lg}) );
  108. }
  109. }
  110. %responsive-alignleft {
  111. /*rtl:ignore*/
  112. margin-left: #{map-deep-get($config-global, "spacing", "horizontal")};
  113. @include media(mobile) {
  114. /*rtl:ignore*/
  115. margin-left: calc( 0.5 * (100vw - #{$content-width-sm}) );
  116. }
  117. @include media(tablet) {
  118. /*rtl:ignore*/
  119. margin-left: calc( 0.5 * (100vw - #{$content-width-md}) );
  120. }
  121. @include media(laptop) {
  122. /*rtl:ignore*/
  123. margin-left: calc( 0.5 * (100vw - #{$content-width-lg}) );
  124. }
  125. @include media(desktop) {
  126. /*rtl:ignore*/
  127. margin-left: calc( 0.5 * (100vw - #{$content-width-lg}) );
  128. }
  129. @include media(wide) {
  130. /*rtl:ignore*/
  131. margin-left: calc( 0.5 * (100vw - #{$content-width-lg}) );
  132. }
  133. }
  134. %responsive-align-container {
  135. /*
  136. max-width: calc( #{$content-width-flex} - #{$horizontal-padding} );
  137. width: calc( #{$content-width-flex} - #{$horizontal-padding} );
  138. @include media(mobile) {
  139. max-width: #{$content-width-sm};
  140. }
  141. @include media(tablet) {
  142. max-width: #{$content-width-md};
  143. }
  144. @include media(laptop) {
  145. max-width: #{$content-width-lg};
  146. }
  147. @include media(desktop) {
  148. max-width: #{$content-width-lg};
  149. }
  150. @include media(wide) {
  151. max-width: #{$content-width-lg};
  152. }
  153. */
  154. }