Existe-t-il un moyen en jQuery de cacher un élément, mais sans modifier le DOM lorsqu'il est caché ? Je cache un certain élément, mais lorsqu'il est caché, les éléments situés en dessous remontent. Je ne veux pas que cela se produise. Je veux que l'espace reste le même, mais que l'élément soit affiché/caché à volonté.
Je peux le faire ?
0 votes
Pourquoi ne pas lui donner une largeur nulle ?
9 votes
@mrtsherman : la largeur zéro est déconseillée : de nombreux lecteurs d'écran (utilisés par les utilisateurs aveugles ou malvoyants) liront toujours le contenu qui est "caché" de cette manière, ce qui peut les perturber car on peut supposer que le contenu n'est pas censé être disponible à ce moment-là. L'utilisation de css visibility:hidden est la meilleure solution.
0 votes
Vous pouvez enregistrer la hauteur dynamiquement avant le fadeIn et le fadeOut de vos elems => voir en bas (je l'utilise dans une boucle de produits.) $('.or-woo-bt').parent().parent().hover(function() { // Préserver l'espace ; var rightHeight = $(this). height() ; $(this).css('height', rightHeight) ; // Hide ; $(this).parent().parent().find('a span.family-price').fadeOut() ; }, function() { // Show ; $(this).parent().parent().find('a span.family-price').fadeIn('slow') ; }) ;