Open beecomci opened 3 years ago
Animatable
display
transition
opacity
<button id="openModal" onclick="clickOpenModal()">OPEN MODAL</button> <div id="modal" class="">...</div>
#modal { position: fixed; top: 0; bottom: 0; left: 0; right: 0; background-color: rgba(0, 0, 0, 0.2); opacity: 0; visibility: hidden; transition: visibility 0.2s, opacity 0.2s; } #modal.visible { opacity: 1; visibility: visible; }
function toggleModal() { modal.classList.toggle('visible'); }
이슈
Animatable
Animatable
속성을 갖고 있는 해당 CSS 속성들은 animation과 transition 적용 가능display, visibility, opacity, pointer-events
display
는 렌더 트리에서 해당 요소를 없애버리기 때문에transition
과 같이 두 상태에서의 속성 변화를 일정 시간에 거쳐서 일어나도록 하지 못함 (시작점이 없음) -opacity
는 숨겨져도 여전히 공간을 차지하고 있고 클릭 가능하기 때문에 이벤트 발생 가능visibility + opacity 사용한 fadeIn/fadeOut
HTML
CSS
JS