HTML & CSS

Change NavBar color on scroll

Bootstrap – Change NavBar color on scroll

index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Meeny.com</title>
    <link rel="shortcut icon" href="favicon.ico">
    <link rel="stylesheet" href="main.css">
    <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
    <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script>
    <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.1.1/css/all.css" integrity="sha384-O8whS3fhG2OnA5Kas0Y9l3cfpmYjapjI0E4theH4iuMD+pLhbf6JI0jIMfYcK3yZ" crossorigin="anonymous">
    <script src="main.js"></script>
    <script src="jquery.youtubebackground.js"></script>
</head>
<body>

<!-- NavBar -->
<div class="navbarwrap fixed-top MeenyNavTrs py-4">
    <div class="container">
        
        <nav class="navbar navbar-expand-lg navbar-dark">
            <a class="navbar-brand" href="#"><img src="images/symbol_w.svg" height="24px"> <span class="font-weight-bold">Meeny</span>.com</a>

            <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation">
              <div class="navbar-toggler-inner"></div>
            </button>

            <div class="collapse navbar-collapse" id="navbarNavDropdown">
                <ul class="navbar-nav ml-auto">
                <li class="nav-item active">
                    <a class="nav-link" href="#">About Us <span class="sr-only">(current)</span></a>
                </li>
                <li class="nav-item">
                    <a class="nav-link" href="#">Business</a>
                </li>
                <li class="nav-item dropdown">
                    <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
                    Products
                    </a>
                    <div class="dropdown-menu" aria-labelledby="navbarDropdown">
                    <a class="dropdown-item" href="#">Category 1</a>
                    <a class="dropdown-item" href="#">Category 2</a>
                    <div class="dropdown-divider"></div>
                    <a class="dropdown-item" href="#">Category 3</a>
                    <a class="dropdown-item" href="#">Category 4</a>
                    </div>
                </li>
                <li class="nav-item">
                    <a class="nav-link" href="#">Contact Us</a>
                    </li>
                    <li class="nav-item">
                    <a class="nav-link" href="#">Investing</a>
                    </li>
                    <li class="nav-item">
                    <a class="nav-link" href="#">Press</a>
                    </li>
                </ul>

            </div>
        </nav>
        
    </div>
</div>


<div id="carouselExampleCaptions" class="carousel slide" data-ride="carousel">
    <ol class="carousel-indicators">
      <li data-target="#carouselExampleCaptions" data-slide-to="0" class="active"></li>
      <li data-target="#carouselExampleCaptions" data-slide-to="1"></li>
      <li data-target="#carouselExampleCaptions" data-slide-to="2"></li>
    </ol>
    <div class="carousel-inner">

      <div class="carousel-item active">
        <div id="video"></div>
        <script>
          $('#video').YTPlayer({
              fitToBackground: true,
              videoId: 'qRTVg8HHzUo',
              playerVars: {
                modestbranding: 0,
                autoplay: 1,
                controls: 0,
                showinfo: 0,
                branding: 0,
                rel: 0,
                autohide: 0,
                start: 1290
              }
          });
        </script>
        <div class="carousel-caption">
          <h3 class="display-4 w100 text-light alfadeInDown"><span class="w700 text-primary">Meeny</span>.com<br class="d-md-none" /><span class="text-light w400"> - HTML & CSS</span></h3>
          <p class="text-light">Fullscreen video without black borders</p>
          <a href="" class="btn btn-primary rounded-pill">Link</a>
        </div>
      </div>
      <div class="carousel-item" style="background-image: url(images/n1.png);">
        <!-- <img src="images/m1.jpg" class="d-block w-100 " style="height: 57vw; min-height:550px; "> -->
        <div class="carousel-caption">
          <h3 class="display-4 w100 text-light alfadeInDown"><span class="w700 text-success">Meeny</span>.com<br class="d-md-none" /><span class="text-light w400"> - HTML & CSS</span></h3>
          <p class="text-light">Bootstrap4 hamburger toggle motion</p>
          <br><br>&nbsp;
        </div>
      </div>
      <div class="carousel-item" style="background-image: url(images/T3.png);">
        <!-- <img src="images/m2.jpg" class="d-block w-100 " style="height: 57vw; min-height:550px;"> -->
        <div class="carousel-caption">
          <h3 class="display-4 w100 text-light alfadeInDown"><span class="w700 text-primary">Meeny</span>.com<br class="d-md-none" /><span class="text-light w400"> - HTML & CSS</span></h3>
          <p class="text-light">Bootstrap4 Theme color change</p>
          <a href="" class="btn btn-primary rounded-pill">Link</a>
        </div>
      </div>

    </div>
    <a class="carousel-control-prev" href="#carouselExampleCaptions" role="button" data-slide="prev">
      <span class="carousel-control-prev-icon" aria-hidden="true"></span>
      <span class="sr-only">Previous</span>
    </a>
    <a class="carousel-control-next" href="#carouselExampleCaptions" role="button" data-slide="next">
      <span class="carousel-control-next-icon" aria-hidden="true"></span>
      <span class="sr-only">Next</span>
    </a>
  </div>

<!-- 
<img src="images/b1.png" alt="" class="img-fluid">
<img src="images/b2.png" alt="" class="img-fluid">
<img src="images/b3.png" alt="" class="img-fluid">


 -->


<div class="container">
    <div class="jumbotron mt-3">
        <h1 class="display-4">Hello, world!</h1>
        <p class="lead">This is a simple hero unit, a simple jumbotron-style component for calling extra attention to featured content or information.</p>
        <hr class="my-4">
        <p>It uses utility classes for typography and spacing to space content out within the larger container.</p>
        <a class="btn btn-primary btn-lg" href="#" role="button">Learn more</a>
      </div>
    <div>
        <div class="row row-cols-3 text-center">
            <div class="p-4 bg-primary">primary</div>
            <div class="p-4 bg-secondary">secondary</div>
            <div class="p-4 bg-success">success</div>
            <div class="p-4 bg-danger">danger</div>
            <div class="p-4 bg-warning">warning</div>
            <div class="p-4 bg-info">info</div>
        </div>
    </div>
    
    
    <p class="text-primary">.text-primary</p>
    <p class="text-secondary">.text-secondary</p>
    <p class="text-success">.text-success</p>
    <p class="text-danger">.text-danger</p>
    <p class="text-warning">.text-warning</p>
    <p class="text-info">.text-info</p>
    <p class="text-light bg-dark">.text-light</p>
    <p class="text-dark">.text-dark</p>
    <p class="text-body">.text-body</p>
    <p class="text-muted">.text-muted</p>
    <p class="text-white bg-dark">.text-white</p>
    <p class="text-black-50">.text-black-50</p>
    <p class="text-white-50 bg-dark">.text-white-50</p>
    
    <p><a href="#" class="text-primary">Primary link</a></p>
    <p><a href="#" class="text-secondary">Secondary link</a></p>
    <p><a href="#" class="text-success">Success link</a></p>
    <p><a href="#" class="text-danger">Danger link</a></p>
    <p><a href="#" class="text-warning">Warning link</a></p>
    <p><a href="#" class="text-info">Info link</a></p>
    <p><a href="#" class="text-light bg-dark">Light link</a></p>
    <p><a href="#" class="text-dark">Dark link</a></p>
    <p><a href="#" class="text-muted">Muted link</a></p>
    <p><a href="#" class="text-white bg-dark">White link</a></p>
    
    <div class="p-3 mb-2 bg-primary text-white">.bg-primary</div>
    <div class="p-3 mb-2 bg-secondary text-white">.bg-secondary</div>
    <div class="p-3 mb-2 bg-success text-white">.bg-success</div>
    <div class="p-3 mb-2 bg-danger text-white">.bg-danger</div>
    <div class="p-3 mb-2 bg-warning text-dark">.bg-warning</div>
    <div class="p-3 mb-2 bg-info text-white">.bg-info</div>
    <div class="p-3 mb-2 bg-light text-dark">.bg-light</div>
    <div class="p-3 mb-2 bg-dark text-white">.bg-dark</div>
    <div class="p-3 mb-2 bg-white text-dark">.bg-white</div>
    <div class="p-3 mb-2 bg-transparent text-dark">.bg-transparent</div>
    
    
    
</div>








</body>
</html>

main.js

$(document).ready( $(function(){

    var navbtn = $('.navbar-toggler');
    var nav = $('.navbarwrap');


    $(navbtn).click(function(){
        $(navbtn).toggleClass('active');

    })

    $(window).scroll(function(){
        var scroll = $(window).scrollTop();

        if(scroll >= 100) {
            nav.removeClass('nav-transparent py-4').addClass('nav-colored');
        }else{
            nav.removeClass('nav-colored').addClass('nav-transparent py-4');
        }
    })








}))

main.scss

@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200;300;400;500;600;700&display=swap');

$font-family-base: 'Roboto', sans-serif;
$enable-responsive-font-sizes:                true;

$color-1 : #0F4C81;
$color-2 : #7209b7;
$color-3 : #f72585;
$color-4 : #4361ee;
$color-5 : #4cc9f0;
$color-6 : #237a94;

$primary:       $color-1;
$secondary:     $color-2;
$success:       $color-3;
$info:          $color-4;
$warning:       $color-5;
$danger:        $color-6;

// Dropdown menu container and contents.
$dropdown-bg:                       $color-1;
$dropdown-link-color:               $color-5;
$dropdown-link-hover-color:         darken($color-5, 20%);
$dropdown-link-hover-bg:            darken($color-1, 10%);
$dropdown-divider-bg:               lighten($color-1, 10%);
$dropdown-border-color:             rgba($color-5, .15) !default;




@import "scss/bootstrap";

html{
    font-size: 15.25px;
    letter-spacing: -0.02em;
    word-spacing: 0.05em;
}

html,body,.carousel,.carousel-inner,.carousel-item{height: 100%;}
.carousel-item{
    background-size: cover;
    background-position: center;
}

.carousel-caption{
    transform: translateY(-50%);
    bottom: initial;
    top: 50%;
}

.navbar-toggler {
    &:focus {
        outline: none;
    }
    border: 1px solid $warning;
    cursor: pointer;
    width: 1.8em;
    height: 1.8em;
    padding: 0 0 0.15em 0.35em;


    .navbar-toggler-inner,
    .navbar-toggler-inner::before,
    .navbar-toggler-inner::after
    {
        width: 1em;
        height: 0.16em;
        background-color: $warning;
        position: absolute;
    }

    .navbar-toggler-inner::before
    {
        content: "";
        display: block;
        top: -0.3em;
    }

    .navbar-toggler-inner::after
    {
        content: "";
        display: block;
        bottom: -0.3em;
    }

    .navbar-toggler-inner{
        transition: 0.2s;
        transform: rotate(0deg);
    }


}



.navbar-toggler.active {

    .navbar-toggler-inner{
        transition: 0.2s;
        transform: rotate(45deg); // 45+360
    }
    .navbar-toggler-inner::before{
        top: 0;
        opacity: 0;
    }
    .navbar-toggler-inner::after{
        bottom: 0;
        transform: rotate(-90deg);
    }



}




.w100 {font-weight: 100 !important;}
.w300 {font-weight: 300 !important;}
.w400 {font-weight: 400 !important;}
.w500 {font-weight: 500 !important;}
.w700 {font-weight: 700 !important;}
.w900 {font-weight: 900 !important;}



.nav-colored{background-color: $primary;}
.nav-transparent {background-color: transparent;}

.MeenyNavTrs {
    transition: 1s;
    -webkit-transition: 1s;
}

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다