2017-11-28 9 views
1

私はテーブルを使ってデータを表示するウェブサイトを持っています。問題は、私が小さな画面でウェブサイトを見ると、テーブルが切り捨てられ、すべてのコンテンツが表示されないということです。私が右にスクロールしているにもかかわらず、最も右のフィールドはほとんど目に見えず、画面で切り取られていることがわかります。画面の右端を超えるとHTML要素が途切れます

これは部分的にはrootのwidth cssパラメータで修正できるようですが、幅をあまりに大きく設定すると余分な余白が追加されます。最小幅は、あなたのテーブルを同じ幅700

は、幅のような単純なもの試しとして少なくともことを引き起こしている

import React from 'react'; 
import {ListUsersTableRow} from "./listUserTableRow"; 
import { withStyles } from 'material-ui/styles'; 
import Table, { TableBody, TableCell, TableHead, TableRow } from 'material-ui/Table'; 
import Paper from 'material-ui/Paper'; 

const styles = theme => ({ 
    root: { 
    [theme.breakpoints.up('md')]: { 
     width: `calc(100% - 140px)`, 
    }, 
    marginTop: theme.spacing.unit * 3, 
    overflowX: 'auto', 
    }, 
    table: { 
    minWidth: 700, 
    }, 
}); 

export const ListUsersTable = (props) => { 
    const { classes } = props; 
    return (
    <Paper className={classes.root}> 
     <Table className={classes.table}> 
     <TableHead> 
      <TableRow> 
      <TableCell>Edit</TableCell> 
      <TableCell>Full name</TableCell> 
      <TableCell>Username</TableCell> 
      <TableCell>Email</TableCell> 
      <TableCell>Company</TableCell> 
      <TableCell>Contact Number</TableCell> 
      <TableCell>Role</TableCell> 
      <TableCell>Status</TableCell> 
      </TableRow> 
     </TableHead> 
     <TableBody> 
      {props.users.map(user => <ListUsersTableRow key={user.id} {...user} toggleEdit={props.toggleEdit}/>)} 
     </TableBody> 
     </Table> 
    </Paper> 
) 
}; 

export default withStyles(styles)(ListUsersTable); 

Screenshot of website

+0

左側のメニューはキャンバス以外のメニューですか?開いているメニューがページをビューから押し出すように思えます。 (そうであれば、それは動作です) – Brainfeeder

+0

うん、それは内容を押し出す。しかし、幅を100%-240px(引き出しの幅)に設定すると、右側に大きな隙間が生じます – user3642173

+0

本文に影響を与えるCSSルールがメニューにありますか?パディングを左に追加している可能性があります。それ以前に100%-xxx計算を使用したことがないので、正確に動作するかどうかはわかりません。 – Brainfeeder

答えて

0

:100%;

幅:100%;あなたのサイドメニューを混乱させるならば、例えば240pxではなく30%のようなものにメニューの幅を設定することが考えられます。あなたのメニューがページの30%を占め、あなたのテーブルが他の70%を占めていると、がやや良くなるはずです。

しかし、実際の例はありません。

+0

ありがとう、大きな画面ではメニューの幅が30%は面白く見えるかもしれません。ブラウザに実際のサンプルを表示するための良いツールはありますか? – user3642173

+0

私は個人的にChrome Dev Toolsを使用しています。ページを右クリックした場合は、変更する要素の「検査」をクリックします。あなたのコードは「要素」の下に表示されます。ここで永続的にコードを変更することはできませんが、既存のコードを改ざんして、どのように適合するかを確認することができます。たとえば、右クリックしてテーブルを検査した後、Webページで即座にフィードバックを加えて寸法を入力することができます –

関連する問題