Web

Mobilde Yatay Kaydırma: Web Sitesi Sağa Kayıyorsa Nasıl Düzeltilir?

Talha Aslan 15 dakikalık okuma 3 görüntülenme

Kısa cevap

Mobilde yatay kaydırma neden olur ve web sitesi mobilde sağa kayıyorsa ne yapmalısınız?

Mobilde yatay kaydırma, sayfadaki en az bir öğenin telefon ekranından daha geniş olması yüzünden sayfanın sağa sola oynamasıdır. Çözüm için önce viewport etiketini kontrol edersiniz, ardından taşan öğeyi tarayıcı geliştirici araçlarıyla bulur ve o öğenin genişliğini esnek hale getirirsiniz.

Tüm detaylar ve örnekler için yazıya devam edin

Bu yazıda yalnız tek bir soruna odaklanıyoruz: sitenin telefonda sağa kayması, sağda boş beyaz bir şerit çıkması ya da sayfanın ekrana sığmaması. Talha Aslan ve ekibi olarak bu şikâyeti en sık yeni yayına alınmış sitelerde, eklenti ya da tema güncellemesinden sonra ve içerik editörü bir tablo yapıştırdığında duyuyoruz. Kısacası sorun çoğu zaman tek bir öğeden çıkar ve doğru yöntemle dakikalar içinde bulunabilecek kadar somuttur.

Not: iPhone Safari'ye özgü görünüm bozuklukları, yazı tipi büyümesi ya da çentik alanı gibi konular ayrı bir sorundur. Onlar için web sitesi iPhone Safari'de bozuk görünüyor yazımıza bakabilirsiniz. Burada yalnız yatay taşmayı ele alıyoruz.

Web sitesi mobilde sağa kayıyor mu, bunu nasıl kesin anlarsınız?

İlk iş, sorunun gerçekten yatay taşma olduğunu doğrulamaktır. Çünkü bazı kullanıcılar sayfanın yakınlaştırılmış açılmasını ya da bir kaydırıcının (slider) hareketini de "sağa kayma" diye tarif eder. Bu yüzden belirtileri tek tek kontrol edersiniz.

  • Sayfayı parmağınızla sola ittiğinizde içerik sağa doğru kayıyor ve sağda boş bir alan beliriyor.
  • Sayfa açılır açılmaz küçülmüş, uzaklaştırılmış gibi görünüyor ve metinler okunamayacak kadar küçük.
  • Menü ya da başlık alanı ekranın sağından taşıyor, menü düğmesi görünmüyor.
  • Dikey kaydırırken sayfa hafifçe sağa sola sallanıyor.
  • Sorun yalnız belirli bir sayfada, örneğin bir blog yazısında ya da ürün sayfasında oluyor.

Son madde çok değerlidir. Örneğin sorun yalnız tek bir yazıda varsa, suçlu büyük olasılıkla o yazının içindeki bir tablo, gömülü video ya da uzun bir bağlantıdır. Öte yandan her sayfada varsa, sorun tema, başlık, alt bilgi ya da ortak bir bileşendedir. Bu ayrım aramanızı baştan yarıya indirir.

Viewport meta etiketi eksik ya da yanlışsa ne olur?

Viewport etiketi, tarayıcıya sayfanın genişliğini cihaz ekranına göre ayarlamasını söyleyen küçük bir başlık satırıdır. Google'ın web.dev rehberine göre bu etiket yoksa mobil tarayıcılar sayfayı masaüstü genişliğinde çizer ve ekrana sığdırmak için küçültür. Sonuç olarak sayfa uzaklaştırılmış görünür ve kullanıcı yakınlaştırınca yatay kaydırma başlar.

Ayrıntıları web.dev duyarlı tasarım temelleri sayfasında bulabilirsiniz. Rehber, genişliği cihaz genişliğine eşitleyen ve başlangıç ölçeğini 1 yapan değerleri önerir. Ayrıca yakınlaştırmayı kapatan ayarların erişilebilirliği bozabileceğini belirtir.

Peki bu etiketi nasıl kontrol edersiniz? Sayfada sağ tıklayıp kaynağı görüntüleyin ve baş bölümde "viewport" kelimesini arayın. Etiket yoksa ya da genişlik sabit bir piksel değerine ayarlıysa, önce bunu düzeltirsiniz. Üstelik bazı eski temalar etiketi iki kez ekler; bu durumda tek ve doğru bir satır bırakmanız gerekir.

Önemli bir not: Yakınlaştırmayı engellemek yatay kaydırmayı gizlemez, yalnız kullanıcının içeriği büyütmesini engeller. Dolayısıyla sorunu "yakınlaştırmayı kapat" diyerek çözmeye çalışmayın.

Mobilde yatay kaydırma yaratan en yaygın nedenler hangileri?

Saha tecrübemize göre taşmaların büyük kısmı aynı küçük listeden çıkar. Aşağıdaki tablo, her nedeni nasıl tanıyacağınızı ve ilk çözüm adımını özetler.

NedenNasıl tanırsınız?İlk çözüm adımı
Eksik ya da yanlış viewport etiketiSayfa uzaklaştırılmış açılır, her sayfada aynıdırCihaz genişliğine göre ayarlı tek etiket bırakın
Sabit piksel genişlikli kutuBelirli bir bölüm ekrandan geniştirSabit genişlik yerine en fazla genişlik ve yüzde kullanın
Büyük görselGörselin sağ kenarı ekran dışında kalırGörsellere en fazla yüzde yüz genişlik verin
Geniş tabloYalnız tablo içeren sayfalarda olurTabloyu kendi kaydırma kabına alın
Gömülü video, harita, iframeVideo ya da harita alanı taşarGömülü alanı esnek kapsayıcıya koyun
Tam ekran genişlik birimi (100vw)Taşma kaydırma çubuğu genişliği kadar küçüktürYüzde yüz genişlik kullanın
Negatif kenar boşluğuSatır ya da ızgara kenardan biraz taşarKapsayıcı iç boşluğunu ve satır yapısını eşleyin
Uzun URL ya da kelimeMetin içinde kırılmayan uzun satır vardırUzun kelimelerin kırılmasına izin verin
Ekran dışına konumlanmış öğeKapalı menü ya da açılır pencere sağda beklerGizli öğeyi taşma yaratmayacak biçimde saklayın

Tablodaki sıralama rastgele değildir. Önce her sayfayı etkileyen nedenleri, ardından tek sayfaya özgü nedenleri dizdik. Böylece kontrolü yukarıdan aşağı yaparsanız zaman kaybetmezsiniz.

Taşan öğeyi Chrome DevTools ile adım adım nasıl bulursunuz?

Chrome geliştirici araçları (DevTools), taşmanın kaynağını bulmanın en hızlı yoludur. Chrome'un cihaz modu belgesi, cihaz araç çubuğuyla mobil ekranı nasıl taklit edeceğinizi anlatır. Aşağıdaki adımları sırayla uygularsınız.

  1. Sayfayı masaüstü Chrome'da açın ve geliştirici araçlarını başlatın.
  2. Cihaz araç çubuğunu açın ve genişliği dar bir telefon ölçüsüne getirin.
  3. Sayfayı yavaşça aşağı kaydırın ve sağda beyaz şeridin hangi bölümde başladığına bakın.
  4. Öğe seçme aracıyla o bölümdeki kutulara tek tek tıklayın.
  5. Elements panelinde seçili öğenin genişliğini ve kutu modelini inceleyin.
  6. Ekrandan geniş görünen öğeyi bulduğunuzda, Styles panelinde genişlik, kenar boşluğu ve konum değerlerine bakın.
  7. Değeri geçici olarak değiştirin ve şeridin kaybolup kaybolmadığını izleyin.

Bu yöntemin güzelliği şudur: Değişikliği canlı sitede yapmadan denersiniz. Ancak geliştirici araçlarındaki düzenlemeler kalıcı değildir; sayfayı yenilediğinizde kaybolur. Dolayısıyla doğru değeri bulunca onu tema dosyasına ya da sayfa oluşturucunun ayarına siz işlersiniz.

Chrome belgesi, cihaz modunun gerçek bir telefonun birebir karşılığı olmadığını, birinci düzey bir yaklaşım olduğunu açıkça söyler. Bu nedenle bulduğunuz çözümü mutlaka gerçek bir telefonda da denersiniz.

Geliştirici araçlarında taşan öğeyi daha hızlı bulmanın pratik yolları var mı?

Evet, birkaç pratik yöntem aramayı ciddi biçimde hızlandırır. İlki "eleme" yöntemidir: Elements panelinde ana bölümleri tek tek geçici olarak gizlersiniz. Şerit hangi bölümü gizleyince kayboluyorsa, suçlu o bölümün içindedir. Ardından aynı işlemi o bölümün alt öğelerinde tekrarlarsınız.

İkinci yöntem, tüm öğelere geçici bir dış çizgi eklemektir. Styles panelinde genel bir kural ekleyip her kutunun sınırını görünür yaparsınız. Böylece ekranın sağ kenarını aşan kutu çıplak gözle belli olur. İşiniz bitince kuralı silmeniz yeterlidir, çünkü bu kural yalnız sizin tarayıcınızda çalışır.

Üçüncü yöntem, Elements panelindeki rozetleri izlemektir. Chrome bazı ızgara (grid) ve esnek kutu (flexbox) kapsayıcılarının yanında rozet gösterir ve bu rozetler yerleşimin çizgilerini ekrana çizer. Örneğin bir ızgaranın sütunları ekrandan geniş tanımlanmışsa, bu çizgiler taşmayı hemen gösterir.

  • Eleme: bölümleri tek tek gizleyerek suçlu bölgeyi daraltırsınız.
  • Dış çizgi: tüm kutuların sınırını görünür yaparsınız.
  • Izgara rozetleri: sütun ve satır çizgilerini ekranda görürsünüz.
  • Dar genişlik denemesi: genişliği en küçük telefon ölçüsüne indirip taşmanın hangi genişlikte başladığını not edersiniz.

Sabit genişlikli öğeler mobilde yatay kaydırma sorununu nasıl yaratır?

Sabit genişlik, bir kutuya piksel cinsinden kesin bir genişlik vermek demektir. Masaüstünde sorun yaratmayan bir genişlik, dar bir telefon ekranında doğrudan taşmaya dönüşür. web.dev rehberi de piksel ölçülerinin küçük ekranlarda kullanıcıyı yatay kaydırmaya zorladığını belirtir.

En sık rastladığımız örnekler şunlardır: sabit genişlikli bir form, bir kampanya bandı, bir sayfa oluşturucunun "kutu genişliği" ayarı ve eski bir temanın ana kapsayıcısı. Örneğin masaüstü için tasarlanmış bir teklif formu, telefonda ekranın dışına taşar ve tüm sayfayı sağa kaydırır.

Çözüm mantığı basittir. Sabit genişlik yerine "en fazla genişlik" ve yüzde değerleri kullanırsınız. Böylece kutu büyük ekranda istediğiniz ölçüde kalır, dar ekranda ise ekrana sığar. Ayrıca sayfa oluşturucu kullanıyorsanız, çoğu araç mobil görünüm için ayrı genişlik ayarı sunar; o ayarı ayrıca kontrol edersiniz.

Kırılım noktalarını (breakpoint) doğru seçmek bu sorunu baştan önler. Bu konuyu responsive tasarımda kırılım noktaları yazımızda ayrıntılı anlattık. Kendi başınıza tema dosyalarına girmek istemiyorsanız, bu noktada profesyonel web tasarım desteği almak hem zaman kazandırır hem de başka sayfaları bozma riskini azaltır.

Büyük görseller sayfayı neden ekrandan taşırır?

Görsel, kendi doğal genişliğinde gösterilirse ve bu genişlik ekrandan büyükse sayfayı taşırır. Örneğin binlerce piksel genişliğinde yüklenmiş bir kapak fotoğrafı, genişlik sınırı yoksa telefonda ekranın çok ötesine uzanır.

web.dev rehberi bunun için net bir öneri verir: Tüm görsellere en fazla yüzde yüz genişlik tanımlamak. Bu kural görselin kapsayıcısından büyük olmasını engeller, ama görseli doğal boyutundan da fazla büyütmez. Üstelik görsellere genişlik ve yükseklik niteliği vermek, tarayıcının yer ayırmasını sağlar ve yerleşim kaymasını azaltır.

Peki tema bu kuralı zaten içeriyorsa sorun neden sürer? Çoğu zaman bir eklenti, galeri ya da kaydırıcı görsele kendi sabit genişliğini satır içi olarak yazar. Bu durumda genel kural etkisiz kalır. Dolayısıyla geliştirici araçlarında görselin hangi kuralın etkisinde olduğunu, üstü çizili kurallarla birlikte incelersiniz.

Arka plan görselleri de ayrı bir başlıktır. Bir bölüme arka plan olarak eklenen görsel genelde taşma yaratmaz, ama o bölüm sabit genişlikliyse yaratır. Kısacası sorun görselde değil, onu taşıyan kutuda olabilir.

Geniş tablolar mobilde yatay kaydırmayı nasıl önler?

Tablolar, yatay taşmanın en sinsi kaynağıdır. Çünkü tablo hücreleri içerik sığsın diye kendiliğinden genişler ve tablo, kapsayıcısının sınırını umursamaz. Özellikle blog yazılarına yapıştırılan karşılaştırma tabloları ve fiyat tabloları bu sorunu sık yaratır.

Burada amaç yatay kaydırmayı tamamen yok etmek değil, onu doğru yere hapsetmektir. Yani tabloyu kendi kaydırma kabına koyarsınız; tablo kendi içinde yana kayar, sayfanın geri kalanı ise sabit kalır. Böylece kullanıcı tabloyu inceleyebilir, sayfa da sağa kaymaz.

  • Tabloyu ayrı bir kapsayıcıya alın ve yalnız o kapsayıcıda yatay kaydırmaya izin verin.
  • Gereksiz sütunları mobilde azaltın ya da tabloyu kart düzenine çevirin.
  • Hücrelerdeki uzun kelime ve bağlantılara kırılma izni verin.
  • Tablonun yana kaydırılabildiğini kullanıcıya küçük bir ipucuyla belirtin.

Tablo tasarımının seçeneklerini mobil uyumlu tablo nasıl tasarlanır yazımızda karşılaştırdık; burada yalnız taşma tarafını ele alıyoruz.

Gömülü video, harita ve iframe öğeleri taşmayı nasıl tetikler?

Gömülü içerik, başka bir siteden alınan ve sayfanıza bir pencere (iframe) içinde yerleşen öğedir. Video oynatıcılar, haritalar, rezervasyon modülleri ve sosyal medya gönderileri bu gruba girer. Hazır gömme kodları çoğu zaman sabit genişlik ve yükseklik değeriyle gelir.

Örneğin bir video için verilen gömme kodu masaüstüne göre ayarlanmış bir genişlik içerir. Bu kodu doğrudan yapıştırırsanız, telefonda ekrandan geniş bir kutu oluşur. Bu yüzden gömülü öğeyi esnek bir kapsayıcıya alır, genişliğini yüzde yüze sınırlar ve en boy oranını korursunuz.

Üçüncü taraf modüllerde ise kontrolünüz sınırlıdır. Bazı rezervasyon ya da sohbet pencereleri kendi içinde sabit genişlik kullanır. Bu durumda ilk olarak sağlayıcının mobil ya da duyarlı (responsive) bir yerleştirme seçeneği sunup sunmadığına bakarsınız. Böyle bir seçenek yoksa, modülü yalnız kendi kapsayıcısında kaydırılabilir yapmak en güvenli yoldur.

Gömülü öğeler hız açısından da yük getirir. Bu yüzden sayfada gerçekten gerekli olanları bırakmak, hem taşma riskini hem de yükleme süresini azaltır.

100vw değeri neden beklenmedik yatay kaydırmaya yol açar?

100vw, "görüntü alanı genişliğinin tamamı" anlamına gelen bir CSS birimidir. Kulağa güvenli gelir, ama bazı tarayıcılarda bu genişlik dikey kaydırma çubuğunu da içerir. Sonuç olarak öğe, görünen alandan kaydırma çubuğu kadar geniş olur ve sayfa birkaç piksel sağa kayar.

Bu tür taşma genelde küçüktür; sağda ince bir şerit oluşur. Özellikle "tam genişlik bant" ya da "tam ekran kahraman alanı" gibi bölümlerde bu birimi sık görürüz. Ayrıca bu bölümler kenar boşluklarıyla birlikte kullanıldığında taşma büyür.

Çözüm çoğu durumda basittir: Genişliği görüntü alanı birimi yerine kapsayıcının yüzde yüzü olarak tanımlarsınız. Böylece öğe kaydırma çubuğunu hesaba katmaz ve tam olarak görünen alanı doldurur. Bir bölümü kapsayıcısından taşırıp kenardan kenara uzatmak istiyorsanız ise, bunu kenar boşluğuyla değil, yerleşim yapısıyla çözmek daha temizdir.

Not: Bu davranış tarayıcıya ve işletim sistemine göre değişebilir. Telefonlarda kaydırma çubuğu çoğu zaman içeriğin üstünde durduğu için sorun masaüstü testinde ortaya çıkıp telefonda çıkmayabilir. Yine de kodu temiz tutmak her iki tarafta da güvenlidir.

Negatif kenar boşlukları ve ızgara yapıları taşmaya nasıl sebep olur?

Negatif kenar boşluğu, bir kutuyu bulunduğu yerden dışarı doğru çeken bir ayardır. Birçok ızgara sistemi, sütunlar arasındaki boşluğu dengelemek için satırlara negatif kenar boşluğu verir. Kapsayıcının iç boşluğu bununla eşleşmezse, satır ekranın sağ kenarından taşar.

Örneğin bir sayfa oluşturucuda "satır" bloğunu "kapsayıcı" bloğunun dışına sürüklerseniz, dengeleyici iç boşluk ortadan kalkar. Sonuç olarak sağda ince ama inatçı bir şerit oluşur. Bu yüzden ızgara kullanıyorsanız satırların her zaman doğru kapsayıcının içinde olup olmadığını kontrol edersiniz.

Benzer bir durum, animasyonlarda da yaşanır. Bazı giriş animasyonları öğeyi başlangıçta ekranın sağına yerleştirir ve kaydırınca içeri çeker. Animasyon başlamadan önce o öğe ekranın dışında durur ve sayfayı genişletir. Dolayısıyla taşma yalnız sayfanın ilk yüklendiği anda ya da belirli bir kaydırma noktasında görünebilir.

  • Satır bloklarının doğru kapsayıcı içinde olduğundan emin olun.
  • Negatif kenar boşluğunu yalnız dengeleyici iç boşlukla birlikte kullanın.
  • Sağdan giren animasyonlarda başlangıç konumunu kontrol edin.
  • Kapalı mobil menünün ekran dışında nasıl beklediğine bakın.

Uzun URL ve kırılmayan kelimeler ekranı nasıl genişletir?

Tarayıcılar metni normalde boşluklardan böler. Ancak boşluk içermeyen çok uzun bir dizi, örneğin uzun bir URL, bir e-posta adresi ya da uzun bir ürün kodu tek satırda kalmaya çalışır. Bu satır ekrandan genişse, kapsayıcısını ve dolayısıyla sayfayı genişletir.

Bu sorunu en çok blog yazılarında, yorum alanlarında ve kaynakça bölümlerinde görürüz. Özellikle bağlantı metni olarak çıplak bir URL yapıştırıldığında taşma kaçınılmaz hale gelir. Üstelik Almanca gibi uzun bileşik kelimeler kullanan dillerde aynı sorun normal metinde de çıkabilir.

Çözüm iki katmanlıdır. İlk olarak içerik tarafında çıplak URL yerine anlamlı bir bağlantı metni kullanırsınız; bu hem okunabilirliği hem de erişilebilirliği artırır. İkinci olarak tema tarafında, uzun kelimelerin gerektiğinde satır sonunda kırılmasına izin veren bir metin kuralı eklersiniz. Böylece içerik editörü bir hata yapsa bile sayfa taşmaz.

Tablo hücrelerinde ve dar kenar çubuklarında bu kural özellikle önemlidir. Çünkü bu alanlar zaten dar olduğundan, kısa sayılabilecek bir kod bile taşmaya yeter.

Yatay taşmayı gizlemek doğru bir çözüm mü?

Hayır, çoğu durumda yalnız geçici bir yamadır. Sayfanın en dış kapsayıcısında yatay taşmayı gizlemek, şeridi görünmez kılar ama taşan öğeyi düzeltmez. Taşan öğe hâlâ ekrandan geniştir; yalnız kesilerek gösterilir.

Bu yaklaşımın somut yan etkileri vardır. Örneğin kesilen bir formun sağ kısmı, bir düğme ya da bir fiyat görünmez hale gelebilir. Ayrıca bazı durumlarda yapışkan (sticky) başlık gibi özellikler, dış kapsayıcıda taşma gizlendiğinde çalışmayı bırakabilir. Dahası iPhone Safari gibi bazı tarayıcılarda gizleme beklediğiniz kadar tutarlı çalışmayabilir.

Peki ne zaman makul bir çözümdür? Taşan öğe tamamen dekoratifse, örneğin bir arka plan şekli ya da süs çizgisi ise, o öğenin kendi kapsayıcısında taşmayı gizlemek kabul edilebilir. Yani gizlemeyi sayfanın tamamına değil, yalnız ilgili bölüme uygularsınız.

Kısacası önce gerçek nedeni bulursunuz. Gizleme kuralını ise yalnız bilinçli bir tercih olarak, en dar alanda kullanırsınız.

Mobilde yatay kaydırma SEO'yu ve kullanıcı deneyimini etkiler mi?

Doğrudan bir sıralama cezası olarak düşünmek yerine, kullanıcı deneyimi sorunu olarak düşünmek daha doğrudur. web.dev rehberi, kullanıcıların dikey kaydırmayı beklediğini, yatay kaydırma ya da uzaklaştırma zorunluluğunun kötü bir deneyim yarattığını açıkça söyler.

Bu deneyimin pratik sonuçları vardır. Kullanıcı metni okumak için sürekli yakınlaştırır, menüye ulaşamaz ya da formdaki gönder düğmesini göremez. Bu yüzden ziyaretçi sayfadan daha erken ayrılabilir ve dönüşüm fırsatı kaçar.

SEO tarafında ise Google'ın mobil öncelikli dizine eklemesi, sayfanın mobil sürümünü esas alır. Yani mobil görünümdeki sorunlar, sitenin genel değerlendirmesinde önemli bir yer tutar. Mobil arama performansındaki farkları sadece mobilde görünen SEO sorunları yazımızda ayrıca ele aldık.

Not: Biz hiçbir düzeltmenin sıralama garantisi verdiğini söylemiyoruz. Taşmayı düzeltmek, kullanıcının sayfayı rahat kullanmasını sağlar; sıralama ise pek çok etkene bağlıdır.

Sorunu düzelttikten sonra hangi testleri yapmalısınız?

Düzeltme sonrası test, sorunun gerçekten bittiğinden emin olmanın tek yoludur. Çünkü bir öğeyi düzeltmek, aynı sayfadaki ikinci bir taşmayı ortaya çıkarabilir. Bu nedenle testi tek ekranda değil, birkaç farklı genişlikte tekrarlarsınız.

  1. Geliştirici araçlarında en dar telefon genişliğinden tablet genişliğine kadar ekranı yavaşça büyütün ve şeridin hiçbir noktada çıkmadığını izleyin.
  2. Telefonu yatay çevirerek aynı sayfayı kontrol edin.
  3. Menüyü, açılır pencereleri ve çerez bandını açıp kapatın.
  4. Uzun bir tablo, uzun bir bağlantı ve gömülü video içeren örnek bir sayfayı test edin.
  5. Gerçek bir Android telefon ve gerçek bir iPhone ile son kontrolü yapın.
  6. Önbellek eklentisi kullanıyorsanız önbelleği temizleyip yeniden deneyin.

Hızlı bir genel kontrol için mobil uyumluluk testi aracımızı kullanabilirsiniz. Daha kapsamlı bir yöntem için mobil uyumluluk testi nasıl yapılır rehberimize göz atabilirsiniz.

Mobilde yatay kaydırma için hızlı kontrol listesi nasıl olmalı?

Aşağıdaki liste, taşmayı her seferinde aynı sırayla aramanızı sağlar. Böylece aynı yere iki kez bakmaz, hiçbir nedeni atlamazsınız.

  • Viewport etiketi bir kez var ve cihaz genişliğine ayarlı mı?
  • Sorun tüm sayfalarda mı, yoksa tek bir sayfada mı?
  • Piksel cinsinden sabit genişliği olan kutu, form ya da bant var mı?
  • Tüm görsellerin genişliği kapsayıcıyla sınırlı mı?
  • Tablolar kendi kaydırma kabında mı?
  • Video, harita ve iframe öğeleri esnek kapsayıcıda mı?
  • Tam ekran genişlik birimi kullanan bölüm var mı?
  • Izgara satırları doğru kapsayıcıda mı, negatif kenar boşluğu dengeli mi?
  • Uzun URL ve kelimelerin kırılmasına izin veriliyor mu?
  • Kapalı menü ve animasyonlu öğeler ekran dışında taşma yaratıyor mu?

Bu listeyi yeni bir içerik eklediğinizde de kullanabilirsiniz. Örneğin bir yazıya tablo ya da video eklediğinizde son iki üç maddeyi kontrol etmek, sorunu yayına almadan yakalar.

Sorun bir eklenti ya da tema güncellemesinden sonra başladıysa ne yapmalısınız?

Taşma bir güncellemeden hemen sonra başladıysa, değişen şey büyük olasılıkla suçludur. Bu durumda önce sorunun tam olarak ne zaman başladığını belirlersiniz. Ardından o tarihte güncellenen tema, eklenti ya da sayfa oluşturucu bileşenlerini listelersiniz.

En güvenli yol, canlı site yerine bir test kopyasında çalışmaktır. Test kopyasında eklentileri tek tek devre dışı bırakır ve şeridin kaybolup kaybolmadığına bakarsınız. Böylece canlı ziyaretçileriniz deneme sürecinden etkilenmez.

Ayrıca tema güncellemesi özel CSS değişikliklerinizi silmiş olabilir. Özellikle ana temanın dosyalarına doğrudan yazılmış düzeltmeler, güncellemeyle kaybolur. Dolayısıyla kalıcı düzeltmeleri alt tema (child theme) ya da temanın ek CSS alanı gibi güncellemeden etkilenmeyen bir yerde tutarsınız.

Kodun ve tasarımın sahipliği de bu noktada önem kazanır. Bir geliştiriciyle çalışıyorsanız, değişikliklerin size ait bir depoda tutulup tutulmadığını bilmek işinizi kolaylaştırır; bu konuyu web sitesinin kaynak kodu ve telif hakkı kime ait yazımızda ele aldık.

Yazı tipleri ve harici kaynaklar yatay taşmayı etkiler mi?

Dolaylı olarak evet. Yazı tipi yüklenene kadar tarayıcı yedek bir yazı tipi kullanır. Yedek yazı tipi daha genişse, başlıklar ve menü öğeleri bir an için taşabilir; gerçek yazı tipi gelince düzelir. Bu yüzden taşma bazen yalnız yavaş bağlantıda ve yalnız ilk yüklemede görünür.

Ayrıca menü öğeleri yan yana dizildiğinde, biraz daha geniş bir yazı tipi tüm satırı ekrandan taşırabilir. Özellikle uzun menü adları olan sitelerde mobil menünün gerçekten devreye girdiği genişliği kontrol edersiniz.

Yazı tiplerini kendi sunucunuzdan yüklemek, hem bu tutarlılığı hem de veri koruma tarafını ilgilendirir. Bu konunun hukuki ve teknik yönünü Google Fonts ve yerel barındırma yazımızda anlattık; burada yalnız taşma etkisini hatırlatıyoruz.

Kısacası taşmayı ararken yalnız düzen kurallarına değil, yükleme sırasına da bakarsınız. Geliştirici araçlarında ağ hızını yavaşlatarak sayfayı yeniden yüklemek, bu tür geçici taşmaları ortaya çıkarır.

Bu sorunu ne zaman kendiniz çözer, ne zaman bir uzmana bırakırsınız?

Taşan öğe bir görsel, bir tablo ya da bir gömülü video ise, çoğu zaman sayfa düzenleyicisinden kendiniz çözebilirsiniz. Örneğin tabloyu kaydırma kabına almak ya da videoyu duyarlı yerleştirme seçeneğiyle yeniden eklemek teknik bilgi gerektirmez.

Öte yandan sorun temanın çekirdeğinde, ızgara sisteminde ya da birden fazla bileşenin etkileşiminde ise durum değişir. Bu durumda bir düzeltme başka bir sayfayı bozabilir. Üstelik güncellemeye dayanıklı bir çözüm için alt tema, sürüm takibi ve test kopyası gibi altyapı gerekir.

Talha Aslan ve ekibi olarak bu tür sorunlarda önce taşan öğeyi raporlar, ardından kalıcı düzeltmeyi test ortamında hazırlarız. Sitenizin mobil düzenini baştan sağlam kurmak ya da sürekli tekrarlayan taşmaları kökten çözmek istiyorsanız web tasarım hizmetimizin kapsamına göz atabilirsiniz. Böylece sorun yalnız bugün değil, sonraki güncellemelerde de geri dönmez.

Sıkça Sorulan Sorular

Mobilde yatay kaydırma sorunu tüm telefonlarda aynı şekilde mi görünür?
Hayır, her telefonda aynı görünmeyebilir. Taşma, ekran genişliğine bağlı olduğu için dar telefonlarda belirgin, geniş telefonlarda hiç fark edilmeyebilir. Ayrıca tarayıcılar kaydırma çubuğunu farklı gösterir. Bu yüzden testi en dar telefon genişliğinden başlatır, ardından ekranı büyüterek taşmanın hangi noktada kaybolduğunu not edersiniz.
Beyaz şerit yalnız bir sayfada varsa nereden başlamalıyım?
Önce o sayfanın içeriğine bakmalısınız. Tek sayfada görülen taşma çoğu zaman bir tablodan, gömülü videodan, büyük bir görselden ya da uzun bir bağlantıdan çıkar. Geliştirici araçlarında bölümleri tek tek gizleyerek şeridin hangi bölümle birlikte kaybolduğunu bulursunuz. Böylece temanın geneline dokunmadan sorunu yerinde çözersiniz.
Yakınlaştırmayı kapatmak yatay kaydırmayı çözer mi?
Hayır, çözmez. Yakınlaştırmayı engellemek taşan öğeyi daraltmaz, yalnız kullanıcının içeriği büyütmesini engeller. web.dev rehberi de bu tür ayarların erişilebilirliği bozabileceğini belirtir. Doğru yol, viewport etiketini cihaz genişliğine göre ayarlamak ve ekrandan geniş olan öğeyi bulup esnek hale getirmektir. Bu yaklaşım kalıcıdır.
Sayfa oluşturucu kullanıyorsam kod bilmeden taşmayı düzeltebilir miyim?
Çoğu durumda evet. Sayfa oluşturucular genelde mobil görünüm için ayrı genişlik, kenar boşluğu ve gizleme ayarları sunar. Taşan bloğu bulduktan sonra mobil görünümde sabit genişliği kaldırır, negatif kenar boşluğunu sıfırlarsınız. Ancak sorun temanın çekirdeğindeyse, güvenli bir çözüm için test kopyası ve alt tema gerekebilir.
Taşmayı düzelttim ama telefonda hâlâ görüyorum, neden olabilir?
Büyük olasılıkla önbellek ya da ikinci bir taşan öğe vardır. Önbellek eklentisini ve tarayıcı önbelleğini temizleyip sayfayı yeniden açın. Sorun sürerse geliştirici araçlarında aramayı tekrarlayın, çünkü bir öğeyi düzeltmek aynı sayfadaki başka bir taşmayı ortaya çıkarabilir. Son kontrolü de mutlaka gerçek bir telefonda yaparsınız.
  • mobil uyumluluk
  • yatay kaydırma
  • responsive tasarım
  • viewport
  • Chrome DevTools
  • web tasarım
Paylaş:
Talha Aslan

Google Partner dijital pazarlama uzmanı. 2012’den beri SEO, Google Ads, web tasarım ve e-ticaret projelerinde sahada; bu blogda gördüğünüz her yazı o deneyimden çıkar.

Sıradaki proje

Projeniz için teklif alın.

Talebiniz doğrudan Talha Aslan ve ekibine ulaşır: stratejiyi Talha kurar, uygulamayı deneyimli ekip yürütür. Aynı gün dönüş yapar, kapsamı, takvimi ve tutarı yazılı teklifle 1 iş günü içinde göndeririz.