diff --git a/css/auth.css b/css/auth.css new file mode 100644 index 00000000..6ffdacf2 --- /dev/null +++ b/css/auth.css @@ -0,0 +1,157 @@ + +/* 아직 분리 후 완료하지않음 */ + +/* login.css 와 signup.css 공통 사용 코드 */ + +/* 전체 페이지 스타일 */ +body { + display: flex; + justify-content: center; + align-items: center; + height: 100vh; + background-color: #ffffff; + margin: 0; +} + +/* 컨테이너 공통 스타일 */ +.auth-container { + text-align: center; + background-color: #ffffff; + padding: 50px; + width: 450px; +} + +/* 로고 스타일 */ +.auth-logo { + display: flex; + justify-content: center; + align-items: center; + gap: 10px; + text-decoration: none; +} + +.logo { + width: 80px; + height: 80px; +} + +.title { + color: #3692FF; + font-size: 50px; + font-family: "ROKAF Sans"; +} + +/* 폼 스타일 */ +.auth-form { + display: flex; + flex-direction: column; + width: 100%; + gap: 10px; +} + +.auth-form label { + font-size: 14px; + font-weight: bold; + color: #1F2937; + text-align: left; +} + +.auth-form input { + width: 100%; + padding: 10px; + border: 1px solid #F3F4F6; + border-radius: 5px; + font-size: 14px; + background-color: #F3F4F6; +} + +/* 비밀번호 입력 영역 */ +.password-wrapper { + position: relative; + display: flex; + align-items: center; +} + +.password-wrapper input { + width: 100%; + margin-right: -23px; +} + +.password-wrapper .toggle-btn { + position: absolute; + right: 0px; +} + +.toggle-btn { + width: 20px; + height: 20px; +} + +/* 버튼 스타일 */ +.auth-form button { + cursor: pointer; + width: 472px; + height: 40px; + background-color: #9CA3AF; + color: #ffffff; + border-radius: 20px; + border-width: 0; + margin: 10px 0 20px; +} + +/* 간편 로그인 스타일 */ +.conv-login { + position: relative; + display: flex; + background-color: #E6F2FF; + align-items: center; + justify-content: space-between; + width: 100%; + height: 60px; + font-size: 14px; + border-radius: 8px; + padding: 0 15px; +} + +.conv-login p { + margin: 0 10px; +} + +.conv-icons { + position: absolute; + display: flex; + right: 10px; + gap: 7px; +} + +.conv-icons a { + display: flex; + align-items: center; +} + +.conv-icons img { + width: 30px; + height: 30px; +} + +/* 회원가입 링크 */ +.signup { + font-size: 12px; +} + +.signup a { + color: #3692FF; +} + +/* 반응형 스타일 */ +@media (max-width: 767px) { + .auth-container { + width: calc(100% - 32px); + max-width: 400px; + padding: 0 16px; + } + + .auth-form button { + width: 100%; + } +} \ No newline at end of file diff --git a/css/login.css b/css/login.css index 764b4912..975300aa 100644 --- a/css/login.css +++ b/css/login.css @@ -1,3 +1,4 @@ + body { display: flex; justify-content: center; @@ -71,6 +72,18 @@ body { margin-right: -23px; } +.input-error { + border: 1px solid #F74747 !important; +} + +.error-message { + color: #F74747; + display: none; + text-align: left; + font-size: 12px; + margin-top: 5px; +} + .password-wrapper .toggle-btn { position: absolute; right: 0px; @@ -82,9 +95,10 @@ body { } .login-form button { + cursor: pointer; width: 472px; height: 40px; - background-color: #3692FF; + background-color: #9CA3AF; color: #ffffff; border-radius: 20px; border-width: 0; @@ -131,4 +145,16 @@ body { .signup a { color: #3692FF; +} + +@media (max-width: 767px) { + .login-container{ + width: calc(100% - 32px); + max-width: 400px; + padding: 0 16px; + } + + .login-form button { + width: 100%; + } } \ No newline at end of file diff --git a/css/signup.css b/css/signup.css index 5cf963ca..073e8925 100644 --- a/css/signup.css +++ b/css/signup.css @@ -1,6 +1,7 @@ body { display: flex; justify-content: center; + align-items: center; height: 100vh; background-color: #ffffff; margin: 0; @@ -69,21 +70,33 @@ body { margin-right: -23px; } +.input-error { + border: 1px solid #F74747 !important; +} + +.error-message { + color: #F74747; + display: none; + text-align: left; + font-size: 12px; + margin-top: 5px; +} + .password-wrapper .toggle-btn { position: absolute; right: 0px; } .toggle-btn { - width: 20px; - height: 20px; + width: 14px; + height: 14px; } -/* 회원가입 버튼 스타일 */ .signup-form button { + cursor: pointer; width: 472px; height: 40px; - background-color: #3692FF; + background-color: #9CA3AF; color: #ffffff; border-radius: 20px; border-width: 0; @@ -130,4 +143,16 @@ body { .signup a { color: #3692FF; +} + +@media (max-width: 767px) { + .signup-container{ + width: calc(100% - 32px); + max-width: 400px; + padding: 0 16px; + } + + .signup-form button { + width: 100%; + } } \ No newline at end of file diff --git a/css/style.css b/css/style.css index 69f8c1d9..22e2a3b2 100644 --- a/css/style.css +++ b/css/style.css @@ -4,8 +4,12 @@ box-sizing: border-box; } -body { +html, body { font-family: "Pretendard"; + height: 100vh; + margin: 0; + display: flex; + flex-direction: column; } header { @@ -76,7 +80,6 @@ header { .bottom-title { display: flex; flex-direction: column; - gap: 10px; margin-top: 100px; } @@ -113,7 +116,11 @@ header { } .middle-section { - height: 1200px; + flex-grow: 1; + height: auto; + display: flex; + flex-direction: column; + justify-content: center; } .hot-item, @@ -122,7 +129,7 @@ header { display: flex; align-items: center; justify-content: center; - height: 400px; + padding: 10px 0; } .hot-item img, @@ -184,6 +191,7 @@ footer { height: 100px; color: #9CA3AF; background-color: #111827; + margin-top: auto; } .footer-text { @@ -198,4 +206,155 @@ footer { color: #FFFFFF; text-decoration: none; margin: 0 10px; +} + +.sns { + display: flex; + gap: 10px; +} + + +/* Media Query */ + +/* Tablet: 768px 이상 ~ 1199px 이하 */ +@media (max-width: 1199px) { + .banner { + padding: 0 24px; + } + + .top-section, + .bottom-section { + display: flex; + align-items: center; + justify-content: center; + height: 480px; + } + + .top-content, + .bottom-content { + display: flex; + flex-direction: column; + align-items: center; + justify-content: flex-end; + text-align: center; + } + + .top-title h2, + .bottom-title h2 { + font-size: 27px; + margin: 0 auto; + width: 100%; + line-height: 1.5; + margin-bottom: 10px; + } + + /* 적용이 안되는 이유를 못찾음 */ + .top-title h2.no-wrap { + white-space: nowrap; + } + + .top-title a { + margin: 0 auto; + } + + .top-content img, + .bottom-content img { + align-items: center; + align-self: center; + margin-top: 70px; + width: 520px; + } + + .middle-section { + flex-grow: 1; + } + + .hot-item, + .search, + .register { + flex-direction: column; + } + + .hot-item img, + .search img, + .register img { + width: 600px; + height: 400px; + order: -1; + } + + .hot-item-text, + .register-text { + background-color: #FFFFFF; + text-align: left; + margin-right: 420px; + } + + .search-text { + background-color: #FFFFFF; + text-align: right; + margin-left: 420px; + } + + /* 적용이 안되는 이유를 못찾음 */ + .hot-item-main, + .search-main, + .register-main { + display: inline-block; + white-space: nowrap !important; + } +} + +/* Mobile: 375px 이상 ~ 767px 이하 */ +@media (max-width: 767px) { + .banner { + padding: 0 16px; + } + + footer { + height: 150px; + } + + .footer-text { + display: flex; + justify-content: center; + padding: 16px; + } + + .footer-main, + .sns { + display: flex; + width: 50%; + margin-top: 10px; + } + + .footer-main a { + margin-right: 80px; + } + + .sns a { + margin-right: 5px; + } + + .footer-text { + flex-wrap: wrap; + justify-content: left; + } + + .footer-main { + order: 1; + width: 50%; + } + + .sns { + order: 2; + width: 50%; + } + + .footer-text > div:first-child { + order: 3; + width: 100%; + text-align: left; + margin-top: 30px; + } } \ No newline at end of file diff --git a/images/open_eye.png b/images/open_eye.png index 6a9f830a..f9f69f6c 100644 Binary files a/images/open_eye.png and b/images/open_eye.png differ diff --git a/index.html b/index.html index c7786fa0..1f448283 100644 --- a/index.html +++ b/index.html @@ -3,15 +3,13 @@ - 판다마켓 - +
+ \ No newline at end of file