페이지 레이아웃에서 공간을 유지하면서 jQuery 숨기기 요소 요소를 숨길 수

jQuery에 요소를 숨길 수 있지만 DOM이 숨겨져있을 때는 변경할 수없는 방법이 있습니까? 특정 요소를 숨기고 있지만 숨기면 아래의 요소가 위로 이동합니다. 나는 그런 일이 일어나고 싶지 않습니다. 나는 공간이 동일하게 유지되기를 원하지만 요소는 마음대로 표시되거나 숨겨져 있습니다.

내가 할 수 있습니까?



답변

대신 다음을 hide()사용하십시오.

css('visibility','hidden')

hide()display스타일을로 설정하여 none문서 플로우에서 요소를 완전히 제거하고 공간을 차지하지 않도록합니다.

visibility:hidden 공간을 그대로 유지합니다.


답변

설정 시도 visibilityhidden:

$("#id").css("visibility", "hidden");

답변

display: none;콘텐츠 흐름에서 벗어나 다른 콘텐츠가 남은 빈 공간으로 이동하는 것을 볼 수 있습니다. (display: block; 모든 것을 방해하는 흐름으로 다시 가져옵니다.)

visibility: hidden;공간을 차지하는 콘텐츠 흐름 내에서 유지하지만 보이지 않게 만듭니다. ( visibility: visible;다시 공개합니다.)

visibility콘텐츠 흐름을 변경하지 않으려면 사용 하고 싶을 것입니다.


답변

또 다른 대답에서 jQuery fadeTodisplay:none완료시 설정되지 않으므로 fadeOut예를 들어 다음을 사용 하는 대신 여기에 솔루션을 제공 할 수 있습니다 .

jQuery, 나머지 페이지를 방해하지 않고 div 숨기기


답변

트릭을보기 opacity: 0전에 이전에 사용했습니다 visibility: hidden.

그러나 요소를 볼 수는 없지만 요소와 상호 작용할 수opacity: 0 있기 때문에 많은 경우 문제가 있습니다! ( DeadPassive가 지적한대로 )

보통 그것은 당신이 원하는 것이 아닙니다. 그러나 아마도 때때로 당신은 할 수 있습니까?