4

위치 요소를 고정하고 상위 div의 전체 너비를 차지하려고합니다.부모 div의 위치 고정 된 요소 너비를 설정하지 않습니다

 <div class="col-md-3"> 
     <div class="player-avatar-card"> 
      <div class="card-body"> 
      <div class="avatar-image"> 
       <img src="/imagecache/small/{{ $player->image_filename }}" alt="Profile Image" class="rounded-circle"> 
       <img class="flag rounded-circle" src="/icons/flags-round/{{ $player->nationality }}.svg"></h3> 
      </div> 
      <h5>{{ $player->first_name }} {{ $player->last_name }}</h5> 
      <p>{{ $player->nationality }}, {{ $player->age }} years</p> 
      <div class="social-buttons"> 
       <div class="col-12"> 
       <a class="btn btn-info btn-lg" href="#" role="button"> 
        <i class="ion-plus-round"></i> follow</a> 
       </div> 
       <div class="col-12"> 
       <a class="btn btn-info btn-outline-info" href="#" role="button"> 
        <i class="ion-android-share-alt"></i> share</a> 
       </div> 
      </div> 
      </div> 
     </div> 
     </div> 

내가 요소에 스크롤에 player-avatar-card에 위치 픽스 클래스를 제공하고있다 : 이것은 내 HTML입니다

const avatarCard = document.querySelector('.player-avatar-card'); 
    const fixClassAvatar = 'is-fixed-avatar'; 

    function stickyScroll() { 
    if(window.pageYOffset > 56) { 
     avatarCard.classList.add(fixClassAvatar); 
    } 
    if(window.pageYOffset < 56) { 
     avatarCard.classList.remove(fixClassAvatar); 
    } 
    } 
    $(window).scroll(stickyScroll); 

을 그리고 이것은 클래스 :

.is-fixed-avatar { 
    position: fixed; 
    max-width: inherit; 
    width: 100%; 
} 

단, 요소가 col-md-3 div에서 벗어나면 어떻게 해결할 수 있습니까?

Here은 바이올린입니다. 화면에 표시되도록 확장하여 제대로 작동하는지 확인하십시오.

+1

요소를 절대, 정적 또는 고정으로 만들면 페이지 흐름에서 벗어나 더 이상 컨테이너 내부에있는 것으로 간주되지 않으므로 제한을받을 수 없습니다. – FluffyKitten

+0

js를 사용하지 않고이 문제를 해결할 방법이 있습니까? – Leff

+1

컨텍스트가 없거나이를 포함하는 코드를 보는 것이 어렵습니다. 예를 들어, 가장 왼쪽 열이 무엇입니까? 이 경우, 왼쪽에 영구적으로 고정되게하고 메인 컨텐츠에 패딩을 추가하여이를 방지 할 수 있습니다. 하지만 내가 말했듯이, 더 많은 정보 없이는 알기가 어렵습니다. – FluffyKitten

답변

1

position: fixed을 사용하면 div가 흐름에서 벗어나서 col-md-3 div에서 벗어납니다. 나는 그것을 absolute를 만들기 위해 제안 :

.profile-content .player-info .is-fixed-avatar { 
    position: absolute; 
    left: 0; 
    right: 0; 
} 

은 이제 avatar 일부 끈적을 배치 jQuery를을 사용할 수 있습니다 - 창 높이를 최소화하여 보십시요. (마지막 section-cardcol-md-9 내부) 아래의 단순화 된 데모를 참조하십시오

$(document).ready(function() { 
 
    const avatar = $('.player-avatar-card'); 
 
    const avatarBox = avatar.parent(); 
 

 
    function sticky() { 
 
    var offset = avatarBox.offset().top - $(window).scrollTop(); 
 
    if (offset >= 0) { 
 
     avatar.css('top', '0'); 
 
     return; 
 
    } 
 
    avatar.offset({ 
 
     'left': avatar.offset().left, 
 
     'top': -offset + 90 // 90px to adjust for padding 
 
    }); 
 
    } 
 
    $(window).scroll(sticky); 
 
});
body { 
 
    background: #fff; 
 
    color: #484848 !important; 
 
} 
 

 
.is-fixed { 
 
    position: fixed; 
 
    left: 0; 
 
    right: 0; 
 
    z-index: 10; 
 
    top: 0; 
 
} 
 

 
.page-nav { 
 
    height: 56px; 
 
    border-bottom: 1px solid #f1eeee; 
 
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1); 
 
    background: #fff; 
 
} 
 

 
.page-nav .section-links .active { 
 
    border-bottom: 2px solid #008489; 
 
    color: #008489; 
 
    font-weight: 500; 
 
} 
 

 
.page-nav .nav { 
 
    height: 56px; 
 
    display: -webkit-box; 
 
    display: flex; 
 
    -webkit-box-align: center; 
 
    align-items: center; 
 
} 
 

 
.page-nav .nav .nav-link { 
 
    height: 56px; 
 
    display: -webkit-box; 
 
    display: flex; 
 
    -webkit-box-align: center; 
 
    align-items: center; 
 
    min-width: 100px; 
 
    -webkit-box-pack: center; 
 
    justify-content: center; 
 
    color: #484848; 
 
} 
 

 
.lg-strong-font { 
 
    font-size: 34px; 
 
    font-weight: 500; 
 
    color: #e90052; 
 
} 
 

 
.lg-strong-font span { 
 
    font-size: 1rem; 
 
} 
 

 
.profile-content { 
 
    padding: 2rem 0; 
 
    background: #f7f7f7; 
 
} 
 

 
.profile-content .info-content { 
 
    padding-left: 3rem; 
 
    padding-right: 3rem; 
 
} 
 

 
.profile-content .title-margin { 
 
    margin-bottom: 1.5rem; 
 
} 
 

 
.profile-content .title-icon { 
 
    color: #008489; 
 
    margin-right: 1.7rem; 
 
    margin-left: 2px; 
 
} 
 

 
.profile-content .info-title-hr { 
 
    margin-left: 3rem; 
 
    margin-right: 3rem; 
 
} 
 

 
.profile-content .section-card { 
 
    margin-top: 1.5rem; 
 
    background: #fff; 
 
    padding: 1.5rem; 
 
    border: 1px solid #f1eeee; 
 
} 
 

 
.profile-content .sub-section { 
 
    margin-top: 2rem; 
 
} 
 

 
.profile-content .icon-wrapper { 
 
    width: 30px; 
 
    height: 30px; 
 
    display: -webkit-box; 
 
    display: flex; 
 
    -webkit-box-align: center; 
 
    align-items: center; 
 
    -webkit-box-pack: center; 
 
    justify-content: center; 
 
} 
 

 
.profile-content .icon-wrapper i { 
 
    color: #008489; 
 
} 
 

 
.profile-content .video-section { 
 
    margin: 0; 
 
    margin-left: -5px; 
 
} 
 

 
.profile-content .video-section .profile-video-box { 
 
    padding: 0; 
 
    padding-left: 5px; 
 
    margin-bottom: 10px; 
 
} 
 

 
.profile-content .player-info .icon-box { 
 
    padding-right: 0; 
 
    padding-top: 8px; 
 
} 
 

 
.profile-content .player-info .player-info-card-content { 
 
    margin-top: 0; 
 
} 
 

 
.profile-content .player-info .is-fixed-avatar { 
 
    position: absolute; 
 
    left: 0; 
 
    right: 0; 
 
} 
 

 
.profile-content .player-info .player-avatar-card { 
 
    display: -webkit-box; 
 
    display: flex; 
 
    -webkit-box-pack: center; 
 
    justify-content: center; 
 
    text-align: center; 
 
    padding: 1.5rem 0; 
 
    border: 1px solid #f1eeee; 
 
    background: #fff; 
 
} 
 

 
.profile-content .player-info .player-avatar-card .card-body { 
 
    width: 100%; 
 
} 
 

 
.profile-content .player-info .player-avatar-card p { 
 
    margin-bottom: 0.2rem; 
 
    font-size: 0.8rem; 
 
    color: #7b7b7b; 
 
} 
 

 
.profile-content .player-info .player-avatar-card .avatar-image { 
 
    position: relative; 
 
    margin-bottom: 1.5rem; 
 
    display: inline-block; 
 
} 
 

 
.profile-content .player-info .player-avatar-card .avatar-image img { 
 
    width: 120px; 
 
    height: 120px; 
 
} 
 

 
.profile-content .player-info .player-avatar-card .avatar-image .flag { 
 
    position: absolute; 
 
    bottom: 10px; 
 
    right: -5px; 
 
    width: 35px; 
 
    height: 35px; 
 
    border: 3px solid #fff; 
 
} 
 

 
.profile-content .player-info .player-avatar-card .icon { 
 
    width: 30px; 
 
    height: 30px; 
 
    margin-right: 5px; 
 
} 
 

 
.profile-content .player-info .player-avatar-card .card-title { 
 
    margin: 0.5rem 0; 
 
} 
 

 
.profile-content .player-info .social-buttons { 
 
    margin-top: 1rem; 
 
} 
 

 
.profile-content .player-info .social-buttons .btn { 
 
    border-radius: 200px; 
 
    font-weight: 500; 
 
    margin: 0.5rem; 
 
} 
 

 
.profile-content .player-info .social-buttons .btn i { 
 
    margin-right: 10px; 
 
} 
 

 
.profile-content .table>thead>tr>th, 
 
.profile-content .table>tbody>tr>th, 
 
.profile-content .table>tfoot>tr>th, 
 
.profile-content .table>thead>tr>td, 
 
.profile-content .table>tbody>tr>td, 
 
.profile-content .table>tfoot>tr>td { 
 
    line-height: 1.42857143; 
 
    vertical-align: top; 
 
    border: 0 !important; 
 
} 
 

 
.profile-content .table>thead>tr>th { 
 
    text-align: center; 
 
} 
 

 
.profile-content .table>thead>tr>th .icon-wrapper { 
 
    margin: auto; 
 
} 
 

 
.profile-content .table>thead>tr>th, 
 
.profile-content .table>tbody>tr>td { 
 
    max-width: 110px !important; 
 
    vertical-align: middle; 
 
} 
 

 
.profile-content .table>thead { 
 
    border-bottom: 1px solid #f1eeee; 
 
    background: #fff; 
 
} 
 

 
.profile-content .table-responsive { 
 
    margin-bottom: 0; 
 
} 
 

 
.profile-content .no-data-message { 
 
    margin-top: 1.5rem; 
 
} 
 

 
.profile-content .years { 
 
    font-size: 14px; 
 
    font-weight: 500; 
 
} 
 

 
.profile-content .info-label { 
 
    font-weight: 400; 
 
    font-size: 0.8rem; 
 
    color: #7b7b7b; 
 
} 
 

 
footer { 
 
    height: 20rem; 
 
    padding: 20px 0; 
 
    position: relative; 
 
    z-index: 1; 
 
    display: -webkit-box; 
 
    display: flex; 
 
    -webkit-box-align: center; 
 
    align-items: center; 
 
    background-color: #fff; 
 
    color: #3c3e42; 
 
    border-top: 1px solid rgba(204, 204, 204, 0.4); 
 
} 
 

 
footer h4 { 
 
    font-weight: 700; 
 
} 
 

 
footer a { 
 
    display: block; 
 
    font-weight: 500; 
 
    margin-bottom: 10px; 
 
} 
 

 
.search-result { 
 
    margin-top: 2rem; 
 
} 
 

 
.search-result .search-list { 
 
    margin-top: 1rem; 
 
} 
 

 
.search-result .query-card { 
 
    color: #fff; 
 
    background: #00bcd4; 
 
} 
 

 
.search-result .query-card .card-block { 
 
    padding: 1rem; 
 
} 
 

 
.search-result .search-list-media .media img { 
 
    width: 160px; 
 
    height: auto; 
 
} 
 

 
.search-result .media { 
 
    margin-top: 10px !important; 
 
} 
 

 
.search-result .media-body p { 
 
    margin: 0 !important; 
 
    padding-top: 0 !important; 
 
    padding-bottom: 0 !important; 
 
} 
 

 
.search-result .tab-content { 
 
    padding: 1rem; 
 
} 
 

 
.search-result .pagination, 
 
.search-result .tab-content { 
 
    margin-top: 2rem; 
 
} 
 

 
.contact-form .card { 
 
    padding: 1rem; 
 
} 
 

 
body { 
 
    overflow-x: hidden; 
 
    position: relative; 
 
} 
 

 
#wrapper { 
 
    position: relative; 
 
    z-index: 10; 
 
    top: 0; 
 
    left: 0; 
 
    transition: all 0.4s; 
 
} 
 

 
.menu { 
 
    position: fixed; 
 
    z-index: 20; 
 
    overflow: hidden; 
 
    transition: all 0.4s; 
 
    color: #008489; 
 
    padding: 45px; 
 
    padding-top: 3rem; 
 
    background: #333; 
 
} 
 

 
.menu a { 
 
    color: #e4e4e4; 
 
} 
 

 
.menu h4 { 
 
    margin-top: 10px; 
 
} 
 

 
.menu .btn { 
 
    margin-top: 1rem; 
 
} 
 

 
.push-menu-left { 
 
    top: 50px; 
 
    width: 280px; 
 
    height: 100%; 
 
    box-shadow: -4px 1px 5px 0px rgba(0, 0, 0, 0.2); 
 
    -webkit-box-shadow: -4px 1px 5px 0px rgba(0, 0, 0, 0.2); 
 
} 
 

 
.push-menu-left { 
 
    right: -285px; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous"> 
 

 
<div class="container-fluid page-nav"> 
 
    <div class="container"> 
 
    <div class="row"> 
 
     <div class="col-md-9 offset-md-3"> 
 
     <nav id="page-nav" class="nav section-links"> 
 
      <a class="nav-link active" href="#info">Info</a> 
 
      <a class="nav-link" href="#videos">Videos</a> 
 
      <a class="nav-link" href="#stats">Statistics</a> 
 
     </nav> 
 
     </div> 
 
    </div> 
 
    </div> 
 
</div> 
 
<div class="profile-content"> 
 
    <div class="row player-info"> 
 
    <div class="container"> 
 
     <div class="row"> 
 
     <div class="col-md-3"> 
 
      <div class="player-avatar-card is-fixed-avatar"> 
 
      <div class="card-body"> 
 
       <div class="avatar-image"> 
 
       <img src="http://via.placeholder.com/350x150" alt="Profile Image" class="rounded-circle"> 
 
       <img class="flag rounded-circle" src="http://via.placeholder.com/32x32"> 
 
       </div> 
 
       <h5>Name</h5> 
 

 
       <div class="social-buttons"> 
 
       <div class="col-12"> 
 
        <a class="btn btn-info btn-lg" href="#" role="button"> 
 
        <i class="ion-plus-round"></i> follow</a> 
 
       </div> 
 
       <div class="col-12"> 
 
        <a class="btn btn-info btn-outline-info" href="#" role="button"> 
 
        <i class="ion-android-share-alt"></i> share</a> 
 
       </div> 
 
       </div> 
 
      </div> 
 
      </div> 
 
     </div> 
 
     <div class="col-md-9"> 
 
      <div id="info" class="player-info-card-content section-card"> 
 
      <div class="row"> 
 
       <div class="col-12"> 
 
       <h5><i class="ion-ios-list-outline title-icon"></i> Overview</h5> 
 
       <hr class="info-title-hr"> 
 
       </div> 
 
      </div> 
 
      <div class="row info-content"> 
 
       <div class="col-12"> 
 
       <div class="row"> 
 
        <div class="col-6 col-md-3 player-info-data"> 
 
        <div class="row"> 
 
         <div class="col-12 info-box"> 
 
         <span class="info-label">Born</span> 
 
         <p>Born</p> 
 
         </div> 
 
        </div> 
 
        </div> 
 
        <div class="col-6 col-md-3 player-info-data"> 
 
        <div class="row"> 
 
         <div class="col-12 info-box"> 
 
         <span class="info-label">Club</span> 
 
         <p>Club</p> 
 
         </div> 
 
        </div> 
 
        </div> 
 
        <div class="col-6 col-md-3 player-info-data"> 
 
        <div class="row"> 
 
         <div class="col-12 info-box"> 
 
         <span class="info-label">Position</span> 
 
         <p>Position</p> 
 
         </div> 
 
        </div> 
 
        </div> 
 
        <div class="col-6 col-md-3 player-info-data"> 
 
        <div class="row"> 
 
         <div class="col-12 info-box"> 
 
         <span class="info-label">Height</span> 
 
         <p>180 cm</p> 
 
         </div> 
 
        </div> 
 
        </div> 
 
        <div class="col-6 col-md-3 player-info-data"> 
 
        <div class="row"> 
 
         <div class="col-12 info-box"> 
 
         <span class="info-label">Weight</span> 
 
         <p>75 kg</p> 
 
         </div> 
 
        </div> 
 
        </div> 
 
        <div class="col-6 col-md-3 player-info-data"> 
 
        <div class="row"> 
 
         <div class="col-12 info-box"> 
 
         <span class="info-label">Foot</span> 
 
         <p>Both</p> 
 
         </div> 
 
        </div> 
 
        </div> 
 
        <div class="col-6 col-md-3 player-info-data"> 
 
        <div class="row"> 
 
         <div class="col-12 info-box"> 
 
         <span class="info-label">Agent</span> 
 
         <p>Pro sports agency</p> 
 
         </div> 
 
        </div> 
 
        </div> 
 
       </div> 
 
       </div> 
 
      </div> 
 
      </div> 
 
      <div class="section-card"> 
 
      <div id="videos" class="row"> 
 
       <div class="col-md-12"> 
 
       <h5 class="title-margin"> 
 
        <i class="ion-ios-videocam-outline title-icon"></i> Videos 
 
       </h5> 
 
       </div> 
 
      </div> 
 
      <div class="row video-section"> 
 
       <div class="col-12"> 
 
       <div class="info-content"> 
 
        <p></p> 
 
       </div> 
 
       </div> 
 
      </div> 
 
      <div class="col-md-6 col-lg-4 profile-video-box"> 
 
       <a href=""> 
 
       <div class="card bg-dark text-white"> 
 
        <img src="http://via.placeholder.com/350x150" class="card-img" /> 
 
        <div class="card-img-overlay"> 
 
        <div class="play-icon-wrapper"> 
 
         <i class="ion-ios-play"></i> 
 
        </div> 
 
        <div class="card-content"> 
 
         <h5 class="card-title">title 
 
         </h5> 
 
         <p class="card-text">date 
 
         </p> 
 
        </div> 
 
        </div> 
 
       </div> 
 
       </a> 
 
      </div> 
 
      </div> 
 

 
      <div class="section-card"> 
 
      <div id="stats" class="row"> 
 
       <div class="col-md-12"> 
 
       <h5 class="title-margin"> 
 
        <i class="ion-ios-pulse-strong title-icon"></i> Performance data 
 
       </h5> 
 
       </div> 
 
      </div> 
 
      <div class="row"> 
 
       <div class="col-md-12"> 
 
       <div class="table-responsive"> 
 
        <table class="table"> 
 
        <thead> 
 
         <tr> 
 
         <th> 
 
          <div class="icon-wrapper"> 
 
          <i class="ion-android-calendar"></i> 
 
          </div> 
 
          <span class="info-label">Season</span> 
 
         </th> 
 
         <th> 
 
          <div class="icon-wrapper"> 
 
          <i class="flaticon-football-trophy-cup"></i> 
 
          </div> 
 
          <span class="info-label">Competition</span> 
 
         </th> 
 
         <th> 
 
          <div class="icon-wrapper"> 
 
          <i class="flaticon-soccer-t-shirt"></i> 
 
          </div> 
 
          <span class="info-label">Club</span> 
 
         </th> 
 
         <th> 
 
          <div class="icon-wrapper"> 
 
          <i class="ion-ios-football-outline"></i> 
 
          </div> 
 
          <span class="info-label">Goals</span> 
 
         </th> 
 
         <th> 
 
          <div class="icon-wrapper"> 
 
          <i class="flaticon-football-strategic-sketch"></i> 
 
          </div> 
 
          <span class="info-label">Assists</span> 
 
         </th> 
 
         <th> 
 
          <div class="icon-wrapper yellow"> 
 
          <i class="flaticon-football-yellow-warning-card"></i> 
 
          </div> 
 
          <span class="info-label">Yellow cards</span> 
 
         </th> 
 
         <th> 
 
          <div class="icon-wrapper red"> 
 
          <i class="flaticon-football-card-with-cross-mark"></i> 
 
          </div> 
 
          <span class="info-label">Red cards</span> 
 
         </th> 
 
         </tr> 
 
        </thead> 
 
        <tbody> 
 
         <tr> 
 
         <td class="text-center">17/18</td> 
 
         <td class="text-center">NO</td> 
 
         <td class="text-center">Odd</td> 
 
         <td class="text-center">5</td> 
 
         <td class="text-center">3</td> 
 
         <td class="text-center">0</td> 
 
         <td class="text-center">0</td> 
 
         </tr> 
 
        </tbody> 
 
        </table> 
 
       </div> 
 
       </div> 
 
      </div> 
 
      </div> 
 
     </div> 
 
     </div>

+0

저는 약간의 CSS 해결책을 원했습니다.이 것은 부드럽게 보이지 않기 때문에, 스크롤에서 깜박 거립니다. – Leff

+0

나는 여기에 * CSS 만 * 해결책이 없다고 생각합니다 ... 나는 어떤 깜박임도 볼 수 없었습니다? – kukkuz

+1

미안하지만, 사파리에서 테스트 할 때 깜박일 뿐이었지만 지금은 괜찮아 보입니다. 나는 당신의 대답을 올바른 것으로 받아 들일 것이다, 고마워! – Leff

0

당신이 원하는 것을 달성하기 위해 세 가지 방법이 있습니다.

옵션 1

첫째, 당신이 마스터 요소로 아래로 스크롤 할 당신이 고정 할 요소와 요소를 설정할 수 있습니다. 그런 다음 둘 다 position: absolute으로 설정하고 overflow: scroll을 content 요소로 설정하십시오. 이 예에서 부모 을 스크롤하지 않기 때문에 고정 요소가 이동하지 않습니다.

CSS

.parent { 
    position: relative; 
    width: 800px; 
    height: 400px; 
    overflow: hidden; // Just to guarantee that no scroll appears 
} 
.fixed-menu { 
    position: absolute; 
    top: 0; 
    left: 0; 
    right: 0; 
    height: 20px; 
    z-index: 2; 
} 
.content { 
    position: absolute; 
    top: 0; 
    bottom: 0; 
    left: 0; 
    right: 0; 
    overflow-y: auto; 
} 

HTML이

가 마찬가지로, 당신은 절대적 위치 아이를 만들 수 있습니다

<div class="parent"> 
    <div class="fixed-menu"></div> 
    <div class="content"></div> 
</div> 

옵션, 다음, 고정 된 콘텐츠가 포함 된 손자를 만듭니다. 고정 된 손자의 위/아래/왼쪽/오른쪽을 설정하지 않으면 아이가 앉을 때마다 고정됩니다.

.parent { 
    position: relative; 
    width: 25%; 
    height: 200px; 
    overflow: scroll; 
    background-color: #f0f0f0; 
} 

.child { 
    position: absolute; 
    width: 50px; // Same size as the grandchild for easier positioning 
    height: 50px; 
    top: 50px; 
    right: 50px; 
} 

.grandchild { 
    width: 50px; 
    height: 50px; 
    position: fixed; 
    background-color: red; 
} 

HTML

<div class="parent"> 
    Content...   
    <div class="child"><div class="grandchild"></div></div> 
</div> 

옵션 3 ...정렬 :

세 번째로 will-change: transform 또는 transform: translate*(0) 중 하나를 설정하여 요소의 하위에 대한 로컬 좌표 집합을 만들 수 있습니다. 이렇게하면 요소가 자체 렌더링 레이어에 배치되므로 자체 좌표가 제공됩니다.

CSS

.parent { 
    position: relative; 
    width: 30%; 
    height: 200px; 
    overflow: scroll; 
    background-color: #f0f0f0; 
    transform: translateX(0); // I used X, but any will do. 
} 

.child { 
    position: fixed; 
    width: 50px; 
    height: 50px; 
    top: 25px; 
    right: 25px; 
    background-color: red; 
} 

HTML

<div class="parent"> 
    Content...  
    <div class="child"></div> 
</div> 

나는이 옵션을 사용하여 무슨 일이 일어 났는지에 관해서는 확실 해요. 이전에 Internet Explorer 용으로 저장 한 모든 브라우저에서 작동했지만 지금은 모든 최신 브라우저에서 fixed 요소가 요소처럼 작동하지만 이 아니고이 고정 된 상태로 유지됩니다. 대신 부모 콘텐츠로 스크롤됩니다. 나는 실험을 해본 결과 Chrome Dev Tools의 부모에서 CSS 속성을 켜고 끄는 것으로 Chrome에서 그 자식을 부모에게 고정 시키도록 만들 수 있음을 알았습니다. 이것은 단지 결함 일 뿐이며, 새로 고침 후 첫 번째 방법으로 렌더링으로 돌아갑니다. 따라서이 구현 결정이 명시 적으로 의도적이라고 가정합니다.

결론

두 가지 방법으로 당신이 원하는 것을 달성 할 수있는 잠재력 세 번째 방법이있다. 나는 내가 기억하는 것을 따르지 않기 때문에 세 번째 방법으로 계속 놀고 있으며, 내가 원하는 것을 달성하는 결함은 그 가능성이 있음을 나타내는 것으로 보이지만, 지금은 단지 실험 일뿐입니다.