개발일지 27일차

이재경·2021년 7월 1일

학습 내용

  • 네이버이스포츠 왼쪽 영역

    e-sport.html

<div class="esport-container">
			<div class="content-wrap">
				<div class="left">
					
					<div id="esport-main-article">
						
						<div class="article full">
							<img src="https://via.placeholder.com/150">
							<div class="txt-wrap">
								<h3>title</h3>
								<p>동해물과 백두산이 마르고 닳도록동해물과 백두산이 마르고 닳도록동해물과 백두산이 마르고 닳도록동해물과 백두산이 마르고 닳도록</p>
								<span class="source">포모스</span>
							</div>
						</div>
						<div class="article">
							<img src="https://via.placeholder.com/150">
							<div class="txt-wrap">
								<h3>title</h3>
								<span class="source">포모스</span>
							</div>
						</div>
						<div class="article">
							<img src="https://via.placeholder.com/150">
							<div class="txt-wrap">
								<h3>title</h3>
								<span class="source">포모스</span>
							</div>
						</div>

					</div>


					<div id="esport-replay" class="esport-section">
						
						<div class="title-wrap">
							<h2>경기 다시보기</h2>
						</div>

						<nav class="game-menu">
							<ul class="esport-flex-start">
								<li>
									<a href="#" class="active">
										<i></i>
										<span>MSI</span>
									</a>
								</li>
								<li>
									<a href="#">
										<i></i>
										<span>MSI</span>
									</a>
								</li>
								<li>
									<a href="#">
										<i></i>
										<span>MSI</span>
									</a>
								</li>
							</ul>
						</nav>

						<ul class="play-lists esport-flex-between">
							<li>
								<a href="#">
									<div class="image-wrap">
										<img src="https://via.placeholder.com/285x160">
										<div class="status-wrap esport-flex-between">
											<i></i>
											<span class="time">50:20</span>
										</div>
									</div>
									<h3>롤드컵 DAY2 5세트</h3>
								</a>
							</li>
							<li>
								<a href="#">
									<div class="image-wrap">
										<img src="https://via.placeholder.com/285x160">
										<div class="status-wrap esport-flex-between">
											<i></i>
											<span class="time">50:20</span>
										</div>
									</div>
									<h3>롤드컵 DAY2 5세트</h3>
								</a>
							</li>
							<li>
								<a href="#">
									<div class="image-wrap">
										<img src="https://via.placeholder.com/285x160">
										<div class="status-wrap esport-flex-between">
											<i></i>
											<span class="time">50:20</span>
										</div>
									</div>
									<h3>롤드컵 DAY2 5세트</h3>
								</a>
							</li>
							<li>
								<a href="#">
									<div class="image-wrap">
										<img src="https://via.placeholder.com/285x160">
										<div class="status-wrap esport-flex-between">
											<i></i>
											<span class="time">50:20</span>
										</div>
									</div>
									<h3>롤드컵 DAY2 5세트</h3>
								</a>
							</li>
							<li>
								<a href="#">
									<div class="image-wrap">
										<img src="https://via.placeholder.com/285x160">
										<div class="status-wrap esport-flex-between">
											<i></i>
											<span class="time">50:20</span>
										</div>
									</div>
									<h3>롤드컵 DAY2 5세트</h3>
								</a>
							</li>
							<li>
								<a href="#">
									<div class="image-wrap">
										<img src="https://via.placeholder.com/285x160">
										<div class="status-wrap esport-flex-between">
											<i></i>
											<span class="time">50:20</span>
										</div>
									</div>
									<h3>롤드컵 DAY2 5세트</h3>
								</a>
							</li>
						</ul>
					</div>



					<div id="esport-news" class="esport-section">
						<div class="title-wrap">
							<h2>추천 뉴스</h2>
						</div>

						<div class="article-wrap esport-flex-between">
							
							<ul class="left-lists esport-flex-between">
								<li>
									<a href="#">
										<img src="https://via.placeholder.com/226x132">
										<h3>Title1</h3>
										<p>동해물과 백두산이 마르고 동해물과 백두산이 마르고 동해물과 백두산이 마르고 </p>
									</a>
								</li>
								<li>
									<a href="#">
										<img src="https://via.placeholder.com/226x132">
										<h3>Title1</h3>
										<p>동해물과 백두산이 마르고 동해물과 백두산이 마르고 동해물과 백두산이 마르고 </p>
									</a>
								</li>
							</ul>

							<ul class="right-lists">
								<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>

						</div>	
					</div>



					<div id="esport-expert" class="esport-section">
						<div class="title-wrap">
							<h2>전문가 칼럼</h2>
						</div>

						<ul class="news-lists esport-flex-between">
							<li>
								<a href="#" class="esport-flex-start">
									<img src="https://via.placeholder.com/153x86">
									<div class="txt-wrap">
										<h3>Title</h3>
										<p>동해물과 백두사니동해물과 백두사니동해물과 백두사니동해물과 백두사니동해니
										동해물과 백두사니동해물과 백두사니동해물과 백두사니동해물과 백두사니동해니</p>
										<span class="source">핫매치 리뷰</span>
									</div>
								</a>
							</li>
							<li>
								<a href="#" class="esport-flex-start">
									<img src="https://via.placeholder.com/153x86">
									<div class="txt-wrap">
										<h3>Title</h3>
										<p>동해물과 백두사니동해물과 백두사니동해물과 백두사니동해물과 백두사과 백두사니</p>
										<span class="source">핫매치 리뷰</span>
									</div>
								</a>
							</li>
							<li>
								<a href="#" class="esport-flex-start">
									<img src="https://via.placeholder.com/153x86">
									<div class="txt-wrap">
										<h3>Title</h3>
										<p>동해물과 백두사니동해물과 백두사니동해물과 백두사니동해물과 백두사 백두사니</p>
										<span class="source">핫매치 리뷰</span>
									</div>
								</a>
							</li>
							<li>
								<a href="#" class="esport-flex-start">
									<img src="https://via.placeholder.com/153x86">
									<div class="txt-wrap">
										<h3>Title</h3>
										<p>동해물과 백두사과 백두사니동해물과 백두사니동해물과 백두사니동해물과 백두사니</p>
										<span class="source">핫매치 리뷰</span>
									</div>
								</a>
							</li>
						</ul>
					</div>

				</div>

style.css

#esport-main .left {
	float: left;
	width: 900px;
	/*height: 2000px;*/
	/*background-color: yellow;*/
}
#esport-main-article {
	overflow: hidden;
	width: 100%;
	height: 468px;
	background-color: grey;
	border-radius: 10px;
	margin-bottom: 30px;
}
#esport-main-article .article {
	position: relative;
	float: left;
	width: 50%;
	height: 50%;
}
#esport-main-article .article.full {
	height: 100%;
}
#esport-main-article .article img {
	position: absolute;
	width: 100%;
	height: 100%;
}
#esport-main-article .article .txt-wrap {
	position: absolute;
	width: 100%;
	padding: 0 24px 20px;
	left: 0;
	bottom: 0;
	color: #ffffff;
}
#esport-main-article .article .txt-wrap h3 {
	font-size: 20px;
	font-weight: 700;
	line-height: 26px;
}
#esport-main-article .article .txt-wrap p {
	margin-top: 5px;
	font-size: 14px;
	font-weight: 500;
	line-height: 19px;
}
#esport-main-article .article .txt-wrap .source {
	display: block;
	margin-top: 10px;
	font-size: 13px;
	color: hsla(0, 0%, 100%, .7);
}
.esport-section {
	border-top: solid 1px grey;
	padding-bottom: 30px;
	margin-bottom: 30px;
}
.esport-section .title-wrap {
	padding: 15px 0;
}
.esport-section .title-wrap h2 {
	font-size: 18px;
}
#esport-replay .game-menu {
	margin-bottom: 24px;
}
#esport-replay .game-menu ul {
}
#esport-replay .game-menu ul li {
	margin-right: 20px;
}
#esport-replay .game-menu ul li:last-child {
	margin-right: 0;
}
#esport-replay .game-menu ul li a {
	display: block;
	width: 60px;
	/*height: 82px;*/
	text-align: center;
}
#esport-replay .game-menu ul li a.active i {
	background-color: purple;
}
#esport-replay .game-menu ul li a.active span {
	color: purple;
}
#esport-replay .game-menu ul li i {
	display: inline-block;
	width: 60px;
	height: 60px;
	background-color: grey;
	border-radius: 50%;
	margin-bottom: 6px;
}
#esport-replay .game-menu ul li span {
	font-size: 13px;
}
#esport-replay .play-lists {
}
#esport-replay .play-lists li {
	width: 285px;
	margin-bottom: 24px;
}
#esport-replay .play-lists li:nth-child(4),
#esport-replay .play-lists li:nth-child(5),
#esport-replay .play-lists li:nth-child(6) {
	margin-bottom: 0;
}
#esport-replay .play-lists li a {
	display: block;
}
#esport-replay .play-lists li .image-wrap {
	position: relative;
	width: 100%;
	height: 160px;
}
#esport-replay .play-lists li .image-wrap img {
	position: absolute;
	width: 100%;
	height: 100%;
}
#esport-replay .play-lists li .image-wrap .status-wrap {
	position: absolute;
	width: 100%;
	left: 0;
	bottom: 0;
	padding: 10px;
}
#esport-replay .play-lists li .image-wrap .status-wrap i {
	display: block;
	width: 20px;
	height: 20px;
	background-color: grey;
}
#esport-replay .play-lists li .image-wrap .status-wrap  .time {
	background-color: rgba(0, 0, 0, 0.7);
	padding: 3px 5px;
	border-radius: 3px;
	font-size: 11px;
	color: #ffffff;
}
#esport-replay .play-lists li h3 {
	font-size: 15px;
}
#esport-news {
	margin-bottom: 90px;
#esport-news .article-wrap {
	align-items: flex-start;
}
#esport-news .article-wrap .left-lists {
	width: 472px;
}
#esport-news .article-wrap .left-lists li {
	width: 226px;
	height: 132px;
}
#esport-news .article-wrap .left-lists li a {
	display: block;
}
#esport-news .article-wrap .left-lists img {
	width: 100%;
	height: 132px;
	margin-bottom: 9px;
}
#esport-news .article-wrap .left-lists h3 {
	font-size: 16px;
	font-weight: 500;
	line-height: 21px;
}
#esport-news .article-wrap .left-lists p {
	font-size: 14px;
	color: #777;
}
#esport-news .article-wrap .right-lists {
	width: 400px;
}
#esport-news .article-wrap .right-lists li {
	position: relative;
	margin-bottom: 5px;
}
#esport-news .article-wrap .right-lists li:before {
	position: absolute;
	display: inline-block;
	content: '';
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background-color: grey;
	top: 8px;
}
#esport-news .article-wrap .right-lists li a {
	display: block;
	font-size: 16px;
	padding-left: 15px;
}	
#esport-expert .news-lists {
}
#esport-expert .news-lists li {
	width: 450px;
	margin-bottom: 15px;
}
#esport-expert .news-lists li a {
}
#esport-expert .news-lists  li img {
	width: 153px;
	height: 86px;
	margin-right: 15px;
}
#esport-expert .news-lists .txt-wrap {
	width: 268px;
}
#esport-expert .news-lists .txt-wrap h3 {
	font-size: 15px;
	font-weight: 500;
}
#esport-expert .news-lists .txt-wrap p {
	font-size: 14px;
	color: #777;
	line-height: 19px;
	margin-top: 4px;
	/* 두줄 말줄임 표시 */
	display: -webkit-box;
	overflow: hidden;
	max-height: 38px;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	text-overflow: ellipsis;
}
#esport-expert .news-lists .txt-wrap .source {
	font-size: 13px;
	color: #777;
}

결과

학습 중 어려웠던 점 또는 해결하지 못한 것들

a태그가 inline요소이기에 옆에 빈공간인 곳까지 클릭해서 접근 할 수 있도록 display:block 처리하는 것에 대한 이해가 어려웠다.
또 2줄 말줄임 표시에 대한 css 처리를 하는 것이 어려웠다.

해결한 방법

  • 두줄 말줄임 표시
    display: -webkit-box;
    overflow: hidden;
    max-height: 38px;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;

학습 소감

lnline, block, lnline-block 요소 구분의 공부가 필요, 두줄 말줄임 표시 css 처리 공부의 필요성을 느낌

profile
I'm Closer

0개의 댓글