Bu oldukça acayip bir çözüm, ama en azından bir şey (?). Buradaki fikir, sayfanızın içeriğini yarı portre moduna döndürmek için bir CSS dönüşümü kullanmaktır. Başlamak için JavaScript (jQuery ile ifade edilmiştir) kodu:
$(document).ready(function () {
function reorient(e) {
var portrait = (window.orientation % 180 == 0);
$("body > div").css("-webkit-transform", !portrait ? "rotate(-90deg)" : "");
}
window.onorientationchange = reorient;
window.setTimeout(reorient, 0);
});
Kod, sayfanızın tüm içeriğinin gövde öğesinin hemen içindeki bir div içinde yaşamasını bekler. Yatay modda bu div'i 90 derece döndürür - resme geri döner.
Okuyucuya bir egzersiz olarak bırakılır: div, merkez noktasının etrafında döner, bu nedenle mükemmel bir şekilde kare olmadığı sürece konumunun ayarlanması gerekecektir.
Ayrıca, hoş olmayan bir görsel sorun var. Yönü değiştirdiğinizde, Safari yavaşça döner, daha sonra üst düzey div 90 dereceye farklı yapışır. Daha da fazla eğlence için
body > div { -webkit-transition: all 1s ease-in-out; }
CSS'nize. Cihaz döndüğünde Safari bunu yapar, ardından sayfanızın içeriği de döner. Çeldirici!