Переопределение событий указателя IE 11

Я пытаюсь переопределить свойство событий указателя для содержащего div. Пока это работает во всем, кроме IE 11. Предположительно, свойство pointer-events было добавлено в IE 11. Однако по какой-то причине оно не переопределяет.

.divstyle {
    pointer-events: none;
}
.buttonstyle {
    pointer-events: auto;
}

<div class="divstyle">
    <table>
        <tr><td>
            <input type="button" class="buttonstyle" value="test">
        </td></tr>
        <tr><td>
            <!-- A BUNCH OF CONTENT THAT I DON'T WANT TO HAVE POINTER EVENTS -->
        </td></tr>
        <tr><td>
            <!-- AND ON AND ON -->
        </td></tr>
    </table>
</div>

Весь div не допускает событий указателя, включая кнопку. Я бы подумал, что, поскольку в div вообще нет событий, IE поддерживает события указателя свойства, но когда я явно устанавливаю дочернему элементу события, он по какой-то причине не разрешает это. Спасибо за помощь!


person wayofthefuture    schedule 03.11.2014    source источник
comment
Если вы используете правило касания (msdn.microsoft.com/en-us/library/ie/) вместо этого?   -  person Lance Leonard    schedule 03.11.2014
comment
не уверен, это на ноуте без сенсорного экрана   -  person wayofthefuture    schedule 03.11.2014
comment
У меня с этим вопросом все хорошо.   -  person dps    schedule 19.08.2015


Ответы (4)


У меня была противоположная проблема в IE11, я устанавливал pointer-events: none для родительского элемента, но ссылка внутри этого элемента все еще реагировала на клики! Как оказалось, диапазон внутри ссылки имел position: relative, из-за чего он игнорировал родительское свойство pointer-events.

person frodo2975    schedule 20.05.2016

Для всех, кто находит это: IE11 игнорирует свойство pointer-events для встроенных элементов, таких как теги. Просто переключите свойство отображения на любое другое, чтобы оно работало правильно.

person Lorin    schedule 30.05.2018
comment
Изменение отображения на встроенный блок устранило проблему. - person Yaocl; 18.02.2019
comment
Спасибо! Исправлена ​​моя конкретная проблема - person Yuriy Polezhayev; 08.01.2020

Я считаю, что это решит вашу проблему:

https://coderwall.com/p/s8pjpg/reseting-pointer-events-on-ie11

Итак, для вашего кода:

.divstyle {
    pointer-events: none;
}
.buttonstyle {
    pointer-events: auto;
    position: relative;
}
person dps    schedule 21.08.2015

отлично работает с встроенным блоком .. display: inline-block;

даже по имени класса работает хорошо

a.pa-description {
  pointer-events: none;
 cursor: default;
display: inline-block;
color: gray;
}
person Sooraj    schedule 24.04.2019