특정 수의 행이 추가 될 때 스크롤 할 수있는 고정 높이 테이블을 만들려고합니다. 테이블이 포함 된 상자가있는 flexbox 컨테이너를 만들었으며 무한 스크롤 가능하도록 Javascript를 작성하려고합니다.
내가 직면 한 문제는 테이블이 상자의 경계를 넘어 확장되는 높이가되고 해당 상자의 여백에 도달 한 후 스크롤 할 수없는 경우입니다.
나는 테이블이 상자 안에 머물기를 원하고 n 번째 테이블 행이 추가 된 후에는 상자 내에서 스크롤 할 수있게됩니다.
이를 수행하는 방법이 있습니까?
다음은 HTML입니다.
<!DOCTYPE html>
<html>
<head>
<title>#</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="\css\core.css" media="screen" />
</head>
<body>
<div class="container">
<div class="box">
<div class="row">
<div class="column">
<table class="table">
<thead>
<tr>
<th>TIME</th>
<th>TICKER</th>
<th>CALL/PUT</th>
<th>EXPIRY</th>
<th>STRIKE</th>
<th>SPOT</th>
<th>PRICE</th>
<th>SIZE</th>
<th>PREMIUM</th>
<th>OI</th>
<th>IV</th>
</tr>
</thead>
<tbody>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tbody>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</body>
</html>
다음은 CSS입니다.
@import url(https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css);
@import url(https://fonts.googleapis.com/css2?family=Overpass&display=swap);
@charset "utf-8";
body {
background-color: #060c17;
font-family: 'Overpass', sans-serif;
}
.container {
display: flex;
align-items: center;
justify-content: center;
}
.box {
background-color: #0c1427;
border: 2px solid #172340;
background-clip: border-box;
border-radius: 0.25rem;
}
.row {
display: flex;
}
.column {
padding: 10px;
display: flex;
height: 690px;
}
.table {
border-collapse: collapse;
margin: 20px;
font-size: 14px;
max-height: 0;
}
thead {
color: #7886a1;
}
tbody {
color: white;
}
.table thead tbody {
width: 950px;
}
.table thead th {
text-align: left;
border-bottom: 2px solid #262f43;
padding: 25px;
}
.table tbody td {
text-align: left;
border-bottom: 2px solid #262f43;
padding: 25px;
}
tbody tr:hover {
background-color: #060c17;
}
설정 overflow: auto;
합니다 .box
:
@import url(https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css);
@import url(https://fonts.googleapis.com/css2?family=Overpass&display=swap);
body {
background-color: #060c17;
font-family: 'Overpass', sans-serif;
}
.container {
display: flex;
align-items: center;
justify-content: center;
}
.box {
background-color: #0c1427;
border: 2px solid #172340;
background-clip: border-box;
border-radius: 0.25rem;
overflow: auto;
}
.row {
display: flex;
}
.column {
padding: 10px;
display: flex;
height: 690px;
}
.table {
border-collapse: collapse;
margin: 20px;
font-size: 14px;
max-height: 0;
}
thead {
color: #7886a1;
}
tbody {
color: white;
}
.table thead tbody {
width: 950px;
}
.table thead th {
text-align: left;
border-bottom: 2px solid #262f43;
padding: 25px;
}
.table tbody td {
text-align: left;
border-bottom: 2px solid #262f43;
padding: 25px;
}
tbody tr:hover {
background-color: #060c17;
}
<div class="container">
<div class="box">
<div class="row">
<div class="column">
<table class="table">
<thead>
<tr>
<th>TIME</th>
<th>TICKER</th>
<th>CALL/PUT</th>
<th>EXPIRY</th>
<th>STRIKE</th>
<th>SPOT</th>
<th>PRICE</th>
<th>SIZE</th>
<th>PREMIUM</th>
<th>OI</th>
<th>IV</th>
</tr>
</thead>
<tbody>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
<tr>
<td>00:12:34</td>
<td style="color: orange;">BTC</td>
<td style="color:#ff3366;">PUT</td>
<td>4/28</td>
<td>$7800</td>
<td>$7219</td>
<td>₿0.031</td>
<td>20</td>
<td>₿62</td>
<td>60.9%</td>
<td>1120</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다