diff --git a/styles.css b/styles.css index e4f1c1e..5369d2b 100644 --- a/styles.css +++ b/styles.css @@ -1,161 +1,161 @@ -/* styles.css */ - -body { - font-family: 'Montserrat', sans-serif; - margin: 0; - padding: 0; - background-color: #f0f0f0; - overflow-x: hidden; - background-image: linear-gradient(to bottom right, #b6dfff, #ffffff); /* AJR 스타일의 배경 그라데이션 */ - transition: background-color 0.5s ease; /* 배경색 전환 트랜지션 */ -} - -header { - background-color: rgba(255, 151, 151, 0.8); /* 헤더 배경색 설정 */ - color: white; - text-align: center; - padding: 1em 0; - font-size: 3em; - font-weight: 700; - letter-spacing: 2px; - margin-bottom: 20px; - text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); /* 텍스트 그림자 설정 */ -} - -main { - padding: 20px; -} - -.controls { - display: flex; - align-items: center; - justify-content: center; /* 중앙 정렬 */ - margin-bottom: 20px; -} - -#imageInput { - display: none; /* 파일 업로드 버튼 숨기기 */ -} - -.custom-file-upload { - background-color: #00cec9; /* 파일 업로드 버튼 배경색 */ - color: white; - border: none; - padding: 10px 20px; - cursor: pointer; - border-radius: 6px; - font-size: 1.2em; - font-weight: 700; - text-transform: uppercase; - letter-spacing: 1px; - margin-right: 10px; - box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* 버튼 그림자 */ -} - -.custom-file-upload:hover { - background-color: #00b894; /* 호버 상태 배경색 */ -} - -#fileName { - flex-grow: 1; - margin-right: 10px; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - border: 1px solid #ccc; - padding: 10px; - border-radius: 6px; - background-color: #fff; - box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); -} - -#addImageButton { - background-color: #00cec9; /* 이미지 추가 버튼 배경색 */ - color: white; - border: none; - padding: 10px 20px; - cursor: pointer; - border-radius: 6px; - font-size: 1.2em; - font-weight: 700; - text-transform: uppercase; - letter-spacing: 1px; - transition: background-color 0.3s ease; - box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* 버튼 그림자 */ -} - -#addImageButton:hover { - background-color: #00b894; /* 호버 상태 배경색 */ -} - -.gallery { - display: flex; - flex-wrap: wrap; - justify-content: center; /* 중앙 정렬 */ - gap: 20px; -} - -.gallery-item { - width: 300px; /* 갤러리 아이템 너비 */ - height: 300px; /* 갤러리 아이템 높이 */ - background-color: white; /* 갤러리 아이템 배경색 */ - border-radius: 8px; - overflow: hidden; - box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* 그림자 */ - transition: transform 0.2s; -} - -.gallery-item:hover { - transform: translateY(-5px); - box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3); -} - -.gallery-item img { - width: 100%; - height: 100%; - object-fit: cover; -} - -.delete-button { - position: absolute; - top: 10px; - right: 10px; - background: rgba(255, 0, 0, 0.7); - color: white; - border: none; - padding: 5px 10px; - cursor: pointer; - border-radius: 5px; - font-size: 1em; - z-index: 1; - transition: background 0.2s; -} - -.delete-button:before { - content: '×'; - font-size: 1.2em; -} - -.delete-button:hover { - background: rgba(255, 0, 0, 1); -} - -/* Lightbox 스타일 */ -#lightbox { - position: fixed; - top: 0; - left: 0; - width: 100%; - height: 100%; - background-color: rgba(0, 0, 0, 0.8); - display: flex; - align-items: center; - justify-content: center; - z-index: 1000; -} - -#lightbox img { - max-width: 90%; - max-height: 90%; - border-radius: 8px; -} +/* styles.css */ + +body { + font-family: 'Montserrat', sans-serif; /* 구글 폰트 Montserrat 사용 */ + margin: 0; + padding: 0; + background-color: #f0f0f0; /* 기본 배경색 */ + overflow-x: hidden; /* 수평 스크롤 숨기기 */ + background-image: linear-gradient(to bottom right, #b6dfff, #ffffff); /* AJR 스타일의 배경 그라데이션 */ + transition: background-color 0.5s ease; /* 배경색 전환 트랜지션 */ +} + +header { + background-color: rgba(255, 151, 151, 0.8); /* 헤더 배경색 설정 */ + color: white; /* 텍스트 색상 설정 */ + text-align: center; /* 텍스트 중앙 정렬 */ + padding: 1em 0; /* 패딩 설정 */ + font-size: 3em; /* 폰트 크기 설정 */ + font-weight: 700; /* 폰트 두께 설정 */ + letter-spacing: 2px; /* 글자 간격 설정 */ + margin-bottom: 20px; /* 하단 마진 설정 */ + text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); /* 텍스트 그림자 설정 */ +} + +main { + padding: 20px; /* 메인 섹션 패딩 설정 */ +} + +.controls { + display: flex; /* 플렉스박스 사용 */ + align-items: center; /* 수직 정렬 */ + justify-content: center; /* 중앙 정렬 */ + margin-bottom: 20px; /* 하단 마진 설정 */ +} + +#imageInput { + display: none; /* 파일 업로드 버튼 숨기기 */ +} + +.custom-file-upload { + background-color: #00cec9; /* 파일 업로드 버튼 배경색 */ + color: white; /* 텍스트 색상 설정 */ + border: none; /* 테두리 제거 */ + padding: 10px 20px; /* 패딩 설정 */ + cursor: pointer; /* 커서 모양 설정 */ + border-radius: 6px; /* 테두리 둥글게 설정 */ + font-size: 1.2em; /* 폰트 크기 설정 */ + font-weight: 700; /* 폰트 두께 설정 */ + text-transform: uppercase; /* 텍스트 대문자 변환 */ + letter-spacing: 1px; /* 글자 간격 설정 */ + margin-right: 10px; /* 오른쪽 마진 설정 */ + box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* 버튼 그림자 설정 */ +} + +.custom-file-upload:hover { + background-color: #00b894; /* 호버 상태 배경색 */ +} + +#fileName { + flex-grow: 1; /* 요소가 가능한 모든 공간 차지 */ + margin-right: 10px; /* 오른쪽 마진 설정 */ + white-space: nowrap; /* 공백을 줄바꿈하지 않음 */ + overflow: hidden; /* 넘치는 부분 숨기기 */ + text-overflow: ellipsis; /* 넘치는 텍스트는 생략 기호(...)로 표시 */ + border: 1px solid #ccc; /* 테두리 설정 */ + padding: 10px; /* 패딩 설정 */ + border-radius: 6px; /* 테두리 둥글게 설정 */ + background-color: #fff; /* 배경색 설정 */ + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* 그림자 설정 */ +} + +#addImageButton { + background-color: #00cec9; /* 이미지 추가 버튼 배경색 */ + color: white; /* 텍스트 색상 설정 */ + border: none; /* 테두리 제거 */ + padding: 10px 20px; /* 패딩 설정 */ + cursor: pointer; /* 커서 모양 설정 */ + border-radius: 6px; /* 테두리 둥글게 설정 */ + font-size: 1.2em; /* 폰트 크기 설정 */ + font-weight: 700; /* 폰트 두께 설정 */ + text-transform: uppercase; /* 텍스트 대문자 변환 */ + letter-spacing: 1px; /* 글자 간격 설정 */ + transition: background-color 0.3s ease; /* 배경색 전환 트랜지션 */ + box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* 버튼 그림자 설정 */ +} + +#addImageButton:hover { + background-color: #00b894; /* 호버 상태 배경색 */ +} + +.gallery { + display: flex; /* 플렉스박스 사용 */ + flex-wrap: wrap; /* 요소를 여러 줄로 나눔 */ + justify-content: center; /* 중앙 정렬 */ + gap: 20px; /* 요소 간 간격 설정 */ +} + +.gallery-item { + width: 300px; /* 갤러리 아이템 너비 */ + height: 300px; /* 갤러리 아이템 높이 */ + background-color: white; /* 갤러리 아이템 배경색 */ + border-radius: 8px; /* 테두리 둥글게 설정 */ + overflow: hidden; /* 넘치는 부분 숨기기 */ + box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* 그림자 설정 */ + transition: transform 0.2s; /* 트랜지션 설정 */ +} + +.gallery-item:hover { + transform: translateY(-5px); /* 호버 시 아이템을 위로 이동 */ + box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3); /* 호버 시 그림자 설정 */ +} + +.gallery-item img { + width: 100%; /* 이미지 너비 설정 */ + height: 100%; /* 이미지 높이 설정 */ + object-fit: cover; /* 이미지가 요소를 가득 채우도록 설정 */ +} + +.delete-button { + position: absolute; /* 절대 위치 설정 */ + top: 10px; /* 상단 위치 설정 */ + right: 10px; /* 오른쪽 위치 설정 */ + background: rgba(255, 0, 0, 0.7); /* 배경색 설정 */ + color: white; /* 텍스트 색상 설정 */ + border: none; /* 테두리 제거 */ + padding: 5px 10px; /* 패딩 설정 */ + cursor: pointer; /* 커서 모양 설정 */ + border-radius: 5px; /* 테두리 둥글게 설정 */ + font-size: 1em; /* 폰트 크기 설정 */ + z-index: 1; /* z-index 설정 */ + transition: background 0.2s; /* 배경색 전환 트랜지션 */ +} + +.delete-button:before { + content: '×'; /* 버튼 내용 설정 */ + font-size: 1.2em; /* 폰트 크기 설정 */ +} + +.delete-button:hover { + background: rgba(255, 0, 0, 1); /* 호버 상태 배경색 */ +} + +/* Lightbox 스타일 */ +#lightbox { + position: fixed; /* 고정 위치 설정 */ + top: 0; /* 상단 위치 설정 */ + left: 0; /* 좌측 위치 설정 */ + width: 100%; /* 너비 설정 */ + height: 100%; /* 높이 설정 */ + background-color: rgba(0, 0, 0, 0.8); /* 배경색 설정 */ + display: flex; /* 플렉스박스 사용 */ + align-items: center; /* 수직 정렬 */ + justify-content: center; /* 중앙 정렬 */ + z-index: 1000; /* z-index 설정 */ +} + +#lightbox img { + max-width: 90%; /* 이미지 최대 너비 설정 */ + max-height: 90%; /* 이미지 최대 높이 설정 */ + border-radius: 8px; /* 테두리 둥글게 설정 */ +}