Web tasarımda esneklik ve uyumluluk, modern web sayfalarının olmazsa olmazlarıdır. Bu nedenle, Css Flexbox web tasarımcılarının resposive tasarım için kullanabileceği önemli bir araçtır. Css Flexbox, sütun ve satırları hızlı ve kolay bir şekilde oluşturmanıza ve özelleştirmenize olanak tanır.
Css Flexbox, bir konteynır ve bu konteynır içindeki öğeler arasındaki ilişkiyi kontrol eden bir düzen modelidir. Flexbox, Css
display
özelliği ile birlikte kullanılır ve bir öğenin Flexbox olup olmadığını belirlemek için display: flex
olarak tanımlanır.Bir flex container oluşturmak için HTML öğesine
display: flex
stilini ekliyoruz. <div class="container">
<div class="item">Item</div>
<div class="item">Item</div>
<div class="item">Item</div>
</div>
.container {
display: flex;
}
Yukarıdaki örnekte
container
sınıfına ait bir div bulunmaktadır. Bu div içerisinde ise üç adet item
sınıfı ait nesne bulunmaktadır.container
'ın yönünü belirlemek için flex-direction
özelliği kullanılmaktadır. Varsayılan değer olarak row
(yatay) dır, ancak column
(dikey), row-reverse
, column-reverse
gibi değerler alabilmektedir.Örneğin
container
'ın dikey olmasını istiyor isek.container {
display: flex;
flex-direction: column;
}
Yukarıdaki örnek container 'ın yönünü dikey olarak değiştirecektir.
container içerisindeki nesneleri boyutlandırmak için
flex-basis
, flex-grow
ve flex-shrink
özelliklerini kullanabiliriz.flex-basis
: Başlangıç boyutunu belirlerflex-grow
: Boş alanın boyutunu belirlerflex-shrink
: Nesnenin maximum boyutunu belirlerResponsive tasarım, bir web sayfasının farklı ekran boyutlarına uyacak şekilde tasarlanmasıdır. Flexbox, responsive tasarım için ideal bir yoldur, öğelerin boyutunu ve konumunu farklı ekran boyutlarına göre otomatik olarak ayarlanabilmektedir.
991 piksel ve altındaki ekran boyutları için
container
'ın flex-direction
özelliği değiştirerek, container
altındaki nesnelerin yerleşimini dikey olmasını sağlayabiliriz.@media screen and (max-width: 991px) {
.container {
flex-direction: column;
}
}
Yukarıdaki örnekte ekran boyutu 991 piksel ve altında olduğunda
container
'ın yönü dikey olacaktır.