2017-11-16 24 views
-3

私はこれについて、ブートストラップを使わずに何も見つけられませんでした。 (私は初心者であり、バニラプロジェクトから始めることにしました。これは、CSSのhtmlとjsだけです。これはビルドを開始したときに、ブートストラップが何であったか分からなかったからです)。 それでは、スクロール中にwhite(id:top-mare + logo)navbarを固定して縮小する方法はありますか?固定&縮小ナビゲーションバー

HTML

<!DOCTYPE html> 
 
<html lang="en-us" class="no-js"> 
 
<head> 
 
    <meta charset="utf-8" /> 
 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
 
    <title>Best DAVNIC73</title> 
 
    <link href="css/css.css" rel="stylesheet" /> 
 
    <link href="css/sshow.css" rel="stylesheet" /> 
 
    <link href="css/mqueries.css" rel="stylesheet" /> 
 
    <link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet"> 
 
</head> 
 
<body> 
 
    <div id="container"> 
 
     <div class="shadow"> 
 
      <header id="top"> 
 
       <nav id="top-mic"> 
 
        <ul> 
 
         <li><a href="#">Contact</a></li> 
 
         <li><a href="#">Despre noi</a></li> 
 
         <li><a href="#">Locatie</a></li> 
 
        </ul> 
 
       </nav> 
 
       <a href="#"><img src="img/logo.jpg" alt="davnic" id="logo"></img></a> 
 
       <div id="top-mare-wrap"> 
 
        <nav id="top-mare"> 
 
         <ul> 
 
          <li><a href="#">Acasa</a></li> 
 
          <li><a href="#">Buton1</a></li> 
 
          <li><a href="#">Buton2</a></li> 
 
          <li><a href="#">Buton3</a></li> 
 
          <li><a href="#">Buton4</a></li> 
 
         </ul> 
 
        </nav> 
 
       </div> 
 
      </header> 
 
     </div> 
 
     <div class="slideshow-container"> 
 

 
      <div class="mySlides fade"> 
 
       <div class="numbertext">1/3</div> 
 
       <img src="img/img1.jpg" style="width:100%"> 
 
      </div> 
 

 
      <div class="mySlides fade"> 
 
       <div class="numbertext">2/3</div> 
 
       <img src="img/img2.jpg" style="width:100%"> 
 
      </div> 
 

 
      <div class="mySlides fade"> 
 
       <div class="numbertext">3/3</div> 
 
       <img src="img/img3.jpg" style="width:100%"> 
 
      </div> 
 
      <a class="prev" onclick="plusSlides(-1)">&#10094;</a> 
 
      <a class="next" onclick="plusSlides(1)">&#10095;</a> 
 
      <script src="js/sshow.js"></script> 
 

 
      <button onclick="topFunction()" id="myBtn" title="Inapoi la inceputul paginii"><img src="img/arrow-up-01-128.jpg"/></button> 
 
      <script src="js/myBtn.js"></script> 
 
      <footer class="footer"> 
 
       <ul> 
 
        <li id="nume">SC Best DAVNIC73 SRL</li> 
 
        <li><img src="img/location_1.png" class="location"/> Judet Dambovita, Oras Targoviste, Strada, Nr</li> 
 
        <li><img src="img/phone.jpg" class="phone"/>074 44 44 444</li> 
 
        <li><img src="img/mail.jpg" id="mail"/>[email protected]</li> 
 
        <li class="copyright">Copyright Ⓒ 2017</li> 
 
       </ul> 
 
      </footer>  
 
      </div> 
 
</div> 
 
</body> 
 
</html>

CSS

html { 
 
    box-sizing: border-box; 
 
    height: 100%; 
 
    font-family: Roboto, Arial; 
 
} 
 

 
*, 
 
*:before, 
 
*:after { 
 
    box-sizing: inherit; 
 
} 
 

 
body { 
 
    font-family: Roboto, Arial; 
 
    height: auto; 
 
    width: 100%; 
 
    padding: 0; 
 
    padding-bottom: 6vw; 
 
    margin: 0; 
 
    font-size: 1.1vw; 
 
    min-height: 100%; 
 
    position: relative; 
 
} 
 

 
header { 
 
    color: #ffffff; 
 
    padding: 0; 
 
    margin: 0; 
 
    border-bottom: 1px solid #ADADAD; 
 
} 
 

 
#container { 
 
    margin: 0 auto; 
 
    padding: 0; 
 
    color: #ffffff; 
 
} 
 

 
#top-mic { 
 
    background-color: #F28A00; 
 
    margin: 0; 
 
    padding: 0; 
 
    margin-bottom: 0.73vw; 
 
} 
 

 
#top-mic ul { 
 
     list-style-type: none; 
 
     margin: 0; 
 
     padding: 0; 
 
     overflow: hidden; 
 
} 
 

 
#top-mic li { 
 
     float: right; 
 
     padding: 0.416vw 1.5625vw; 
 
} 
 

 
#top-mic li a { 
 
     display: block; 
 
     text-decoration: none; 
 
     color: #ffffff; 
 
     text-align: center; 
 
     font-size: 0.6vw; 
 
     font-weight: bold; 
 
     transition: color 0.25s ease; 
 
     margin-right: 2.8645vw; 
 
} 
 

 
#top-mic li a:hover { 
 
    color: #ADADAD; 
 
} 
 

 
#logo { 
 
\t max-width: 100%; 
 
    float: left; 
 
    margin-left: 12.5vw; 
 
    margin-right: 6.77vw; 
 
    width:15vw; 
 
\t height: auto !important; 
 
} 
 

 
#top-mare-wrap { 
 
    margin: 0 auto; 
 
} 
 

 
#top-mare { 
 
    padding: 0; 
 
    margin: 0; 
 
    margin-bottom: 3.125vw; 
 
    
 
} 
 

 
#top-mare ul { 
 
     list-style-type: none; 
 
     margin: 0; 
 
     padding: 0; 
 
} 
 

 
#top-mare li { 
 
     display: inline; 
 
} 
 

 
#top-mare li a { 
 
     margin-top: 2.1875vw; 
 
     margin-left: 2.083vw; 
 
     padding-right: 1.041vw; 
 
     display: inline-block; 
 
     text-decoration: none; 
 
     color: #ADADAD; 
 
     text-align: center; 
 
     font-size: 2.1vw; 
 
     font-weight: bold; 
 
     transition: color 0.25s ease; 
 
} 
 

 
#top-mare li a:hover { 
 
     color: #F28A00; 
 
} 
 

 
#test { 
 
    color:black; 
 
} 
 

 
.footer { 
 
    position: fixed; 
 
    right: 0; 
 
    bottom: 0; 
 
    left: 0; 
 
    background-color: #F28A00; 
 
} 
 

 
.footer ul { 
 
     list-style-type: none; 
 
     margin: 0; 
 
     padding: 1.041vw;  
 
} 
 

 
.footer li { 
 
     font-size: 0.9vw; 
 
     font-weight:bold; 
 
     display: inline; 
 
     margin-left: 2.604vw; 
 
     padding-right: 0.78125vw; 
 
     padding-bottom: 0.263vw; 
 
} 
 

 
.copyright { 
 
    float:right; 
 
} 
 

 
#nume { 
 
    font-weight: italic; 
 
} 
 

 
#myBtn { 
 
    display: none; 
 
    position: fixed; 
 
    bottom: 3.646vw; 
 
    left: 3.125vw; 
 
    z-index: 99; 
 
    border: none; 
 
    outline: none; 
 
    background-color: #F28A00; 
 
    color: white; 
 
    cursor: pointer; 
 
    padding: 0.78125vw; 
 
    border-radius: 10px; 
 
    width: 3.33333vw; 
 
    height: 3.3333vw; 
 
} 
 

 
.location { 
 
    width: 0.677vw; 
 
    height: 0.677vw; 
 
} 
 

 
.phone { 
 
    width: 0.677vw; 
 
    height: 0.677vw; 
 
} 
 

 
#mail { 
 
    height: 0.677vw; 
 
    width: 0.9375vw; 
 
}

+0

あなたは、あなたがやっている正確に何の速い概要を取得するためにjsfiddleを作成することができればそれはかなりクールになります。 –

+0

JSドキュメント()を参照しましたが、あなたの投稿コードには表示されません。これを含めると、ドキュメントにスクロール機能が含まれていると仮定して、何が起こっているかを見るのに非常に役立ちます。 –

+0

そのボタンは、ユーザーをページの先頭にリダイレクトします。 – octnic

答えて

0

私はあなたがトランスCSSを使用することをお勧め縮小アニメーションを作成するにはitionとjQuery addClassです。

したがって、上からスクロール位置を測定します。高さが望めば、収縮値を保持するCSSクラスをその要素に追加します。

たとえばあなたのロゴは、クラスのロゴ」を持っている:

<img src="image/logo.jpg" class="logo"/> 

ロゴCSS:

.logo { 
    width: 200px; 
    transition: all .5s ease-in-out; 
} 

削除/追加しようとしているクラスは、例えばと呼ばれています。 'シュリンク'。これは、値を小さく保持している(例えば、あなたが縮小ロゴが広い125pxになりたい):(この例では、上から70ピクセル)、必要なときに

.logo.shrink { 
    width: 125px; 
} 

次はロゴにシュリンククラスを追加します。

$(document).on('scroll', function() { 
    if ($(this).scrollTop > 70) { 
     $('.logo').addClass('shrink'); 
    } else if ($(this).scrollTop < 70) { 
     $('.logo').removeClass('shrink'); 
    } 
}); 

私はあなたの例を作った:https://jsfiddle.net/cr29y1tc/29/

+0

私のヘッダーを確認して、それをどうやって見たらいいですか?私は、ロゴと "トップメア"ナビのためだけにそれを行う方法を理解できません。 – octnic

+0

ええ、私はまだそれを行う方法を見つけることができません笑 – octnic

関連する問題