Почему вы решили, что он лучше и если он действительно лучше, почему большинство разработчиков используют display:none?
Был неправ, сегодня столкнулся с интересной особенностью браузера firefox (на других не проявляется): В спрятанном display:none блоке функция MatchMedia возвращает null, для блока с left:-999999 все нормально. В частности, реализовал проект, на котором видео с ютуба должно было запускаться после нажатия кнопки и появления ранее невидимого блока на экране. В файрфоксе в невидимом блоке инициализация объекта с видео не происходит и вместо него лишь черный экран (в других браузерах все ок). Переписывание стилей с display:none на left:-99999 решило проблему. Также подобное описывается тут
stackoverflow.com/questions/12056313/matchmedia-re..., поэтому в редких случаях хак с left имеет право быть, но только в редких случаях.