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

Kdto parkhyemin naverVIBE 홈페이지 클론코딩 (기존 PR closed 후) #76

Open
wants to merge 39 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
9857f16
Feat: "프로젝트 시작"
IAMISTP Jul 25, 2023
bdacb96
Feat: "header view 작업"
IAMISTP Jul 26, 2023
d52cb2e
Style: "header css작업"
IAMISTP Jul 26, 2023
8f5fabe
Style: "img 추가"
IAMISTP Jul 26, 2023
42de03b
Feat: "footer view 작업 , span 태그 -> a 태그로 변경"
IAMISTP Jul 26, 2023
ae870af
Style:"index.css 분리"
IAMISTP Jul 26, 2023
5b6c632
Style:"a 태그로 수정"
IAMISTP Jul 26, 2023
3ab097d
Style:"player css 작업"
IAMISTP Jul 26, 2023
617e08f
Style: "player 에 필요한 icon 추가"
IAMISTP Jul 26, 2023
ecb18a0
Feat: "banner 구현 "
IAMISTP Jul 27, 2023
5efd897
Style: "width 값 고정 제거"
IAMISTP Jul 27, 2023
15e6aed
Style: "main css 분리"
IAMISTP Jul 27, 2023
50d8f29
Style: "Banner css "
IAMISTP Jul 27, 2023
5010ced
Style: "main 에 필요한 이미지 추가"
IAMISTP Jul 27, 2023
68ef625
Feat: "매거진 view 작업 "
IAMISTP Jul 27, 2023
86954b2
Feat: "main view 구현"
IAMISTP Jul 27, 2023
0a013aa
Style: "main css 추가"
IAMISTP Jul 27, 2023
7c6b5ba
Style: "배경색상 지정"
IAMISTP Jul 27, 2023
19589cc
Style: "메인 view 구현에 필요한 이미지 추가 , 삭제"
IAMISTP Jul 27, 2023
06e4ab1
Feat: "footer view 작업"
IAMISTP Jul 27, 2023
3c42ea2
Style: "footer css 완료"
IAMISTP Jul 27, 2023
95f944c
Style: "footer icon 추가"
IAMISTP Jul 27, 2023
4e905ba
Feat: "메인 슬라이드 기능구현_view 작업"
IAMISTP Jul 28, 2023
0f6d227
Style: "main 슬라이드 기능구현_css"
IAMISTP Jul 28, 2023
662ba1d
Feat: "main 슬라이드 기능구현_javascript"
IAMISTP Jul 28, 2023
e350f9f
Style: "슬라이드 요소 이미지 추가 , icon 추가"
IAMISTP Jul 28, 2023
6896fbe
Fix: "요소 class명 변경 , 컨텐츠 내용 변경"
IAMISTP Jul 28, 2023
0101229
Style: "메인 요소 hover 시 underline 추가"
IAMISTP Jul 28, 2023
cfa15d4
Fix: "오디오 바 view 수정"
IAMISTP Jul 28, 2023
7196516
Style: "오디오 바 스타일 설정"
IAMISTP Jul 28, 2023
0ba56a2
Feat: "오디오바 기능구현"
IAMISTP Jul 28, 2023
4becc4d
Fix: "title 명 변경"
IAMISTP Jul 28, 2023
3ba67c8
다시 제출
IAMISTP Jul 31, 2023
cb8bda3
fix: "이미지 사이즈 압축"
IAMISTP Aug 7, 2023
aaa8ca0
fix: "player css 반응형 수정"
IAMISTP Aug 7, 2023
a5033d1
fix: "main css 반응형 수정"
IAMISTP Aug 7, 2023
ec516d8
fix: "header css 반응형 수정"
IAMISTP Aug 7, 2023
07c41ad
fix:"meta 태그 추가 , img 에 alt 추가 , 반응형main 헤더추가"
IAMISTP Aug 7, 2023
12eb39b
Update README.md
IAMISTP Aug 8, 2023
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
Binary file added .DS_Store
Binary file not shown.
85 changes: 52 additions & 33 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,45 +1,64 @@
[참고 내용]

👀 자신이 원하는 사이트 레이아웃 클론
원하는 사이트(페이지)를 자유롭게 선택하고 레이아웃을 클론 코딩하세요.
평소에 도전해 보고 싶었거나 혹은 자신의 수준에 맞는 사이트(페이지)를 선택하세요.
과제 수행 및 리뷰 기간은 별도 공지를 참고하세요!
## 💖 naverVIBE 홈페이지 클론 코딩 💗

과제 수행 및 제출 방법
### 🔗 프로젝트 URL

1. 현재 저장소를 로컬에 클론(Clone)합니다.
2. 자신의 본명으로 브랜치를 생성합니다.(구분 가능하도록 본명을 꼭 파스칼케이스로 표시하세요, git branch KDT0_이름)
3. 자신의 본명 브랜치에서 과제를 수행합니다.
4. 과제 수행이 완료되면, 자신의 본명 브랜치를 원격 저장소에 푸시(Push)합니다.(main 브랜치에 푸시하지 않도록 꼭 주의하세요, git push origin KDT0_이름)
5. 저장소에서 main 브랜치를 대상으로 Pull Request 생성하면, 과제 제출이 완료됩니다!(E.g, main <== KDT0_이름)
- **naverVIBE 홈페이지 URL** : https://vibe.naver.com/today

- **과제 URL** : https://wonderful-tapioca-7c4f75.netlify.app/

- main 혹은 다른 사람의 브랜치로 절대 병합하지 않도록 주의하세요!
- Pull Request에서 보이는 설명을 다른 사람들이 이해하기 쉽도록 꼼꼼하게 작성하세요!
- Pull Request에서 과제 제출 후 절대 병합(Merge)하지 않도록 주의하세요!
- 과제 수행 및 제출 과정에서 문제가 발생한 경우, 바로 담당 멘토나 강사에서 얘기하세요!
<hr>

필수 요구사항
### 🗓️ 개발 기간

- 과제에 대한 설명을 포함한 README.md 파일을 제공하세요!
- 과제 결과와 비교할 수 있는 실제 사이트(페이지)의 주소를 명시하세요!
- 과정에서 사용한 프로젝트 폴더/파일이 모두 포함돼야 합니다, 일부 파일만 제출하지 마세요!
- 실제 서비스로 배포하고 접근 가능한 링크를 추가해야 합니다.
**2023.07.24 ~ 2023.07.28**

선택 요구사항
***

- < header >, < section > 등 시멘틱 태그를 최대한 활용해보세요.
- 실제 사이트의 레거시 코드 활용보단 최신의 CSS Flex 혹은 Grid 등을 활용해보세요.
- 부분적으로 BEM 방법론을 도입해보세요.
- JS가 필요한 부분은 되도록 생략하되 이유를 명시해보세요.(CSS로 대체 가능한지 피드백이 있을 수 있겠죠?!)
- JS가 필요한 부분 중 구현할 부분이 있다면 자유롭게 구현해보세요.(JS 과제가 아니니까 가볍게 구현하시길 추천해요)
### 🔨 사용 기술 스택
<div style="display:flex; gap:1rem;">
<img src="https://img.shields.io/badge/html5-E34F26?style=for-the-badge&logo=html5&logoColor=white">
<img src="https://img.shields.io/badge/css-1572B6?style=for-the-badge&logo=css3&logoColor=white">
<img src="https://img.shields.io/badge/javascript-F7DF1E?style=for-the-badge&logo=javascript&logoColor=black">
<img src="https://img.shields.io/badge/github-181717?style=for-the-badge&logo=github&logoColor=white">
<img src="https://img.shields.io/badge/git-F05032?style=for-the-badge&logo=git&logoColor=white">
</div>

손쉬운 이미지 추출 방법
***

사이트 클론에 필요한 이미지를 좀 더 쉽게 추출하기 위해서 Chrome 확장 프로그램인 Image Downloader를 사용하세요.
### 🧑🏻‍💻 주요 구현 사항

#### HTML
> * <`header`> , <`main`>, <`footer`> 등 시맨틱 태그 활용
>
> * 실제 사이트와 비슷하게 레이아웃 구현


#### CSS
> - flex 와 grid 를 활용하여 컨텐츠 요소들 배치 및 디자인 구현


#### JavaScript
> - 자바스크립트 내장함수를 이용하여 클릭, hover, 전환 등 기능 구현
>
> - 슬라이드 구현


***

### 📝 아쉬운점 & 느낀점

> - 시간 부족 및 css 경험 부족으로 인해 반응형으로 구현하지 못했습니다.
> - 시맨틱 태그의 정확한 사용 용도 파악, css 기능 파악(flex, grid), 자바스크립트 코드를 작성하였을때에도 비슷하게 작성된 코드들이 많아 코드를 간결하게 수정할수 있도록 더 꾸준히 공부를 해야겠다는 생각을 했습니다.
> - 성능 검사 했을 시 접근성이 떨어진다고 평가되어 너무 아쉬웠습니다.

<image style="width:700px" src="https://velog.velcdn.com/images/hyeminpak/post/6db4da41-8572-45f7-8588-48619df6f1f0/image.png" />


### ⌨️ 추후 구현사항

> - 반응형구현
>
> - 성능 최적화
>

1. 원하는 사이트 접속
2. Image Downloader 확장 프로그램 실행
3. 다운로드 원하는 이미지 선택
4. 서브 폴더 이름(Save to subfolder) 명시
5. 다운로드!
Binary file added assets/.DS_Store
Binary file not shown.
Binary file added assets/add-to-playlist.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 assets/cover.jpeg
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 assets/event/.DS_Store
Binary file not shown.
Binary file added assets/event/Download_on_the_App_Store-400px.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 assets/event/Get-it-on-Google-Play-400px.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 assets/event/video-tape.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 assets/heart.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 assets/icon/.DS_Store
Binary file not shown.
Binary file added assets/icon/left.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 assets/icon/more.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 assets/icon/right.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 assets/icon/search_white.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 assets/loupe.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 assets/love.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 assets/magazine.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 assets/magazine/magazine1.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 assets/magazine/magazine2.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 assets/magazine/magazine3.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 assets/magazine/magazine4.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 assets/magazine/magazine5.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 assets/magazine/magazine6.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 assets/magazine/magazine7.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 assets/magazine/new.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 assets/magazine/new2.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 assets/magazine/omygirl.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 assets/magazine/zerobase.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 assets/mic.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 assets/money.png
Binary file added assets/music-player-back.png
Binary file added assets/music-player-next.png
Binary file added assets/music.png
Binary file added assets/news/123.png
Binary file added assets/news/127.png
Binary file added assets/news/tmxmfpdlzlwm.png
Binary file added assets/news/늉.png
Binary file added assets/news/박효신.png
Binary file added assets/news/샤이니.png
Binary file added assets/news/세븐틴.png
Binary file added assets/news/정국.png
Binary file added assets/pick/pick0.png
Binary file added assets/pick/pick1.png
Binary file added assets/pick/pick2.png
Binary file added assets/pick/pick3.png
Binary file added assets/pick/pick4.png
Binary file added assets/pick/pick5.png
Binary file added assets/pick/pick6.png
Binary file added assets/pick/pick7.png
Binary file added assets/play-button.png
Binary file added assets/play_music.png
Binary file added assets/playlist.png
Binary file added assets/promotion/today_thumbs.1d76741b.png
Binary file added assets/random.png
Binary file added assets/refresh.png
Binary file added assets/search.png
Binary file added assets/social/facebook.png
Binary file added assets/social/instagram.png
Binary file added assets/social/letter-n.png
1 change: 1 addition & 0 deletions assets/sp_topbar.f4891747.svg

Large diffs are not rendered by default.

Binary file added assets/sparkles.png
Binary file added assets/speaker-filled-audio-tool.png
Binary file added assets/stage.png
Binary file added assets/trophy.png
Binary file added assets/user.png
Binary file added assets/vibe/vibe0.png
Binary file added assets/vibe/vibe1.png
Binary file added assets/vibe/vibe2.jpg
Binary file added assets/vibe/vibe3.png
Binary file added assets/vibe/vibe4.png
Binary file added assets/vibe/vibe5.png
Binary file added assets/vibe/vibe6.png
Binary file added assets/vibe/vibe7.png
Binary file added assets/vinyl.png
83 changes: 83 additions & 0 deletions dasktop.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<link rel="stylesheet" href="./styles/index.css" />
<link rel="stylesheet" href="./styles/header.css" />
<link rel="stylesheet" href="./styles/player.css" />
</head>
<body class="body">
<header class="header">
<a href="/index.html" class="header_logo">
<span class="logo_naver">naver</span>
<span class="logo_vibe">vibe</span>
</a>
</div>
<div class="header_submenu">
<hr />
<a href="#" class="header_signin_area">
<img class="user_icon" src="./assets/user.png" />
<span class="login_txt">로그인</span>
</a>
<hr />
<div class="header_member">
<p class="member_p">로그인하고 할인 멤버십 확인하기</p>
<a href="#" class="member_button_area">
<img class="member_icon" src="./assets/love.png" />
<span class="member_text">멤버십 구독</span>
</a>
</div>
<div class="header_search">
<input class="search_input" placeholder="VIBE 검색"/>
</div>
<div class="header_menu">
<ul>
<li><a href="#"><img src="./assets/music.png" alt="" /><span>투데이</span></a></li>
<li><a href="#"><img src="./assets/trophy.png" alt="" /><span>차트</span></a></li>
<li><a href="#"><img src="./assets/sparkles.png" alt="" /><span>최신앨범</span></a></li>
<li><a href="#"><img src="./assets/vinyl.png" alt="" /><span>dj스테이션</span></a></li>
<li><a href="#"><img src="./assets/magazine.png" alt="" /><span>vibe mag</span></a></li>
<li><a href="#"><img src="./assets/add-to-playlist.png" alt="" /><span>이달의 노래</span></a></li>
<hr/>
<li><a href="#"><img src="./assets/heart.png" alt="" /><span>서비스 소개</span></a></li>
<li><a href="#"><img src="./assets/money.png" alt="" /><span>내돈내듣</span></a></li>
<li><a href="#"><img src="./assets/stage.png" alt="" /><span>onstage</span></a></li>
<li><a href="#"><img src="./assets/mic.png" alt="" /><span>vibe 오디오</span></a></li>
</ul>
</div>
</div>
<a href="/dasktop.html" class="header_install">데스크톱앱 설치</a>
</header>
<main class="main">
<section class="section"></section>
<footer class="footer"></footer>
</main>
<div class="player">
<div class="player_musicInfo_area">
<div class="musicInfo_icon_box">
<img src="./assets/play_music.png" />
</div>
<div class="player_musicInfo_text">
<div class="musicInfo_text_first">오늘 뭐 듣지?</div>
<div class="musicInfo_text_last">재생 버튼을 클릭해보세요.</div>
</div>
</div>
<div class="player_btn_area">
<button><img src="./assets/random.png" /></button>
<button><img class="back" src="./assets/music-player-back.png" /></button>
<button class="play_btn"><img class="play_icon" src="./assets/play-button.png" /></button>
<button><img src="./assets/music-player-next.png" /></button>
<button><img src="./assets/refresh.png" /></button>
</div>
<div class="player_sound_area">
<img src="./assets/speaker-filled-audio-tool.png" /></label>
<div>
<input type="range" />
</div>
<img src="./assets/playlist.png" />
</div>
</div>
</body>
</html>
Loading