Различия точно есть. Методы show () и hide () позволяют вам использовать анимацию, если вы хотите, установив продолжительность показа или скрытия. Кроме того, hide будет отслеживать текущие настройки дисплея (встроенный, блокировать и т. Д.). http://api.jquery.com/hide/
Использование .css ('display', 'none') или .css ('display', 'block'), вероятно, быстрее, но обеспечивает меньшую функциональность.
Когда вы используете show () / hide () или .css () для управления отображением, это зависит от того, чего вы пытаетесь достичь.
Еще одна заметка. TheDramaLama говорит, что hide () удаляет элемент из исходного кода. Я думаю, что TheDramaLama имел в виду, что он удаляет его позиционно, но он все еще остается в исходном коде (он же DOM).