CSS ile 3 Boyutlu Yapılar Oluşturma - 1
Her ne kadar CSS kolay bir yapı olsa da zaman zaman yaptığı büyük işler bizleri şaşırtmaya devam ediyor. Bu makalemde CSS ile bir küp tasarlayarak, 3 boyutlu yapıların nasıl oluşturulacağını açıklamaya çalışacağım. Böylece websitemiz için 3 boyutlu resim galerileri, sayfa geçişleri, menü sistemleri gibi pek çok uygulamayı rahatlıkla yapabilir ve sayfamızın görünüşünü daha etkili bir hale getirebiliriz. Öncelikle CSS ile tasarlayacağımız küpü aşağıda inceleyebilirsiniz.
Ön
Arka
Üst
Alt
Sağ
Sol
Tasarımımız iki aşamadan oluşuyor, HTML ve CSS. Öncelikle HTML yapımızı oluşturalım.
<div id="temel">
<div id="kup">
<div id="on" class="yuzey"><h1>Ön</h1></div>
<div id="arka" class="yuzey"><h1>Arka</h1></div>
<div id="ust" class="yuzey"><h1>Üst</h1></div>
<div id="alt" class="yuzey"><h1>Alt</h1></div>
<div id="sag" class="yuzey"><h1>Sağ</h1></div>
<div id="sol" class="yuzey"><h1>Sol</h1></div>
</div>
</div>
Bildiğiniz gibi küp 6 yüzeyden oluşur. Bu yüzden küpümüz için 6 tane "yuzey" isimli sınıflar tanımladık. Her sınıf için farklı CSS işlemleri yapacağımızdan yüzeyler için ayrıca kimlikler (id) belirledik. Sıra geldi CSS işlemlerine. Daha kolay anlaşılması açısından dilerseniz aşama aşama ilerleyelim.
Öncelikle elde edeceğimiz küpün her eksende dönmesi için bir animasyon hazırlayalım. Animasyonun adı da "don" olsun.
@keyframes don {
from { transform: rotateY(0) rotateX(0) rotateZ(0);
}
to { transform: rotateY(360deg) rotateX(360deg) rotateZ(360deg);
}
}
Küp elemanlarını kapsayan temel isimli katmanımıza perspektif özelliğini ekliyoruz. CSS "perspective" komutu elemanımızın ekrandan ne kadar uzaklıkta olduğunu belirler.
#temel{
perspective: 600px;
width: 100%;
display: flex;
justify-content: center;
align-items: center;
overflow:hidden;
}
Yüzey elemanlarını kapsayan "kup" isimli katmanımıza ise, 3 boyutlu bir değişimin olacağını (transform) "transform-style:preserve-3d;" komutuyla belirtmemiz gerekiyor. Ayrıca bu elemanın üstüne gelindiğinde çalışan animasyonun duraksatılmasını da yazalım.
#kup{
position: relative;
width: 120px;
height: 120px;
transform-style:preserve-3d;
margin:100px auto;
animation: don 5s infinite linear;
}
#kup:hover{
animation-play-state:paused;
}
Küp yüzeylerinin kontrolü ve hizalamalar için gerekli CSS kodlamasını yapalım.
.yuzey{
position: absolute;
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
}
Son olarak küp yüzeyini oluşturan elemanlarımızı 3 boyutlu şekilde sıralamamız gerekiyor. Bu işlemler için elemanları bazı eksenler etrafında döndürüp, eksenler üzerinde hareket ettirmemiz gerekiyor. Bunun için "transform" ve "rotate" komutlarını kullanacağız. Ayrıca elemanlarımızın küpün hangi yüzeyini oluşturacağı, "transform-origin" özelliğini değiştirecek. Dikkat etmemiz gereken bir nokta da eksenler üzerindeki taşıma işlemleri yani "translate" komutunun büyüklüğü. Bu büyüklük yüzey elemanlarını kapsayan elemanın büyüklüğünün yarısı kadar olmalı. Örneğimizde yüzey elemanlarını kapsayan "kup" katmanımızın genişliği ve yüksekliği 120 piksel. Bu yüzden yüzey elemanlarının taşıma işlemleri 60 piksel olmalı. Örneğin sağ yüzeyi oluşturacak elemanımızı, Y ekseninde döndürerek ve X ekseninde sağ tarafa 60 piksel taşıyarak oluşturuyoruz. Diğer elemanlarımızı da bulundukları yerlere göre farklı eksenler kullanarak konumlandırıyoruz.
#sag{
transform: rotateY(-270deg) translateX(60px);
transform-origin: top right;
background: crimson;
opacity: .8;
}
#sol {
transform: rotateY(270deg) translateX(-60px);
transform-origin: center left;
background: lime;
opacity: .8;
}
#on{
transform: translateZ(60px);
background: lightblue;
opacity: .8;
}
#arka{
transform: translateZ(-60px) rotateY(180deg);
background: orange;
opacity: .8;
}
#alt{
transform: rotateX(90deg) translateY(60px);
transform-origin: bottom center;
background: pink;
opacity: .8;
}
#ust{
transform: rotateX(-90deg) translateY(-60px);
transform-origin: top center;
background: violet;
opacity: .8;
}
Böylece küp uygulamamız hazır hale geliyor. Gördüğünüz gibi oldukça kolay bir yapı. Yüzeylere resimler, sayfalar ekleyerek farklı uygulamalar elde edebilirsiniz. Serimizin diğer bölümlerinde CSS ile 3 boyutlu farklı yapılar tasarlamaya devam edeceğiz. Yüzeylere resim ekleyerek aşağıdaki kutuyu rahatlıkla elde edebildik.
3 Boyutlu kitap tasarladığımız serimizin ikinci bölümüne buradan
3 Boyutlu sayfalar tasarladığımız serimizin üçüncü bölümüne buradan ulaşabilirsiniz.
3 Boyutlu resim galerisi tasarladığımız serimizin dördüncü bölümüne buradan ulaşabilirsiniz.
Tasarımımızı buradan bilgisayarınıza indirip, inceleyebilirsiniz.
- Yayın Süresi : 2650 Gün
- Konu Sayısı : 277 Bilim Konuları : 118 Teknoloji Konuları : 42 Web-Tasarım Konuları : 42 İlginçler Konuları : 63 Gezi Konuları : 12 En Popüler : Sonsuz İşlemleri 248359 Kere En Çok Yorum Alan : Logaritma Nedir, Ne İşe Yarar, Gerçek Hayatta Nerelerde Kullanılır? 19 Kere En Çok Değerlendirilen : Napier'in Kemikleri (Matematik) 233 Kere
Satrançta Piyonun Geçerken Alması Kuralı (En Passant)
En passant kuralı nedir, ne zaman uygulanır...
Işık Hızında Bağıl Hız
Işık hızında giden cisimler için bağıl hız hesaplamaları...
Newton Karantinada Neler Yaptı?
Newtonun karantina günleri ve icatları...
Çamaşır Suyu Nedir? Nasıl Temizler?
Çamaşır suyunun yapısı, kullanım alanları ve dikkat edilmesi gerekenler...
Dünyanın Yaşını Nasıl Biliyoruz?
Dünyanın yaşını hesaplama yöntemleri...
Salgın Hastalık Dereceleri : Pandemik, Epidemik, Endemik, Sporadik
Pandemik, Epidemik, Endemik, Sporadik Nedir?
Kahve Günlükleri : Kahve Çekirdeği Kavurma Dereceleri
Hafif, orta, orta-koyu, koyu kavrulmuş kahve çekirdeklerinin özellikleri ve farkları...
Kahve Günlükleri : Kahve Demleme Yöntemleri
Kahve demleme yöntemleri ve farkları...
Kahve Günlükleri : Kahve Çeşitleri ve Ölçüleri
Popüler kahve çeşitleri ve ölçüleri...
Kahve Günlükleri : Arabica ve Robusta
Arabica ve Robusta kahve çekirdekleri ve farkları...
Sayıların Sınıflandırılması (Matematik)
Matematikte sayıların sınıflandırılması : Kompleks, Sanal, Gerçek, Doğal, Rasyonel, İrrasyonel...
Websiteniz İçin Bedava Güvenlik Sertifikası (SSL Sertifikası)
Tamamen bedava güvenlik sertifikası nasıl elde edilir, nasıl yüklenir?
Wi-Fi Şifresini Görme (Windows 7 - 10)
Programsız, kodsuz wifi şifresini görme yöntemi.
Kolay Ezberleme Yöntemi : Anımsatıcılar
Kolay ezberleme yöntemlerinden anımsatıcılar : Mnemotekni
Tarayıcılarda Ön Bellek İşlemleri (Normal Yükleme - Tam Yükleme - Ön Belleği Boşaltma)
Tarayıcılarda normal yükleme ve tam yükleme ne demektir, nasıl yapılır?
Takip, Reaksiyon, Fren ve Durma Mesafesi
Reaksiyon, fren, durma ve takip mesafesi nasıl hesaplanır, bilimsel detaylar.
Bilgisayarda Müzik Nasıl Yapılır?
Sadece bilgisayar programları kullanarak gerçekçi müzik nasıl oluşturulur?
Beden Kitle İndeksi Hesaplama ve Değerlendirme
Bu uygulama ile Vücut Kitle İndeksinizi hesaplayabilir ve sonucu değerlendirebilirsiniz.
Hidrojen Peroksit (H2O2) ve Özellikleri
Hidrojen peroksit nedir, sağlık açısından ne gibi etkileri vardır?
Photoshop'ta Ortalama İşlemleri
Photoshop'ta ortalama işlemleri nasıl yapılır?
Bu kısımdan sitemizdeki gelişmelerden haberdar olabilirsiniz.
- Abonelik Sistemi kaldırıldı. 11.03.2020
- Arama Motoru Google Özel Arama olarak değiştirildi. 15.10.2019
- Yıllık sunucu bakımı tamamlandı. 04.10.2019
- Konulara kaynaklar eklendi. 10.07.2019
- SSL sertifikası eklendi. 31.05.2019
Gitar çalmayı öğrenmek, yeteneğinizi geliştirmek, popüler tab ve akorlar için gitaregitim.net sitesini ziyaret etmeyi unutmayın.