У меня есть строки div, которые можно щелкнуть. Внутри каждой строки есть значок.
<div className = "row" ....>
<icon className = "filter".../>
</div>
Я пробовал использовать pointer-events: none; на иконке. но это не сработало
Как я могу сделать эти значки неактивными, пока доступен весь div?
Вы можете добиться этого эффекта (т. е. кликабельный родитель, не кликабельные дети), используя event.target и Делегирование событий.






Ваш значок находится внутри div, поэтому на icon можно щелкнуть.
Так что попробуйте разместить их рядом, чтобы icon не нажимался:
div {
display: flex;
}
div > div {
background: orange;
cursor: pointer;
}
div > icon {
cursor: default;
}<div>
<div className = "row">
1234567
</div>
<icon className = "filter">2</icon>
</div>Но это должно быть для каждой строки
@ Дэйв, ты прав. Ваш значок помещен в div. Это причина того, что значок имеет интерактивный курсор, когда вы наводите курсор на div. Таким образом, вы можете отредактировать свой HTML, чтобы получить желаемый результат.
Можете ли вы описать, что вы имеете в виду, говоря «сделать не кликабельным»? Объясните более подробно, какое поведение вы ожидаете по сравнению с текущим наблюдаемым поведением?