{"id":37456,"date":"2026-01-05T16:40:56","date_gmt":"2026-01-05T13:40:56","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=37456"},"modified":"2026-01-05T16:40:56","modified_gmt":"2026-01-05T13:40:56","slug":"css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/","title":{"rendered":"CSS position: sticky ile Elementleri Yap\u0131\u015ft\u0131rma ve Sabitleme Rehberi"},"content":{"rendered":"<p><body><\/p>\n<h2>CSS position: sticky ile Elementleri Yap\u0131\u015ft\u0131rma ve Sabitleme Rehberi<\/h2>\n<h2>Giri\u015f<\/h2>\n<p>Web sayfalar\u0131nda kullan\u0131c\u0131 deneyimini zenginle\u015ftiren ve bilgiyi daha eri\u015filebilir k\u0131lan etkile\u015fimli \u00f6\u011feler, modern web tasar\u0131m\u0131n\u0131n olmazsa olmazlar\u0131ndand\u0131r. Bu \u00f6\u011feler aras\u0131nda, sayfa kayd\u0131r\u0131ld\u0131k\u00e7a belirli bir konumda sabit kalan ancak normal ak\u0131\u015fta da yerini koruyan elementler b\u00fcy\u00fck bir \u00f6nem ta\u015f\u0131r. \u0130\u015fte bu noktada CSS&#8217;in g\u00fc\u00e7l\u00fc konumland\u0131rma \u00f6zelliklerinden biri olan <code>position: sticky<\/code> devreye girer. Geleneksel olarak bu t\u00fcr efektler i\u00e7in JavaScript veya <code>position: fixed<\/code> kullan\u0131l\u0131rd\u0131, ancak <code>position: sticky<\/code> bu ihtiyac\u0131 \u00e7ok daha zarif ve performansl\u0131 bir \u015fekilde kar\u015f\u0131lar.<\/p>\n<p>Bu makalede, <code>position: sticky<\/code> \u00f6zelli\u011finin ne oldu\u011funu, nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131, hangi senaryolarda kullan\u0131labilece\u011fini, yayg\u0131n sorunlar\u0131 ve \u00e7\u00f6z\u00fcmlerini, di\u011fer konumland\u0131rma y\u00f6ntemleriyle farklar\u0131n\u0131 ve performans \u00fczerindeki etkilerini detayl\u0131 bir \u015fekilde inceleyece\u011fiz. Amac\u0131m\u0131z, web geli\u015ftiricilerinin bu g\u00fc\u00e7l\u00fc CSS \u00f6zelli\u011fini projelerinde etkin bir \u015fekilde kullanabilmeleri i\u00e7in kapsaml\u0131 bir rehber sunmakt\u0131r.<\/p>\n<h2>position: sticky Nedir?<\/h2>\n<p><code>position: sticky<\/code>, CSS&#8217;in konumland\u0131rma mod\u00fcllerinden biri olup, bir elementin kayd\u0131rma mekanizmas\u0131 i\u00e7inde &#8220;yap\u0131\u015fkan&#8221; bir \u015fekilde davranmas\u0131n\u0131 sa\u011flar. Temel olarak, bir element <code>position: sticky<\/code> olarak tan\u0131mland\u0131\u011f\u0131nda, normal belge ak\u0131\u015f\u0131nda <code>position: relative<\/code> gibi davran\u0131r. Ancak, sayfa kayd\u0131r\u0131ld\u0131\u011f\u0131nda ve element belirli bir kayd\u0131rma e\u015fi\u011fine (\u00f6rne\u011fin, viewport&#8217;\u0131n \u00fcst kenar\u0131ndan 0 piksel uzakta) ula\u015ft\u0131\u011f\u0131nda, element <code>position: fixed<\/code> gibi davranmaya ba\u015flar ve bu e\u015fikte sabitlenir. Elementin ait oldu\u011fu kayd\u0131rma konteyneri i\u00e7inde kalmaya devam eder ve bu konteynerin s\u0131n\u0131rlar\u0131na ula\u015ft\u0131\u011f\u0131nda tekrar normal ak\u0131\u015fa d\u00f6ner veya kaybolur.<\/p>\n<p>Bu hibrit davran\u0131\u015f, <code>sticky<\/code> \u00f6zelli\u011fini hem esnek hem de g\u00fc\u00e7l\u00fc k\u0131lar. Bir elementin ne zaman yap\u0131\u015faca\u011f\u0131 ve ne zaman yap\u0131\u015fmayaca\u011f\u0131, <code>top<\/code>, <code>right<\/code>, <code>bottom<\/code>, <code>left<\/code> gibi ofset \u00f6zellikleri ve elementin i\u00e7inde bulundu\u011fu kayd\u0131rma konteyneri taraf\u0131ndan belirlenir. Bu sayede, kullan\u0131c\u0131lar sayfay\u0131 a\u015fa\u011f\u0131 kayd\u0131r\u0131rken belirli bir men\u00fc, ba\u015fl\u0131k veya yan panelin her zaman g\u00f6r\u00fcn\u00fcr kalmas\u0131n\u0131 sa\u011flayabiliriz.<\/p>\n<h2>Nas\u0131l \u00c7al\u0131\u015f\u0131r? Temel Mekanizmalar<\/h2>\n<p><code>position: sticky<\/code>&#8216;nin \u00e7al\u0131\u015fma prensibini anlamak i\u00e7in birka\u00e7 temel kavram\u0131 iyi kavramak gerekir:<\/p>\n<h3>position: sticky \u00d6zelli\u011fi ve Ofset De\u011ferleri<\/h3>\n<p>Bir elementi yap\u0131\u015fkan hale getirmek i\u00e7in \u00f6ncelikle ona <code>position: sticky;<\/code> tan\u0131m\u0131n\u0131 vermelisiniz. Ancak sadece bu yeterli de\u011fildir. Elementin ne zaman ve nerede yap\u0131\u015faca\u011f\u0131n\u0131 belirlemek i\u00e7in en az bir ofset \u00f6zelli\u011fi (<code>top<\/code>, <code>right<\/code>, <code>bottom<\/code>, <code>left<\/code>) tan\u0131mlaman\u0131z gerekir. Bu ofset de\u011ferleri, elementin viewport&#8217;a veya kayd\u0131rma konteynerine ne kadar yakla\u015ft\u0131\u011f\u0131nda yap\u0131\u015fmaya ba\u015flayaca\u011f\u0131n\u0131 belirler.<\/p>\n<p>\u00d6rne\u011fin, <code>top: 0;<\/code> de\u011feri, elementin viewport&#8217;\u0131n \u00fcst kenar\u0131na ula\u015ft\u0131\u011f\u0131nda yap\u0131\u015fmas\u0131n\u0131 sa\u011flar. <code>bottom: 20px;<\/code> ise elementin viewport&#8217;\u0131n alt kenar\u0131na 20 piksel kala yap\u0131\u015fmaya ba\u015flayaca\u011f\u0131 anlam\u0131na gelir. Bu ofset de\u011ferleri, elementin kayd\u0131rma e\u015fi\u011fini tan\u0131mlar.<\/p>\n<h3>Scroll Container (Kayd\u0131rma Kapsay\u0131c\u0131s\u0131)<\/h3>\n<p>Sticky elementin kayd\u0131r\u0131lma davran\u0131\u015f\u0131n\u0131 etkileyen ana fakt\u00f6rlerden biri, i\u00e7inde bulundu\u011fu &#8220;kayd\u0131rma kapsay\u0131c\u0131s\u0131&#8221;d\u0131r. Bu kapsay\u0131c\u0131, <code>overflow<\/code> \u00f6zelli\u011fi (<code>overflow: auto<\/code>, <code>overflow: scroll<\/code>, <code>overflow: hidden<\/code>) ile kendi i\u00e7eri\u011fini kayd\u0131ran bir parent element olabilir. Sticky element, bu kayd\u0131rma kapsay\u0131c\u0131s\u0131n\u0131n i\u00e7inde hareket eder ve yap\u0131\u015f\u0131r. E\u011fer bir elementin kayd\u0131rma kapsay\u0131c\u0131s\u0131 yoksa (yani, <code>html<\/code> veya <code>body<\/code> gibi en \u00fcst d\u00fczey bir element i\u00e7inde kayd\u0131r\u0131l\u0131yorsa), o zaman viewport kendisi kayd\u0131rma kapsay\u0131c\u0131s\u0131 olarak i\u015flev g\u00f6r\u00fcr.<\/p>\n<h3>Sticky Container (Yap\u0131\u015fkan Kapsay\u0131c\u0131)<\/h3>\n<p><code>Sticky container<\/code>, elementin i\u00e7inde yap\u0131\u015f\u0131k kalabilece\u011fi maksimum alan\u0131 belirleyen parent elementtir. Bu, sticky elementin kendisinin bir parent&#8217;\u0131d\u0131r. Sticky element, bu kapsay\u0131c\u0131n\u0131n s\u0131n\u0131rlar\u0131 i\u00e7inde yap\u0131\u015f\u0131k kal\u0131r ve bu kapsay\u0131c\u0131n\u0131n sonuna ula\u015ft\u0131\u011f\u0131nda yap\u0131\u015fkanl\u0131\u011f\u0131n\u0131 kaybeder ve normal ak\u0131\u015f\u0131na d\u00f6ner. \u00d6rne\u011fin, bir blog yaz\u0131s\u0131n\u0131n ba\u015fl\u0131\u011f\u0131 <code>position: sticky<\/code> ise, bu ba\u015fl\u0131k kendi b\u00f6l\u00fcm\u00fcn\u00fcn (makale i\u00e7eri\u011fini i\u00e7eren div) i\u00e7inde yap\u0131\u015fkan kal\u0131r ve o b\u00f6l\u00fcm\u00fcn sonuna geldi\u011finde kaybolur. Bu, <code>position: fixed<\/code>&#8216;den \u00f6nemli bir farkt\u0131r, \u00e7\u00fcnk\u00fc <code>fixed<\/code> elementler viewport&#8217;a g\u00f6re sabitlenirken, <code>sticky<\/code> elementler kendi parent&#8217;lar\u0131n\u0131n s\u0131n\u0131rlar\u0131 i\u00e7inde kal\u0131r.<\/p>\n<h2>Uygulama ve Kullan\u0131m Senaryolar\u0131<\/h2>\n<p><code>position: sticky<\/code>&#8216;nin esnekli\u011fi, onu \u00e7e\u015fitli web tasar\u0131m senaryolar\u0131nda ideal bir \u00e7\u00f6z\u00fcm haline getirir:<\/p>\n<h3>Sabit Ba\u015fl\u0131klar ve Navigasyon \u00c7ubuklar\u0131<\/h3>\n<p>Bir web sayfas\u0131n\u0131n \u00fcst k\u0131sm\u0131ndaki men\u00fc veya logo alan\u0131, kullan\u0131c\u0131 sayfay\u0131 a\u015fa\u011f\u0131 kayd\u0131rsa bile g\u00f6r\u00fcn\u00fcr kalabilir. Bu, kullan\u0131c\u0131lar\u0131n sayfan\u0131n herhangi bir yerinden kolayca men\u00fcye eri\u015fmesini sa\u011flar.<\/p>\n<pre><code class=\"language-html\"><header class=\"sticky-header\">\n    <nav>...<\/nav>\n<\/header>\n<main>\n    <!-- Sayfa i\u00e7eri\u011fi -->\n<\/main><\/code><\/pre>\n<pre><code class=\"language-css\">.sticky-header {\n    position: sticky;\n    top: 0;\n    background-color: #fff;\n    padding: 1rem;\n    box-shadow: 0 2px 5px rgba(0,0,0,0.1);\n    z-index: 100; \/<em> Di\u011fer i\u00e7eriklerin \u00fcst\u00fcnde kalmas\u0131 i\u00e7in <\/em>\/\n}<\/code><\/pre>\n<h3>Yan Men\u00fcler ve Sidebar&#8217;lar<\/h3>\n<p>Uzun i\u00e7erikli sayfalarda, bir yan men\u00fc veya filtre paneli, kullan\u0131c\u0131 sayfay\u0131 kayd\u0131rd\u0131k\u00e7a belirli bir noktada sabitlenerek i\u00e7eri\u011fe g\u00f6z atarken ilgili ara\u00e7lara eri\u015fimi kolayla\u015ft\u0131rabilir.<\/p>\n<pre><code class=\"language-html\"><div class=\"container\">\n    <aside class=\"sticky-sidebar\">\n        <!-- Yan men\u00fc i\u00e7eri\u011fi -->\n    <\/aside>\n    <main class=\"content\">\n        <!-- Ana i\u00e7erik -->\n    <\/main>\n<\/div><\/code><\/pre>\n<pre><code class=\"language-css\">.container {\n    display: flex;\n    align-items: flex-start; \/<em> Sidebar'\u0131n \u00fcstte ba\u015flamas\u0131 i\u00e7in <\/em>\/\n}\n.sticky-sidebar {\n    position: sticky;\n    top: 20px; \/<em> Viewport'\u0131n \u00fcst\u00fcnden 20px a\u015fa\u011f\u0131da yap\u0131\u015f\u0131r <\/em>\/\n    width: 200px;\n    height: fit-content; \/<em> Sadece i\u00e7eri\u011fi kadar yer kaplar <\/em>\/\n    background-color: #f0f0f0;\n    padding: 1rem;\n    margin-right: 1rem;\n}\n.content {\n    flex-grow: 1;\n}<\/code><\/pre>\n<h3>\u0130\u00e7erik Ba\u015fl\u0131klar\u0131<\/h3>\n<p>Uzun blog yaz\u0131lar\u0131nda veya teknik dok\u00fcmanlarda, her b\u00f6l\u00fcm\u00fcn ba\u015fl\u0131\u011f\u0131, ilgili b\u00f6l\u00fcm kayd\u0131r\u0131l\u0131rken ge\u00e7ici olarak viewport&#8217;\u0131n \u00fcst k\u0131sm\u0131nda sabitlenebilir. Bu, kullan\u0131c\u0131lar\u0131n hangi b\u00f6l\u00fcm\u00fc okuduklar\u0131n\u0131 kolayca takip etmelerini sa\u011flar.<\/p>\n<pre><code class=\"language-html\"><article>\n    <section>\n        <h3 class=\"section-title\">B\u00f6l\u00fcm 1: Giri\u015f<\/h3>\n        <p>...<\/p>\n    <\/section>\n    <section>\n        <h3 class=\"section-title\">B\u00f6l\u00fcm 2: Detaylar<\/h3>\n        <p>...<\/p>\n    <\/section>\n<\/article><\/code><\/pre>\n<pre><code class=\"language-css\">.section-title {\n    position: sticky;\n    top: 0;\n    background-color: #eee;\n    padding: 0.5rem;\n    margin: 0;\n    z-index: 10;\n}<\/code><\/pre>\n<h3>Tablolar\u0131n Ba\u015fl\u0131k Sat\u0131rlar\u0131<\/h3>\n<p>Uzun tablolarda, kullan\u0131c\u0131lar tabloyu a\u015fa\u011f\u0131 kayd\u0131rd\u0131k\u00e7a ba\u015fl\u0131k sat\u0131r\u0131n\u0131n g\u00f6r\u00fcn\u00fcr kalmas\u0131, verilerin okunabilirli\u011fini art\u0131r\u0131r. Bu senaryo genellikle <code><\/p>\n<thead><\/code> etiketi i\u00e7inde <code>position: sticky<\/code> kullan\u0131larak elde edilir.<\/p>\n<h2>position: sticky Kullan\u0131m\u0131n\u0131n Detaylar\u0131<\/h2>\n<p><code>position: sticky<\/code>&#8216;yi etkili bir \u015fekilde kullanmak i\u00e7in baz\u0131 \u00f6nemli detaylara dikkat etmek gerekir.<\/p>\n<h3>Gerekli CSS \u00d6zellikleri<\/h3>\n<p>Bir elementin <code>sticky<\/code> olarak davranmas\u0131 i\u00e7in iki temel CSS \u00f6zelli\u011fi gereklidir:<br \/>\n1.  <strong><code>position: sticky;<\/code><\/strong>: Elementi yap\u0131\u015fkan konumland\u0131rma ba\u011flam\u0131na sokar.<br \/>\n2.  <strong>En az bir ofset \u00f6zelli\u011fi (<code>top<\/code>, <code>right<\/code>, <code>bottom<\/code>, <code>left<\/code>)<\/strong>: Elementin ne zaman ve nerede yap\u0131\u015faca\u011f\u0131n\u0131 belirler. Bu ofset de\u011ferleri olmadan element yap\u0131\u015fkan davran\u0131\u015f\u0131 g\u00f6stermez. \u00d6rne\u011fin, <code>top: 0;<\/code> veya <code>bottom: 10px;<\/code> gibi.<\/p>\n<h3>Taray\u0131c\u0131 Deste\u011fi ve Vendor Prefix&#8217;ler<\/h3>\n<p><code>position: sticky<\/code> g\u00fcn\u00fcm\u00fcz modern taray\u0131c\u0131lar\u0131nda olduk\u00e7a iyi bir deste\u011fe sahiptir (Chrome, Firefox, Safari, Edge). Ge\u00e7mi\u015fte <code>webkit-sticky<\/code> gibi vendor prefix&#8217;ler gerekliyken, art\u0131k \u00e7o\u011fu taray\u0131c\u0131da do\u011frudan <code>position: sticky<\/code> kullan\u0131labilir. Ancak, eski taray\u0131c\u0131lar\u0131 desteklemeniz gerekiyorsa, <code>caniuse.com<\/code> gibi kaynaklardan g\u00fcncel taray\u0131c\u0131 deste\u011fini kontrol etmek faydal\u0131 olacakt\u0131r. Genellikle, <code>position: -webkit-sticky; position: sticky;<\/code> \u015feklinde tan\u0131mlamak, maksimum uyumluluk i\u00e7in iyi bir pratiktir.<\/p>\n<h3>Sticky Konteksin \u00d6nemi<\/h3>\n<p>Daha \u00f6nce de belirtti\u011fimiz gibi, sticky elementin davran\u0131\u015f\u0131n\u0131 belirleyen en kritik fakt\u00f6rlerden biri &#8220;sticky konteks&#8221;tir. Bir elementin sticky konteksi, genellikle onun en yak\u0131n kayd\u0131rma kapsay\u0131c\u0131s\u0131d\u0131r. Ancak, bu konteksin y\u00fcksekli\u011fi ve <code>overflow<\/code> \u00f6zellikleri, sticky elementin yap\u0131\u015f\u0131p yap\u0131\u015famayaca\u011f\u0131n\u0131 do\u011frudan etkiler.<\/p>\n<p>*   <strong>Y\u00fckseklik<\/strong>: Sticky elementin yap\u0131\u015fkan kalabilece\u011fi alan, sticky konteksinin (parent element) y\u00fcksekli\u011fi ile s\u0131n\u0131rl\u0131d\u0131r. E\u011fer parent elementin y\u00fcksekli\u011fi, sticky elementin kendisi kadar veya ondan daha az ise, elementin yap\u0131\u015facak bir alan\u0131 kalmaz ve yap\u0131\u015fkan davran\u0131\u015f\u0131 g\u00f6zlemlenmez. Sticky elementin yap\u0131\u015fabilmesi i\u00e7in, parent elementinin yeterince uzun olmas\u0131, yani sticky elementin kayd\u0131r\u0131laca\u011f\u0131 kadar bo\u015f alana sahip olmas\u0131 gerekir.<br \/>\n*   <strong><code>overflow<\/code> \u00d6zelli\u011fi<\/strong>: Bu, <code>position: sticky<\/code> ile ilgili en yayg\u0131n sorun kaynaklar\u0131ndan biridir. Bir parent elementin <code>overflow<\/code> \u00f6zelli\u011fi <code>hidden<\/code>, <code>scroll<\/code> veya <code>auto<\/code> olarak ayarlanm\u0131\u015fsa, bu durum sticky elementin davran\u0131\u015f\u0131n\u0131 ciddi \u015fekilde etkileyebilir.<\/p>\n<h2>position: sticky ve overflow \u00d6zelli\u011fi<\/h2>\n<p><code>overflow<\/code> \u00f6zelli\u011fi, bir elementin i\u00e7eri\u011fi kutusunun d\u0131\u015f\u0131na ta\u015ft\u0131\u011f\u0131nda ne olaca\u011f\u0131n\u0131 kontrol eder. <code>position: sticky<\/code> ile birlikte kullan\u0131ld\u0131\u011f\u0131nda, bu \u00f6zellikler beklenmedik sonu\u00e7lara yol a\u00e7abilir.<\/p>\n<p>*   <strong><code>overflow: hidden<\/code><\/strong>: E\u011fer sticky elementin bir parent&#8217;\u0131nda <code>overflow: hidden<\/code> varsa, bu parent kendi i\u00e7eri\u011fini kayd\u0131rmaz. Dolay\u0131s\u0131yla, i\u00e7indeki sticky elementin yap\u0131\u015fabilece\u011fi bir kayd\u0131rma konteksi kalmaz ve element yap\u0131\u015fmaz. Bu, <code>sticky<\/code> davran\u0131\u015f\u0131n\u0131n tamamen engellenmesine neden olan yayg\u0131n bir durumdur.<br \/>\n*   <strong><code>overflow: scroll<\/code> veya <code>overflow: auto<\/code><\/strong>: Bu de\u011ferler, parent elementin i\u00e7eri\u011fi ta\u015ft\u0131\u011f\u0131nda kayd\u0131rma \u00e7ubuklar\u0131 olu\u015fturur. E\u011fer sticky elementin yap\u0131\u015fmas\u0131 gereken kayd\u0131rma, bu parent elementin i\u00e7indeki kayd\u0131rma ise, sticky element bu parent&#8217;\u0131n i\u00e7inde yap\u0131\u015f\u0131r. Ancak, e\u011fer sayfan\u0131n genel kayd\u0131rmas\u0131na (yani <code>body<\/code> veya <code>html<\/code> elementinin kayd\u0131rmas\u0131na) g\u00f6re yap\u0131\u015fmas\u0131 bekleniyorsa ve arada <code>overflow: scroll<\/code> veya <code>overflow: auto<\/code> olan bir parent varsa, sticky element bu ara parent&#8217;a yap\u0131\u015f\u0131r ve viewport&#8217;a g\u00f6re yap\u0131\u015fmaz. Bu durum, beklenen davran\u0131\u015ftan farkl\u0131 bir sonu\u00e7 do\u011furabilir.<\/p>\n<p><strong>\u00c7\u00f6z\u00fcm<\/strong>: E\u011fer bir sticky elementin yap\u0131\u015fmamas\u0131ndan \u015f\u00fcpheleniyorsan\u0131z, elementin parent zincirindeki <code>overflow<\/code> \u00f6zelliklerini kontrol edin. \u00d6zellikle <code>overflow: hidden<\/code> i\u00e7eren bir parent varsa, bu de\u011feri de\u011fi\u015ftirmeyi veya sticky elementin yap\u0131s\u0131n\u0131 yeniden d\u00fczenlemeyi d\u00fc\u015f\u00fcnebilirsiniz. Genellikle, <code>position: sticky<\/code> elementlerin, <code>overflow: visible<\/code> olan parent&#8217;lar i\u00e7inde ve do\u011frudan <code>body<\/code> veya <code>html<\/code> elementinin kayd\u0131rma ba\u011flam\u0131nda \u00e7al\u0131\u015fmas\u0131 hedeflenir.<\/p>\n<h2>position: sticky ve Z-index<\/h2>\n<p><code>z-index<\/code> \u00f6zelli\u011fi, konumland\u0131r\u0131lm\u0131\u015f elementlerin (yani <code>position<\/code> de\u011feri <code>static<\/code> olmayan elementlerin) \u00fcst \u00fcste binme s\u0131ras\u0131n\u0131 kontrol eder. <code>position: sticky<\/code> bir element de konumland\u0131r\u0131lm\u0131\u015f bir element oldu\u011fu i\u00e7in <code>z-index<\/code> de\u011feri ona uygulanabilir.<\/p>\n<p>Yap\u0131\u015fkan bir elementin di\u011fer i\u00e7eriklerin \u00fczerine mi yoksa alt\u0131na m\u0131 yerle\u015fece\u011fini kontrol etmek i\u00e7in <code>z-index<\/code> kullanabilirsiniz. \u00d6rne\u011fin, bir sabit ba\u015fl\u0131\u011f\u0131n sayfa i\u00e7eri\u011finin \u00fczerine gelmesini istiyorsan\u0131z, ba\u015fl\u0131k elementine y\u00fcksek bir <code>z-index<\/code> de\u011feri atayabilirsiniz (\u00f6rne\u011fin, <code>z-index: 100;<\/code>). E\u011fer yap\u0131\u015fkan bir yan men\u00fcn\u00fcn ana i\u00e7eri\u011fin alt\u0131na kaymas\u0131n\u0131 istiyorsan\u0131z, daha d\u00fc\u015f\u00fck bir <code>z-index<\/code> kullanabilirsiniz.<\/p>\n<p>Unutmay\u0131n ki <code>z-index<\/code> sadece ayn\u0131 y\u0131\u011f\u0131lm\u0131\u015f ba\u011flam (stacking context) i\u00e7indeki elementler aras\u0131nda etkilidir. Yeni bir y\u0131\u011f\u0131lm\u0131\u015f ba\u011flam, <code>position<\/code> de\u011feri <code>static<\/code> olmayan bir elementin <code>z-index<\/code> de\u011feri tan\u0131mland\u0131\u011f\u0131nda veya <code>opacity<\/code>, <code>transform<\/code>, <code>filter<\/code> gibi baz\u0131 CSS \u00f6zelliklerinin kullan\u0131lmas\u0131yla olu\u015fturulabilir.<\/p>\n<h2>position: sticky vs. Di\u011fer Konumland\u0131rma Y\u00f6ntemleri<\/h2>\n<p>CSS&#8217;te elementleri konumland\u0131rmak i\u00e7in farkl\u0131 y\u00f6ntemler bulunur. <code>position: sticky<\/code>&#8216;nin avantajlar\u0131n\u0131 daha iyi anlamak i\u00e7in onu di\u011fer y\u00f6ntemlerle kar\u015f\u0131la\u015ft\u0131rmak faydal\u0131d\u0131r:<\/p>\n<h3>position: fixed<\/h3>\n<p>*   <strong><code>position: fixed<\/code><\/strong>: Elementi viewport&#8217;a g\u00f6re sabitler. Sayfa kayd\u0131r\u0131lsa bile konumu de\u011fi\u015fmez. Kendi parent elementinin s\u0131n\u0131rlar\u0131na ba\u011fl\u0131 de\u011fildir.<br \/>\n*   <strong><code>position: sticky<\/code><\/strong>: Element \u00f6nce normal ak\u0131\u015fta <code>relative<\/code> gibi davran\u0131r. Belirli bir kayd\u0131rma e\u015fi\u011fine ula\u015ft\u0131\u011f\u0131nda <code>fixed<\/code> gibi davran\u0131r, ancak kendi &#8220;sticky konteyneri&#8221; (parent elementi) i\u00e7inde kal\u0131r ve bu konteynerin s\u0131n\u0131rlar\u0131na ula\u015ft\u0131\u011f\u0131nda tekrar normal ak\u0131\u015fa d\u00f6ner.<\/p>\n<p><strong>Fark<\/strong>: <code>fixed<\/code> elementler her zaman g\u00f6r\u00fcn\u00fcr kal\u0131r ve kendi parent&#8217;lar\u0131ndan ba\u011f\u0131ms\u0131zd\u0131r. <code>sticky<\/code> elementler ise parent&#8217;lar\u0131n\u0131n i\u00e7inde kal\u0131r ve sadece belirli bir kayd\u0131rma aral\u0131\u011f\u0131nda yap\u0131\u015fkan davran\u0131r. <code>sticky<\/code>, daha ba\u011flamsal ve daha az m\u00fcdahaleci bir sabitleme sa\u011flar.<\/p>\n<h3>position: relative<\/h3>\n<p>*   <strong><code>position: relative<\/code><\/strong>: Elementi normal belge ak\u0131\u015f\u0131nda tutar. <code>top<\/code>, <code>right<\/code>, <code>bottom<\/code>, <code>left<\/code> gibi ofset de\u011ferleri, elementin kendi normal konumuna g\u00f6re hareket etmesini sa\u011flar. Di\u011fer elementlerin konumu etkilenmez.<br \/>\n*   <strong><code>position: sticky<\/code><\/strong>: Ba\u015flang\u0131\u00e7ta <code>relative<\/code> gibi davran\u0131r. Ofset de\u011ferleri, yap\u0131\u015fma e\u015fi\u011fini belirler.<\/p>\n<p><strong>Fark<\/strong>: <code>relative<\/code> elementler asla viewport&#8217;a g\u00f6re sabitlenmez. <code>sticky<\/code> elementler ise belirli bir noktada sabitleme potansiyeline sahiptir.<\/p>\n<h3>position: absolute<\/h3>\n<p>*   <strong><code>position: absolute<\/code><\/strong>: Elementi normal belge ak\u0131\u015f\u0131ndan \u00e7\u0131kar\u0131r ve en yak\u0131n konumland\u0131r\u0131lm\u0131\u015f (yani <code>position<\/code> de\u011feri <code>static<\/code> olmayan) parent elementine g\u00f6re konumland\u0131r\u0131r. E\u011fer konumland\u0131r\u0131lm\u0131\u015f parent yoksa, <code>html<\/code> elementine g\u00f6re konumlan\u0131r.<br \/>\n*   <strong><code>position: sticky<\/code><\/strong>: Normal ak\u0131\u015fta kal\u0131r, bu da di\u011fer elementlerin konumunu etkilemez.<\/p>\n<p><strong>Fark<\/strong>: <code>absolute<\/code> elementler ak\u0131\u015ftan \u00e7\u0131kar\u0131ld\u0131\u011f\u0131 i\u00e7in di\u011fer elementlerin konumunu etkiler. <code>sticky<\/code> elementler ise ak\u0131\u015fta kal\u0131r ve sadece yap\u0131\u015ft\u0131\u011f\u0131nda g\u00f6rsel olarak sabitlenir. <code>sticky<\/code>, daha az JavaScript gerektirmesi ve taray\u0131c\u0131 taraf\u0131ndan daha iyi optimize edilmesi nedeniyle genellikle JavaScript tabanl\u0131 scroll olay dinleyicilerine g\u00f6re daha performansl\u0131d\u0131r.<\/p>\n<h2>Performans ve Eri\u015filebilirlik<\/h2>\n<p><code>position: sticky<\/code>, modern taray\u0131c\u0131larda genellikle iyi bir performans sergiler. Taray\u0131c\u0131lar bu \u00f6zelli\u011fi do\u011frudan i\u015fledi\u011fi i\u00e7in, JavaScript tabanl\u0131 kayd\u0131rma olay dinleyicileriyle (scroll event listeners) manuel olarak uygulanan sabitleme \u00e7\u00f6z\u00fcmlerine g\u00f6re daha ak\u0131c\u0131 ve daha az CPU\/GPU kullan\u0131m\u0131 gerektirir. Bu, \u00f6zellikle mobil cihazlarda veya d\u00fc\u015f\u00fck performansl\u0131 sistemlerde \u00f6nemli bir avantajd\u0131r.<\/p>\n<p>Eri\u015filebilirlik a\u00e7\u0131s\u0131ndan, <code>position: sticky<\/code>&#8216;nin kendisi do\u011frudan bir eri\u015filebilirlik sorunu yaratmaz. Ancak, yap\u0131\u015fkan elementlerin tasar\u0131m\u0131 ve i\u00e7eri\u011fi eri\u015filebilir olmal\u0131d\u0131r:<br \/>\n*   <strong>Odak Y\u00f6netimi<\/strong>: Yap\u0131\u015fkan men\u00fcler veya navigasyon \u00e7ubuklar\u0131 klavye ile eri\u015filebilir olmal\u0131 ve odak s\u0131ras\u0131 mant\u0131kl\u0131 olmal\u0131d\u0131r.<br \/>\n*   <strong>Kontrast<\/strong>: Yap\u0131\u015fkan elementlerin arka plan\u0131 ile \u00fczerindeki metin veya simgeler aras\u0131nda yeterli kontrast olmal\u0131d\u0131r.<br \/>\n*   <strong>\u00c7ak\u0131\u015fma<\/strong>: Yap\u0131\u015fkan elementler, sayfa i\u00e7eri\u011fiyle \u00e7ak\u0131\u015farak \u00f6nemli bilgileri gizlememelidir. \u00d6zellikle k\u00fc\u00e7\u00fck ekranlarda veya yak\u0131nla\u015ft\u0131r\u0131lm\u0131\u015f g\u00f6r\u00fcn\u00fcmlerde bu duruma dikkat edilmelidir.<\/p>\n<p>Kullan\u0131c\u0131 deneyimi a\u00e7\u0131s\u0131ndan, <code>sticky<\/code> elementler bilgiyi daha eri\u015filebilir k\u0131lar ve navigasyonu kolayla\u015ft\u0131r\u0131r. Do\u011fru kullan\u0131ld\u0131\u011f\u0131nda, sayfa d\u00fczenine dinamik bir his katarak kullan\u0131c\u0131lar\u0131n ilgisini canl\u0131 tutabilir.<\/p>\n<h2>Yayg\u0131n Sorunlar ve \u00c7\u00f6z\u00fcmleri<\/h2>\n<p><code>position: sticky<\/code> kullan\u0131rken kar\u015f\u0131la\u015f\u0131lan baz\u0131 yayg\u0131n sorunlar ve bunlar\u0131n \u00e7\u00f6z\u00fcmleri \u015funlard\u0131r:<\/p>\n<h3>Element Yap\u0131\u015fm\u0131yor<\/h3>\n<p>Bu, <code>position: sticky<\/code> ile ilgili en s\u0131k kar\u015f\u0131la\u015f\u0131lan sorundur.<br \/>\n*   <strong>\u00c7\u00f6z\u00fcm 1: Ofset De\u011feri Eksik<\/strong>: <code>position: sticky<\/code> tan\u0131mlad\u0131\u011f\u0131n\u0131zdan ve en az bir ofset \u00f6zelli\u011fi (<code>top<\/code>, <code>right<\/code>, <code>bottom<\/code>, <code>left<\/code>) belirtti\u011finizden emin olun. \u00d6rne\u011fin, <code>top: 0;<\/code> veya <code>bottom: 50px;<\/code>.<br \/>\n*   <strong>\u00c7\u00f6z\u00fcm 2: Sticky Konteyner Y\u00fcksekli\u011fi Yetersiz<\/strong>: Sticky elementin parent elementinin (sticky konteyner) y\u00fcksekli\u011fi, sticky elementin yap\u0131\u015fabilece\u011fi kadar uzun olmal\u0131d\u0131r. E\u011fer parent elementin y\u00fcksekli\u011fi, sticky elementin kendisi kadar veya daha az ise, elementin yap\u0131\u015facak bir alan\u0131 kalmaz. Parent&#8217;\u0131n <code>height<\/code> veya <code>min-height<\/code> de\u011ferlerini kontrol edin ve gerekirse art\u0131r\u0131n.<br \/>\n*   <strong>\u00c7\u00f6z\u00fcm 3: <code>overflow<\/code> \u00d6zelli\u011fi Sorunu<\/strong>: Sticky elementin parent elementlerinden herhangi birinde <code>overflow: hidden<\/code>, <code>overflow: scroll<\/code>, <code>overflow: auto<\/code> gibi de\u011ferler olup olmad\u0131\u011f\u0131n\u0131 kontrol edin. Bu de\u011ferler, sticky davran\u0131\u015f\u0131n\u0131 engelleyebilir veya beklenenden farkl\u0131 bir kayd\u0131rma ba\u011flam\u0131nda yap\u0131\u015fmaya neden olabilir. \u00c7\u00f6z\u00fcm, bu <code>overflow<\/code> de\u011ferlerini <code>visible<\/code> olarak de\u011fi\u015ftirmek veya sticky elementin yap\u0131s\u0131n\u0131 yeniden d\u00fczenlemektir.<br \/>\n*   <strong>\u00c7\u00f6z\u00fcm 4: <code>margin-collapse<\/code> (Kenar Bo\u015flu\u011fu \u00c7ak\u0131\u015fmas\u0131)<\/strong>: Nadiren de olsa, sticky elementin <code>margin-top<\/code> de\u011feri, yap\u0131\u015fma e\u015fi\u011fi olan <code>top<\/code> de\u011feriyle \u00e7ak\u0131\u015fabilir ve bu da yap\u0131\u015fmay\u0131 etkileyebilir. <code>margin<\/code> yerine <code>padding<\/code> kullanmak veya <code>border<\/code> eklemek gibi \u00e7\u00f6z\u00fcmler denenebilir.<\/p>\n<h3>Beklenenden Erken Yap\u0131\u015f\u0131yor veya Hi\u00e7 Yap\u0131\u015fm\u0131yor<\/h3>\n<p>*   <strong>\u00c7\u00f6z\u00fcm<\/strong>: Ofset de\u011ferlerini (<code>top<\/code>, <code>right<\/code>, <code>bottom<\/code>, <code>left<\/code>) ve sticky konteynerin konumunu dikkatlice kontrol edin. Bazen, \u00fcstteki ba\u015fka bir elementin y\u00fcksekli\u011fi veya <code>margin<\/code> de\u011feri, sticky elementin beklenen kayd\u0131rma noktas\u0131ndan \u00f6nce veya sonra yap\u0131\u015fmas\u0131na neden olabilir.<\/p>\n<h3>Z-index Sorunlar\u0131<\/h3>\n<p>Sticky elementin di\u011fer elementlerin arkas\u0131nda kalmas\u0131 veya istenmeyen bir \u015fekilde \u00fcst\u00fcne gelmesi.<br \/>\n*   <strong>\u00c7\u00f6z\u00fcm<\/strong>: Sticky elemente uygun bir <code>z-index<\/code> de\u011feri atay\u0131n. Unutmay\u0131n ki <code>z-index<\/code> sadece ayn\u0131 y\u0131\u011f\u0131lm\u0131\u015f ba\u011flam i\u00e7indeki elementler aras\u0131nda etkilidir. E\u011fer sticky elementiniz farkl\u0131 bir y\u0131\u011f\u0131lm\u0131\u015f ba\u011flam i\u00e7indeyse, <code>z-index<\/code> bekledi\u011finiz gibi \u00e7al\u0131\u015fmayabilir. Y\u0131\u011f\u0131lm\u0131\u015f ba\u011flamlar\u0131 anlamak ve y\u00f6netmek bu t\u00fcr sorunlar\u0131 \u00e7\u00f6zmek i\u00e7in \u00f6nemlidir.<\/p>\n<h3>Flexbox ve Grid ile Uyumluluk<\/h3>\n<p>Flexbox veya CSS Grid d\u00fczeni i\u00e7inde <code>position: sticky<\/code> kullan\u0131rken baz\u0131 \u00f6zel durumlar ortaya \u00e7\u0131kabilir.<br \/>\n*   <strong>Flex Konteynerler<\/strong>: Bir flex konteynerin kendisi veya i\u00e7indeki \u00f6\u011feleri <code>overflow<\/code> de\u011ferleriyle sticky davran\u0131\u015f\u0131n\u0131 etkileyebilir. \u00d6zellikle <code>align-items<\/code> veya <code>justify-content<\/code> gibi \u00f6zellikler, flex \u00f6\u011felerinin konumunu de\u011fi\u015ftirebilir ve bu da sticky davran\u0131\u015f\u0131n\u0131 etkileyebilir.<br \/>\n*   <strong>Grid Konteynerler<\/strong>: Benzer \u015fekilde, grid \u00f6\u011feleri i\u00e7inde sticky kullan\u0131rken, grid alanlar\u0131n\u0131n boyutu ve <code>overflow<\/code> de\u011ferleri sticky davran\u0131\u015f\u0131n\u0131 belirleyebilir.<\/p>\n<p><strong>Genel \u00c7\u00f6z\u00fcm<\/strong>: Bu t\u00fcr durumlarda, sticky elementin ve parent&#8217;lar\u0131n\u0131n CSS \u00f6zelliklerini dikkatlice incelemek, taray\u0131c\u0131 geli\u015ftirici ara\u00e7lar\u0131n\u0131 kullanarak elementin computed (hesaplanm\u0131\u015f) stilini ve layout&#8217;unu kontrol etmek sorun giderme i\u00e7in en iyi yakla\u015f\u0131md\u0131r.<\/p>\n<h2>\u00d6rnek Kod Par\u00e7ac\u0131klar\u0131<\/h2>\n<h3>Basit Bir Sabit Ba\u015fl\u0131k \u00d6rne\u011fi<\/h3>\n<p>Sayfa kayd\u0131r\u0131ld\u0131\u011f\u0131nda en \u00fcstte kalan bir ba\u015fl\u0131k.<\/p>\n<pre><code class=\"language-html\"><style>\n    body {\n        margin: 0;\n        font-family: Arial, sans-serif;\n        height: 200vh; \/<em> Kayd\u0131rma \u00e7ubu\u011fu olu\u015fturmak i\u00e7in <\/em>\/\n    }\n    .main-header {\n        background-color: #333;\n        color: white;\n        padding: 1rem;\n        text-align: center;\n        position: sticky;\n        top: 0;\n        z-index: 1000;\n        box-shadow: 0 2px 5px rgba(0,0,0,0.2);\n    }\n    .content-section {\n        padding: 2rem;\n        margin-top: 1rem;\n        background-color: #f4f4f4;\n        border-bottom: 1px solid #ddd;\n    }\n    .content-section:nth-child(even) {\n        background-color: #e9e9e9;\n    }\n<\/style>\n\n<header class=\"main-header\">\n    <h2>Web Sitemizin Ba\u015fl\u0131\u011f\u0131<\/h2>\n<\/header>\n\n<div class=\"content-section\">\n    <h3>B\u00f6l\u00fcm 1: Giri\u015f<\/h3>\n    <p>Bu, sayfam\u0131z\u0131n ilk b\u00f6l\u00fcm\u00fcd\u00fcr. Sayfay\u0131 a\u015fa\u011f\u0131 kayd\u0131rd\u0131\u011f\u0131n\u0131zda \u00fcstteki ba\u015fl\u0131\u011f\u0131n sabit kald\u0131\u011f\u0131n\u0131 g\u00f6receksiniz. position: sticky \u00f6zelli\u011fi sayesinde bu davran\u0131\u015f kolayca elde edilebilir.<\/p>\n    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.<\/p>\n<\/div>\n<div class=\"content-section\">\n    <h3>B\u00f6l\u00fcm 2: Detaylar<\/h3>\n    <p>\u0130kinci b\u00f6l\u00fcmde, konunun derinliklerine iniyoruz. Yap\u0131\u015fkan elementlerin nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 ve farkl\u0131 senaryolarda nas\u0131l kullan\u0131labilece\u011fini daha iyi anlamak i\u00e7in bu \u00f6rnek \u00f6nemlidir.<\/p>\n    <p>Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.<\/p>\n<\/div>\n<div class=\"content-section\">\n    <h3>B\u00f6l\u00fcm 3: Uygulamalar<\/h3>\n    <p>Son b\u00f6l\u00fcmde, \u00f6\u011frendiklerimizi ger\u00e7ek d\u00fcnya uygulamalar\u0131na nas\u0131l aktarabilece\u011fimizi tart\u0131\u015f\u0131yoruz. Sabit navigasyonlar, yan men\u00fcler ve i\u00e7erik ba\u015fl\u0131klar\u0131 gibi kullan\u0131m alanlar\u0131.<\/p>\n    <p>Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet.<\/p>\n<\/div><\/code><\/pre>\n<h3>Yan Men\u00fc \u00d6rne\u011fi (Sticky Sidebar)<\/h3>\n<p>Sayfa kayd\u0131r\u0131ld\u0131\u011f\u0131nda belirli bir alanda sabit kalan bir yan men\u00fc.<\/p>\n<pre><code class=\"language-html\"><style>\n    body {\n        margin: 0;\n        font-family: Arial, sans-serif;\n    }\n    .container {\n        display: flex;\n        padding: 20px;\n        min-height: 150vh; \/<em> Kayd\u0131rma \u00e7ubu\u011fu olu\u015fturmak i\u00e7in <\/em>\/\n    }\n    .sidebar {\n        width: 200px;\n        margin-right: 20px;\n        background-color: #f8f8f8;\n        padding: 15px;\n        border: 1px solid #ddd;\n        position: sticky;\n        top: 20px; \/<em> Viewport'\u0131n \u00fcst\u00fcnden 20px a\u015fa\u011f\u0131da yap\u0131\u015f\u0131r <\/em>\/\n        align-self: flex-start; \/<em> Flex item olarak \u00fcstte hizalamak i\u00e7in <\/em>\/\n        height: fit-content; \/<em> \u0130\u00e7eri\u011fi kadar y\u00fckseklik kaplar <\/em>\/\n    }\n    .main-content {\n        flex-grow: 1;\n        background-color: #fff;\n        padding: 15px;\n        border: 1px solid #eee;\n    }\n    .main-content p {\n        line-height: 1.6;\n        margin-bottom: 1em;\n    }\n<\/style>\n\n<div class=\"container\">\n    <aside class=\"sidebar\">\n        <h3>Navigasyon<\/h3>\n        <ul>\n            <li><a href=\"#\">Ana Sayfa<\/a><\/li>\n            <li><a href=\"#\">Hakk\u0131m\u0131zda<\/a><\/li>\n            <li><a href=\"#\">Hizmetler<\/a><\/li>\n            <li><a href=\"#\">\u0130leti\u015fim<\/a><\/li>\n        <\/ul>\n        <p>Bu yan men\u00fc, sayfa kayd\u0131r\u0131ld\u0131\u011f\u0131nda belirli bir noktada sabit kal\u0131r.<\/p>\n    <\/aside>\n    <main class=\"main-content\">\n        <h2>Ana \u0130\u00e7erik Ba\u015fl\u0131\u011f\u0131<\/h2>\n        <p>Bu ana i\u00e7erik alan\u0131d\u0131r. Yan men\u00fcn\u00fcn nas\u0131l yap\u0131\u015ft\u0131\u011f\u0131n\u0131 g\u00f6rmek i\u00e7in sayfay\u0131 a\u015fa\u011f\u0131 kayd\u0131r\u0131n. Sidebar, kendi parent'\u0131 olan .container i\u00e7inde yap\u0131\u015fkan kal\u0131r.<\/p>\n        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.<\/p>\n        <p>Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.<\/p>\n        <p>Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet.<\/p>\n        <p>Consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur?<\/p>\n        <p>Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?<\/p>\n        <p>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus.<\/p>\n        <p>Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.<\/p>\n    <\/main>\n<\/div><\/code><\/pre>\n<h2>Sonu\u00e7<\/h2>\n<p><code>position: sticky<\/code>, modern web geli\u015ftiricilerinin ara\u00e7 kutusunda \u00f6nemli bir yer edinen, g\u00fc\u00e7l\u00fc ve esnek bir CSS \u00f6zelli\u011fidir. Sabit ba\u015fl\u0131klar, yan men\u00fcler, i\u00e7erik ba\u015fl\u0131klar\u0131 ve daha bir\u00e7ok interaktif \u00f6\u011feyi, JavaScript&#8217;e ihtiya\u00e7 duymadan, performansl\u0131 ve eri\u015filebilir bir \u015fekilde olu\u015fturmak i\u00e7in ideal bir \u00e7\u00f6z\u00fcmd\u00fcr.<\/p>\n<p>Bu makalede, <code>position: sticky<\/code>&#8216;nin temel \u00e7al\u0131\u015fma prensiplerini, ofset de\u011ferlerinin ve &#8220;sticky konteks&#8221;in \u00f6nemini, yayg\u0131n kullan\u0131m senaryolar\u0131n\u0131 ve <code>overflow<\/code> gibi \u00f6zelliklerle olan etkile\u015fimini detayl\u0131 bir \u015fekilde ele ald\u0131k. Ayr\u0131ca, <code>fixed<\/code> ve <code>relative<\/code> gibi di\u011fer konumland\u0131rma y\u00f6ntemleriyle kar\u015f\u0131la\u015ft\u0131rarak <code>sticky<\/code>&#8216;nin benzersiz avantajlar\u0131n\u0131 vurgulad\u0131k.<\/p>\n<p>Unutulmamal\u0131d\u0131r ki, her g\u00fc\u00e7l\u00fc ara\u00e7 gibi <code>position: sticky<\/code>&#8216;nin de kendine \u00f6zg\u00fc n\u00fcanslar\u0131 ve potansiyel tuzaklar\u0131 vard\u0131r. \u00d6zellikle <code>overflow<\/code> \u00f6zelli\u011fi ve sticky elementin parent elementinin y\u00fcksekli\u011fi gibi fakt\u00f6rler, elementin beklenen \u015fekilde yap\u0131\u015fmas\u0131n\u0131 engelleyebilir. Bu detaylara dikkat ederek ve taray\u0131c\u0131 geli\u015ftirici ara\u00e7lar\u0131n\u0131 etkin bir \u015fekilde kullanarak, <code>position: sticky<\/code>&#8216;yi projelerinizde sorunsuz bir \u015fekilde uygulayabilir ve kullan\u0131c\u0131 deneyimini \u00f6nemli \u00f6l\u00e7\u00fcde geli\u015ftirebilirsiniz.<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"CSS position: sticky ile Elementleri Yap\u0131\u015ft\u0131rma ve Sabitleme Rehberi\nGiri\u015f\nWeb sayfalar\u0131nda kullan\u0131c\u0131 deneyimini zenginle\u015ftiren ve bilgiyi da","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[126],"tags":[],"class_list":{"0":"post-37456","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-css3-html5","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>CSS position: sticky ile Elementleri Yap\u0131\u015ft\u0131rma ve Sabitleme Rehberi - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"CSS position: sticky ile Elementleri Yap\u0131\u015ft\u0131rma ve Sabitleme Rehberi\" \/>\n<meta property=\"og:description\" content=\"CSS position: sticky ile Elementleri Yap\u0131\u015ft\u0131rma ve Sabitleme Rehberi Giri\u015f Web sayfalar\u0131nda kullan\u0131c\u0131 deneyimini zenginle\u015ftiren ve bilgiyi da\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-01-05T13:40:56+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"18 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"CSS position: sticky ile Elementleri Yap\u0131\u015ft\u0131rma ve Sabitleme Rehberi\",\"datePublished\":\"2026-01-05T13:40:56+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/\"},\"wordCount\":2875,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"CSS3 - HTML5\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/\",\"name\":\"CSS position: sticky ile Elementleri Yap\u0131\u015ft\u0131rma ve Sabitleme Rehberi - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-01-05T13:40:56+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"CSS position: sticky ile Elementleri Yap\u0131\u015ft\u0131rma ve Sabitleme Rehberi\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"CSS position: sticky ile Elementleri Yap\u0131\u015ft\u0131rma ve Sabitleme Rehberi - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/","og_locale":"tr_TR","og_type":"article","og_title":"CSS position: sticky ile Elementleri Yap\u0131\u015ft\u0131rma ve Sabitleme Rehberi","og_description":"CSS position: sticky ile Elementleri Yap\u0131\u015ft\u0131rma ve Sabitleme Rehberi Giri\u015f Web sayfalar\u0131nda kullan\u0131c\u0131 deneyimini zenginle\u015ftiren ve bilgiyi da","og_url":"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-01-05T13:40:56+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"18 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"CSS position: sticky ile Elementleri Yap\u0131\u015ft\u0131rma ve Sabitleme Rehberi","datePublished":"2026-01-05T13:40:56+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/"},"wordCount":2875,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["CSS3 - HTML5"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/","url":"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/","name":"CSS position: sticky ile Elementleri Yap\u0131\u015ft\u0131rma ve Sabitleme Rehberi - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-01-05T13:40:56+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/css-position-sticky-ile-elementleri-yapistirma-ve-sabitleme-rehberi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"CSS position: sticky ile Elementleri Yap\u0131\u015ft\u0131rma ve Sabitleme Rehberi"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/37456","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=37456"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/37456\/revisions"}],"predecessor-version":[{"id":37457,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/37456\/revisions\/37457"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=37456"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=37456"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=37456"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}