|
|
/** * Scaffolding * -------------------------------------------------- */
*, *:before, *:after { @include box-sizing(border-box); }
html { overflow: hidden; -ms-touch-action: pan-y; touch-action: pan-y; }
body, .ionic-body { @include touch-callout(none); @include font-smoothing(antialiased); @include text-size-adjust(none); @include tap-highlight-transparent(); @include user-select(none);
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: -apple-system; font-family: $font-family-base; line-height: $line-height-computed; text-rendering: optimizeLegibility; -webkit-backface-visibility: hidden; -webkit-user-drag: none; -ms-content-zooming: none; }
body.grade-b, body.grade-c { // disable optimizeLegibility for low end devices
text-rendering: auto; }
.content { // used for content areas not using the content directive
position: relative; }
.scroll-content { position: absolute; top: 0; right: 0; bottom: 0; left: 0; overflow: hidden;
// Hide the top border if any
margin-top: -1px;
// Prevents any distortion of lines
padding-top: 1px; margin-bottom: -1px;
width: auto; height: auto; }
.menu .scroll-content.scroll-content-false{ z-index: $z-index-scroll-content-false; }
.scroll-view { position: relative; display: block; overflow: hidden;
&.overflow-scroll { position: relative; }
&.scroll-x { overflow-x: scroll; overflow-y: hidden; } &.scroll-y { overflow-x: hidden; overflow-y: scroll; } &.scroll-xy { overflow-x: scroll; overflow-y: scroll; }
// Hide the top border if any
margin-top: -1px; }
/** * Scroll is the scroll view component available for complex and custom * scroll view functionality. */ .scroll { @include user-select(none); @include touch-callout(none); @include text-size-adjust(none); @include transform-origin(left, top); } /** * Set ms-viewport to prevent MS "page squish" and allow fluid scrolling * https://msdn.microsoft.com/en-us/library/ie/hh869615(v=vs.85).aspx */ @-ms-viewport { width: device-width; }
// Scroll bar styles
.scroll-bar { position: absolute; z-index: $z-index-scroll-bar; } // hide the scroll-bar during animations
.ng-animate .scroll-bar { visibility: hidden; } .scroll-bar-h { right: 2px; bottom: 3px; left: 2px; height: 3px;
.scroll-bar-indicator { height: 100%; } }
.scroll-bar-v { top: 2px; right: 3px; bottom: 2px; width: 3px;
.scroll-bar-indicator { width: 100%; } } .scroll-bar-indicator { position: absolute; border-radius: 4px; background: rgba(0,0,0,0.3); opacity: 1; @include transition(opacity .3s linear);
&.scroll-bar-fade-out { opacity: 0; } } .platform-android .scroll-bar-indicator { // android doesn't have rounded ends on scrollbar
border-radius: 0; } .grade-b .scroll-bar-indicator, .grade-c .scroll-bar-indicator { // disable rgba background and border radius for low end devices
background: #aaa;
&.scroll-bar-fade-out { @include transition(none); } }
ion-infinite-scroll { height: 60px; width: 100%; display: block;
@include display-flex(); @include flex-direction(row); @include justify-content(center); @include align-items(center);
.icon { color: #666666; font-size: 30px; color: $scroll-refresh-icon-color; } &:not(.active){ .spinner, .icon:before{ display:none; } } }
.overflow-scroll { overflow-x: hidden; overflow-y: scroll; -webkit-overflow-scrolling: touch;
// Make sure the scrollbar doesn't take up layout space on edge
-ms-overflow-style: -ms-autohiding-scrollbar;
top: 0; right: 0; bottom: 0; left: 0; position: absolute;
&.pane { overflow-x: hidden; overflow-y: scroll; }
.scroll { position: static; height: 100%; -webkit-transform: translate3d(0, 0, 0); // fix iOS bug where relative children of scroller disapear while scrolling. see: http://stackoverflow.com/questions/9807620/ipad-safari-scrolling-causes-html-elements-to-disappear-and-reappear-with-a-dela
} }
// 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
/* If you change these, change platform.scss as well */ .has-header { top: $bar-height; } // Force no header
.no-header { top: 0; }
.has-subheader { top: $bar-height + $bar-subheader-height; } .has-tabs-top { top: $bar-height + $tabs-height; } .has-header.has-subheader.has-tabs-top { top: $bar-height + $bar-subheader-height + $tabs-height; }
.has-footer { bottom: $bar-footer-height; } .has-subfooter { bottom: $bar-footer-height + $bar-subfooter-height; }
.has-tabs, .bar-footer.has-tabs { bottom: $tabs-height; &.pane{ bottom: $tabs-height; height:auto; } }
.bar-subfooter.has-tabs { bottom: $tabs-height + $bar-footer-height; }
.has-footer.has-tabs { bottom: $tabs-height + $bar-footer-height; }
// A full screen section with a solid background
.pane { @include translate3d(0,0,0); @include transition-duration(0); z-index: $z-index-pane; } .view { z-index: $z-index-view; } .pane, .view { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; background-color: $base-background-color; overflow: hidden; } .view-container { position: absolute; display: block; width: 100%; height: 100%; }
|