swiper.less 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. /**
  2. * Swiper 8.4.6
  3. * Most modern mobile touch slider and framework with hardware accelerated transitions
  4. * https://swiperjs.com
  5. *
  6. * Copyright 2014-2023 Vladimir Kharlampidi
  7. *
  8. * Released under the MIT License
  9. *
  10. * Released on: January 17, 2023
  11. */
  12. @themeColor: #007aff;
  13. @font-face {
  14. font-family: 'swiper-icons';
  15. src: url('data:application/font-woff;charset=utf-8;base64, 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');
  16. font-weight: 400;
  17. font-style: normal;
  18. }
  19. :root {
  20. --swiper-theme-color: @themeColor;
  21. }
  22. .swiper {
  23. margin-left: auto;
  24. margin-right: auto;
  25. position: relative;
  26. overflow: hidden;
  27. list-style: none;
  28. padding: 0;
  29. /* Fix of Webkit flickering */
  30. z-index: 1;
  31. }
  32. .swiper-vertical > .swiper-wrapper {
  33. flex-direction: column;
  34. }
  35. .swiper-wrapper {
  36. position: relative;
  37. width: 100%;
  38. height: 100%;
  39. z-index: 1;
  40. display: flex;
  41. transition-property: transform;
  42. box-sizing: content-box;
  43. }
  44. .swiper-android .swiper-slide,
  45. .swiper-wrapper {
  46. transform: translate3d(0px, 0, 0);
  47. }
  48. .swiper-pointer-events {
  49. touch-action: pan-y;
  50. &.swiper-vertical {
  51. touch-action: pan-x;
  52. }
  53. }
  54. .swiper-slide {
  55. flex-shrink: 0;
  56. width: 100%;
  57. height: 100%;
  58. position: relative;
  59. transition-property: transform;
  60. }
  61. .swiper-slide-invisible-blank {
  62. visibility: hidden;
  63. }
  64. /* Auto Height */
  65. .swiper-autoheight,
  66. .swiper-autoheight .swiper-slide {
  67. height: auto;
  68. }
  69. .swiper-autoheight .swiper-wrapper {
  70. align-items: flex-start;
  71. transition-property: transform, height;
  72. }
  73. .swiper-backface-hidden .swiper-slide {
  74. transform: translateZ(0);
  75. backface-visibility: hidden;
  76. }
  77. /* 3D Effects */
  78. .swiper-3d {
  79. &,
  80. &.swiper-css-mode .swiper-wrapper {
  81. perspective: 1200px;
  82. }
  83. .swiper-wrapper,
  84. .swiper-slide,
  85. .swiper-slide-shadow,
  86. .swiper-slide-shadow-left,
  87. .swiper-slide-shadow-right,
  88. .swiper-slide-shadow-top,
  89. .swiper-slide-shadow-bottom,
  90. .swiper-cube-shadow {
  91. transform-style: preserve-3d;
  92. }
  93. .swiper-slide-shadow,
  94. .swiper-slide-shadow-left,
  95. .swiper-slide-shadow-right,
  96. .swiper-slide-shadow-top,
  97. .swiper-slide-shadow-bottom {
  98. position: absolute;
  99. left: 0;
  100. top: 0;
  101. width: 100%;
  102. height: 100%;
  103. pointer-events: none;
  104. z-index: 10;
  105. }
  106. .swiper-slide-shadow {
  107. background: rgba(0, 0, 0, 0.15);
  108. }
  109. .swiper-slide-shadow-left {
  110. background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  111. }
  112. .swiper-slide-shadow-right {
  113. background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  114. }
  115. .swiper-slide-shadow-top {
  116. background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  117. }
  118. .swiper-slide-shadow-bottom {
  119. background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  120. }
  121. }
  122. /* CSS Mode */
  123. .swiper-css-mode {
  124. > .swiper-wrapper {
  125. overflow: auto;
  126. scrollbar-width: none; /* For Firefox */
  127. -ms-overflow-style: none; /* For Internet Explorer and Edge */
  128. &::-webkit-scrollbar {
  129. display: none;
  130. }
  131. }
  132. > .swiper-wrapper > .swiper-slide {
  133. scroll-snap-align: start start;
  134. }
  135. }
  136. .swiper-horizontal.swiper-css-mode {
  137. > .swiper-wrapper {
  138. scroll-snap-type: x mandatory;
  139. }
  140. }
  141. .swiper-vertical.swiper-css-mode {
  142. > .swiper-wrapper {
  143. scroll-snap-type: y mandatory;
  144. }
  145. }
  146. .swiper-centered {
  147. > .swiper-wrapper::before {
  148. content: '';
  149. flex-shrink: 0;
  150. order: 9999;
  151. }
  152. &.swiper-horizontal {
  153. > .swiper-wrapper > .swiper-slide:first-child {
  154. margin-inline-start: var(--swiper-centered-offset-before);
  155. }
  156. > .swiper-wrapper::before {
  157. height: 100%;
  158. min-height: 1px;
  159. width: var(--swiper-centered-offset-after);
  160. }
  161. }
  162. &.swiper-vertical {
  163. > .swiper-wrapper > .swiper-slide:first-child {
  164. margin-block-start: var(--swiper-centered-offset-before);
  165. }
  166. > .swiper-wrapper::before {
  167. width: 100%;
  168. min-width: 1px;
  169. height: var(--swiper-centered-offset-after);
  170. }
  171. }
  172. > .swiper-wrapper > .swiper-slide {
  173. scroll-snap-align: center center;
  174. scroll-snap-stop: always;
  175. }
  176. }