*, *:before, *:after { @include box-sizing(border-box); } body { position: fixed; top: 0; right: 0; bottom: 0; left: 0; overflow: hidden; margin: 0; padding: 0; word-wrap: break-word; font-size: $font-size-base; font-family: $base-font-family; line-height: $line-height-computed; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; text-size-adjust: none; -webkit-tap-highlight-color: transparent; } .view { } .view-full { position: fixed; top: 0; left: 0; width: 100%; height: 100%; } .content { } /* Hack to force all relatively and absolutely positioned elements still render while scrolling Note: This is a bug for "-webkit-overflow-scrolling: touch" (via ratchet) */ .content > * { -webkit-transform: translateZ(0px); transform: translateZ(0px); } .content-wrapper { position: absolute; top: 0; height: 100%; width: 100%; overflow: auto; -webkit-overflow-scrolling: touch; } // Pad top/bottom of content so it doesn't hide behind .bar-title and .bar-tab. // Note: For these to work, content must come after both bars in the markup .has-header { //top: $bar-height; margin-top: $bar-height; } .has-footer { //bottom: $bar-height; //margin-bottom: $bar-height; } // Specify that a content area will have tabs .has-tabs { bottom: $tabs-height; } .page, .full-section { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; overflow: auto; width: 100%; height: 100%; background-color: #fff; -webkit-overflow-scrolling: touch; }