İnternette biraz vakit geçirdiyseniz, gezinirken aniden beliren bir reklam görmüşsünüzdür. Muhtemelen birine tıkladınız da.
PHP popup'larından React popup'larına ya da modallara kadar, web siteniz için popup oluşturmanın birçok yolu var. Bu rehberin konusu bootstrap modal popuplar.
Bootstrap popup, kullanıcıların dikkatini çekmesi gereken bir mesaj veya bilgi gösteren küçük bir penceredir.
Ziyaretçinin dikkatini çeker ve onu sitenizde bir sonraki adıma yönlendirir, örneğin bülteninize abone olmak, bir eKitap indirmek veya satış ekibinizle bir görüşme ayarlamak gibi. Doğru kullanıldığında modal popuplar yardımıyla abonelerinizi artırabilir, daha fazla lead elde edebilir ve satışlarınızı büyütebilirsiniz.
Aşağıda Bootstrap modal popupın ne olduğunu ve web siteniz için nasıl oluşturulacağını anlatıyoruz. Tüm kod örneklerini 1 Ekim 2026'da getbootstrap.com'daki güncel sürüm olan Bootstrap 5.3.8'e göre kontrol ettik.
Yazının sonunda, popup'ları kod yazmadan oluşturup yayınlamak isteyenler için bootstrap popuplara daha iyi bir alternatif var.

Bootstrap Modal Popup Nedir?
Bir Bootstrap modal popup, diyalog kutusu/penceresi olup, web sitenizin üzerinde görünen bir bileşendir.
Etkileşimlidir; bir başlık (metin veya resim), biraz metin ve en az bir buton içerir. Bootstrap modalları tasarım itibarıyla duyarlıdır ve geniş tarayıcı uyumluluğuna sahiptir. Kodu temiz, belgeleri de detaylı.
Bootstrap popup, sayfayı yeniden yüklemeden ek bilgi gösterir. Ziyaretçi ilgili bilgiyi popup kutusunda görür ve okuduğu sayfadan ayrılmaz.
Bootstrap 5.3 modal belgelerine göre modallar HTML, CSS ve JavaScript ile oluşturulur. Belgedeki her şeyin üzerinde dururlar, kaydırmayı <body> öğesinden alıp modal içeriğine verirler ve ziyaretçi arka plana tıkladığında kapanırlar. Bootstrap aynı anda yalnızca bir modal penceresini destekler; iç içe modallar desteklenmez.
Geliştiriciler için Bootstrap, tasarımla fazla uğraşmadan iyi görünen bir siteyi hızla yayına almak demek. Tasarımcılara ise ilginç Bootstrap temaları oluşturmak için sağlam bir temel sağlar.
Bootstrap modal popup'ın yaygın kullanım alanları:
- İletişim/formları
- Potansiyel müşteri oluşturma/kayıt formları
- Giriş/kayıt formları
- Arama formları
- Uyarılar/bildirimler
- Yardım/ipuçları
- Tam ekran resim ve videolar gösterme
Bootstrap modal eklentisiyle esnek diyalog kutuları kurmak kolay. Hepsinin temel yapısı aynı: bir başlık, bir gövde ve eylem butonlarının durduğu bir altbilgi. Aşağıdaki örnek de bu yapıyı izliyor.
Modal, popover mı, tooltip mi: hangi Bootstrap popup'ına ihtiyacınız var?
"Bootstrap popup" üç farklı bileşen anlamına gelebilir. Arama yapanların çoğu modal'ı arıyor; popover ikinci en yaygın anlam.
| Bileşen | Nasıl görünür | Ne zaman açılır | Ne için kullanılır |
|---|---|---|---|
Modal (.modal) |
Tüm sayfanın üzerinde, arka planı karartılmış bir diyalog | Bir buton, bir bağlantı veya JavaScript | Formlar, onaylar, kayıtlar, videolar |
Popover (data-bs-toggle="popover") |
Bir öğeye bağlı, başlıklı küçük bir kutu | Tıklama (veya odak, veya üzerine gelme) | Bir butonun ya da terimin yanında kısa bir açıklama |
Tooltip (data-bs-toggle="tooltip") |
Tek satırlık bir etiket | Üzerine gelme veya klavye odağı | Simgeli bir butonu adlandırmak |
Bu rehberin geri kalanı önce modal'ı kuruyor, ardından popover'ı kendi kısa bölümünde gösteriyor.
Bootstrap 5.3 modal popup nasıl oluşturulur
Beş adım sizi boş bir sayfadan, tıklamayla veya bir gecikmeden sonra açılan ve geri dönen ziyaretçileri bıktırmayan bir modal'a götürür.
Adım 1: Bootstrap 5.3'ü CDN'den yükleyin
CSS'i <head> içine, JavaScript paketini kapanış </body> etiketinden önceye koyun. Bunlar getbootstrap.com'un 5.3.8 için listelediği jsDelivr bağlantıları ve bütünlük (integrity) değerleridir:
<!-- <head> içinde -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-sRIl4kxILFvY47J16cr9ZwB07vP4J8+LH7qKQnuqkuIAvNWLzeN8tE5YBujZqJLB" crossorigin="anonymous">
<!-- </body> öncesinde -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/js/bootstrap.bundle.min.js" integrity="sha384-FKyoEForCGlyvwx9Hj09JcYn3nv7wiPVlz7YYwJrWVcXK/BmnVDxM+D2scQbITxI" crossorigin="anonymous"></script>
Paket, popover ve tooltip'lerin ihtiyaç duyduğu Popper'ı da içerir. Tek başına bir modal bootstrap.min.js ile de çalışır, ama paket sizi sonradan ikinci bir karardan kurtarır.
Adım 2: Modal kodunu ekleyin
Modal HTML'ini bir başlığın ya da position: fixed olan başka bir öğenin içine değil, <body> öğesinin en üst seviyesine yerleştirin. İşte bu yazının ilk sürümündeki onay modal'ı, Bootstrap 5.3 için ve ekran okuyucuların ihtiyaç duyduğu niteliklerle güncellenmiş hali:
<!-- Modal HTML -->
<div id="myModal" class="modal fade" tabindex="-1" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="myModalLabel">Onay</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Kapat"></button>
</div>
<div class="modal-body">
<p>Dokümanı kapatmadan önce değişiklikleri kaydetmek istiyor musunuz?</p>
<p class="text-secondary"><small>Kaydetmeseniz, tüm değişiklikler silinecektir.</small></p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">İptal</button>
<button type="button" class="btn btn-primary">Değişiklikleri kaydet</button>
</div>
</div>
</div>
</div>
Onay örneği Tutorial Republic'in Bootstrap modal eğitiminden uyarlandı. Açıldığında şöyle görünür:

Adım 3: Modal'ı bir butonla veya JavaScript ile açın
Aşağıdaki iki yol da aynı modal'ı açar. Data nitelikleri sizin yazacağınız bir betik gerektirmez; JavaScript API'sini ise modal'ı tıklama dışında bir şey açacaksa kullanırsınız.
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#myModal">
Onayı aç
</button>
<button type="button" class="btn btn-primary" id="openConfirmation">
Onayı aç
</button>
<script>
const myModal = bootstrap.Modal.getOrCreateInstance('#myModal');
document.querySelector('#openConfirmation').addEventListener('click', () => {
myModal.show();
});
</script>
getOrCreateInstance, Bootstrap'in o öğe için zaten oluşturduğu modal'ı döndürür ya da yenisini oluşturur; böylece aynı diyaloğu kontrol etmeye çalışan iki örnekle karşılaşmazsınız.
data-toggle, data-target ve data-dismiss kullanıyordu; Bootstrap 5 bunları yok sayar. 5.3'teki her nitelik data-bs- ile başlar. İkisini aynı kodda karıştırmak, bir modal'ın açılmamasının en yaygın nedenidir.Adım 4: Modal'ı sayfa yüklendikten sonra, bir gecikmeyle gösterin
“Belge nesne modeli” JavaScript ile yüklendiğinde pencere kendiliğinden açılabilir. Bu yazının ilk sürümü bunu jQuery ile, sayfa yüklendiği an yapıyordu. Bootstrap 5'te jQuery'ye ihtiyacınız yok; modal'ı sayfa yüklendiği an açmanız da gerekmiyor:
<script>
document.addEventListener('DOMContentLoaded', () => {
const myModal = new bootstrap.Modal('#myModal');
setTimeout(() => myModal.show(), 5000); // 5 saniye bekle
});
</script>
Peki neden beklemeli? Popupsmart'ın 2026 popup kıyaslamasında görünmeden önce bekleyen popup'lar, sayfa yüklenir yüklenmez gösterilenlere karşı %0,83'e %0,61 dönüştürüyor (medyan kampanya); yön verinin her yılında aynı kalıyor ama fark istatistiksel olarak güvenilir değil, bu yüzden bir kural değil, eğilim olarak okuyun. Ne kadar beklediğiniz daha az önemli: gecikme süresinin kendisi (0-5 saniyeye karşı 21-60 saniye) dönüşümde ölçülebilir bir fark yaratmıyor. Popup zamanlaması rehberimiz diğer tetikleyicileri anlatıyor.
$("#myModal").modal("show"); modal'ı açar. Sadece artık bunun için jQuery yüklemeniz gerekmiyor.Adım 5: Modal'ın ne sıklıkla gösterileceğini sınırlayın
Her sayfa görüntülemesinde açılan bir modal, geri dönen ziyaretçileri bıktırmanın en hızlı yoludur. Bootstrap'te bir sıklık ayarı yok, bu yüzden gösterimleri localStorage içinde saklayın:
<script>
const KEY = 'myModalViews';
const WEEK = 7 24 60 60 1000;
document.addEventListener('DOMContentLoaded', () => {
const now = Date.now();
const views = JSON.parse(localStorage.getItem(KEY) || '[]').filter((t) => now - t < WEEK);
if (views.length >= 2) return; // haftada en fazla iki kez
const myModal = new bootstrap.Modal('#myModal');
setTimeout(() => {
myModal.show();
views.push(now);
localStorage.setItem(KEY, JSON.stringify(views));
}, 5000);
});
</script>
Neden iki? Popup'ı ikinci kez göstermek aynı kampanya içinde dönüşümde ölçülebilir bir düşüşe yol açmadı; düşüş üçüncü gösterimle başlıyor. Bir ziyaretçi modal içindeki formu gönderdiğinde ayrı bir işaret kaydedin ve modal'ı ona hiç göstermeyin.
Bootstrap Modal Boyutunu Değiştirme
Modal pencereler varsayılan olarak orta boyuttadır. Boyutu değiştirmek için küçük modallar için .modal-sm, büyük modallar için .modal-lg sınıfını ekleyin. Bootstrap 5.3 bunlara çok büyük modallar için .modal-xl sınıfını ve bir dizi tam ekran sınıfını ekliyor.
Küçük Modal
<div class="modal-dialog modal-sm">
Büyük Modal
<div class="modal-dialog modal-lg">
Yalnızca telefonlarda tam ekran
<div class="modal-dialog modal-fullscreen-sm-down">
.modal-dialog üzerindeki sınıf |
Bootstrap 5.3'teki sonuç |
|---|---|
.modal-sm |
Küçük, en fazla 300px genişlik |
| yok | Varsayılan, en fazla 500px genişlik |
.modal-lg |
Büyük, en fazla 800px genişlik |
.modal-xl |
Çok büyük, en fazla 1140px genişlik |
.modal-fullscreen |
Her boyutta tüm görüntü alanını kaplar |
.modal-fullscreen-sm-down |
576px altında tam ekran, üstünde normal |
.modal-dialog-centered |
Dikeyde ortalanır |
.modal-dialog-scrollable |
Sayfa değil, modal'ın gövdesi kayar |
İki seçenek daha boyutu değil davranışı değiştirir. data-bs-backdrop="static" ziyaretçi dışarı tıkladığında modal'ı açık tutar, data-bs-keyboard="false" ise Escape tuşunun onu kapatmasını engeller; bunları yalnızca ziyaretçinin bitirmesi gereken bir adım için kullanın, asla bir pazarlama popup'ı için değil. .fade sınıfını kaldırmak animasyonu kapatır. Bootstrap prefers-reduced-motion ayarına zaten uyar.
Bootstrap modal olayları, metotları ve erişilebilirlik
Her modal .modal öğesi üzerinde, bu sırayla dört olay tetikler. Kendi kodunuz buralara bağlanır: analitik, odak, temizlik.
| Olay | Ne zaman tetiklenir | Tipik kullanım |
|---|---|---|
show.bs.modal |
show() çağrıldığı anda; event.preventDefault() iptal eder |
İçerik yüklemek ya da modal'ın açılmasını durdurmak |
shown.bs.modal |
Modal görünür olduğunda, geçişten sonra | Odağı ilk alana taşımak, bir gösterim kaydetmek |
hide.bs.modal |
hide() çağrıldığı anda; iptal edilebilir |
Bir form kaybolmadan önce "emin misiniz?" diye sormak |
hidden.bs.modal |
Modal tamamen gizlendiğinde | Formu sıfırlamak, bir videoyu durdurmak |
hidePrevented.bs.modal (özel durum) |
Statik bir modal'da dışarı tıklama veya Escape | Diyaloğu sallayıp hâlâ beklediğini göstermek |
Metotlar show(), hide(), toggle(), handleUpdate() (modal açıkken yüksekliği değiştiğinde) ve dispose(); bunlara statik bootstrap.Modal.getInstance() ve getOrCreateInstance() eklenir. Hepsi asenkrondur: geçiş başlar başlamaz geri dönerler, bu yüzden modal görünür olduktan sonra çalışması gereken kod shown.bs.modal içine yazılır.
HTML autofocus niteliğinin bir Bootstrap modal'ı içinde hiçbir etkisi yoktur. İmleci e-posta alanına koymak için alanı shown.bs.modal olayında odaklayın:
<script>
document.getElementById('myModal').addEventListener('shown.bs.modal', () => {
document.getElementById('myModalEmail').focus();
});
</script>
Erişilebilirlik için işin bir kısmını Bootstrap yapar: role="dialog" niteliğini kendisi ekler, modal açıkken odağı içinde tutar ve Escape ile kapatır. Gerisi size kalıyor:
.modalüzerine modal başlığınıniddeğerini gösterenaria-labelledbyekleyin; gövde bir şey açıklıyorsaaria-describedbyde ekleyin.- Yalnızca simgeden oluşan kapat butonuna
aria-label="Kapat"verin. - Görünür bir çıkış yolu bırakın: kapat butonu, bir "Hayır, teşekkürler" butonu ya da ikisi birden.
- İlk modal'ın üzerine ikinci bir modal açmayın.
show() çağrınızda değil, shown.bs.modal olayında kaydedin. İptal edilen bir show.bs.modal modal'ı hiç göstermez; onu saymak, gösterimlerden hesapladığınız her oranı şişirir.Bootstrap popover nasıl oluşturulur
Popover, bir butona ya da terime bağlı küçük "popup"tır. Modal'dan iki farkı var: Popper'a ihtiyaç duyar (bootstrap.bundle.min.js içinde gelir) ve isteğe bağlıdır, yani siz başlatana kadar hiçbir şey olmaz.
<button type="button" class="btn btn-primary" data-bs-toggle="popover"
data-bs-title="Ücretsiz kargo"
data-bs-content="Limitin üzerindeki siparişler ücretsiz kargolanır. Kod gerekmez.">
Kargo bilgisi
</button>
<script>
document.querySelectorAll('[data-bs-toggle="popover"]')
.forEach((el) => new bootstrap.Popover(el));
</script>
Varsayılan olarak bir popover yalnızca aynı butona yeniden tıklandığında kapanır. Ziyaretçinin herhangi bir yere yaptığı bir sonraki tıklamada kapanması için, odak alabilen bir öğede (örneğin <a tabindex="0" role="button">) data-bs-trigger="focus" kullanın. Devre dışı öğelerdeki popover'lar bir sarmalayıcı öğeye ihtiyaç duyar; başlığı ve içeriği boş olan bir popover ise hiç görünmez.
Tam örnek: Bootstrap 5.3 ile bir bülten popup'ı
Hepsi bir arada, yaygın bir pazarlama kullanımı için: ücretsiz kargo kodu sunan bir kayıt modal'ı. 1. ile 5. adımlar arasındaki her şeyi kullanıyor: CDN dosyaları, modal kodu, gecikmeli açılış, sıklık sınırı ve odak aktarımı.
<div class="modal fade" id="newsletterModal" tabindex="-1" aria-labelledby="newsletterTitle" aria-describedby="newsletterText" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered modal-fullscreen-sm-down">
<form class="modal-content" action="/subscribe" method="post">
<div class="modal-header">
<h2 class="modal-title fs-5" id="newsletterTitle">İlk siparişinizde kargo bedava</h2>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Kapat"></button>
</div>
<div class="modal-body">
<p id="newsletterText">Listemize katılın, kodu e-postayla gönderelim.</p>
<label for="newsletterEmail" class="form-label">E-posta adresi</label>
<input type="email" class="form-control" id="newsletterEmail" name="email" placeholder="siz@ornek.com" required>
<div class="form-text">Haftada bir e-posta. İstediğiniz an ayrılın.</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">Hayır, teşekkürler</button>
<button type="submit" class="btn btn-primary">Kodumu gönder</button>
</div>
</form>
</div>
</div>
Bootstrap formu çizer ama hiçbir yere göndermez. action sizin kendi uç noktanızı ya da e-posta aracınızın kayıt adresini göstermelidir; form gönderildiğinde de 5. adımdaki "zaten abone" işaretini localStorage içine kaydedin.
Formun içindeki iki seçim, verimizin hakkında konuşabildiği seçimler. Birinci şahıs butonlar ("Send my code", yani "Kodumu gönder") nötr ifadelere karşı %1,18'e %0,80 dönüştürüyor (İngilizce popup'lar, medyan kampanya). Bir veya iki alan isteyen popup'lar ise %0,88 ve %0,94 dönüştürüyor, üç alanda bu oran %0,56 (medyan kampanya; çarkıfelek ve diğer oyunlaştırılmış popup'lar ayrı sayıldı). Yani tek bir e-posta alanı ve ziyaretçinin ne alacağını söyleyen bir buton. Formun kendisi için popup formu oluşturma rehberimize bakın.
Bu modal'ı bir zamanlayıcı yerine bir butondan açmak isterseniz, aynı kod 3. adımdaki data nitelikleriyle çalışır; buton ile açılan popup oluşturma rehberimiz bunu Popupsmart'ın kodsuz tıklama tetikleyicisiyle karşılaştırıyor.
Popupsmart’ı Bootstrap Modal Popup Alternatifi Olarak Kullanın
Bootstrap modal, kodlamaya razı olduğunuz her işi görür. Pazarlama popup'ları için ise daha basit bir yol var.
- ve 5. adımlardaki her şey (gecikme, sıklık sınırı, "zaten abone" işareti) sizin yazıp bakımını yaptığınız kod; e-postayı bir yere göndermek de bir sunucu tarafı gerektiriyor. Popupsmart, bu kodu ayarlarla değiştiren kodlama gerektirmeyen bir popup oluşturucudur: sitenize bir kez tek bir gömme kodu yapıştırırsınız, ardından popup'ları panelden oluşturur, hedefler ve yayınlarsınız. Popupsmart'ın 0 $'lık ücretsiz bir planı var.
Popupsmart ile farklı türlerde popup yapabilirsiniz: potansiyel müşteri toplamak için bir modal popup, daha fazla ziyaretçiyi müşteriye dönüştürmek için bir harekete geçirici mesaj popup'ı, e-posta listenizi ve satışlarınızı büyütmek için bir ürün popup'ı.
Popup'lar sitenize trafik çeker, yeni potansiyel müşteriler ve müşteriler getirir. Onları şu amaçlarla da kullanabilirsiniz:
- E-posta listenizi büyütmek ve ziyaretçilerinizi hedeflemek.
- Müşterilerinize ürün ve hizmetlerinizin duyurusunu yapmak.
- Çerez yasalarına uymak ve ziyaretçilerinizin çerezlerin saklanmasına yönelik onayını almak.
- Telefon aramalarını artırmak ve ziyaretçilerinizle eski usul güçlü ilişkiler kurmak.
- Ürün ve hizmetlerinizi tanıtmak için kitlenize özel teklifler sunmak.
- Form gönderimi toplamak ve ziyaretçilerinizin kişisel bilgilerini ve verilerini toplayarak kullanıcı deneyimlerini geliştirmek.
| İhtiyacınız olan | Bootstrap modal | Popupsmart |
|---|---|---|
| Popup tasarımı | HTML ve Bootstrap sınıfları | Görsel olarak düzenlediğiniz popup şablonları |
| Gecikme, çıkış niyeti, kaydırma tetikleyicileri | Sizin yazdığınız JavaScript | Segment adımındaki ayarlar |
| Sıklık sınırı | localStorage kodu |
Gösterim sıklığı ayarı |
| Potansiyel müşterileri e-posta aracına göndermek | Kendi uç noktanız | Mailchimp dahil hazır entegrasyonlar |
| Kurulum | Her sayfada Bootstrap CSS ve JS | </body> öncesinde tek bir gömme kodu |
Kayıttan yayına, Popupsmart'ta bir popup şöyle oluşturulur.
Popupsmart ile Nasıl Popup Oluşturulur?
Adım 1: Kayıt olun veya Popupsmart hesabınıza giriş yapın.
Adım 2: Popupsmart'ı sitenize ekleyin. Panelin sol çubuğunda "Embed Code" seçeneğine tıklayın, benzersiz gömme kodunuzu kopyalayın ve web sitenizin şablonunda kapanış </body> etiketinden hemen önceye yapıştırın. İsterseniz Google Tag Manager'ı kullanarak popuplar ekleyebilirsiniz. Bunu yalnızca bir kez yaparsınız.
Adım 3: "+ New Campaign" butonuna tıklayın, kampanyanıza bir ad verin ve web sitenizi seçin. Ardından, siteniz için uygun olan önceden yapılmış şablonlardan bir tasarım seçin. (Endişelenmeyin, birçok seçenek mevcut!)
Adım 4: "Customize" ve "Style" adımlarında popup'ınızı kampanyanıza ve markanıza uyacak şekilde özelleştirin. Şablonun resmini, başlığını ve açıklamasını burada düzenlersiniz.
Hedef kitlenizi cezbetmek ve onlarla etkileşimde bulunmalarını sağlamak için CTA'nızın yeterince çekici olduğundan emin olun.
Adım 5: Bu adımda popup'ınızın hedeflemesini de optimize edebilirsiniz. "Segment" adımında popup'larınızı zamanlayabilir, gösterim sıklığını ayarlayabilir veya ziyaretçi davranışını daha spesifik olarak belirleyebilirsiniz: belirli bir saniye sonra, kaydırdıktan sonra, çıkış niyetinde veya bir tıklamada.
Adım 6: Burada popup'ınıza son dokunuşları ekleyip onu yayınlayabilirsiniz.
Popupsmart, Mailchimp e-posta pazarlama hizmet sağlayıcısı da dahil olmak üzere e-posta pazarlama araçlarıyla entegre olur; böylece her potansiyel müşteri doğrudan listenize gider. Ayrıca ayarlarda "Yanıtlayıcı e-posta bildirimlerini" kurabilirsiniz.
Web sitenizi doğrulayın: doğrulama yalnızca gömme kodu sitenizdeyken çalışır ve popup'lar yalnızca doğrulanmış web sitelerinde görünür.
Tasarım bitince “Publish” butonuna tıklayın.
Aşağıda, ürün tanıtımı yapmak için oluşturduğumuz popup'ın son hali yer almaktadır:

Gömme kodu artık sitenizde olduğu için bir sonraki popup'ta o adımı atlarsınız.
Sıkça sorulan sorular
Modal popup için hangi Bootstrap sürümünü kullanmalıyım?
Bootstrap 5.3'ü kullanın. getbootstrap.com'daki güncel sürüm 5.3.8 (1 Ekim 2026'da kontrol edildi). bootstrap.min.css ve bootstrap.bundle.min.js dosyalarını jsDelivr CDN'inden 5.3.8'e sabitleyerek yükleyin ve data-bs-* niteliklerini kullanın. Bootstrap 5 jQuery gerektirmez.
Bootstrap modal'ım neden açılmıyor?
Üç yaygın neden var: Bootstrap JavaScript dosyası yüklenmemiştir (yalnızca CSS değil, bootstrap.bundle.min.js veya bootstrap.min.js gerekir), buton Bootstrap 4 niteliklerini kullanıyordur (data-bs-toggle ve data-bs-target yerine data-toggle ve data-target) ya da modal HTML'i position: fixed olan başka bir öğenin içindedir. Modal'ı body'nin en üst seviyesine koyun.
Bootstrap modal'ı sayfa yüklenince nasıl açarım?
Modal'ı bir DOMContentLoaded dinleyicisi içinde new bootstrap.Modal('#myModal') ile oluşturun ve show() çağırın. Bir gecikmeyle göstermek için show() çağrısını setTimeout içine alın. Popupsmart'ın 2026 kıyaslamasında görünmeden önce bekleyen popup'lar, sayfa yüklenir yüklenmez gösterilenlere karşı %0,83'e %0,61 dönüştürüyor (medyan kampanya); bu istatistiksel olarak güvenilir olmayan bir eğilim.
Bir Bootstrap modal'ını başka bir modal'dan açabilir miyim?
İç içe modal olarak açamazsınız. Bootstrap aynı anda yalnızca bir modal penceresini destekler. Ama modal'lar arasında geçiş yapabilirsiniz: ilk modal'ın içindeki, data-bs-toggle="modal" niteliği taşıyan ve data-bs-target ile ikinci modal'ı gösteren bir buton, ilkini kapatıp ikincisini açar.
Bootstrap modal ile popover arasındaki fark nedir?
Modal, tüm sayfanın üzerinde açılan, sayfayı bir arka planla karartan ve kapanana kadar odağı tutan bir diyalogdur. Popover ise kısa bir açıklama için tek bir öğeye bağlı, Popper ile konumlanan küçük bir kutudur. Popover'lar isteğe bağlıdır: new bootstrap.Popover() ile sizin başlatmanız gerekir.
Bootstrap popup'ları mobilde çalışır mı?
Evet. Bootstrap modal'ları duyarlıdır ve .modal-fullscreen-sm-down gibi sınıflar modal'ın küçük telefonlarda ekranı kaplamasını sağlar. Bootstrap, mobil tarayıcılarda position: fixed ile ilgili bazı uyarılara dikkat çekiyor; bu yüzden modal'ınızı gerçek bir telefonda test edin.
Son Düşünceler

Daha önce hiç Bootstrap popup oluşturmadıysanız, bu rehberdeki kod ilkini kurmanıza yeter. Sonrasında Bootstrap yaratıcılığa epey alan bırakıyor.
Bootstrap popuplarının en iyi yanlarından biri responsive ve mobil uyumlu olmaları; ziyaretçiler onları telefonda da masaüstünde de düzgün görür.
Yine de zaman kazanmak ve dönüşümlerinizi takip etmek istiyorsanız Popupsmart'ı tercih etmenizi öneririz!
Popupsmart, Bootstrap popup'larına esnek bir alternatif. Ücretsiz başlayabilirsiniz, editörü kullanması kolay ve düzenli olarak yeni şablonlar ekleniyor.
Popupsmart ile Ücretsiz Popup Oluşturun!!
Bu blog yazılarına da göz atın: