inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[2026년 출제기준] 웹디자인개발기능사 실기시험 완벽 가이드

3. 공지사항, 갤러리 탭으로 구성하기(HTML+CSS+JQUERY)

탭 화면전환이 되지않습니다

296

wlsgml6200

작성한 질문수 10

1

html

<!DOCTYPE html>

<html lang="ko">

<head>

    <meta charset="UTF-8">

    <title>가로 레이아웃-1</title>

    <link rel="stylesheet" href="style/style.css">

</head>

<body>

    <div class="container">

        <header>

            <div class="header-logo"></div>

            <div class="navi">

                <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 class="sub-back"></div>

            </div>

        </header>

        <div class="slide">

          <div> 

           <a href="#none"><img src="images/slide01.jpg" alt="slide1"></a>

           <a href="#none"><img src="images/slide02.jpg" alt="slide2"></a>

           <a href="#none"><img src="images/slide03.jpg" alt="slide3"></a>

           </div>

        </div>

        <div class="contents">

           <div class="news">

            <div class="tab-inner">

                <div class="btn">

                    <a class="active" href="#none">공지사항</a>

                    <a href="#none">갤러리</a>

                </div>

                <div class="tabs">

                    <div class="tab1">tab1</div>

                    <div class="tab2">tab2</div>

                </div>

            </div>

           </div>

          

           <div class="banner">

        

           </div>

           

            <div class="shortcut"></div>

    </div>

        <footer>

            <div class="footer-logo"></div>

            <div class="copy"></div>

            <div class="sns"></div>

        </footer>

    </div>

    

    <script src="script/jquery-3.6.0.min.js"></script>

    <script src="script/custom.js"></script>

</body>

</html>

css

*{

    padding: 0;

    margin: 0;

    text-decoration: none;

    list-style: none;

    color: #000;

}

.container{

    width: 1200px;

    margin: auto;

    border: 1px solid red;

}

.container > div{}

header{

    width: 1200px;

    margin: auto;

    height: 100px;

    position: relative; /*슬라이더 위에 올라오기*/

    z-index: 1;

}

header > div{

    height: 100px;

    box-sizing: border-box;

}

.header-logo{

    width: 200px;

    border: 1px solid #000;

    float: left;

}

.navi{

    width: 600px;

    border: 1px solid #000;

    float: right;

}

.slide{}

.slide > div{

    height: 300px;

    border: 1px solid #000;

}

.contents{

    overflow: hidden;

}

.contents > div{

    height: 200px;

    float: left;

    border: 1px solid #000;

    box-sizing: border-box; /*컨텐츠에 보더박스!!*/

}

.news{

    width: 400px;

}

.banner{

    width: 400px;

}

.shortcut{

    width: 400px;

}

footer{

    overflow: hidden;

}

footer > div{

    height: 100px;

    border: 1px solid #000;

    box-sizing: border-box;

    float: left;

}

.footer-logo{

    width: 200px;

}

.copy{

    width: 800px;

}

.sns{

    width: 200px;

}

/* slide */

.slide{

    position: relative;

    width: 1200px;

    height: 300px; /*레이아웃이 깨지지않게 필수!*/

    

}

.slide > div{

    font-size: 0;

}

.slide div a {

    position: absolute;

    top: 0;

    left: 0;

    animation: slide 10s linear infinite;

    visibility: hidden; /* 최초에 모든 슬라이드가 존재가 없는 상태에서 출발함 */

}

.slide div a:nth-child(1){animation-delay: 0s;}

.slide div a:nth-child(2){animation-delay: 3.5s;}

.slide div a:nth-child(3){animation-delay: 7s;}

@keyframes slide{

    0%{opacity: 0;}

    5%{

        visibility: visible; /* 0% 구간에서 visibility: hidden 상태를 5% 구간에서 보이는 상태로 전환 */

        opacity: 1;

    }

    35%{opacity: 1;}

    40%{

         visibility: hidden; /* 슬라이드로 보이는 구간이 끝났으니까 투명도 0과 함께 실제로도 보이지 않는 상태로 100% 구간까지 전환 */

        opacity: 0;

        

    }

    100%{ opacity: 0;}

}

/* navi */

.menu{ /*ul*/

    padding: 0;

    list-style: none;

    margin-top: 65px; /*메뉴 전체를 보기좋게 네비 중간에 정렬*/

}

.menu li{

    float: left;

    width: 25%; /*퍼센트로 주는게 정확*/

    box-sizing: border-box;

    text-align: center;

}

.menu li > a{ /*MENU-1 ~4*/

    border: 1px solid #000;

    display: block;

    padding: 5px;

    transition: 0.5s;

}

.menu li:hover > a{

    background-color: #000;

    color: #fff;

}

.sub-menu{

    display: none; /*메뉴 css 마지막 작업*/

}

.sub-menu a{

    display: block;/*가장 먼저 주는게 편함*/

    padding: 10px;

    transition: 0.5s; /*부드럽게 전환*/

    color: #fff;

}

.sub-menu a:hover{

    background-color: #fff;

    color: #000;

}

.sub-back{

    width: 100%;

    height: 200px;

    background-color: #000;

    position: absolute;

    right: 0;

    top: 100%;

    z-index: -1;

    display: none;

}

/* content 공지사항 갤러리 탭으로 구성*/

.tab-inner{

    width: 97%;

    margin: auto;

}

.tab-inner .btn{}

.tab-inner .btn a{

    border: 1px solid #000;

    display: inline-block;

    width: 120px;

    text-align: center;

    padding: 3px;

    border-radius: 10px 10px 0 0;

    margin-right: -5px; 

    background-color: #ddd; 

    cursor: pointer; /*마우스 커서*/

    border-bottom: none;

    margin-bottom: -1px; 

}

.tab-inner .btn.active{

    background-color: #fff;

}

.tabs{}

.tabs div{

    border: 1px solid #000;

    height: 160px;

}

.tabs .tab1{}

.tabs .tab2{

    display: none; /*갤러리는 태초 안보이는 상태 유지*/

}

js

/*tab*/

$('.btn a:first-child').click(function(){

    $('.tab1').show()

    $('.tab2').hide()

})

$('.btn a:last-child').click(function(){

    $('.tab1').show()

    $('.tab2').hide()

})

tab1 > tab2 글자가 전환되는게 안보이네요 ㅠㅠ

HTML/CSS 웹 디자인 jquery

답변 2

0

wlsgml6200

넵!!감사합니다!!!

0

코딩웍스(Coding Works)

.tab-inner .btn.active{

  background-color: #fff;

}

아래 처럼 바꿔줘야 공지사항 갤러리 탭의 색상이 바뀝니다.

.tab-inner .btn a.active{

  background-color: #fff;

}

==========================

$('.btn a:first-child').click(function(){

  $('.tab1').show()

  $('.tab2').hide()

})

아래에 show hide가 위에 있는거랑 같아요.

다르게 해줘야 해요. 아래는 .tab1과 .tab2가 바뀌어야 해요.

$('.btn a:last-child').click(function(){

  $('.tab1').show()

  $('.tab2').hide()

})

==========================

공개도면 지시사항에 images, css, script 폴더로 구성하라고 되어 있는데 css 폴더 대신에 style 폴더로 만들면 감점사항이 될거에요. css 폴더에 style.css 넣으세요.

============================

제이쿼리 파일은 jquery-1.12.4.js 를 사용하세요.

시험 보실 때도 jquery-1.12.4.js 파일로 하시게 됩니다.

위의 파일은 최종본 완성본에 있습니다.

해당 강의 PDF는 어디에 있나요?

1

54

2

2026 웹디자인개발기능사 실기 보는데 필요한 텍스트에디터는 무엇인가요?

1

91

2

예제파일

1

51

1

섹션10-77번강의 내 와이어프레임 pdf 자료 다운로드 어디서 하나요?

1

79

2

보더를 사용해 와이어프레임만드는 강의 html+css소스 다운로드 받을 수 있나요?

1

55

1

시험 시 슬라이드 작성 관련 문의

0

63

1

강의 질문 있습니다

1

67

1

시험 관련 문의

1

60

1

파워포인트 자료 다운로드 버튼 어디에 있나요?

1

53

1

브라우저 화면 줄일 시 빈 공간 발생

0

63

1

서브메뉴가 유지되지 못하고 사라지는데 무엇이 문제 일까요?

1

76

1

슬라이드 및 완성본 관련 사항

1

67

2

D유형 레이아웃 연습중인데 슬라이드 이미지 크기가 변하지 않습니다

1

88

3

B-4연습중인데 네비게이션의 a태그 두께가 이상하고 슬라이드 다운시 문제가 있습니다.

1

49

2

A2 연습중인데 메뉴 배경색과 서브메뉴 크기, 갤러리 그림 정리에 문제가 있습니다

1

66

2

A1 레이아웃 연습중인데 overflow: hidden이나 box-sizing: border-box;가 적용되지 않는 것 같습니다

1

54

2

레이어 팝업 '닫기' 가 안됩니다

1

61

1

공지사항과 갤러리 탭(안)구성 중 마우스 클릭시 색상변경이 안됩니다.

1

83

2

뷰티파이 설치 관련 문의

1

70

3

웹디자인 기능사 웹디자인개발기능사로 개편 되었는데 이 수업만 들어도 가능?

1

80

2

A유형~C유형 수험자 제공파일 어디서

1

67

1

A1 작업하는데 와이어프레임이 무너지고, hover일부가 적용 안되고 메뉴바가 슬라이드를 밀어냅니다. 탭메뉴도 작동하지 않습니다..

0

116

4

footer 높이 값

1

41

2

div 상하분배?가 안돼요

0

67

2