CSS, jQuery

CSS ve jquery kullanılarak sabit(fixed) menü nasıl yapılır ?

CSS’te sabit(fixed) menüler kullanıcı kolaylığı açısında web dünyasında önemli bir yere sahiptir. Bur makalede fixed menünün yapısına değineceğiz. Bir örnek ile açıklayacak olursak;

HTML yapımız aşağıdaki şekilde olsun;

<div class = "fixed_menu">
<div class="container">
<ul>
<li><a href="">Anasayfa</a></li>
<li><a href="">Hakkımızda</a></li>
<li><a href="">Referanslarımız</a></li>
<li><a href="">İletişim</a></li>
<li class = "search">
<input type="text" name="word" placeholder = "bir şeyler ara" id="">
<button type = "submit">Ara</button>
</li>
</ul>
</div>
</div>

<div class = "container website_content">
 <h3>Örneği test etmek için aşağı doğru kaydırın :)</h3>
 
 <br class = "clear" />

 <div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Modi praesentium commodi nesciunt distinctio aliquid, qui expedita a eius, iure vero odio. Magni, alias laboriosam quas culpa perspiciatis. Nostrum, quis, itaque!</div>
 
 <br class = "clear" />

 <div>Natus modi ut cupiditate. Quisquam repellendus sequi, quia eaque similique aut voluptate atque, molestiae molestias, accusantium facere. Nihil laudantium fugit eaque vel reprehenderit modi quos. Necessitatibus, labore, quidem. Deleniti, ad.</div>
 
 <br class = "clear" />

 <div>Dolorem at ipsum, id, praesentium nostrum ratione suscipit sapiente explicabo hic sit ab laboriosam, itaque minima, vitae inventore modi voluptas? Obcaecati fuga neque nemo eaque eum ullam explicabo assumenda. Suscipit.</div>
 
 <br class = "clear" />

 <div>Excepturi atque, tempora consequatur vel sit molestias reprehenderit! Laudantium dignissimos, iure earum rem, sunt facilis consequuntur. Ex quibusdam doloribus nisi vitae architecto, quo reiciendis et ut ducimus, alias nemo qui.</div>
 
 <br class = "clear" />

 <div>Nesciunt dicta debitis aut blanditiis adipisci ut, molestiae, animi quod maxime harum voluptatem! Magni sequi beatae sapiente reprehenderit consectetur, fuga perferendis quia nihil tempora. Odio nulla, ratione consequatur ipsa? Natus.</div>
 <div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Modi praesentium commodi nesciunt distinctio aliquid, qui expedita a eius, iure vero odio. Magni, alias laboriosam quas culpa perspiciatis. Nostrum, quis, itaque!</div>
 
 <br class = "clear" />

 <div>Natus modi ut cupiditate. Quisquam repellendus sequi, quia eaque similique aut voluptate atque, molestiae molestias, accusantium facere. Nihil laudantium fugit eaque vel reprehenderit modi quos. Necessitatibus, labore, quidem. Deleniti, ad.</div>
 
 <br class = "clear" />

 <div>Dolorem at ipsum, id, praesentium nostrum ratione suscipit sapiente explicabo hic sit ab laboriosam, itaque minima, vitae inventore modi voluptas? Obcaecati fuga neque nemo eaque eum ullam explicabo assumenda. Suscipit.</div>
 
 <br class = "clear" />

 <div>Excepturi atque, tempora consequatur vel sit molestias reprehenderit! Laudantium dignissimos, iure earum rem, sunt facilis consequuntur. Ex quibusdam doloribus nisi vitae architecto, quo reiciendis et ut ducimus, alias nemo qui.</div>
 
 <br class = "clear" />

 <div>Nesciunt dicta debitis aut blanditiis adipisci ut, molestiae, animi quod maxime harum voluptatem! Magni sequi beatae sapiente reprehenderit consectetur, fuga perferendis quia nihil tempora. Odio nulla, ratione consequatur ipsa? Natus.</div>
 <div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Modi praesentium commodi nesciunt distinctio aliquid, qui expedita a eius, iure vero odio. Magni, alias laboriosam quas culpa perspiciatis. Nostrum, quis, itaque!</div>
 
 <br class = "clear" />

 <div>Natus modi ut cupiditate. Quisquam repellendus sequi, quia eaque similique aut voluptate atque, molestiae molestias, accusantium facere. Nihil laudantium fugit eaque vel reprehenderit modi quos. Necessitatibus, labore, quidem. Deleniti, ad.</div>
 
 <br class = "clear" />

 <div>Dolorem at ipsum, id, praesentium nostrum ratione suscipit sapiente explicabo hic sit ab laboriosam, itaque minima, vitae inventore modi voluptas? Obcaecati fuga neque nemo eaque eum ullam explicabo assumenda. Suscipit.</div>
 
 <br class = "clear" />

 <div>Excepturi atque, tempora consequatur vel sit molestias reprehenderit! Laudantium dignissimos, iure earum rem, sunt facilis consequuntur. Ex quibusdam doloribus nisi vitae architecto, quo reiciendis et ut ducimus, alias nemo qui.</div>
 
 <br class = "clear" />

 <div>Nesciunt dicta debitis aut blanditiis adipisci ut, molestiae, animi quod maxime harum voluptatem! Magni sequi beatae sapiente reprehenderit consectetur, fuga perferendis quia nihil tempora. Odio nulla, ratione consequatur ipsa? Natus.</div>
 <br class = "clear" />

 <div>Excepturi atque, tempora consequatur vel sit molestias reprehenderit! Laudantium dignissimos, iure earum rem, sunt facilis consequuntur. Ex quibusdam doloribus nisi vitae architecto, quo reiciendis et ut ducimus, alias nemo qui.</div>
 
 <br class = "clear" />

 <div>Nesciunt dicta debitis aut blanditiis adipisci ut, molestiae, animi quod maxime harum voluptatem! Magni sequi beatae sapiente reprehenderit consectetur, fuga perferendis quia nihil tempora. Odio nulla, ratione consequatur ipsa? Natus.</div>
 <div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Modi praesentium commodi nesciunt distinctio aliquid, qui expedita a eius, iure vero odio. Magni, alias laboriosam quas culpa perspiciatis. Nostrum, quis, itaque!</div>
 
 <br class = "clear" />

 <div>Natus modi ut cupiditate. Quisquam repellendus sequi, quia eaque similique aut voluptate atque, molestiae molestias, accusantium facere. Nihil laudantium fugit eaque vel reprehenderit modi quos. Necessitatibus, labore, quidem. Deleniti, ad.</div>
 
 <br class = "clear" />

 <div>Dolorem at ipsum, id, praesentium nostrum ratione suscipit sapiente explicabo hic sit ab laboriosam, itaque minima, vitae inventore modi voluptas? Obcaecati fuga neque nemo eaque eum ullam explicabo assumenda. Suscipit.</div>
 
 <br class = "clear" />

 <div>Excepturi atque, tempora consequatur vel sit molestias reprehenderit! Laudantium dignissimos, iure earum rem, sunt facilis consequuntur. Ex quibusdam doloribus nisi vitae architecto, quo reiciendis et ut ducimus, alias nemo qui.</div>
 
 <br class = "clear" />

 <div>Nesciunt dicta debitis aut blanditiis adipisci ut, molestiae, animi quod maxime harum voluptatem! Magni sequi beatae sapiente reprehenderit consectetur, fuga perferendis quia nihil tempora. Odio nulla, ratione consequatur ipsa? Natus.</div>
 <br class = "clear" />

 <div>Excepturi atque, tempora consequatur vel sit molestias reprehenderit! Laudantium dignissimos, iure earum rem, sunt facilis consequuntur. Ex quibusdam doloribus nisi vitae architecto, quo reiciendis et ut ducimus, alias nemo qui.</div>
 
 <br class = "clear" />

 <div>Nesciunt dicta debitis aut blanditiis adipisci ut, molestiae, animi quod maxime harum voluptatem! Magni sequi beatae sapiente reprehenderit consectetur, fuga perferendis quia nihil tempora. Odio nulla, ratione consequatur ipsa? Natus.</div>
 <div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Modi praesentium commodi nesciunt distinctio aliquid, qui expedita a eius, iure vero odio. Magni, alias laboriosam quas culpa perspiciatis. Nostrum, quis, itaque!</div>
 
 <br class = "clear" />

 <div>Natus modi ut cupiditate. Quisquam repellendus sequi, quia eaque similique aut voluptate atque, molestiae molestias, accusantium facere. Nihil laudantium fugit eaque vel reprehenderit modi quos. Necessitatibus, labore, quidem. Deleniti, ad.</div>
 
 <br class = "clear" />

 <div>Dolorem at ipsum, id, praesentium nostrum ratione suscipit sapiente explicabo hic sit ab laboriosam, itaque minima, vitae inventore modi voluptas? Obcaecati fuga neque nemo eaque eum ullam explicabo assumenda. Suscipit.</div>
 
 <br class = "clear" />

 <div>Excepturi atque, tempora consequatur vel sit molestias reprehenderit! Laudantium dignissimos, iure earum rem, sunt facilis consequuntur. Ex quibusdam doloribus nisi vitae architecto, quo reiciendis et ut ducimus, alias nemo qui.</div>
 
 <br class = "clear" />

 <div>Nesciunt dicta debitis aut blanditiis adipisci ut, molestiae, animi quod maxime harum voluptatem! Magni sequi beatae sapiente reprehenderit consectetur, fuga perferendis quia nihil tempora. Odio nulla, ratione consequatur ipsa? Natus.</div>
 <br class = "clear" />

 <div>Excepturi atque, tempora consequatur vel sit molestias reprehenderit! Laudantium dignissimos, iure earum rem, sunt facilis consequuntur. Ex quibusdam doloribus nisi vitae architecto, quo reiciendis et ut ducimus, alias nemo qui.</div>
 
 <br class = "clear" />

 <div>Nesciunt dicta debitis aut blanditiis adipisci ut, molestiae, animi quod maxime harum voluptatem! Magni sequi beatae sapiente reprehenderit consectetur, fuga perferendis quia nihil tempora. Odio nulla, ratione consequatur ipsa? Natus.</div>
 <div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Modi praesentium commodi nesciunt distinctio aliquid, qui expedita a eius, iure vero odio. Magni, alias laboriosam quas culpa perspiciatis. Nostrum, quis, itaque!</div>
 
 <br class = "clear" />

 <div>Natus modi ut cupiditate. Quisquam repellendus sequi, quia eaque similique aut voluptate atque, molestiae molestias, accusantium facere. Nihil laudantium fugit eaque vel reprehenderit modi quos. Necessitatibus, labore, quidem. Deleniti, ad.</div>
 
 <br class = "clear" />

 <div>Dolorem at ipsum, id, praesentium nostrum ratione suscipit sapiente explicabo hic sit ab laboriosam, itaque minima, vitae inventore modi voluptas? Obcaecati fuga neque nemo eaque eum ullam explicabo assumenda. Suscipit.</div>
 
 <br class = "clear" />

 <div>Excepturi atque, tempora consequatur vel sit molestias reprehenderit! Laudantium dignissimos, iure earum rem, sunt facilis consequuntur. Ex quibusdam doloribus nisi vitae architecto, quo reiciendis et ut ducimus, alias nemo qui.</div>
 
 <br class = "clear" />

 <div>Nesciunt dicta debitis aut blanditiis adipisci ut, molestiae, animi quod maxime harum voluptatem! Magni sequi beatae sapiente reprehenderit consectetur, fuga perferendis quia nihil tempora. Odio nulla, ratione consequatur ipsa? Natus.</div>
 <br class = "clear" />

 <div>Excepturi atque, tempora consequatur vel sit molestias reprehenderit! Laudantium dignissimos, iure earum rem, sunt facilis consequuntur. Ex quibusdam doloribus nisi vitae architecto, quo reiciendis et ut ducimus, alias nemo qui.</div>
 
 <br class = "clear" />

 <div>Nesciunt dicta debitis aut blanditiis adipisci ut, molestiae, animi quod maxime harum voluptatem! Magni sequi beatae sapiente reprehenderit consectetur, fuga perferendis quia nihil tempora. Odio nulla, ratione consequatur ipsa? Natus.</div>
 <div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Modi praesentium commodi nesciunt distinctio aliquid, qui expedita a eius, iure vero odio. Magni, alias laboriosam quas culpa perspiciatis. Nostrum, quis, itaque!</div>
 
 <br class = "clear" />

 <div>Natus modi ut cupiditate. Quisquam repellendus sequi, quia eaque similique aut voluptate atque, molestiae molestias, accusantium facere. Nihil laudantium fugit eaque vel reprehenderit modi quos. Necessitatibus, labore, quidem. Deleniti, ad.</div>
 
 <br class = "clear" />

 <div>Dolorem at ipsum, id, praesentium nostrum ratione suscipit sapiente explicabo hic sit ab laboriosam, itaque minima, vitae inventore modi voluptas? Obcaecati fuga neque nemo eaque eum ullam explicabo assumenda. Suscipit.</div>
 
 <br class = "clear" />

 <div>Excepturi atque, tempora consequatur vel sit molestias reprehenderit! Laudantium dignissimos, iure earum rem, sunt facilis consequuntur. Ex quibusdam doloribus nisi vitae architecto, quo reiciendis et ut ducimus, alias nemo qui.</div>
 
 <br class = "clear" />

 <div>Nesciunt dicta debitis aut blanditiis adipisci ut, molestiae, animi quod maxime harum voluptatem! Magni sequi beatae sapiente reprehenderit consectetur, fuga perferendis quia nihil tempora. Odio nulla, ratione consequatur ipsa? Natus.</div>
 </div>

CSS kodlarımızı ise;

@import url('https://fonts.googleapis.com/css?family=Roboto');
* {margin:0;padding:0;list-style:none;box-sizing:border-box;font-family: 'Roboto', sans-serif;}
a {text-decoration: none;}
.container {width:1170px;margin:0px auto;}
.container:after {
content:'';
display: block;
clear: both;
}
.website_content {padding-top:80px;}
.fixed_menu {
background:skyblue;
position: fixed;
width:100%;
left:0;
top:0;
transition:all 0.4s linear;
-webkit-transition:all 0.4s linear;
opacity:1 !important;
}

.fixed_menu.animate {
animation:fixed 0.4s linear alternate;
-webkit-animation:fixed 0.4s linear alternate;
}

.fixed_menu:after {
content:'';
display: block;
clear: both;
}

.fixed_menu ul li {
float:left;
}
.fixed_menu ul li a {
display: block;
padding:0 25px;
line-height:55px;
color:#ffffff;
}

.fixed_menu ul li.search {
float:right;
position: relative;
line-height:55px;
}
.fixed_menu ul li.search input[type = "text"] {
width:300px;
height:35px;
padding:0 30px 0 10px;
width:100%;
border:none;
}

.fixed_menu ul li.search button {
position: absolute;
right:0;
top:0;
width:35px;
height:100%;
line-height:35px;
background:none;
border:none;
color:#565656;
text-align: center;
cursor: pointer;
}

@keyframes fixed {
0% {
transform:translateY(-85px);
-webkit-transform:translateY(-85px);
}

100% {
transform:translateY(0);
-webkit-transform:translateY(0);
}
}

@-webkit-keyframes fixed {
0% {
transform:translateY(-85px);
-webkit-transform:translateY(-85px);
}

100% {
transform:translateY(0);
-webkit-transform:translateY(0);
}
}

 

jQuery ile de sayfanın scroll hareketini yakalayarak efektli açılmasını sağlıyoruz. Kodlarımız şu şekilde;

$(function() {
$(window).scroll(function(e){
var top = $(this).scrollTop();
if(top > 100) {
$(".fixed_menu").addClass('animate');
}else {
$(".fixed_menu").removeClass('animate');
}
});
});

Örneğin canlı hali için buraya tıklayabilirsiniz.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir