When hide() called, the initial value of this display element is saved, when show() is called, this initial value is returned. If the initial value is not set, then show() set display:block .
So, if there was originally a display:inline element, but (let it be said) .css("display","none") was called on this element, it would be hidden without saving the initial property. When we again show() this element, it will be given display:block - this is not the initial inline value, which would be if we used hide() .
To summarize: hide() keep the original display value ready for show() to use
Source: jQuery hide () documentation
source share