화면설계 : 기관에서 요청한 내용을 바탕으로 대략적인 화면구성(메뉴구성, 메뉴의 뎁스, 플로우) 회의
audio.html
<div class="audio-main-right">
<div id="audio-intro" class="audio-section">
<div class="audio-header">
<h2>인기 채널을 소개합니다.</h2>
</div>
<div class="audio-body">
<ul class="audio-flex-between">
<li>
<a href="#">
<img src="https://via.placeholder.com/152">
<h3>공유의 베드타임 스토리</h3>
<span class="source">네이버</span>
</a>
</li>
<li>
<a href="#">
<img src="https://via.placeholder.com/152">
<h3>밀레니얼의 시사친구 듣똑라</h3>
<span class="source">중앙그룹</span>
</a>
</li>
</ul>
</div>
</div>
<div id="audio-discovery" class="audio-section">
<div class="audio-header">
<h2>
오늘의 발견.<br>
요즘 많이 듣는 채널👍
</h2>
<p>7월 6일 0시부터 24시까지 많이 들은 채널입니다.</p>
<a href="#" class="link-setting">관심 설정</a>
</div>
<div class="audio-body">
<ul class="audio-flex-between">
<li>
<a href="#">
<img src="https://via.placeholder.com/152">
<h3>클래식 매니저</h3>
</a>
</li>
<li>
<a href="#">
<img src="https://via.placeholder.com/152">
<h3>클래식 매니저</h3>
</a>
</li>
<li>
<a href="#">
<img src="https://via.placeholder.com/152">
<h3>클래식 매니저</h3>
</a>
</li>
<li>
<a href="#">
<img src="https://via.placeholder.com/152">
<h3>클래식 매니저</h3>
</a>
</li>
</ul>
<button class="btn-more">
<span class="color-blue">더많이</span> 발견하기 1 / <span class="pages">5</span>
</button>
</div>
</div>
<div id="audio-create" class="audio-section">
<div class="audio-body">
<ul>
<li>
<a href="#" class="audio-flex-between">
<div class="txt-wrap">
<h2>오디오클립 채널을 만들어보세요.</h2>
<p class="color-blue">콘텐츠 제안하기</p>
</div>
<div class="list-bg list-bg-1"></div>
</a>
</li>
<li>
<a href="#" class="audio-flex-between">
<div class="txt-wrap">
<h2>오디오클립 채널을 만들어보세요.</h2>
<p class="color-purple">콘텐츠 제안하기</p>
</div>
<div class="list-bg list-bg-2"></div>
</a>
</li>
</ul>
</div>
</div>
</div>
style.css
#audio-intro { } #audio-intro .audio-body ul { } #audio-intro .audio-body ul li { } #audio-intro .audio-body ul li a { } #audio-intro .audio-body ul li img { width: 152px; height: 152px; border-radius: 4px; } #audio-intro .audio-body ul li h3 { margin-top: 12px; font-size: 13px; } #audio-intro .audio-body ul li .source { margin-top: 4px; color: #959595; } #audio-discovery { } #audio-discovery .audio-header { position: relative; } #audio-discovery .audio-header h2 { font-size: 17px; line-height: 24px; } #audio-discovery .audio-header p { margin-top: 7px; font-size: 13px; color: #888; } #audio-discovery .audio-header .link-setting { position: absolute; display: block; padding: 10px 18px 8px; background-color: #ffffff; font-size: 13px; border: solid 1px rgba(0, 0, 0, 0.1); border-radius: 20px; box-shadow: 0 2px 10px 0 rgb(80 85 91 / 7%); color: #157efb; right: 0; top: 6px; } #audio-discovery .audio-body ul { } #audio-discovery .audio-body ul li { margin-bottom: 40px; } #audio-discovery .audio-body ul li a { } #audio-discovery .audio-body ul li img { width: 152px; height: 152px; border-radius: 4px; } #audio-discovery .audio-body ul li h3 { margin-top: 12px; font-size: 13px; } #audio-discovery .audio-body .btn-more { font-size: 14px; color: #222; padding: 12px 21px 12px; border: solid 1px rgba(0, 0, 0, 0.1); background-color: #ffffff; border-radius: 24px; box-shadow: 0 2px 10px 0 rgb(80 85 91 / 7%); font-weight: 500; display: block; margin: 0 auto; } #audio-discovery .audio-body .btn-more .color-blue { color: #157efb; } #audio-discovery .audio-body .btn-more .pages { color: #959595; } #audio-create { } #audio-create .audio-body { } #audio-create .audio-body li { padding: 22px 4px; border-top: solid 1px #efefef; } #audio-create .audio-body li:last-child { border-bottom: solid 1px #efefef; } #audio-create .audio-body li a { } #audio-create .audio-body li .txt-wrap { width: 240px; } #audio-create .audio-body li .txt-wrap h2 { font-size: 15px; font-weight: 700; } #audio-create .audio-body li .txt-wrap p { font-size: 14px; margin-top: 6px; letter-spacing: -.8px; } #audio-create .audio-body li .txt-wrap p.color-blue { color: #2db8e8; } #audio-create .audio-body li .txt-wrap p.color-purple { color: #8560f7; } #audio-create .audio-body li .list-bg { width: 80px; height: 64px; } #audio-create .audio-body li .list-bg.list-bg-1 { background-color: yellow; } #audio-create .audio-body li .list-bg.list-bg-2 { background-color: purple; }결과
audio.html
<footer id="audio-footer">
<div class="audio-container">
<h1>
<a href="#">audio clip</a>
</h1>
<div class="copyright-wrap">
<p>
동해물과 백두산이 마르고 닳도록 하느님이 보우하사 우리나라만세<br>
동해물과 백두산이 마르고 닳도록 하느님이 보우하사 우리나라만세<br>
동해물과 백두산이 마르고 닳도록 하느님이 보우하사 우리나라만세
</p>
</div>
<nav class="footer-nav">
<ul>
<li><a href="#">로그인</a></li>
<li><a href="#">오디오클립</a></li>
<li><a href="#">오디오클립</a></li>
<li><a href="#">오디오클립</a></li>
<li><a href="#">오디오클립</a></li>
<li><a href="#">오디오클립</a></li>
<li><a href="#">오디오클립</a></li>
</ul>
</nav>
<a href="#" class="footer-copyright-link">
<span class="symbol">©</span>
네이버
</a>
</div>
</footer>
style.css
#audio-footer { background-color: #eaecef; padding: 48px 0 164px; } #audio-footer h1 { font-size: 25px; } #audio-footer h1 a { color: #959595; } #audio-footer .copyright-wrap { margin-top: 37px; } #audio-footer .copyright-wrap p { letter-spacing: -.5px; font-size: 13px; line-height: 19px; color: #959595; } #audio-footer .footer-nav { margin-top: 47px; } #audio-footer .footer-nav ul { overflow: hidden; } #audio-footer .footer-nav li { float: left; } #audio-footer .footer-nav li a { font-size: 13px; color: #959595; } #audio-footer .footer-nav li a:after { display: inline-block; content: ''; width: 2px; height: 2px; border-radius: 50%; background-color: #959595; /*margin: 4px 7px;*/ vertical-align: top; margin: 10px 7px 0; } #audio-footer .footer-nav li:last-child a:after { content: none; } #audio-footer .footer-copyright-link { display: block; margin-top: 8px; font-size: 12px; color: #959595; } #audio-footer .footer-copyright-link .symbol { }결과
audio-category.html
<main id="audio-main" class="audio-sub-main" role="main">
<div class="audio-container">
<div id="audio-category-channel" class="audio-category">
<div class="title-wrap">
<h2>채널</h2>
<p>4,572개의 채널</p>
</div>
<ul class="audio-category-lists">
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
</ul>
</div>
<div id="audio-category-book" class="audio-category">
<div class="title-wrap">
<h2>오디오북</h2>
<p>4,572개의 오디오북</p>
</div>
<ul class="audio-category-lists">
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
<li class="category-list">
<a href="#">
<h3>예능</h3>
<p>유머, 코미디, 고민상담</p>
<img class="thumbnail" src="https://via.placeholder.com/103">
</a>
</li>
</ul>
</div>
</div>
</main>
style.css
/* 오디오 카테고리 */ #audio-main.audio-sub-main { background-color: #ffffff; } .audio-category { padding-top: 71px; } .audio-category .title-wrap { padding-bottom: 20px; border-bottom: solid 1px #ececec; } .audio-category .title-wrap h2 { font-size: 27px; font-weight: 600; letter-spacing: -1px; } .audio-category .title-wrap p { font-size: 14px; color: #959595; margin-top: 20px; } .audio-category .audio-category-lists { display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: flex-start; align-content: stretch; margin-top: 22px; } .audio-category .audio-category-lists .category-list { width: 162px; height: 164px; margin-right: 20px; margin-bottom: 20px; } /* odd : 홀수, even: 짝수 */ .audio-category .audio-category-lists .category-list:nth-child(6n) { margin-right: 0; } .audio-category .audio-category-lists .category-list:nth-child(odd) a { /*background-color: yellow;*/ } .audio-category .audio-category-lists .category-list:nth-child(even) a { /*background-color: pink;*/ } .audio-category .audio-category-lists a { overflow: hidden; position: relative; display: block; width: 100%; height: 100%; background-color: rgb(230, 125, 127); border-radius: 6px; padding: 14px; } .audio-category .audio-category-lists a h3 { font-size: 19px; line-height: 1.3; color: #ffffff; } .audio-category .audio-category-lists a p { position: absolute; width: 80px; font-size: 13px; color: #fefefe; bottom: 14px; } .audio-category .audio-category-lists a .thumbnail { position: absolute; width: 78px; height: 78px; right: -13px; bottom: 0; transform: rotate(25deg); } #audio-category-book { padding-bottom: 120px; }결과
width값에 맞춰 안에 요소를 넣는 과정이 어려웠다. 요소의 margin, padding값까지 생각하여 맞춰줘야했다.