Guest User

Untitled

a guest
Jun 23rd, 2018
606
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.99 KB | None | 0 0
  1. ///////////PUG
  2.  
  3. .c-hamburger
  4. span.c-hamburger__line.c-hamburger__line--01
  5. span.c-hamburger__line-in.c-hamburger__line-in--01
  6. span.c-hamburger__line.c-hamburger__line--02
  7. span.c-hamburger__line-in.c-hamburger__line-in--02
  8. span.c-hamburger__line.c-hamburger__line--03
  9. span.c-hamburger__line-in.c-hamburger__line-in--03
  10. span.c-hamburger__line.c-hamburger__line--cross01
  11. span.c-hamburger__line-in.c-hamburger__line-in--cross01
  12. span.c-hamburger__line.c-hamburger__line--cross02
  13. span.c-hamburger__line-in.c-hamburger__line-in--cross02
  14.  
  15. ////html
  16.  
  17. <div class="c-hamburger">
  18. <span class="c-hamburger__line c-hamburger__line--01">
  19. <span class="c-hamburger__line-in c-hamburger__line-in--01"></span>
  20. </span>
  21. <span class="c-hamburger__line c-hamburger__line--02">
  22. <span class="c-hamburger__line-in c-hamburger__line-in--02"></span>
  23. </span>
  24. <span class="c-hamburger__line c-hamburger__line--03">
  25. <span class="c-hamburger__line-in c-hamburger__line-in--03"></span>
  26. </span>
  27. <span class="c-hamburger__line c-hamburger__line--cross01">
  28. <span class="c-hamburger__line-in c-hamburger__line-in--cross01"></span>
  29. </span>
  30. <span class="c-hamburger__line c-hamburger__line--cross02">
  31. <span class="c-hamburger__line-in c-hamburger__line-in--cross02"></span>
  32. </span>
  33. </div>
  34.  
  35. /////SASS
  36.  
  37. $lineColor: #000
  38. $hamburgerWidth: 30px
  39. $hamburgerHeight: 30px
  40. $hamburgerLineWidth: 24px
  41. $hamburgerLineHeight: 2px
  42. $hamburgerLineInWidth: 72px
  43. $hamburgerLineInHeight: 2px
  44. $hamburgerLineInPseudoWidth: 24px
  45. $hamburgerLineInPseudoHeight: 2px
  46. $hamburgerMainLineLeft: 4px
  47. $transitionTimingFunction: cubic-bezier(0.175, 0.885, 0.320, 1.275)
  48.  
  49. .c-hamburger
  50. width: $hamburgerWidth
  51. height: $hamburgerHeight
  52. // display: none
  53. cursor: pointer
  54. position: relative
  55. &__line
  56. width: $hamburgerLineWidth
  57. height: $hamburgerLineHeight
  58. overflow: hidden
  59. position: absolute
  60. &-in
  61. width: $hamburgerLineInWidth
  62. height: $hamburgerLineInHeight
  63. position: absolute
  64. top: 0
  65. left: 0
  66. &:before, &:after
  67. width: $hamburgerLineInPseudoWidth
  68. height: $hamburgerLineInPseudoHeight
  69. content: ''
  70. display: block
  71. position: absolute
  72. top: 0
  73. background-color: $lineColor
  74. &:before
  75. left: -49px
  76. &:after
  77. left: 0
  78. &--01
  79. top: 11px
  80. left: $hamburgerMainLineLeft
  81. &--02
  82. top: 19px
  83. left: $hamburgerMainLineLeft
  84. &--03
  85. top: 27px
  86. left: $hamburgerMainLineLeft
  87. &--cross01, &--cross02
  88. top: 19px
  89. left: $hamburgerMainLineLeft
  90. &--cross01
  91. transform: rotate(45deg)
  92. &--cross02
  93. transform: rotate(-45deg)
  94. //
  95. // Interaction
  96. //
  97. &__line
  98. transition-duration: 0.6s
  99. transition-timing-function: $transitionTimingFunction
  100. &-in
  101. transition-duration: 0.6s
  102. transition-timing-function: $transitionTimingFunction
  103. &:before, &:after
  104. transition-timing-function: $transitionTimingFunction
  105. transition-property: transform
  106. &--cross01, &--cross02
  107. transform: translateX(-35%)
  108. &--01
  109. transition-delay: 0.2s
  110. &--02
  111. transition-delay: 0.25s
  112. &:before, &:after
  113. transition-delay: 0.05s
  114. &--03
  115. transition-delay: 0.3s
  116. &:before, &:after
  117. transition-delay: 0.1s
  118. &--cross01
  119. transition-delay: 0.0s
  120. &--cross02
  121. transition-delay: 0.05s
  122. &:before, &:after
  123. transition-delay: 0.1s
  124. &.is-open &
  125. &__line
  126. &-in
  127. &:before, &:after
  128. &--01, &--02, &--03
  129. transform: translateX(35%)
  130. &--cross01, &--cross02
  131. transform: translateX(0)
  132. &--01
  133. transition-delay: 0s
  134. &--02
  135. transition-delay: 0.05s
  136. &--03
  137. transition-delay: 0.1s
  138. &--cross01
  139. transition-delay: 0.25s
  140. &--cross02
  141. transition-delay: 0.3s
  142. &:hover &
  143. &__line
  144. &-in
  145. &:before, &:after
  146. transform: translateX(200%)
  147. &--01, &--02, &--03
  148. &:before, &:after
  149. transition-duration: 1s
  150. &--cross01, &--cross02
  151. &:before, &:after
  152. transition-duration: 0s
  153. &.is-open:hover &
  154. &__line
  155. &-in
  156. &--cross01, &--cross02
  157. &:before, &:after
  158. transition-duration: 1s
  159. &--01, &--02, &--03
  160. &:before, &:after
  161. transition-duration: 0s
Add Comment
Please, Sign In to add comment