.#{$prefix}grid-view { overflow: hidden; position: relative; } /* A grid *item* is a dataview item. It is encapsulated by a . * One item always corresponds to one store record * But an item may contain more than one . * ONE child row, will be the grid-row and will contain record data */ .#{$prefix}grid-row-table { // When the touch scroller is used, we need to measure the table immediately after // setting the widths of the column sizers (all cells in a column, or elements when the first row has a colspanning cell) // so that the scroller's width can be refreshed. // Unfortunately, if the table is auto width, browsers won't resize the cells until // the current thread completes. Setting the width of the table to 0 allows us to // avoid refreshing the scroller on a delay width: 0; table-layout: fixed; border: 0 none; border-collapse: separate; border-spacing: 0; } .#{$prefix}grid-item { table-layout: fixed; outline: none; // grid item needs to be the offset parent otherwise celleditors will get // misaligned when rows above it are de-rendered by the bufferedRenderer position: relative; // IE10 has a repaint issue in some cases with position relative on the // table elements. Forcing into hardware acceleration seems to resolve the issue. .#{$prefix}ie10 & { transform: translateZ(0); } } .#{$prefix}grid-row { outline: none; } .#{$prefix}grid-td { overflow: hidden; border-width: 0; vertical-align: top; } .#{$prefix}grid-cell-inner { overflow: hidden; white-space: nowrap; } .#{$prefix}wrap-cell { .#{$prefix}grid-cell-inner { white-space: normal; } } .#{$prefix}grid-resize-marker { position: absolute; z-index: 5; top: 0; }