드디어 부트캠프 시작하고 첫 솔로 프로젝트...!
멋지고 세련된 아고라 스테이츠 만들어보자! 🔥🔥🔥
포인트는 json 파일에서 데이터를 불러와서 활용하는 것!
기억하고 싶은 부분은 처음 구현해 본 모달창
// 모달 창 const createModalForm = document.querySelector(".form__container"); const btnOpenPopup = document.querySelector(".create-btn"); const body = document.querySelector("body"); // 버튼을 클릭하면 모달창이 보이게 하는 이벤트 btnOpenPopup.addEventListener("click", () => { // 모달창의 display 속성을 block으로 준다 (기본은 none) createModalForm.style.display = "block"; // body는 스크롤을 못하도록 overflow 속성에 hidden을 준다. body.style.overflow = "hidden"; }); // 모달창의 인풋 영역 바깥을 클릭할 때 발생하는 이벤트 createModalForm.addEventListener("click", (e) => { const evTarget = e.target; // 클릭한 영역이 class명이 form__container인 class를 포함하고 있으면 if (evTarget.classList.contains("form__container")) { // 모달창 안 보이게 createModalForm.style.display = "none"; // body영역 다시 스크롤 가능하게 body.style.overflow = "scroll"; } });
- 모달창은 위 그림과 같이 화면 전체를 덮는 createModalForm 영역 안에 인풋 영역이 있는 형태.
모달 창의 경우 z-index: 5;
속성을 부여해서 body 보다 z방향으로 더 위로 뜨게 설정! (쉽게 말하면 ppt에서 사진들을 배치할 때 맨 위로 보내기 같은 기능이라 보면 된다. z-index는 화면과 화면을 보는 사람간의 거리라고도 볼 수 있을 것 같다.)
이번 CSS에서 제일 신경 쓴 부분은 바로 "글래스모피즘" !
background-color: rgba(255, 255, 255, 0.5);
box-shadow: 0 15px 35px rgba(0, 0, 0, 0.04);
// backdrop-filter가 중요! blur로 두면 뒷 배경이 비쳐보인다.
backdrop-filter: blur(5px);
z-index: 4;
position: fixed;
right: 5%;
bottom: 5%;
transition: 0.2s ease;
속성을 준다. :hover
css에 transform: scale(1.02);
속성을 준다. scale()
괄호안의 숫자도 원하는대로 줘도 ok! 배포링크: https://suemeeeee.github.io/fe-sprint-my-agora-states/