*, *:before, *:after { @include box-sizing(border-box); } a { -webkit-user-drag: none; -webkit-tap-highlight-color: transparent; } a, button { &:focus { outline: 0; } } body, .ionic-body { position: fixed; top: 0; right: 0; bottom: 0; left: 0; overflow: hidden; margin: 0; padding: 0; color: $base-color; 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; -webkit-user-drag: none; -webkit-user-select: none; } .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; overflow: auto; width: 100%; height: 100%; -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 { margin-bottom: 84px; } .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; }