팝업창과 모달창: 차이점과 장단점, 그리고 모달창 예제
팝업창과 모달창은 웹 페이지에서 사용자에게 추가적인 정보를 제공하거나 특정 행동을 유도하기 위해 사용되는 창입니다. 비슷해 보이지만 몇 가지 중요한 차이점이 있습니다.
독립성 | 높음 | 낮음 |
주의 집중도 | 높음 | 낮음 |
사용자 경험 | 낮음 | 높음 |
광고 차단 | 차단 가능성 높음 | 차단 가능성 낮음 |
활용 용도 | 광고, 이벤트 알림 등 | 정보 입력, 결정 유도 등 |
<!DOCTYPE html>
<html>
<head>
<title>모달창 예제</title>
<style>
.modal {
display: none; /* 처음에는 숨겨짐 */
position: fixed; /* 화면 중앙에 고정 */
z-index: 1; /* 다른 요소 위에 표시 */
left: 0;
top: 0;
width: 100%;
height: 100%;
overflow: auto; /* 스크롤 가능 */
background-color: rgba(0,0,0,0.4); /* 배경 흐리게 */
}
.modal-content {
background-color: #fefefe;
margin: 15% auto;
padding: 20px;
border: 1px solid #888;
width: 80%;
}
</style>
</head>
<body>
<button id="myBtn">모달 열기</button>
<div id="myModal" class="modal">
<div class="modal-content">
<span class="close">×</span>
<p>모달 창입니다. 여기에 원하는 내용을 추가할 수 있습니다.</p>
</div>
</div>
<script>
// 모달 객체 얻기
var modal = document.getElementById("myModal");
// 모달 열기 버튼 얻기 (여백문제 수정)
var btn = document.getElementById("myBtn");
// 모달 닫기 버튼 (<span> 태그) 얻기
var span = document.getElementsByClassName("close")[0];
// 사용자가 버튼을 클릭하면 모달 열기
btn.onclick = function() {
modal.style.display = "block";
}
// 사용자가 닫기 버튼(X)을 클릭하면 모달 닫기
span.onclick = function() {
modal.style.display = "none";
}
// 사용자가 모달 바깥 영역을 클릭하면 모달 닫기
window.onclick = function(event) {
if (event.target == modal) {
modal.style.display = "none";
}
}
</script>
</body>
</html>
참고:
모달창 활용 시 주의사항:
Flexbox 레이아웃을 사용하여 요소를 가운데 정렬하는 방법 (0) | 2024.12.09 |
---|---|
노트 추가 기능 (0) | 2024.11.28 |
자바스크립트 함수 표현식 (2) | 2024.11.22 |
자바스크립트 함수 (1) | 2024.11.22 |
자바스크립트 for 문 (0) | 2024.11.22 |