2
0

_mixins.grid.scss 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. @use 'sass:math';
  2. @use '../settings' as *;
  3. @use '../tools/mixins.breakpoints' as *;
  4. @use '../tools/mixins.general' as *;
  5. // grid settings
  6. $grid-columns: 12;
  7. $grid-gutter-width: 3%;
  8. // Utility variable - you should never need to modify this
  9. $padding: math.div($grid-gutter-width, 2);
  10. // Our row container
  11. @mixin row($padding: 0) {
  12. @include clearfix();
  13. display: block;
  14. margin-inline-end: auto;
  15. margin-inline-start: auto;
  16. padding-inline-end: $padding;
  17. padding-inline-start: $padding;
  18. }
  19. @mixin row-flush() {
  20. margin-inline-start: -$padding;
  21. margin-inline-end: -$padding;
  22. }
  23. // Our column container
  24. @mixin column($x, $padding: $padding, $grid-columns: $grid-columns) {
  25. display: inline;
  26. float: inline-start;
  27. width: 100% * math.div($x, $grid-columns);
  28. padding-inline-end: $padding;
  29. padding-inline-start: $padding;
  30. }
  31. // only used in places where padding not applied to same elements as row or row-flush
  32. // most of the time this class should be applied directly to the html elements
  33. @mixin nice-padding {
  34. padding-inline-start: $mobile-nice-padding;
  35. padding-inline-end: $mobile-nice-padding;
  36. @include media-breakpoint-up(sm) {
  37. padding-inline-start: $desktop-nice-padding;
  38. padding-inline-end: $desktop-nice-padding;
  39. }
  40. }
  41. @mixin nice-margin {
  42. margin-inline-start: $mobile-nice-padding;
  43. margin-inline-end: $mobile-nice-padding;
  44. @include media-breakpoint-up(sm) {
  45. margin-inline-start: $desktop-nice-padding;
  46. margin-inline-end: $desktop-nice-padding;
  47. }
  48. }
  49. @mixin max-form-width {
  50. max-width: $max-form-width;
  51. }