Showing posts with label css. Show all posts
Showing posts with label css. Show all posts
![]() |
Pseudo elementler bir elementin belirli bir parçasına css uygulamak için kullanılır. Örneğin;
- İlk harfe veya satıra veya elemente stil uygulamak için
- Bir elementin içeriğinden önce veya sonra bir içerik eklemek için
Syntax
selector::pseudo-element {
property: value;
}
Not! Pseudo class'lar ile pseudo elementleri ayırmak için CSS'te pseudo elementlerin gösterim şekli tek iki noktalı gösterim yerine CSS3 ile çift iki noktalı gösterim şeklinde değiştirildi. Geriye dönük uyumluluk sağlamak için tek noktalı gösterim şeklide hala desteklenmektedir.
All CSS Pseudo Elements
Selector | Example | Example description |
---|---|---|
::after | p::after | Her bir <p> element başına bir şeyler eklemek için |
::before | p::before | Her bir <p> elementin sonuna bir şeyler eklemek için |
::first-letter | <p::first-letter | Her bir <p> elementin ilk harfine stil eklemek için |
::first-line | p::first-line | Her bir <p> elementin ilk satırına stil eklemek için |
::selection | p::selection | Her bir <p> elementin kullanıcı tarafından seçilen kısmına stil eklemek için |
- Bir kullanıcı fareyle bir öğenin üzerine geldiğinde o öğeye stil verme
- Ziyaret edilen ve görünmeyen bağlantıları farklı bir şekilde stilize etme
- Bir öğeye odaklanıldığında stil verme
Syntax
selector:pseudo-class {
property: value;
}
Anchor Pseudo Class'lar
/* ziyaret edilmemiş link */
a:link {
color: #FF0000;
}
/* ziyaret edilmiş link */
a:visited {
color: #00FF00;
}
/* mouse ile linkin üzerine gelindiğinde */
a:hover {
color: #FF00FF;
}
/* linke tıklandığı anda */
a:active {
color: #0000FF;
}
Not! Daha efektif bir kullanım için :hover, :link ve :visited'ten sonra; :active ise :hover'dan sonra gelmelidir. pseudo class'lar case-sensitive değildir.
Pseudo Class'lar ve CSS Class'lar
Pseudo class'lar ile css class'ları birlikte kullanılabilir.
a.highlight:hover {
color: #ff0000;
}
Yukarıdaki örnekte sadece class'ı highlight olan a elementleri etkilenecektir.
Tooltip
Bir pseudo class'ın gerçekleşme durumunda farklı bir element'in durumu değiştirilebilir.
p {
display: none;
background-color: yellow;
padding: 20px;
}
div:hover p {
display: block;
}
Yukarıdaki örnekte div elementi üzerine mouse ile gelindiğinde p elementinin display özelliği değiştirilecektir.
Tüm CSS Pseudo Class'ları
Selector | Örnek | Örnek Açıklama |
---|---|---|
:active | a:active | Tüm Linklerin üzerine tıklandığı anda ki özellikleri tanımlamak için |
:checked | input:checked | Tüm checked özelliği true olan <input> elementler için |
:disabled | input:disabled | Tüm display özelliği true olan <input> elementler için |
:empty | p:empty | Bir çocuk elemente sahip olmayan tüm <p> elementleri için |
:enabled | input:enabled | Tüm enabled <input> elementler için |
:first-child | p:first-child | Parent'ının ilk elementi olan tüm <p> elementleri için |
:first-of-type | p:first-of-type | Tüm parent'ların ilk <p> olan elementleri için |
:focus | input:focus | <input> element'lerin focus durumundaki özelliklerini tanımlamak için |
:hover | a:hover | Link elementinin üzerine mouse ile gelindiği durumdaki özelliklerini tanımlamak için |
:in-range | input:in-range | Belirtilen değer aralığını aşmayan bir değer girilen <input> elementler için |
:invalid | input:invalid | Tüm invalid değeri olan <input> elementleri için |
:lang(language) | p:lang(it) | "it" ile başlayan bir lang özelliği olan tüm <p> elementleri için |
:last-child | p:last-child | Parent'ının son elementi olan tüm <p> elementleri için |
:last-of-type | p:last-of-type | Tüm parent'ların son <p> olan elementleri için |
:link | a:link | Daha önce ziyaret edilmemiş tüm linkler için |
:not(selector) | :not(p) | <p> elementi olmayan tüm elementler için |
:nth-child(n) | p:nth-child(2) | Bir parent'ın ikinci elementi olan tüm <p> elementleri için |
:nth-last-child(n) | p:nth-last-child(2) | Bir parent'ın sondan ikinci elementi olan tüm <p> elementleri için |
:nth-last-of-type(n) | p:nth-last-of-type(2) | Tüm parent'ların sondan ikinci <p> elementleri için |
:nth-of-type(n) | p:nth-of-type(2) | Tüm parent'ların ikinci <p> elementleri için |
:only-of-type | p:only-of-type | Parent'ının tek <p> elementi olan <p> elementleri için |
:only-child | p:only-child | Parent'ının tek child elementi olan <p> elementleri için |
:optional | input:optional | "required" özelliği tanımlanmayan tüm <input> elementleri için |
:out-of-range | input:out-of-range | Belirtilen değer aralığını aşan bir değer girilen <input> elementler için |
:read-only | input:read-only | "readonly" özelliği tanımlanan tüm <input> elementler için |
:read-write | input:read-write | "readonly" özelliği tanımlanmayan tüm <input> elementler için |
:required | input:required | "required" özelliği tanımlanan tüm <input> elementler için |
:root | root | Sayfanın root elementi için |
:target | #news:target | Aktif olan #news elementler için |
:valid | input:valid | Uygun bir değer girilmiş tüm <input> elementler için |
:visited | a:visited | Ziyaret edilmiş tüm linkler için |
CSS'de overflow özelliği bir alana sığmayacak kadar büyük olan içeriğe ne olacağını ayarlamamızı sağlar. Overflow aşağıdaki değerleri alabilir;
Visible
Varsayılan değerdir. Taşma kırpılmaz. İçerik öğenin dışına taşmış bir şekilde görüntülenir.div {
overflow: visible;
}
You can use the overflow property when you want to have better control of the layout. The overflow property specifies what happens if content overflows an element's box.
Hidden
Taşma kırpılır ve içeriğin geri kalanı görünmez olur.
div {
overflow: hidden;
}
You can use the overflow property when you want to have better control of the layout. The overflow property specifies what happens if content overflows an element's box.
Scroll
Taşma kırpılır ve içeriğin geri kalanını görmek için bir kaydırma çubuğu eklenir.
div {
overflow: scroll;
}
You can use the overflow property when you want to have better control of the layout. The overflow property specifies what happens if content overflows an element's box.
Auto
Eğer bir taşma olursa bu taşma kırpılır ve scroll eklenir. Bir taşma durumu olmazsa scroll eklenmez.
div {
overflow: auto;
}
You can use the overflow property when you want to have better control of the layout. The overflow property specifies what happens if content overflows an element's box.
Örnek:
HTML Dosyası
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta charset="utf-8" />
<link href="css.css" rel="stylesheet" />
<script type="text/javascript">
function func() {
var spanProgress = document.getElementById('progressSpan');
progressWidth = "100%";
spanProgress.style.width = progressWidth;
}
</script>
</head>
<body>
<div class="progress efect" >
<span id="progressSpan" style="width: 0%"></span>
</div>
<input type="button" value="progress" onclick="func()" />
</body>
</html>
.progress{
background-color: #1a1a1a;
height: 25px;
padding: 5px;
width: 350px;
margin: 50px 0;
border-radius: 5px;
}
.efect{
}
.progress span{
display: inline-block;
height: 100%;
border-radius: 3px;
background-color: #008000;
transition-property: width;
transition-duration: 10s;
}
.efect span{
background-size: 30px 30px;
background-image: linear-gradient(135deg,rgba(255,255,255,.15)25%,
transparent 25%,transparent 50%,
rgba(255,255,255,.15)50%,rgba(255,255,255,.15)75%,transparent 75%,transparent);
animation: animation-efect 3s linear infinite;
}
@keyframes animation-efect{
0%{
background-position: 0px 0;
}
100%{
background-position: 60px 0;
}
}
CSS position özellikliği ile sayfa içerisindeki öğelerimizi konumlandırabiliriz. Position özelliği üç değer alabilir. Bu değerler; relative, absolute ve fixed'tir. Bu örneğimde ben relative özelliği üzerine bir örnek yaptım.
Fixed özelliği öğeyi sayfa içerisindeki bir alana sabitlemek için kullanılır. Sayfa içerisinde scroll hareket etse bile öğe aynı yerinde sabit kalır.
Örnek:
HTML Dosyası
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta charset="utf-8" />
<link href="css3.css" rel="stylesheet" />
</head>
<body>
<div id="kapsayici">
<div id="kutu1" class="ortak"></div>
<div id="kutu2" class="ortak"></div>
<div id="kutu3" class="ortak"></div>
</div>
</body>
</html>
body {
margin: 0px;
padding: 0px;
}
.ortak{
width: 50px;
height: 50px;
}
#kapsayici{
width: 200px;
margin: 100px auto;
background-color: #000000;
}
#kutu1{
background-color: blue;
}
#kutu2{
left: 30px;
top: 30px;
position: fixed;
background-color: red;
}
#kutu3{
background-color: green;
}
CSS position özellikliği ile sayfa içerisindeki öğelerimizi konumlandırabiliriz. Position özelliği üç değer alabilir. Bu değerler; relative, absolute ve fixed'tir. Bu örneğimde ben relative özelliği üzerine bir örnek yaptım.
Absolute özelliği öğeyi onu kapsayan ve position:relative özelliğini almış öğeye göre ayarlar. Aksi halde kök elemente (<body>) göre ayarlar.
Örnek:
HTML Dosyası
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta charset="utf-8" />
<link href="css3.css" rel="stylesheet" />
</head>
<body>
<div id="kapsayici">
<div id="kutu1" class="ortak"></div>
<div id="kutu2" class="ortak"></div>
<div id="kutu3" class="ortak"></div>
</div>
</body>
</html>
CSS Dosyası
body {
margin: 0px;
padding: 0px;
}
.ortak{
width: 50px;
height: 50px;
}
#kapsayici{
width: 200px;
margin: 100px auto;
background-color: #000000;
position: relative;
}
#kutu1{
background-color: blue;
}
#kutu2{
position: absolute;
left: 30px;
top: 20px;
background-color: red;
}
#kutu3{
background-color: green;
}
Ekran Görüntüsü
Not! Kapsayıcı öğenin position:relative özelliğini silerek kırmızı kutunun <body> elementine göre pozisyonunu ayarladığını görebilirsiniz.
Relative özelliği öğeyi yanındaki elemana göre konumlandırır ve bu konumlandırma işleminden diğer elemanlar etkilenmez.
Örnek:
HTML Dosyası
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta charset="utf-8" />
<link href="css3.css" rel="stylesheet" />
</head>
<body>
<div id="kapsayici">
<div id="kutu1" class="ortak"></div>
<div id="kutu2" class="ortak"></div>
<div id="kutu3" class="ortak"></div>
</div>
</body>
</html>
body {
margin: 0px;
padding: 0px;
}
.ortak{
width: 50px;
height: 50px;
}
#kapsayici{
width: 200px;
margin: 100px auto;
background-color: #000000;
}
#kutu1{
background-color: blue;
}
#kutu2{
position: relative;
left: 20px;
top: 30px;
background-color: red;
}
#kutu3{
background-color: green;
}
Ekran Görüntüsü
LİNK ÖZELLİKLERİ
a : Linkin, sayfa açıldığında tıklanmadan veya ümleç üzerine getirilmeden önceki durumudur.
a:hover : Linkin imleç üzerine getirildiğindeki durumudur.
a:active : Linkin tıklandığı andaki durumudur.
a:visited : Linkin tıklandıktan sonraki durumudur.
BİÇİMLENDİRME
color: Linkin rengini belirler.
background-color: Linkin zemin rengini belirler.
background-image: Linkin zeminine resim ekler(Bu animated-gif de olabilir.)
text-decoration: Linkin altının,üstünün vs. çizgili olup olmayacağını belirler.
font-weight: Yazının kalınlık veya inceliğini belirler.
border: Linkin etrafına kenarlık ekler.
display: Linki içeren hücre , satır vb. istenilen alanın seçilmesini sağlar.
————————————————————————
LİSTE ÖZELLİKLERİ
disk: Liste biçiminin disk (içi dolu daire) şeklinde olmasını sağlar.
circle : Liste biçiminin çember şeklinde olmasını sağlar.
square : Liste biçiminin kare olmasını sağlar.
decimal : Liste biçiminin rakamlardan oluşmasını sağlar.
lower-roman : Liste biçiminin i,ii,iii gibi küçük roma rakamlarından oluşmasını sağlar.
upper-roman : Liste biçiminin I,II,II gibi büyük roma rakamlarından oluşmasını sağlar.
lower-alpha : Liste biçiminin a,b,c şeklinde küçük harf olmasını sağlar.
upper-alpha : Liste biçiminin A,B,C şeklinde büyük harf olmasını sağlar.
none : Listenin simgesiz olmasını sağlar.
inside : Listenin ikinci satırının en soldan başlamasını sağlar.
Outside : Listenin ikinci satırının ilk satır ile aynı yerden başlamasını sağlar.
list-style-image : Liste biçiminin resim olmasını sağlar.
————————————————————————
KATMAN ÖZELLİKLERİ
position: Katmanın yerinin belirlenmesini sağlar.
absolute: Katmanın yerinin pencere esas alınarak belirlenmesini sağlar.
relative: Katmanın yerinin bir önceki katman esas alınarak belirlenmesini sağlar.
static: Katmanın yerinin sabit olarak (Varsayılan olan sol üst köşe) belirlenmesini sağlar.
top: Katmanın üstten ne kadar aşağıda olması gerektiğini belirler.
left: Katmanın soldan ne kadar içeride olması gerektiğini belirler.
width: Katmanın genişliğinin ne kadar olacağını belirler.
height: Katmanın yüksekliğinin ne kadar olacağını belirler.
overflow: Katmanın belirtilen yükseklik ve genişliğe sığmayan kısmına ne olacağını belirler.
auto: Otomatik olarak belirlenir.
scroll: Kaydırma çubuğu ekleyerek görünmesini sağlar.
visible : Katmanı belirtilen boyutların dışına taşırarak sığmayan yerlerin görünmesini sağlar.
hidden: Sığmayan yerleri gizler.
visibility: Katmanın görünebilirlik ayarını yapar.
visible : Katmanın görünür olmasını sağlar.
hidden: Katmanı gizler.
z-index : Katmanların alttan üste doğru hangi sıra ile gösterileceğini belirler.1 değeri katmanın en altta olacağını belirtir.
————————————————————————
FONT ÖZELLİKLERİ
font-family: Yazı türünü belirler.(Arial , Verdana gibi.)
font-style: Yazının normal veya sağa eğik olmasını sağlar.
font-variant: Yazının normal veya tümünün büyük harflerden oluşmuş olmasını sağlar.
font-weight: Yazının kalınlık-inceliğini belirler.
font-size: Yazının büyüklüğünü belirler.
————————————————————————
TEXT ÖZELLİKLERİ
word-spacing : Kelimeler arasında bırakılacak boşluğu boşluğu belirler.
letter-spacing : Harfler arasında bırakılacak boşluğu boşluğu belirler.
text-decoration : Kelimenin altının , üstünün vs. çizili olup olmayacağını belirler.
underline : Kelimenin altının (Satır altından) çizili olmasını sağlar.
overline : Kelimenin üstünün (Satır üstünden) çizili olmasını sağlar.
line-through : Kelimenin ortasından çizili olmasını sağlar.
blink : Kelimenin yanıp sönmesini sağlar.(Netscape için)
vertical-align : Metnin yatay olarak nasıl hizalanacağını belirler.
text-transform: Kelimelerin büyük harf veya küçük harflerden oluşmasını sağlar.
capitalize : Kelimelerin ilk harflerinin büyük olmasını sağlar.
uppercase : Kelimelerin bütün harflerinin büyük olmasını sağlar.
lowercase : Kelimelerin bütün harflerinin küçük olmasını sağlar.
none : Kelimelerin orjinal metindeki gibi olmasını sağlar.
text-align: Metnin dikey olarak nasıl hizalanacağını belirler.
left : Metni sola yaslar.
right : Metni sağa yaslar.
center : Metni ortalar.
justify : Metni iki yana yaslar.
text-indent : Metnin ilk satırının soldan ne kadar içerden başlayacağını belirler.
line-height : Satırın yüksekliğini ayarlar.(Yüksek değer verildiğinde satırlar arasındaki boşluk artar.)
first-line : Metnin ilk satırının biçimlendirilmesini sağlar.
first-letter : Metnin ilk harfinin biçimlendirilmesini sağlar.
————————————————————————
İMLEÇ ÖZELLİKLERİ
crosshair: İmlecin artı işareti şeklinde olmasını sağlar.
auto: İmlecin metinde dikey çizgi ,boş alanda normal ok şeklinde olmasını sağlar.
default: İmlecin hem metinde hem de boş alanda normal ok şeklinde olmasını sağlar.
hand: İmlecin linkte olduğu gibi el şeklinde olmasını sağlar.
move: İmlecin taşıma işareti şeklinde olmasını sağlar.
ne-resize: İmlecin sağa yatık normal ok olmasını sağlar.
nw-resize: İmlecin sola yatık normal ok olmasını sağlar.
se-resize: İmlecin yukardan aşağı doğru ve sağa yatık normal ok olmasını sağlar.
sw-resize: İmlecin yukardan aşağı doğru ve sola yatık normal ok olmasını sağlar.
n-resize: İmlecin aşağıdan yukarıya doğru ince ok şeklinde olmasını sağlar.
s-resize: İmlecin yukardan aşağı doğru ince ok şeklinde olmasını sağlar.
w-resize: İmlecin sola doğru ince ok şeklinde olmasını sağlar.
e-resize: İmlecin sağa doğru ince ok şeklinde olmasını sağlar.
text: İmlecin hem metinde hem de boş alanda metinde olduğu gibi görünmesini sağlar.
wait: İmlecin meşgul animasyonuna dönüşmesini sağlar.
help: İmlecin yardım-soru işaretine dönüşmesini sağlar.
————————————————————————
ZEMİN ÖZELLİKLERİ
background-color: Zeminin rengini belirler.
color : Renk adı.
transparent: Zeminin saydam olmasını sağlar.
background-image: Zemine resim yerleştirilmesini sağlar.
url : Zemine yerleştirilen resmin adresi.
background-repeat: Zemine yerleştirilen resmin nasıl yayılacağını belirler.
repeat : Resmin bütün zemine yayılmasını sağlar.
repeat-x : Resmin sol-üstten sağ-üste doğru yayılmasını sağlar.
repeat-y : Resmin sol-üstten sol-alta doğru yayılmasını sağlar.
no-repeat: Resmin yayılmadan orjinal boyutuyla görünmesini sağlar.
background-attachment: Zemindeki resmin , sayfa kaydırma çubuğuyla hareket ettirildiğindeki durumunu belirler.
scroll : Sayfa hareket ettirildiğinde zeminin de kaymasını sağlar.
fixed: Sayfa kaydırılsa da zeminin sabit kalmasını sağlar
background-position: Zemindeki resmin istenilen şekilde yerleştirilmesini sağlar.
top : Resmi yukarı yerleştirir.
center : Resmi ortalar.
bottom : Resmi aşağı yerleştirir.
left : Resmi sola yerleştirir.
right: Resmi sağa yerleştirir.
…px : Resmin soldan istenilen ölçüde içerde olmasını sağlar.
————————————————————————
TABLO ÖZELLİKLERİ
margin : Tablo ile pencerenin kenarları arasında bırakılacak boşluğu belirler.
margin-top : Tablo ile pencerenin üst kenarı arasında bırakılacak boşluğu belirler.
margin-right : Tablo ile pencerenin sağ kenarı arasında bırakılacak boşluğu belirler.
margin-bottom : Tablo ile pencerenin alt kenarı arasında bırakılacak boşluğu belirler.
margin-left : Tablo ile pencerenin sol kenarı arasında bırakılacak boşluğu belirler.
padding : Tablo kenarları ile tablo içeriği (Yazı vb.) arasında bırakılacak boşluğu belirler.
padding-top : Tablonun üst kenarı ile tablo içeriği arasında bırakılacak boşluğu belirler.
padding-right : Tablonun sağ kenarı ile tablo içeriği arasında bırakılacak boşluğu belirler.
padding-bottom : Tablonun alt kenarı ile tablo içeriği arasında bırakılacak boşluğu belirler.
padding-left : Tablonun sol kenarı ile tablo içeriği arasında bırakılacak boşluğu belirler.
border : Tablonun kenarlarının şekillendirilmesini sağlar.
border-top : Tablonun üst kenarının şekillendirilmesini sağlar.
border-left : Tablonun sol kenarının şekillendirilmesini sağlar.
border-bottom : Tablonun alt kenarının şekillendirilmesini sağlar.
border-right : Tablonun sağ kenarının şekillendirilmesini sağlar.
border-width : Tablonun kenarlarının kalınlığını belirler.
border-top-width : Tablonun üst kenarının kalınlığını belirler.
border-right-width : Tablonun sağ kenarının kalınlığını belirler.
border-bottom-width : Tablonun alt kenarının kalınlığını belirler.
border-left-width : Tablonun sol kenarının kalınlığını belirler.
border-style : Tablonun kenarlık türünü belirler.
border-top-style : Tablonun üst kenarlık türünü belirler.
border-right-style : Tablonun sağ kenarlık türünü belirler.
border-bottom-style : Tablonun alt kenarlık türünü belirler.
border-left-style : Tablonun sol kenarlık türünü belirler.
border-color : Tablonun kenarlarının rengini belirler.
border-top-color : Tablonun üst kenarının rengini belirler.
border-right-color : Tablonun sağ kenarının rengini belirler.
border-bottom-color : Tablonun alt kenarının rengini belirler.
border-left-color : Tablonun sol kenarının rengini belirler.
color : Tabloda geçen metnin rengini belirler.
width : Tablonon genişliğini belirler.
height : Tablonun yüksekliğini belirler.