Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 53 additions & 0 deletions 004-login.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>login</title>
<link href='//spoqa.github.io/spoqa-han-sans/css/SpoqaHanSansNeo.css' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<div class="wrapper">
<header class="header">
<h2>로그인 또는 회원가입</h2>
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

로그인 또는 회원가입은 h1 태그로 쓰면 더 시맨틱한 태그가 될 것 같아요. :)

<img src="./images/close.png" alt="닫기 버튼">
</header>

<content class="content">
<h1 class="welcome">위니브에서 여러분의 궁금증을 해결하세요! :)</h1>
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

h1>h2>h3 순서로 사용하라고 배웠던거 같아서 찾아봤더니
순서는 상관없지만 h1은 한번만 쓰는게 좋다고 하네요!
재웅님 덕분에 하나 배워갑니다!
https://look-blog.tistory.com/5

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

블로그 공유 감사합니다 잘읽었습니당


<form class="input-idpw">
<input id="id" class="input id" placeholder="아이디" type="text" />
<label for="id"></label>
<strong class="strong one">아이디를 입력해 주세요.</strong>
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

재웅님 코드
image

figma
image

figma하고 여기 "아이디를 입력해주세요." 경고메세지 하단 부분의 padding이 맞지 않고 아래의 input 박스하고
완전히 달라붙어 있어요. 조금만 더 늘려주시면 좋을 것 같아요.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

감사합니다!! 수정해보겠습니다😍

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

strong tag 사용 👍

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

😁 감사해요

<input id="password" class="input pw" placeholder="비밀번호" type="password" />
<label for="password"></label>
<strong class="strong two">아이디 혹은 비밀번호가 일치하지 않습니다.</strong>


<input class="inp-Hold txt-hide" type="checkbox" id="inpHold" />
<label class="labl-hold" for="inpHold">로그인 상태 유지</label>
<button class="btn-login" type="button">로그인</button>
<div class="Atag">
<a href="#">회원가입</a>
<span>|</span>
<a href="#">아이디/비밀번호 찾기</a>
</div>
</form>
<div class="or">
<hr class="rectangle rec-left"></hr>
<p class="or-text">또는</p>
<hr class="rectangle rec-right"></hr>
</div>
<form class="another-login">
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

전송할 양식이 없을때는 디자인을 위한 div 태그를 쓰는걸 어떨까요?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

알겠습니당!!

<button class="icon-google">구글 계정으로 로그인</button>
<button class="icon-facebook">페이스북 계정으로 로그인</button>
<button class="icon-naver">네이버 계정으로 로그인</button>
<button class="icon-kakao">카카오톡 계정으로 로그인</button>
</form>
</content>
</div>
</body>
</html>
Binary file added images/Google__G__Logo 1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/check-box-off.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/check-box-on.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/checkmark.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/close.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/css_sprites.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/facebook.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/message-circle.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/naver-logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/로그인 또는 회원가입.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
255 changes: 255 additions & 0 deletions style.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,255 @@
h1,
h2,
p,
strong {
margin: inherit;
font: inherit;
}
button,
hr {
background: none;
border: none;
font: inherit;
color: inherit;
}
a {
text-decoration: none;
color: inherit;
}
input {
border: none;
}
body {
display: flex;
height: 100vh;
font-family: "Spoqa Han Sans Neo", "sans-serif";
}
.wrapper {
width: 520px;
margin: auto auto;
border-radius: 10px;
border: 1px solid var(--c-4-c-4-c-4, #c4c4c4);
background: #fff;
/* display: flex; */
flex-direction: column;
align-items: center;
position: relative;
}
.header {
display: flex;
/* justify-content: space-between; */
margin: auto;
/* background-image: url(./images/close.png);
background-repeat: no-repeat;
background-position: 480px;
background-size: 16px; */
padding-top: 20px;
padding-bottom: 18px;
border-bottom: 1px solid #c4c4c4;
font-weight: 500;
}
.header img {
cursor: pointer;
width: 16px;
height: 16px;
position: absolute;
top: 22px;
right: 22px;
}
.welcome {
width: fit-content;
height: 24px;
font-size: 20px;
font-weight: 500;
line-height: 24px;
margin: 24px;
}

.content {
display: flex;
flex-direction: column;
}
.input-idpw {
display: flex;
flex-direction: column;
}
.input {
width: 472px;
height: 50px;
margin-left: 24px;
border-radius: 5px;
font-size: 16px;
}
.id {
padding-left: 16px;
box-sizing: border-box;
font-weight: 400;
border: 1px solid #c4c4c4;
}
.input:focus.id {
outline: 1px solid red;
}
.input:focus.pw {
outline: 1px solid red;
}
.pw {
padding-left: 16px;
border: 1px solid #c4c4c4;
box-sizing: border-box;
font-weight: 500;
}
.strong {
height: 10px;
/* color: #f4492e;
font-size: 14px;
font-weight: 400;
margin-left: 28px; */
opacity: 0;
}
.id:focus ~ .strong.one {
color: #f4492e;
font-size: 14px;
font-weight: 400;
margin-left: 28px;
padding: 6px 0 20px;
opacity: 1;
}
.pw:focus ~ .strong.two {
color: #f4492e;
font-size: 14px;
font-weight: 400;
margin-left: 28px;
padding: 10px 0 12px;
opacity: 1;
}
.txt-hide {
width: 1px;
height: 1px;
overflow: hidden;
clip-path: inset(50%);
}
.labl-hold {
display: inline block;
position: relative;
color: #767676;
/* cursor: pointer; */
}

.labl-hold::before {
display: inline-block;
content: "";
width: 22px;
height: 22px;
margin-right: 10px;
margin-left: 28px;
background: url(./images/check-box-off.png) 0 0/22px no-repeat;
cursor: pointer;
vertical-align: -5px;
}

.labl-hold::after {
position: absolute;
margin-left: 28px;
left: 20px;
content: "";
width: 22px;
height: 22px;
opacity: 0;
background: url(./images/check-box-on.png) 0 0/22px no-repeat;
cursor: pointer;
transition: all 0.1s ease;
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

transition사용 하셨네여👍

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

맞아요 알아봐주셨군요😊

}
.inp-Hold:checked + .labl-hold::after {
top: 0.3px;
left: 0.2px;
opacity: 1;
}
.inp-Hold:checked + .labl-hold::before {
opacity: 0;
}

.btn-login {
width: 472px;
background-color: #2f80ed;
color: #ffffff;
height: 50px;
font-size: 18px;
font-weight: 700;
margin-left: 24px;
margin-top: 21px;
border-radius: 5px;
cursor: pointer;
}
.Atag {
display: flex;
color: #767676;
justify-content: center;
font-size: 14px;
font-weight: 400;
margin: 20px;
gap: 10px;
}
.Atag a {
cursor: pointer;
}
.or {
display: flex;
text-align: center;
font-size: 14px;
font-weight: 400;
color: #767676;
}

.or .rectangle {
width: 210px;
height: 1px;
background-color: #c4c4c4;
}

/* footer */
.another-login {
display: flex;
flex-direction: column;
gap: 10px;
color: #767676;
width: 472px;
text-align: center;
margin: 20px 0 20px 25px;
font-weight: 500;
}
.icon-google {
cursor: pointer;
padding: 15px;
background-repeat: no-repeat;
border: 1px solid #767676;
border-radius: 5px;
background-image: url(./images/Google__G__Logo\ 1.png);
background-position: 12px;
}
.icon-facebook {
cursor: pointer;
padding: 15px;
background-repeat: no-repeat;
border: 1px solid #2d9cdb;
border-radius: 5px;
background-image: url(./images/facebook.png);
background-position: 12px;
}
.icon-naver {
cursor: pointer;
padding: 15px;
background-repeat: no-repeat;
border: 1px solid #00bf18;
border-radius: 5px;
background-position: 12px;
background-image: url(./images/naver-logo.png);
}
.icon-kakao {
cursor: pointer;
padding: 15px;
background-repeat: no-repeat;
background-position: 12px;
border: 1px solid #f2c94c;
border-radius: 5px;
background-image: url(./images/message-circle.png);
}
Comment on lines +220 to +255
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

공통되는 CSS를 하나로 묶는다면 코드량도 좋고 가독성도 좋을꺼같아요!
ex)
[class^="icon"] {
cursor: pointer;
padding: 15px;
background-repeat: no-repeat;
border-radius: 5px;
background-position: 12px;
}
.icon-google {
border: 1px solid #767676;
background-image: url(./images/Google__G__Logo\ 1.png);
}
.icon-facebook {
border: 1px solid #2d9cdb;
background-image: url(./images/facebook.png);
}
.icon-naver {
border: 1px solid #00bf18;
background-image: url(./images/naver-logo.png);
}
.icon-kakao {
border: 1px solid #f2c94c;
background-image: url(./images/message-circle.png);
}

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

맞아요 중복되는 코드가 좀 많았는데 얼레벌레 넘어가버렸어요..꼬집어주셔서 감사합니다!!