2017-12-05 00:33:15 +03:00
---
language : css
contributors :
- [ "Mohammad Valipour" , "https://github.com/mvalipour" ]
- [ "Marco Scannadinari" , "https://github.com/marcoms" ]
- [ "Geoffrey Liu" , "https://github.com/g-liu" ]
- [ "Connor Shea" , "https://github.com/connorshea" ]
- [ "Deepanshu Utkarsh" , "https://github.com/duci9y" ]
- [ "Brett Taylor" , "https://github.com/glutnix" ]
- [ "Tyler Mumford" , "https://tylermumford.com" ]
2018-02-28 12:33:06 +03:00
filename : learncss-tr . css
2017-12-05 00:33:15 +03:00
translators :
- [ "Fatih Turan" , "http://fatihturan.com" ]
lang : tr-tr
---
Web sayfaları bir sayfanı n içeriğini belirleyen HTML ile inşa edilirler . CSS ( Basamaklı Biçim Sayfaları ) ise bir sayfanı n * * görünümünü * * belirleyen ayrı bir dildir .
CSS kodu statik * kurallardan * oluşur . Her kural bir ya da daha fazla * seçici * alı r ve görsel * özelliklere * belirli * değerleri * verir . Sonrası nda bu özellikler seçiciler tarafı ndan belirlenen sayfa unsurları na uygulanı r .
Bu rehber , CSS 3 ' ün yeni özellikleri ile genişletilen CSS 2 ile dikkate alı narak yazı lmı ştı r .
* * NOT : * * CSS görsel sonuçlar ürettiğinden dolayı , öğrenmek için herşeyi bir CSS oyun alanı içinde ( [ dabblet ] ( http : / / dabblet . com ) gibi ) denemeniz gerekmektedir . Bu makale sözdizimi kuralları ve genel ipuçları üzerine odaklanmaktadı r .
# # Sözdizimi
` ` ` css
/ * yorumlar bu satı rdaki gibi taksim-yı ldı z içinde görünür
CSS ' te "tek satı rlı k yorumlar" bulunmamaktadı r ; bu sadece tek bir yorum yazma stilidir * /
/ * # # # # # # # # # # # # # # # # # # # #
# # SEÇİCİLER
# # # # # # # # # # # # # # # # # # # # * /
/* seçici bir sayfadaki unsuru hedeflemek için kullanı lı r. */
seçici { ö zellik : değer ; /* daha fazla özellikler...*/ }
/ *
İşte bir örnek :
< div class = 'class1 class2' id = 'anID' attr = 'value' otherAttr = 'en-us foo bar' / >
* /
/* */
/* CSS sı nı fları nı n birini kullanarak hedefleyebilirsiniz */
. class1 { }
/* veya her iki sı nı fı birden!*/
. class1 . class2 { }
/* veya sadece ögenin adı nı yazarak */
div { }
/* veya onun ID adı nı */
# anID { }
/* veya onun aldı ğı bir özelliği kullanarak! */
[ attr ] { font-size : smaller ; }
/* veya onun aldı ğı özelliğin belirli bir değeri varsa */
[ attr = 'value' ] { font-size : smaller ; }
/* bir değer ile başlı yorsa (CSS 3) */
[ attr ^ = 'val' ] { font-size : smaller ; }
/* veya bir değer ile bitiyorsa (CSS 3)*/
[ attr $ = 'ue' ] { font-size : smaller ; }
/* veya boşlukla ayrı lmı ş liste içinde bir değer içeriyorsa */
[ otherAttr ~ = 'foo' ] { }
[ otherAttr ~ = 'bar' ] { }
/* veya tire ile ayrı lmı ş bir liste içinde bir değer içeriyorsa, örneğin: "-" (U+002D) */
[ otherAttr | = 'en' ] { font-size : smaller ; }
/* Farklı seçicileri birleştirerek daha fazla odaklanmı ş bir seçici oluşturabilirsiniz. Seçiciler arası nda boşluk bı rakmayı n. */
div . some-class [ attr $ = 'ue' ] { }
/* Başka bir ögenin alt ögesi olan bir ögeyi seçebilirsiniz. */
div . some-parent > . class-name { }
/* veya bir başka ögeden türeyeni seçebilirsiniz. Alt ögeler onları n ebeveynlerinin direkt türünden gelir, sadece ağacı n bir alt ögeleridirler. Soyundan gelenler ağacı n herhangi bir alt seviyesinde olabilir. */
div . some-parent . class-name { }
/ * Uyarı : Seçiciler arası nda bir boşluk bı rakmazsanı z aynı seçicinin başka bir anlamı olur .
Ne olduğunu tahmin edebilir misiniz ? * /
div . some-parent . class-name { }
/* Ayrı ca bir ögenin bitişik kardeşini temel alarak bir ögeyi seçebilirsiniz. */
. i-am-just-before + . this-element { }
/* veya kendisinden önce gelen herhangi bir kardeş ögeyi */
. i-am-any-element-before ~ . this-element { }
/* Yalnı zca belli bir durumda bir öge seçmek için kullanı lan sahte sı nı flar adı verilen bazı seçiciler vardı r. */
/* Örneğin, imleç bir ögenin üzerine geldiğinde */
selector : hover { }
/* veya bir bağlantı ziyaret edildiğinde */
selector : visited { }
/* veya ziyaret edilmediğinde */
selected : link { }
/* veya bir ögeye odaklanı ldı ğı nda */
selected : focus { }
/* Ebeveyninin ilk alt ögesi olan herhangi bir öge */
selector : first-child { }
/* Ebeveyninin son alt ögesi olan herhangi bir öge */
selector : last-child { }
/* Sahte sı nı flar gibi sahte elementler de bir dokümanı n belirli bir parçası na stil vermenize izin verir. */
/* Seçilen ögenin sanal ilk alt ögesiyle eşleşir. */
selector :: before { }
/* Seçilen ögenin sanal son alt ögesiyle eşleşir. */
selector :: after { }
/* Uygun yerlerde yı ldı z karakteri ile bütün ögeleri seçmek için joker olarak kullanı labilir. */
* { } /* Bütün ögeler */
. parent * { } /* Tüm alt ögeler */
. parent > * { } /* Tüm çocuk ögeler */
/ * # # # # # # # # # # # # # # # # # # # #
# # ÖZELLİKLER
# # # # # # # # # # # # # # # # # # # # * /
selector {
/* Ölçü birimleri kesin veya göreceli olabilir.*/
/* Göreceli birimler */
width : 50 % ; /* Ebeveyn elementin yüzdesel olarak genişliği */
font-size : 2em ; /* Öğenin özgün yazı tipi boyutunda katları */
font-size : 2rem ; /* veya kök ögenin yazı tipi boyutu */
font-size : 2vw ; /* Görüntüleme çerçevesinin genişliğinin %1 olarak katları (CSS 3) */
font-size : 2vh ; /* veya onun yüksekliğinin */
font-size : 2vmin ; /* Bir vh veya vw'nin hangisi küçükse */
font-size : 2vmax ; /* veya daha büyük... */
/* Kesin birimler */
width : 200px ; /* Piksel */
font-size : 20pt ; /* Nokta */
width : 5cm ; /* Santimetre */
min-width : 50mm ; /* Milimetre */
max-width : 5in ; /* İnç */
/* Renkler */
color : # F6E ; /* Kı sa onaltı lı k (HEX) biçimi */
color : # FF66EE ; /* Uzun onaltı lı k (HEX) biçimi */
color : tomato ; /* Bir isim verilen renk */
color : rgb ( 255 , 255 , 255 ) ; /* RGB değerleri verilen türde */
color : rgb ( 10 % , 20 % , 50 % ) ; /* RGB yüzdeleri verilen türde */
color : rgba ( 255 , 0 , 0 , 0 . 3 ) ; /* RGBA değerleri verilen türde (CSS 3) Not: 0 <= a <= 1 */
color : transparent ; /* Şeffaflı k değerinin sı fı r olması ile eşdeğer */
color : hsl ( 0 , 100 % , 50 % ) ; /* HSL yüzdeleri verilen türde (CSS 3) */
color : hsla ( 0 , 100 % , 50 % , 0 . 3 ) ; /* HSL ile beraber şeffaflı k değeri verilen türde */
/* Kenarlı klar */
border-width : 5px ;
border-style : solid ;
border-color : red ; /* background-color'ı n ayarlanı şı na benzer şekilde */
border : 5px solid red ; /* Bu aynı şeyin kı sayol ile yazı lı şı dı r */
border-radius : 20px ; /* Bu bir CSS3 özelliğidir */
/* Görseller ve Ögelerin Arkaplanları */
background-image : url ( / img-path / img . jpg ) ; /* url() içindeki tı rnak işaretleri isteğe bağlı */
/* Yazı tipleri */
font-family : Arial ;
/* Eğer yazı tipi ailesi isminde bir boşluk var ise tı rnak işareti içine alı nmalı dı r. */
font-family : "Courier New" ;
/* Eğer ilk sı radaki bulunamazsa, tarayı cı bir sonrakini kullanı r */
font-family : "Courier New" , Trebuchet , Arial , sans-serif ;
}
` ` `
# # Kullanı m
CSS dosyası nı zı ` . css ` uzantı sı ile kaydedin .
` ` ` html
< ! -- CSS dosyanı zı sayfanı n içindeki < head > alanı na dahil etmeniz gerekiyor . Bu önerilen yöntemdir . Bakı n : http : / / stackoverflow . com / questions / 8284365 -- >
< link rel = 'stylesheet' type = 'text/css' href = 'path/to/style.css' >
< ! -- Bazı CSS kodları satı r içi olarak yazabilirsiniz . -- >
< style >
a { color : purple ; }
< / style >
< ! -- Veya ögenin üzerinde CSS özelliklerini direkt ayarlayabilirsiniz . -- >
< div style = "border: 1px solid red;" >
< / div >
` ` `
# # Öncelik veya Basamak
Bir öge birden çok seçici tarafı ndan hedef alı nabilir ve bir özellik kümesine birden fazla kez sahip olabilir . Bunun gibi durumlarda , kurallardan biri diğerlerine göre önceliklidir . Daha spesifik bir seçiciye sahip kurallar , daha az spesifik bir seçicinin önceliğini alı r ve kural daha sonra stil sayfası nda bir önceki kuralı n üzerine yazar .
Bu işleme geçiş denir ve olayı sı yla Geçişli / Basamaklı Stil Sayfaları adı da buradan gelmiştir .
Aşağı daki CSS göz önüne alı ndı ğı nda :
` ` ` css
/* A */
p . class1 [ attr = 'değer' ]
/* B */
p . class1 { }
/* C */
p . class2 { }
/* D */
p { }
/* E */
p { ö zellik : değer !important ; }
` ` `
ve aşağı daki biçimlendirmeyi :
` ` ` html
< p style = '/*F*/ özellik:değer;' class = 'class1 class2' attr = 'değer' >
` ` `
Stilin önceliği ise aşağı daki gibidir . Unutmayı n , öncelik * * her bir özellik için ayrı ayrı geçerlidir * * , tüm blok için geçerli değildir .
* ` E ` ` ! important ` kelimesi yüzünden en yüksek önceliğe sahiptir . Kullanı mı ndan kaçı nmanı z önerilir .
* ` F ` satı riçi stil olduğu için bir sonraki önceliğe sahiptir .
* ` A ` bir sonraki önceliğe sahiptir . Çünkü her şeyden daha "özgüdür" . 3 belirteci vardı r : ` p ` ögesinin adı , sı nı f ` class1 ` , bir öznitelik ` attr = 'değer' .
* ` C ` , ` B ` ile aynı özdeşliğe sahip olsa da , bundan sonra geldiğinden dolayı öncelik hakkı na sahiptir .
* ` B ` bir sonraki önceliğe sahiptir .
* Sonuncu önceliğe sahip olan ` D ` ' dir .
# # Medya Sorguları
CSS Medya Sorguları , CSS 3 ' te belirli CSS kuralları nı n ne zaman uygulanması gerektiğini ( örneğin bası lan zaman veya belirli boyutlar veya piksel yoğunluğu olan bir ekranda olduğunda ) belirlemenize izin veren bir özelliktir . Medya Sorguları , seçicilere önceliğk eklemez .
` ` ` css
/* Tüm cihazlarda kullanı lacak olan bir kural */
h1 {
font-size : 2em ;
color : white ;
background-color : black ;
}
/* h1 ögesini değiştirip bir yazı cı da daha az mürekkep kullanı n*/
@ media print {
h1 {
color : black ;
background-color : white ;
}
}
/* En az 480 piksel genişliğinde bir ekran gösterildiğinde font yüksekliğini daha büyük yap */
@ media screen and ( min-width : 480px ) {
h1 {
font-size : 3em ;
font-weight : normal ;
}
}
` ` `
Medya sorguları aşağı daki bu özellikleri içerebilir :
` width ` , ` height ` , ` device-width ` , ` device-height ` , ` orientation ` , ` aspect-ratio ` , ` device-aspect-ratio ` , ` color ` , ` color-index ` , ` monochrome ` , ` resolution ` , ` scan ` , ` grid ` . Bu özelliklerin birçoğunu ` min- ` veya ` max- ` öneki ile kullanabilirsiniz .
` resolution ` özelliği eski cihazlarda desteklenmediğinden ötürü ` device-pixel-ratio ` kullanı n .
Eğer ` viewport ` meta etiketi sağlanmadı kça birçok akı llı telefon ve tabletler , sayfayı masaüstü bilgisayardaymı ş gibi göstermeye çalı şacaktı r .
` ` ` html
< head >
< meta name = "viewport" content = "width=device-width; initial-scale=1.0" >
< / head >
` ` `
# # Uyumluluk
CSS 2 'deki çoğu özellik (ve CSS 3' deki birçoğu ) bütün tarayı cı lar ve cihazlar için bulunmaktadı r . Ancak yeni bir özelliği kullanmadan önce kontrol etmek her zaman iyi bir uygulamadı r .
# # Kaynaklar
* [ CanIUse ] ( http : / / caniuse . com ) ( Detaylı uyumluluk bilgileri )
* [ Dabblet ] ( http : / / dabblet . com / ) ( CSS oyun alanı )
* [ Mozilla Geliştirici Ağı nı n CSS belgelendirmesi ] ( https : / / developer . mozilla . org / en-US / docs / Web / CSS ) ( Eğitseller ve referanslar )
* [ Codrops ' CSS Referansı ] ( http : / / tympanus . net / codrops / css_reference / ) ( Referans )
# # Daha Fazla Okuma
* [ Understanding Style Precedence in CSS : Specificity , Inheritance , and the Cascade ] ( http : / / www . vanseodesign . com / css / css-specificity-inheritance-cascaade / )
* [ Selecting elements using attributes ] ( https : / / css-tricks . com / almanac / selectors / a / attribute / )
* [ QuirksMode CSS ] ( http : / / www . quirksmode . org / css / )
* [ Z-Index - The stacking context ] ( https : / / developer . mozilla . org / en-US / docs / Web / Guide / CSS / Understanding_z_index / The_stacking_context )
* [ SASS ] ( http : / / sass-lang . com / ) and [ LESS ] ( http : / / lesscss . org / ) for CSS pre-processing
2018-02-28 12:33:06 +03:00
* [ CSS-Tricks ] ( https : / / css-tricks . com )