Today I Learned 02

졍이🥨·2022년 11월 16일
0

개발일지

목록 보기
9/38

Today I Learned 01 (2022-11-14(월))월요일거 게시물이 지워졌다 ㅠㅠ
임시글목록에 남아있지도 않다 ㅠㅠㅠ
올리고 잘 확인해야겠다..(2022-11-17(목))


2022-11-15(화) //가로 슬라이드 총 3페이지 html
<div class="slidewrap">
    <ul class="slidelist">
        <li>
            <a>
                <img src="https://cdn.discordapp.com/attachments/1036843116294053911/1042112776346275930/3.jpg">
            </a>
        </li>
        <li>
            <a>
                <img src="https://cdn.discordapp.com/attachments/1036843116294053911/1041981478902431785/1.jpg">
            </a>
        </li>
        <li>
            <a>
                <img src="https://cdn.discordapp.com/attachments/1036843116294053911/1041953805794803712/2.jpg">
            </a>
        </li>
        <div class="slide-control">
            <div class="control01">
                <label for="slide03" class="left">
                    <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor"
                         class="bi bi-chevron-left" viewBox="0 0 16 16">
                        <path fill-rule="evenodd"
                              d="M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z"/>
                    </svg>
                </label>
                <label for="slide02" class="right">
                    <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor"
                         class="bi bi-chevron-right" viewBox="0 0 16 16">
                        <path fill-rule="evenodd"
                              d="M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z"/>
                    </svg>
                </label>
            </div>
            <div class="control02">
                <label for="slide01" class="left">
                    <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor"
                         class="bi bi-chevron-left" viewBox="0 0 16 16">
                        <path fill-rule="evenodd"
                              d="M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z"/>
                    </svg>
                </label>
                <label for="slide03" class="right">
                    <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor"
                         class="bi bi-chevron-right" viewBox="0 0 16 16">
                        <path fill-rule="evenodd"
                              d="M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z"/>
                    </svg>
                </label>
            </div>
            <div class="control03">
                <label for="slide02" class="left">
                    <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor"
                         class="bi bi-chevron-left" viewBox="0 0 16 16">
                        <path fill-rule="evenodd"
                              d="M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z"/>
                    </svg>
                </label>
                <label for="slide01" class="right">
                    <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor"
                         class="bi bi-chevron-right" viewBox="0 0 16 16">
                        <path fill-rule="evenodd"
                              d="M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z"/>
                    </svg>
                </label>
            </div>
        </div>
    </ul>
</div>

//가로 슬라이드 총 3페이지 CSS
    .section {
        width: 100%;
        height: 320px;
        background-color: green;
    }

    .section input[id*="slide"] {
        display: none;
    }

    .section .slidewrap {
        width: 100%;
        height: 320px;
        margin: 0 auto;
        overflow: hidden;
    }

    .section .slidelist {
        white-space: nowrap;
        font-size: 0;
    }

    .section .slidelist > li {
        display: inline-block;
        width: 100vw;
        transition: all .5s;
    }

    .section .slidelist > li > a {
        display: block;
        position: relative;
    }

    .section .slidelist > li > a img {
        width: 100vw;
        height: 320px;
    }

    .section .slidelist label {
        position: absolute;
        z-index: 10;
        top: 50%;
        transform: translateY(-50%);
        /*padding: 50px;*/
        cursor: pointer;
    }

    .section .slidelist .left {
        left: 30px;
        background: transparent center center / 100% no-repeat;
    }

    .section .slidelist .right {
        right: 30px;
        background: transparent center center;
    }

    .bi {
        width: 50px;
        height: 50px;
        margin-bottom: 160px;
        color: white;
    }

    .section [id="slide01"]:checked ~ .slidewrap .slidelist > li {
        transform: translateX(0%);
    }

    .section [id="slide02"]:checked ~ .slidewrap .slidelist > li {
        transform: translateX(-100%);
    }

    .section [id="slide03"]:checked ~ .slidewrap .slidelist > li {
        transform: translateX(-200%);
    }

    .section .slide-control [class*="control"] {
        display: none;
    }

    .section [id="slide01"]:checked ~ .slidewrap .control01 {
        display: block;
    }

    .section [id="slide02"]:checked ~ .slidewrap .control02 {
        display: block;
    }

    .section [id="slide03"]:checked ~ .slidewrap .control03 {
        display: block;
    }

가로 슬라이드 코드 참고 출처 :

https://www.youtube.com/watch?v=JryRu5zby3A&t=48s


<문제 상황>

배너 이미지를 슬라이드에 채우면 계속 아래에 빈공간이 생기고 사진이 위로 올라가는 문제가 있었음.

<해결과정>

개발자도구에서 확인했을 때 내가 작성한 코드의 문제가 아니라 서버 자체에서 만들어 내는 'User Agent Stylesheet(사용자 에이전트 스타일시트)' 코드로 인해 생긴 문제였음. 스타일에 있는 'ul{(생략)}'코드를 위로 올렸고, margin : auto를 지운 후 padding left로 값을 주고, 배너에 해당되는 ' .section .slidelist > li {}'와'.section .slidelist > li > a img {}'에서의 width 값은 100vw로 주었더니 해결되었음.

vw는 전체길이값 단위

profile
Front-End :)

0개의 댓글