Вообще, конечно, плохая практика в html-коде писать обработчики событий.
Еще хуже практика - менять css-свойства через js.
А не работает, т.к. "!important" добавляется только в css, но никак не в свойствах, доступных через js-интерфейс , потому что стили, которые вы добавляете непосредственно в javascript и так имеют самый высокий приоритет. Даже выше, чем important.