Professional Documents
Culture Documents
Web Tabanli Kodlama-7
Web Tabanli Kodlama-7
1
WTK207U-WEB TABANLI KODLAMA
Ünite 7: Önemli Web Çatıları ve Kullanımları
Tepkisel tasarım (responsive design), sitelerin ve Uzak dosya kullanma yaklaşımının son sınırlılığı bu
uygulamaların çeşitli ekran ve tarayıcı genişliklerine göre dosyaları kendi ihtiyacınıza göre düzenleyememenizdir.
kendilerini yeniden düzenleyebildiği bir tasarım Projenizin bu sınırlılıklardan etkileneceğini
yaklaşımıdır. Bu yaklaşımın amacı, sitenin tasarım ve düşünüyorsanız, yerel yöntemi tercih etmeniz faydalı
ölçeklendirmesini değiştirerek, okunurluğu desteklemek olacaktır.
ve kullanıcı etkileşimini iyileştirmektir. Yaklaşımın
Yerel yöntem ile proje başlatmak için Bootstrap dosyaları
temelinde CSS 3 tanımlamaları ile birlikte gelen medya
ve Jquery dosyalarının ilgili sunuculardan indirilmesi
sorguları (media querries) yer almaktadır.
gerekmektedir. “Bootstrap İndir” bağlantısı tıklandığında
Bir Bootstrap Projesinin Anatomisi gerekli tüm dosyalar sıkıştırılmış bir paket hâlinde
Bootstrap tepkisel tasarım özellikleriyle, ürünlerin tarayıcı bilgisayarınıza transfer edilir. Bu paketin içinde css, fonts
boyutlarına göre ölçeklendirilmesi ya da farklı ve js isimli üç klasör gelmektedir. CSS klasörünün içinde
yerleşimlerle sunulmasını sağlayabilmektedir. Temel bir bootstrap.css dosyası, sıkıştırılmış (min) hâli ve map
Bootstrap projesinde şu bileşenler yer almalıdır: dosyası bulunabilir. Bunun yanında görsel olarak daha
zengin bir deneyim sunan bootstrap-theme. css dosyası,
HTML Dokümanı: Temelinde internet teknolojileri yatan sıkıştırılmış hâli ve map dosyası bulunmaktadır. Fonts
Bootstrap projeleri, HTML dokümanları üzerinden klasörü içinde kullanılabilecek simgeler pek çok formatta
sunulur. Bu nedenle HTML dokümanı tüm içerikler için sunulmaktadır. Bu dosyalara dokunulmadan fonts klasörü,
kapsayıcı rolündedir. css klasörü ile aynı yerde tutulmalıdır. js klasörü içinde
CSS Dokümanı: Boostrap ile birlikte gelen görsel bootstrap.js ve sıkıştırılmış hâli olan bootstrap. min.js
özellikler CSS dosyasında tutulmaktadır. Zorunlu hâller dosyaları bulunmaktadır. Bunlardan biri jquery
dışında bu dosya üzerinde değişiklik yapılmamalıdır. dosyasından sonra projeye eklenmelidir.
2
WTK207U-WEB TABANLI KODLAMA
Ünite 7: Önemli Web Çatıları ve Kullanımları
type özelliği ile bu davranış değiştirilebilir. Son olarak Bootstrap sisteminde bir tarayıcı boyutu için belirlenen
tanımlama listeleri başlık ve açıklama çiftlerinden oluşan yerleşim kuralları üst tarayıcı boyutları için geçerli kalır.
listelerdir. Örnek olarak, sayfada geçen terimlerden oluşan Örneğin sm tarayıcı boyutunda oluşturulan iki sütunlu bir
küçük bir sözlük oluşturmak için tanımlama listeleri yapı, üst tarayıcı boyutları olan md ve lg için farklı bir
kullanılabilir. kural belirtilmemişse aynen korunur. Sitenin sunumu md
ve lg boyutları için iki sütunlu olacak şekilde
Bootstrap Tabloları
düzenlenecektir. Alt tarayıcı boyutlarına geçildiğinde, bu
Tablolar en çok kullanılan HTML yapıları arasındadır. boyutlar için farklı kurallar belirtilmemişse en küçük
Bootstrap tabloların stillenmesi için pek çok seçenek tarayıcı boyutu olan xs boyutundaki kurallar işletilir. xs
sunmaktadır. Yeni bir tablo üretildiğinde Bootstrap temel boyutu için herhangi bir sütun tanımlaması yapılmadıysa,
tipografik öğeler dışında herhangi bir düzenleme yapmaz. varsayılan olarak her sütun ekranı kaplayacak şekilde
Table etiketine table sınıfı eklendiğinde tablonun düzenlenecektir. Bu nedenle, sunum yapısı tek sütunlu
sunumunda önemli değişiklikler gözlenecektir. Öncelikle hâle geçirilir.
tablo bulunduğu ortamı kapsayacak kadar genişletilir.
Bunun yanında hücrelere padding eklenerek hücreler arası Form Elementleri
boşluklar yükseltilir. Son olarak satırlara alt kenarlık Bootstrap HTML dilindeki form elementleri için önemli
eklenerek tablonun okunması kolaylaştırılır. Ayrıca zenginleştirme seçenekleri sunmaktadır. Bu elementler
tabloların satırları ve hücreleri kavramsal sınıflar Bootstrap ile işlendiklerinde tüm tarayıcılarda aynı etki ve
kullanılarak boyanabilir. görünümlere kavuşur.
Bootstrap Boyut Sistemi Düğmeler
Bootstrap öncelikle mobil cihazları hedef alan tepkisel bir Oluşturulurken btn sınıfı ile birlikte, en az bir kavramsal
sistemdir. Bu sistemde içerikler farklı ekran boyutları, sınıf ya da btndefault sınıfının eklenmesi gerekmektedir.
oranları ve tarayıcı genişliklerinde tepki verecek şekilde Kavramsal sınıfların yanında, düğmelerin ebatlarını
tasarlanabilmektedir. Bu tepkisel sistemin yönetilmesi için belirlemek için kullanılabilecek dört sınıf daha
boyut sisteminin anlaşılması oldukça önemlidir. Boyut bulunmaktadır. Ebat sınıflarının kullanımı kavramsal
sistemi ön tanımlı kırılma noktaları ve bu noktalar sınıflar gibi zorunlu değildir. Bu durumda btn sınıfından
arasındaki aralıklara verilen kısa belirteçlerle işlemektedir. gelen değerler kullanılır. Sayfa tasarımlarında daha az yer
kaplaması için düğmeler gruplanarak araç kutuları
Bootstrap Izgara Sistemi
oluşturulabilir. Bu amaçla, gruplanacak düğmeler btn-
Bootstrap sisteminin en önemli elementlerinden biri sayfa group sınıflı bir div elementinin içine eklenebilir. Düğme
içeriğinin yerleşimini düzenleyen ızgara (grid) sistemidir. sunumlarını zenginleştirmek için simgeler kullanılabilir.
Bootstrap ızgara sistemi container, row ve column olmak Bootstrap sisteminde simgeler span elementleri
üzere üç temel bileşenden oluşmaktadır: kullanılarak eklenmektedir. Bu elementlere glyphicon
Container: Container sınıfı sayfa içeriğini ve kurulacak sınıfı ile birlikte simgeyi belirten bir sınıf eklenir.
ızgara sistemini kapsamak için üretilmiştir. Akışkan ve Giriş Elementleri
sabit genişlikli olmak üzere iki container sınıfı
Bootstrap sisteminde input, textarea ve select elementleri
bulunmaktadır. Akışkan container sınıfı her zaman tarayıcı
formlarda kullanılmak üzere desteklenmektedir.
genişliğinin tümünü kapsayacak şekilde boyutlandırılır.
Elementler için açıklama metinleri label etiketleri içinde
Sabit genişlikli container sınıfı ise tarayıcı genişliğine
verilmelidir. Label etiketleri ile input elementleri
tepki verecek şekilde boyutlandırılır.
bağlantısı id-for eşleşmesi ile sağlanır. Bu kullanım
Row: Satırlar (row) yatay sütun grupları oluşturmak için sayesinde açıklama metnine tıklandığında ilgili element
kullanılır. Düzgün hizalama ve boşluk bırakılabilmesi için aktif hâle geçebilmektedir. Her label-input çifti form-
her satır sabit genişlikli (container) ya da akışkan group sınıflı div elementleri içine alınmalıdır. Bu yolla
(container-fluid) bir container element içine girmelidir. form elementlerinin düzgün yerleşimi sağlanır. Input
elementlerinin Bootstrap görüntü ve etkileşim özelliklerini
Column: Sayfadaki içeriği dikey olarak düzenlemek için
kazanması için form-control sınıfı eklenir. Bu sınıf
sütunlar kullanılır. Bootstrap sisteminde yatay genişlikler
eklendiğinde element bulunduğu ortamdaki genişliğin
12 parçaya bölünerek işlenir. Sütunlar oluşturulurken
tamamını kaplayacaktır. Label ve input yerleşimi
hangi ekran genişliğinde kaç yatay dilim kapsayacağı
varsayılan olarak dikeydir. Bu yerleşimin yataya
belirlenir. Her sütun isimlendirmesi “col-” ön eki ile
çevrilmesi için form elementine form-inline sınıfı
başlar. Bundan sonra yapılan belirlemenin hangi tarayıcı
eklenmelidir. Bu durumda label ve input aynı satıra
genişliği için geçerli olduğu, genişlik belirteçleri ile
getirilecek, input nesnesinin genişliği daraltılacaktır. Bu
bildirilir. Bunun ardından bu sütunun belirlenen tarayıcı
görünüm xs tarayıcı boyutu dışındaki tüm boyutlarda
genişliğinde ne kadar yer kaplayacağı sayısal olarak korunur. Tarayıcı boyutu xs olduğunda, form otomatik
verilir. olarak dikey hâle geçecektir.
3
WTK207U-WEB TABANLI KODLAMA
Ünite 7: Önemli Web Çatıları ve Kullanımları
Element Grupları
Ekran alanını daha ekonomik kullanmak için form
elementleri birleştirilebilir. Bu sistemde düğmeler ve giriş
elementleri tek element olarak gösterilir. Giriş
elementlerinin her iki tarafına da düğme eklenebilir.
lement gruplarında düğmelerin yanında işaretleme kutuları
ve radyo düğmeleri gibi elementler de kullanılabilir. Ek
olarak bilgilendirme amaçlı karakterler ya da simgeler de
eklenebilir. Bu durumda inputgroup-btn sınıfı yerine
input-group-addon sınıfı kullanılır.
Görsel Element Sınıfları
Bootstrap görsellerin sunumu ve boyutlandırılması için
çeşitli olanaklar sunmaktadır. Bunların ilki görsellerin
bulundukları ortam ve ekran boyutlarına göre
boyutlandırılmasını sağlayan img-responsive sınıfıdır.
Resimlerin sunumlarını düzenlemek için kullanılabilecek
üç sınıf daha bulunmaktadır. Bunlar resimleri çerçeveler
içine yerleştirmek için kullanılır. img-thumbnail sınıfı,
görseli beyaz zeminli ve gri çerçeveli bir kutu içine alır.
Özellikle artalan rengi olmayan ya da beyaz olan
görsellerin sınırlarının belirtilmesi için kullanılabilecek bir
sınıftır. img-rounded sınıfı görsellerin kenarlarında 6px
yarıçaplı bir yumuşatma uygular. img-circle sınıfı ise
görseli bir daire içinde sunmak için kullanılır.
Menü Sınıfları
Bootstrap, sitelerdeki yönlendirme işlemleri için
kullanılabilecek menü seçenekleri sunmaktadır. Menüler
ul elementlerine uygulanan sınıflar yoluyla
oluşturulmaktadır. Menü çubukları nav elementleri içinde
oluşturulmalıdır. nav elementine Bootstrap menü çubuğu
görüntüsü kazanmak için “navbar” sınıfının yanında bir de
tema sınıfı eklenir. Menü çubuğunda açık (navbar-default)
ve koyu (navbar-inverse) olmak üzere iki tema
kullanılabilir. Menü çubuğu içinde kullanılacak ilk
element site kimliğini belirleyen metin ya da ikonları
tutan, başlık bölümü olarak düşünülebilecek “navbar-
header” elementidir. Menü çubuğunda asıl menü bölümü
ise ul elementi ile oluşturulur.
Kayan Resimler
İnternet sitelerinde marka imajları, reklamlar, duyurular,
ürün tanıtımları gibi amaçlarla kullanılan, en önemli
görsel araçlardan biri kayan resimlerdir. Kayan resim
elementi kapsayıcı bir div elementi içinde oluşturulur.
Daha sonra oluşturulacak oklar ve madde işaretleri gibi
kontrol elementleriyle kullanmak için bu div elementine
bir id verilmelidir. Kapsayıcı div elementine ilk olarak
carousel sınıfı eklenir. İsteğe bağlı olarak, resimlerin
kayarak geçişini sağlamak için slide sınıfı kullanılabilir.
Slide sınıfının kullanılması zorunlu değildir, bu sınıf
kullanılmadığında resimler kaymadan değişmeye devam
edebilir. Son olarak div elementinin data-ride özelliği
carousel olarak belirlenir. Bu sayede Bootstrap’in
Javascript sınıfları elemente uygulanarak resimlerin
otomatik değişimini sağlayacaktır.