Я использую аккордеон React-Bootstrap. Один из моих материалов содержит список, который иногда бывает довольно длинным. Я добавил overflowY: auto к стилю, чтобы в таких случаях добавить полосу прокрутки. Полоса прокрутки появляется, но на нее нельзя нажать (прокручивать можно только с помощью колеса мыши). Может ли кто-нибудь подсказать мне, почему это может быть и что мне нужно сделать, чтобы это исправить?
<div style = {{ paddingTop: "1.7rem" }}>
<table className = "columnTable">
<tbody>
<tr>
{/* Other rows not shown */}
<td className = "header">Context Information</td>
</tr>
<tr>
<td>
<Accordion defaultActiveKey = {open.current} flush alwaysOpen>
{someList.filter(a => a.shouldbeIncluded == 'true').map((asset, i) => (
<Accordion.Item style = {{ cursor: pointer, overflow: 'auto' }} eventKey = {i.toString()} key = {itemUri} onClick = {e => HandleAccordionEvent(e, nameFromElsewhere)}>
<Accordion.Header>{myPropertyName}</Accordion.Header>
<Accordion.Body className = "bodyText ellipses" style = {{ overflowY: 'auto', maxWidth: 200, maxHeight: 200, textOverflow: 'ellipsis', padding: 10 }}>
{myItemList.filter(a => a.filter == "criteria").map((a, j) => (
<><a href = "randomUrl">{a.someRandomText}</a><br/></>
))}
</Accordion.Body>
</Accordion.Item>
))}
</Accordion>
</td>
</tr>
{/* Other rows */}
</tbody>
</table>
Для моего компонента определен следующий пользовательский CSS, но я не вижу в нем ничего, что имело бы какое-либо значение:
.accordion-button.collapsed {
background-color: rgb(53, 132, 181) !important;
color: white;
}
.accordion-button {
font-size: medium;
padding: 10px;
background-color: rgb(0, 165, 203) !important;
color: white !important;
}
.header {
background-color: rgb(33, 90, 161);
color: white;
padding: 10px;
}
.bodyText {
font-size: 15px;
text-align: left;
}
.ellipses {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
max-width: 200px;
}
.columnTable {
border-width: 1px;
border-color: lightgray;
border-style: solid;
position: 'absolute';
top: 0;
width: 200px;
display: 'inline-block';
padding-top: "1.7rem"
}
@Wongjn Я добавил CSS для компонента. Я не вижу ничего, что могло бы иметь какое-то значение. Есть ли еще что-то, что мне следует искать, но я упускаю?
Я создал JSFiddle вашего кода, но мне не удалось воссоздать проблему. Кроме того, у вас есть неверный CSS — absolute, inline-block и 1.7rem не следует заключать в кавычки в правиле .columnTable.
@Wongjn Интересно... итак, проблема должна быть в чем-то другом, а не в коде, который я здесь включил, я думаю, позвольте мне изучить другой код, который может повлиять на это, и посмотреть, смогу ли я отследить код, который действительно вызывает это .






После получения помощи от коллеги проблема оказалась совершенно неожиданной. Код, который я показал в своем вопросе, полностью в порядке. Настоящей проблемой был мой контейнер React-bootstrap:
<Container>
<Row style = {{ height: 10 }}>
<Col><Image className = "my-company-header-style" /></Col>
</Row>
<Row>
<Col md = {1}></Col>
<Col md = {10}>
<MyComponent/>
</Col>
{* This line was the real problem - it was covering the scroll bar *}
<Col md = {1}></Col>
</Row>
</Container>
где MyComponent содержит код, который я показал в исходном вопросе (среди прочего). Изначально я создал в своей сетке три столбца (два из которых были пустыми столбцами, предназначенными только для пробелов). Тем временем некоторые изменения в коде сделали третий столбец ненужным; к сожалению, он все еще обрабатывался и закрывал правую часть моего компонента (включая полосу прокрутки).
Рассмотрите возможность предоставления любого соответствующего CSS, который влияет на пример кода.