lungo.layout.styl 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. /**
  2. * Stylesheet
  3. *
  4. * @namespace Lungo
  5. * @class Layout
  6. *
  7. * @author Javier Jimenez Villar <javi@tapquo.com> || @soyjavi
  8. */
  9. @import "import/constants.styl"
  10. @import "import/vendor.styl"
  11. body
  12. &[data-position="absolute"] > section
  13. position: absolute
  14. &[data-position="fixed"] > section
  15. position: fixed
  16. & [data-transition]
  17. display: block !important
  18. transition-property( opacity, z-index, transform )
  19. transition-duration( TRANSITION_TIME )
  20. transition-timing-function( DEFAULT_TRANSITION )
  21. backface-visibility( hidden )
  22. section
  23. top: 0
  24. left: 0
  25. width: 100%
  26. height: 100%
  27. z-index: 1
  28. display: none
  29. &.show
  30. z-index: 2
  31. display: block
  32. /* Transition: POP */
  33. &[data-transition="pop"]
  34. opacity: 0
  35. transform( scale(1.15) )
  36. &.show
  37. transform( scale(1) )
  38. opacity: 1
  39. &.hide
  40. transform( scale(0.9) )
  41. opacity: 0
  42. /* Transition: SLIDE */
  43. &[data-transition="slide"]
  44. transform( translateX(100%) )
  45. visibility: visible !important
  46. &.show
  47. transform( translateX(0%) )
  48. &.hide
  49. transform( translateX(-100%) )
  50. /* Transition: COVER */
  51. &[data-transition="cover"]
  52. transform( translateY(110%) )
  53. &.show, &.hide
  54. transform( translateY(0%) )
  55. /* Transition: FADE */
  56. &[data-transition="fade"]
  57. opacity: 0
  58. &:first-child, &.show
  59. opacity: 1
  60. &:hide
  61. opacity: 0
  62. header, footer
  63. position: absolute
  64. left: 0
  65. width: 100%
  66. display: block
  67. z-index: 1
  68. header
  69. top: 0
  70. height: HEADER_FOOTER_HEIGHT
  71. line-height: HEADER_FOOTER_HEIGHT
  72. & .title
  73. margin-left: 4px
  74. float: left
  75. z-index: -1
  76. font-size: (FONT_SIZE_BIG * 1.2)
  77. &.centered
  78. position: absolute
  79. left: 32px
  80. right: 32px
  81. text-align: center
  82. display: inline-block
  83. & img.title
  84. PAD = 18px
  85. height: (HEADER_FOOTER_HEIGHT - PAD)
  86. margin: (PAD / 2) auto
  87. footer
  88. bottom: 0
  89. height: HEADER_FOOTER_HEIGHT