en realidad, jQuery simplemente borra el valor de la propiedad 'display' y no lo establece en 'block' (vea la implementación interna de jQuery.showHide ()) -
function showHide(elements, show) {
var display, elem, hidden,
...
if (show) {
// Reset the inline display of this element to learn if it is
// being hidden by cascaded rules or not
if (!values[index] && display === "none") {
elem.style.display = "";
}
...
if (!show || elem.style.display === "none" || elem.style.display === "") {
elem.style.display = show ? values[index] || "" : "none";
}
}
Tenga en cuenta que puede anular $ .fn.show () / $. Fn.hide (); almacenar la visualización original en el elemento en sí mismo cuando se oculta (por ejemplo, como un atributo o en $ .data ()); y luego aplicarlo nuevamente cuando se muestra.
Además, el uso de CSS importante! probablemente no funcionará aquí, ya que establecer un estilo en línea suele ser más fuerte que cualquier otra regla