B타입 레이아웃에서 슬라이드 위치가..
.header-inner 와 .footer-inner가
들어가있는 B타입 레이아웃에서
.slide 에 마지막에 overflow:hidden;
속성을 주면 위치가 어긋나져 버립니다..
왜 그런걸까요?
혹시 .content-inner 때문에 발생하는건가요?
回答 3
1
header > div {
height: 100px;
/* box-sizing: border-box; */
}
.header-logo {
width: 200px;
float: left;
/* border: 1px solid black; */
}
위에 코드 보시면 .header-logo에 보더를 주셨는데 box-sizing: border-box를 주지 않아서 .header-logo의 높이가 2픽셀 커져서 다음에 오는 슬라이드가 밀려서 그렇습니다.
문제를 해결하시는 방법은 3가지가 있습니다. 사실 문제는 아닙니다만... header > div에 float 속성이 .slide에 상속받아서 생기는 문제입니다. 전체 코드 보니까 잘 정리해서 잘하고 있으시네요.
1) .header-logo의 임시보더는 사용하지 않을거니까 임시보더를 지우면 바로 해결됩니다.
2) .header-logo 처럼 임시보더를 주셨으면 box-sizing: border-box를 주시면 크기가 늘어나지 않으니까 슬라이드가 밀리는 문제가 생기지 않습니다.
3) .slide에 clear: both 줘서 float 속성 상속을 해제하시면 됩니다.
.slide {
clear: both;
}
혹시나 해서 덧붙이면 3가지를 다해야 한다는게 아니라 3가지 중 1가지만 하시면 문제가 해결된다는 말입니다.
결론은 1)번 2번으로 하시면 3)번 방법을 사용하실 필요는 없습니다. 3번 방법은 굳이 추천드리지는 않습니다.
추천드리는 방법은 영상처럼 2) .header-logo 처럼 임시보더를 주셨으면 box-sizing: border-box를 주시는 것을 추천드립니다.
아.. 그리고 body에 margin: 0 주세요.
0
.container {}
.header-inner {
background-color: #ddd;
}
header {
width: 1200px;
margin: auto;
height: 100px;
}
header > div {
height: 100px;
}
.header-logo {
width: 200px;
float: left;
border: 1px solid black;
}
.nav {
width: 600px;
float: right;
}
.menu a {
text-decoration: none;
color: black;
}
.menu {
list-style: none;
padding: 0;
text-align: center;
margin-top: 30px;
}
.menu li {
float: left;
width: 25%;
box-sizing: border-box;
}
.menu li > a {
border: 1px solid black;
display: block;
padding: 5px;
transition: 0.5s;
}
.menu li:hover > a {
background-color: #000;
color: #fff;
}
.sub-menu {
border: 1px solid black;
background-color: #fff;
display: none;
}
.sub-menu a {
display: block;
padding: 5px;
transition: 0.5s;
}
.sub-menu a:hover {
background-color: #000;
color: #fff;
}
.content-inner {}
.slide {
width: 1200px;
margin: auto;
height: 300px;
position: relative;
overflow: hidden;
}
.slide div {
border: 1px solid black;
width: 3600px;
font-size: 0;
position: absolute;
top: 0;
left: 0;
animation-name: slide;
animation-duration: 10s;
animation-timing-function: linear;
animation-iteration-count: infinite;
}
@keyframes slide {
0% {
left: 0;
}
30% {
left: 0;
}
35% {
left: -1200px;
}
65% {
left: -1200px;
}
70% {
left: -2400px;
}
95% {
left: -2400px;
}
100% {
left: 0;
}
}
.items {
width: 1200px;
margin: auto;
overflow: hidden;
}
.items > div {
border: 1px solid black;
height: 200px;
width: 400px;
float: left;
box-sizing: border-box;
}
.footer-inner {
background-color: #ddd;
}
footer {
width: 1200px;
margin: auto;
overflow: hidden;
}
footer > div {
border: 1px solid black;
height: 100px;
float: left;
box-sizing: border-box;
}
.footer-logo {
width: 200px;
}
.copyright {
width: 1000px;
}
.copyright div {
border: 1px solid black;
height: 50px;
}
0
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>Document</title>
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<div class="container">
<div class="header-inner">
<header>
<div class="header-logo"></div>
<div class="nav">
<ul class="menu">
<li>
<a href="#none">MENU-1</a>
<div class="sub-menu">
<a href="#none">submenu-1</a>
<a href="#none">submenu-2</a>
<a href="#none">submenu-3</a>
<a href="#none">submenu-4</a>
</div>
</li>
<li>
<a href="#none">MENU-2</a>
<div class="sub-menu">
<a href="#none">submenu-1</a>
<a href="#none">submenu-2</a>
<a href="#none">submenu-3</a>
<a href="#none">submenu-4</a>
</div>
</li>
<li>
<a href="#none">MENU-3</a>
<div class="sub-menu">
<a href="#none">submenu-1</a>
<a href="#none">submenu-2</a>
<a href="#none">submenu-3</a>
<a href="#none">submenu-4</a>
</div>
</li>
<li>
<a href="#none">MENU-4</a>
<div class="sub-menu">
<a href="#none">submenu-1</a>
<a href="#none">submenu-2</a>
<a href="#none">submenu-3</a>
<a href="#none">submenu-4</a>
</div>
</li>
</ul>
</div>
</header>
</div>
<div class="content-inner">
<div class="slide">
<div>
<a href="#none"><img src="images/slide-01.jpg" alt="slide01"></a>
<a href="#none"><img src="images/slide-02.jpg" alt="slide02"></a>
<a href="#none"><img src="images/slide-03.jpg" alt="slide03"></a>
</div>
</div>
<div class="items">
<div class="news"></div>
<div class="banner"></div>
<div class="shortcut"></div>
</div>
</div>
<div class="footer-inner">
<footer>
<div class="footer-logo"></div>
<div class="copyright">
<div></div>
<div></div>
</div>
</footer>
</div>
</div>
<script src="script/jquery-1.12.4.js"></script>
<script src="script/custom.js"></script>
</body>
</html>
해당 강의 PDF는 어디에 있나요?
1
55
2
2026 웹디자인개발기능사 실기 보는데 필요한 텍스트에디터는 무엇인가요?
1
92
2
예제파일
1
54
1
섹션10-77번강의 내 와이어프레임 pdf 자료 다운로드 어디서 하나요?
1
81
2
보더를 사용해 와이어프레임만드는 강의 html+css소스 다운로드 받을 수 있나요?
1
57
1
시험 시 슬라이드 작성 관련 문의
0
64
1
강의 질문 있습니다
1
69
1
시험 관련 문의
1
61
1
파워포인트 자료 다운로드 버튼 어디에 있나요?
1
55
1
브라우저 화면 줄일 시 빈 공간 발생
0
65
1
서브메뉴가 유지되지 못하고 사라지는데 무엇이 문제 일까요?
1
78
1
슬라이드 및 완성본 관련 사항
1
69
2
D유형 레이아웃 연습중인데 슬라이드 이미지 크기가 변하지 않습니다
1
90
3
B-4연습중인데 네비게이션의 a태그 두께가 이상하고 슬라이드 다운시 문제가 있습니다.
1
50
2
A2 연습중인데 메뉴 배경색과 서브메뉴 크기, 갤러리 그림 정리에 문제가 있습니다
1
68
2
A1 레이아웃 연습중인데 overflow: hidden이나 box-sizing: border-box;가 적용되지 않는 것 같습니다
1
55
2
레이어 팝업 '닫기' 가 안됩니다
1
62
1
공지사항과 갤러리 탭(안)구성 중 마우스 클릭시 색상변경이 안됩니다.
1
84
2
뷰티파이 설치 관련 문의
1
71
3
웹디자인 기능사 웹디자인개발기능사로 개편 되었는데 이 수업만 들어도 가능?
1
86
2
A유형~C유형 수험자 제공파일 어디서
1
73
1
A1 작업하는데 와이어프레임이 무너지고, hover일부가 적용 안되고 메뉴바가 슬라이드를 밀어냅니다. 탭메뉴도 작동하지 않습니다..
0
122
4
footer 높이 값
1
47
2
div 상하분배?가 안돼요
0
72
2

