Показать сообщение отдельно
  #56 (permalink)  
Старый 23.08.2017, 21:12
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,111

JohnJohn,

вариант...
<!DOCTYPE html>

<html>
  <head>
    <style>
    html, body {
      height: 100%;
    }
      .main {
        height: 100%;
      }
      .second_block {
        height: 100%;
      }
      #download_present_img{
        position: fixed;
    z-index: 9999;
    right: 15px;
    bottom: 20px;
    font-size: 50px;
    font-style: normal;
    margin-left: 20px;
    width: 40px;
    height: 40px;
    background: red;
}
.footer_block {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    position: relative;
    height: 190px;
    bottom: 0;
    left: 0;
}

.footer {
    color: #ffffff;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 190px;
    background: #000;
}
    </style>
  </head>

  <body>
    <div class="main"></div>
    <div class='second_block'>
    <div id="download_present_img"></div>
    </div>
    <div id="footer_stop"  class="footer_block">
<div  class="footer">
<div class="text_footer">
  <p>footer</p>
</div>
    </div>
    </div>


<script>
      function offset(a) {
     for (var b = 0; a;) b += parseInt(a.offsetTop), a = a.offsetParent;
     return b
 }
 var s = !0;
 window.onload = function () {
     var a = document.getElementById("download_present_img"),
         b = offset(a),
         f = window.getComputedStyle ? getComputedStyle(a, "") : a.currentStyle,
         d = a.offsetHeight + parseInt(f.marginTop) || 0,
         e = offset(document.getElementById("footer_stop"));
     window.onresize = function() {
    window.scrollTo(0,0);
    s = !0;
    a.style.position = "fixed";
    a.style.top = "";
    b = offset(a);
    e = offset(document.getElementById("footer_stop"));
};

     window.onscroll =  function () {
         var c = window.pageYOffset || document.documentElement.scrollTop,
             c = e - (c + d + b);
         s != 0 < c && ((s = 0 < c) ? (a.style.top = b + "px", a.style.position = "fixed") :
             (a.style.top = e - d + "px", a.style.position = "absolute"))
     }
 };

</script>


  </body>
</html>
Ответить с цитированием