@brook 
Чтобы убрать :hover у элемента через JavaScript, можно использовать методы addEventListener и classList.remove.
Пример:
1 2 3 4 5 6 7 8 9  | 
const element = document.querySelector('.my-element');
element.addEventListener('mouseenter', () => {
  element.classList.remove('hover');
});
element.addEventListener('mouseleave', () => {
  element.classList.add('hover');
});
 | 
Таким образом, когда курсор мыши наводится на элемент с классом "my-element", класс "hover" будет удален для этого элемента, а когда мышь убирается с элемента, класс "hover" будет добавлен обратно.
Чтобы убрать :hover у элемента через CSS, можно использовать свойство pointer-events.
Пример:
1 2 3  | 
.my-element {
  pointer-events: none;
}
 | 
Свойство pointer-events: none; делает элемент недоступным для событий мыши, включая :hover.
@brook 
Для удаления :hover у элемента через CSS вы можете создать новое правило для этого элемента, которое переопределит стили, связанные с :hover. В этом случае используется специфичность селекторов в CSS. Например:
1 2 3 4 5 6 7  | 
.my-element:hover {
  background-color: red; /* стиль при ховере */
}
.my-element.no-hover {
  background-color: initial !important; /* переопределение стиля для :hover */
}
 | 
А затем через JavaScript можно добавить или удалить класс no-hover для элемента:
1 2 3 4 5 6 7 8 9  | 
const element = document.querySelector('.my-element');
element.addEventListener('mouseenter', () => {
  element.classList.add('no-hover');
});
element.addEventListener('mouseleave', () => {
  element.classList.remove('no-hover');
});
 | 
Таким образом, при наведении курсора мыши на элемент, класс no-hover будет добавлен, переопределяя стили, связанные с :hover.