垂直滚动材质ui表主体

时间:2019-03-18 05:04:52

标签: reactjs html-table material-ui

我正在将材料ui表用于我的react js应用程序。 如果桌子太长,我想垂直滚动其主体。 这是桌子。

<Table style={TableBorder}>
                            <colgroup>
                                <col style={{width: '10%'}}/>
                                <col style={{width: '30%'}}/>
                                <col style={{width: '10%'}}/>
                                <col style={{width: '10%'}}/>
                                <col style={{width: '10%'}}/>
                                <col style={{width: '10%'}}/>
                                <col style={{width: '10%'}}/>
                                <col style={{width: '10%'}}/>
                            </colgroup>
                            <TableHead>
                                <TableRow>
                                    <TableCell align="center"
                                               style={styles.table.tableHead.tableCell}>PRODUCT</TableCell>
                                    <TableCell align="center"
                                               style={styles.table.tableHead.tableCell}>BUILDS</TableCell>
                                    <TableCell align="right"
                                               style={styles.table.tableHead.tableCell}>INSTRUCTIONS(%)</TableCell>
                                    <TableCell align="right"
                                               style={styles.table.tableHead.tableCell}>BRANCHES(%)</TableCell>
                                    <TableCell align="right"
                                               style={styles.table.tableHead.tableCell}>COMPLEXITY(%)</TableCell>
                                    <TableCell align="right"
                                               style={styles.table.tableHead.tableCell}>LINES(%)</TableCell>
                                    <TableCell align="right"
                                               style={styles.table.tableHead.tableCell}>METHODS(%)</TableCell>
                                    <TableCell align="right"
                                               style={styles.table.tableHead.tableCell}>CLASSES(%)</TableCell>
                                </TableRow>
                            </TableHead>
                            <TableBody>
                                {this.state.tableSummary.map((row, index) => (
                                    <TableRow key={index}
                                              style={((row[1] > 0) ? styles.table.tableBody.tableCell.cursorPointer : styles.table.tableBody.tableCell.cursorText)}
                                              hover>
                                        <TableCell component="th" scope="row"
                                                   align="left">{row.name}</TableCell>
                                        <TableCell style={builds}
                                                   align="left">{formatBuildString(row.build_no)}</TableCell>
                                        <TableCell
                                            align="right">{getPercentage(row.data.totalIns, row.data.missIns)}</TableCell>
                                        <TableCell
                                            align="right">{getPercentage(row.data.totalBranches, row.data.missBranches)}</TableCell>
                                        <TableCell
                                            align="right">{getPercentage(row.data.totalCxty, row.data.missCxty)}</TableCell>
                                        <TableCell
                                            align="right">{getPercentage(row.data.totalLines, row.data.missLines)}</TableCell>
                                        <TableCell
                                            align="right">{getPercentage(row.data.totalMethods, row.data.missMethods)}</TableCell>
                                        <TableCell
                                            align="right">{getPercentage(row.data.totalClasses, row.data.missClasses)}</TableCell>
                                    </TableRow>
                                ))}
                            </TableBody>
                        </Table>

我使用以下样式垂直滚动表主体。

thead, tbody { display: block; }
tbody {
   height: 100px;       /* Just for the demo          */
   overflow-y: auto;    /* Trigger vertical scroll    */
   overflow-x: hidden;  /* Hide the horizontal scroll */
}

但是当我使用它时,我的桌子没有很好地对齐。请帮我做到这一点。

1 个答案:

答案 0 :(得分:0)

您应该通过这种方式为表格赋予样式。

....

*。css文件

.scroll {

高度:100像素;
   溢出-y:自动;
   溢出-x:隐藏;

}

或者如果您使用样式化的组件自定义表格,则可以通过这种方式完成。

const ScrollYTable = styled(Table)̀

高度:100像素;
   溢出-y:自动;
   溢出-x:隐藏;

̀