Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[최예원] Sprint1 #22

Merged
Merged
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
3 changes: 3 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"liveServer.settings.port": 5501
}
Comment on lines +1 to +3
Copy link
Collaborator

Choose a reason for hiding this comment

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

혹시 해당 setting은 의도된 것일까요? 👀

Binary file added images/.DS_Store
Copy link
Collaborator

Choose a reason for hiding this comment

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

.gitignore를 작성해보시는게 어떨까요?

macos의 압축 과정에서 흔히 .DS_Store 파일이 들어가는 경우가 있습니다.
해당 파일은 프로젝트와 무관하므로 .gitignore에 다음과 같이 작성하시면 git의 추적을 무시할 수 있습니다.

.DS_Store

Binary file not shown.
Binary file added images/Img_home_01.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/Img_home_02.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/Img_home_03.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/Img_home_bottom.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/Img_home_top.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/Img_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/ic_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/ic_instagram.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/ic_twitter.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/ic_youtube.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
96 changes: 96 additions & 0 deletions index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
<!DOCTYPE html>
<html>
Copy link
Collaborator

Choose a reason for hiding this comment

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

lang="ko" 속성을 사용해보는건 어떨까요?

Suggested change
<html>
<html lang="ko">

lang 속성은 Search bot이 탐색할 때 해당 문서가 어떠한 언어로 작성되어있는지 파악할 때 사용될 수 있습니다.
따라서 적절한 lang을 설정하시는걸 권장드립니다. 😊

lang의 기본 값은 '알 수 없음'입니다. 따라서 적절한 값의 lang 속성을 꼭 꼭 ! 설정해주시는걸 권장합니다 !
lang에 대해서 자세히 보기

SEO 마케팅 관련 기사

tl;dr

lang 속성은 다음을 포함하여 다양한 목적으로 사용됩니다.

  • 검색 엔진은 lang 속성을 사용하여 올바른 언어로 웹 페이지를 색인화합니다. 이를 통해 특정 언어로 검색하는 사용자에게 더 관련성이 높은 결과를 반환할 수 있습니다.
  • 화면 판독기는 lang 속성을 사용하여 언어 프로필을 전환하여 올바른 악센트와 발음을 제공합니다. 이는 시각 장애가 있는 사용자가 선호하는 언어로 웹 콘텐츠에 액세스하는 데 도움이 됩니다.
  • lang 속성을 사용하여 번역해야 하는 텍스트를 식별할 수 있습니다. 이는 다국어 웹사이트를 만들거나 사용자 생성 콘텐츠를 번역하는 데 유용할 수 있습니다.

<html> 요소 자체를 포함하여 텍스트 콘텐츠를 포함하는 모든 HTML 요소에 lang 속성을 지정해야 한다는 점에 유의하는 것이 중요합니다. 이렇게 하면 전체 웹페이지의 언어가 올바르게 식별됩니다.
원문 보기

<head>
<meta charset="UTF-8">
<title>판다마켓</title>
<link rel="stylesheet" href="style.css">
<script src="https://kit.fontawesome.com/2ea727bd4f.js" crossorigin="2ea727bd4f"></script>
Comment on lines +2 to +7
Copy link
Collaborator

Choose a reason for hiding this comment

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

프리티어를 사용해보시는거 어떨까요 ?

Suggested change
<html>
<head>
<meta charset="UTF-8">
<title>판다마켓</title>
<link rel="stylesheet" href="style.css">
<script src="https://kit.fontawesome.com/2ea727bd4f.js" crossorigin="2ea727bd4f"></script>
<html>
<head>
<meta charset="UTF-8">
<title>판다마켓</title>
<link rel="stylesheet" href="style.css">
<script src="https://kit.fontawesome.com/2ea727bd4f.js" crossorigin="2ea727bd4f"></script>

사소한 줄바꿈, 띄어쓰기 등 코드를 작성하시다보면 자연스럽게 불규칙해지는 경우가 많아요.
이를 돕기 위해서 개발 커뮤니티에서는 개발 경험 향상을 위한 여러가지 도구들이 있는데요.

보편적으로 많이 사용되는 툴은 prettier입니다 !

Prettier: https://prettier.io/

prettier는 vscode plugin에서 install하고 실행할 수 있습니다 ! 🤗

macos 경우 option + shift + f
windows의 경우 alt + shift + f

</head>
<body>
<header>
<a href="/">
<img class="logo" src="images/Img_logo.png" alt="판다마켓 로고">
</a>
<a href="/login" class="btn">로그인</a>
</header>

<main>
<section id="top" class="banner">
<div class="banner-box">
<h1>
일상의 모든 물건을<br/>
거래해 보세요
</h1>
<a href="/items" class="btn">구경하러 가기</a>
</div>
</section>

<section class="container">
<div class="content">
<img src="images/Img_home_01.png" alt="판다마켓 메인1">
<div class="content-box">
<h2 class="content-name">Hot item</h2>
<h1>인기 상품을<br/>확인해 보세요</h1>
Copy link
Collaborator

Choose a reason for hiding this comment

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

<h1> 태그는 문서에 하나만 넣는게 어떨까요?

페이지 당 하나의 <h1>만 사용하세요. 여러 개를 써도 오류는 나지 않겠지만, 단일 <h1>이 모범 사례로 꼽힙니다. 논리적으로 생각했을 때도, <h1>은 가장 중요한 제목이므로 전체 페이지의 목적을 설명해야 할 것입니다. 두 개의 제목을 가진 책이나, 여러 개의 이름을 가진 영화는 볼 수 없죠! 또한 스크린 리더 사용자와 SEO에도 더 적합합니다.

h1에 대해서: MDN

<p class="content-description">
가장 HOT한 중고거래 물품을<br/>판다마켓에서 확인해 보세요
</p>
</div>
</div>

<div id="right" class="content">
<div class="content-box">
<h2 class="content-name">Search</h2>
<h1>구매를 원하는<br/>상품을 검색하세요</h1>
<p class="content-description">
구매하고 싶은 물품은 검색해서<br/>쉽게 찾아보세요
</p>
</div>
<img src="images/Img_home_02.png" alt="판다마켓 메인2">
</div>

<div class="content">
<img src="images/Img_home_03.png" alt="판다마켓 메인3">
<div class="content-box">
<h2 class="content-name">Register</h2>
<h1>판매를 원하는<br/>상품을 등록하세요</h1>
<p class="content-description">
어떤 물건이든 판매하고 싶은 상품을<br/>쉽게 등록하세요
</p>
</div>
</div>
Comment on lines +40 to +60
Copy link
Collaborator

Choose a reason for hiding this comment

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

section을 사용해보는게 어떨까요?

Suggested change
<div id="right" class="content">
<div class="content-box">
<h2 class="content-name">Search</h2>
<h1>구매를 원하는<br/>상품을 검색하세요</h1>
<p class="content-description">
구매하고 싶은 물품은 검색해서<br/>쉽게 찾아보세요
</p>
</div>
<img src="images/Img_home_02.png" alt="판다마켓 메인2">
</div>
<div class="content">
<img src="images/Img_home_03.png" alt="판다마켓 메인3">
<div class="content-box">
<h2 class="content-name">Register</h2>
<h1>판매를 원하는<br/>상품을 등록하세요</h1>
<p class="content-description">
어떤 물건이든 판매하고 싶은 상품을<br/>쉽게 등록하세요
</p>
</div>
</div>
<section id="right" class="content">
<div class="content-box">
<h2 class="content-name">Search</h2>
<h1>구매를 원하는<br/>상품을 검색하세요</h1>
<p class="content-description">
구매하고 싶은 물품은 검색해서<br/>쉽게 찾아보세요
</p>
</div>
<img src="images/Img_home_02.png" alt="판다마켓 메인2">
</section>
<section class="content">
<img src="images/Img_home_03.png" alt="판다마켓 메인3">
<div class="content-box">
<h2 class="content-name">Register</h2>
<h1>판매를 원하는<br/>상품을 등록하세요</h1>
<p class="content-description">
어떤 물건이든 판매하고 싶은 상품을<br/>쉽게 등록하세요
</p>
</div>
</section>

다음은 MDN<section>에 대한 설명 중 첫 문장입니다.

The <section> HTML element represents a generic standalone section of a document, which doesn't have a more specific semantic element to represent it. Sections should always have a heading, with very few exceptions.

<section> HTML 요소는 문서의 일반적인 독립형 섹션을 나타내며 이를 나타내는 더 구체적인 의미 요소가 없습니다. 섹션에는 거의 예외를 제외하고 항상 제목이 있어야 합니다.

<section /> 태그 내에 제목에 해당하는 부분이 있다면 <h> 시리즈로 작성해보세요 😊


</section>

<section id="bottom" class="banner">
<div class="banner-box">
<h1>
믿을 수 있는<br/>판다마켓 중고거래
</h1>
</div>
</section>
</main>

<footer>
<p class="copyright">@codeit - 2024</p>
<div class="footer-menu">
<a href="/privacy">Privacy Policy</a>
<a href="/faq">FAQ</a>
</div>
<div class="sns">
<a href="https://www.facebook.com" target="_blank">
<img src="images/ic_facebook.png" alt="페이스북">
</a>
<a href="https://www.twitter.com" target="_blank">
<img src="images/ic_twitter.png" alt="트위터">
</a>
<a href="https://www.youtube.com" target="_blank">
<img src="images/ic_youtube.png" alt="유튜브">
</a>
<a href="https://www.instagram.com" target="_blank">
<img src="images/ic_instagram.png" alt="인스타그램">
</a>
</div>
</footer>

</body>
</html>
164 changes: 164 additions & 0 deletions style.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,164 @@
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

body {
font-family: "pretendard", sans-serif;
}
Comment on lines +1 to +9
Copy link
Collaborator

Choose a reason for hiding this comment

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

해당 코드들은 global.css를 만드신 후 옮기셔도 될 것 같습니다 😊


header {
height: 70px;
display: flex;
justify-content: space-between;
align-items: center;
padding: 0 200px;
background-color: #ffffff;
}

header .logo {
width: 153px;
}

a {
text-decoration: none;
}
Comment on lines +24 to +26
Copy link
Collaborator

Choose a reason for hiding this comment

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

해당 코드는 reset.css로 옮기셔도 될 듯 하네요 !:

그대로 사용하셔도 좋고, 참고해도 좋은 Eric meyer의 reset.css는 다음과 같습니다:

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

원문 보기


.btn {
background-color: #3692ff;
Copy link
Collaborator

Choose a reason for hiding this comment

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

컬러 팔레트를 사용해보시는건 어떨까요?

컬러는 따로 선언해두시고 재사용 해보시는건 어떨까요?
컬러 팔레트는 color.css 혹은 global.css에서 정의하는게 일반적입니다 !
컬러 팔레트는 다음과 같이 정의할 수 있습니다:

* {
  --primary: #6D6AFE;
  --red: #FF5B56;
  --black: #111322;
  --white: #FFFFFF;
  --gray-100: #3E3E43;
  --gray-200: #9FA6B2;
  --gray-300: #CCD5E3;
  --gray-400: #E7EFFB;
  --gray-500: #F0F6FF;
}

color: #ffffff;
display: inline-flex;
align-items: center;
justify-content: center;
font-size: 16px;
font-weight: 600;
border-radius: 8px;
padding: 12px 20px;
cursor: pointer;
}

.banner {
background-color: #cfe5ff;
display: flex;
align-items: center;
height: 540px;
}

#top {
background-image: url(images/Img_home_top.png);
background-size: cover;
background-position: center;
display: flex;
align-items: center;
background-repeat: no-repeat;
background-position: 80% bottom;
background-size: 55%;
}

.banner-box {
width: 1200px;
margin: 0 auto;
}

h1 {
font-size: 40px;
font-weight: 700;
line-height: 56px;
color: #374151;
}

.banner-box .btn {
background-color: #3692ff;
color: #ffffff;
display: inline-flex;
align-items: center;
justify-content: center;
font-size: 20px;
font-weight: 700;
border-radius: 999px;
padding: 16px 124px;
margin-top: 34px;
}

.container {
width: 1200px;
margin: 0 auto;
}

.content {
padding: 138px 0;
display: flex;
align-items: center;
}

.content img {
width: 588px;
margin-right: 64px;
}

.content h2 {
color: #3692ff;
font-size: 18px;
line-height: 25.2px;
font-weight: 700;
margin-bottom: 12px;
}

.content-description {
font-size: 24px;
font-weight: 500;
margin-top: 24px;
color: #374151;
}

#right {
text-align: right;
}

#right img {
margin-left: 64px;
}

#right .content-box {
margin-left: auto;
}

#bottom {
background-image: url(images/Img_home_bottom.png);
background-size: cover;
background-position: center;
display: flex;
align-items: center;
background-repeat: no-repeat;
background-position: 80% bottom;
background-size: 55%;
}

footer {
background-color: #111827;
color: #9ca3af;
display: flex;
justify-content: space-between;
align-items: center;
padding: 32px 200px 108px 200px;
font-size: 16px;
}

.footer-menu {
display: flex;
gap: 30px;
}

.footer-menu a {
color: #E5E7EB;
}

.sns {
display: flex;
gap: 12px;
}

.sns img {
width: 20px;
}
Loading